/*
 * ATTENTION: The "eval" devtool has been used (maybe by default in mode: "development").
 * This devtool is neither made for production nor for readable output files.
 * It uses "eval()" calls to create a separate source file in the browser devtools.
 * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/)
 * or disable the default devtool with "devtool: false".
 * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/).
 */
/******/ (() => { // webpackBootstrap
/******/ 	var __webpack_modules__ = ({

/***/ "./packages/module-library/index.js"
/*!********************************************************!*\
  !*** ./packages/module-library/index.js + 907 modules ***!
  \********************************************************/
(__unused_webpack_module, __unused_webpack___webpack_exports__, __webpack_require__) {

"use strict";
eval("{\n// EXTERNAL MODULE: ./node_modules/lodash/lodash.js\nvar lodash = __webpack_require__(\"./node_modules/lodash/lodash.js\");\n;// external [\"divi\",\"moduleLibrary\"]\nconst external_divi_moduleLibrary_namespaceObject = divi.moduleLibrary;\n;// external \"window.vendor.wp.hooks\"\nconst external_window_vendor_wp_hooks_namespaceObject = window.vendor.wp.hooks;\n// EXTERNAL MODULE: external [\"vendor\",\"React\"]\nvar external_vendor_React_ = __webpack_require__(\"react\");\nvar external_vendor_React_default = /*#__PURE__*/__webpack_require__.n(external_vendor_React_);\n;// external [\"divi\",\"module\"]\nconst external_divi_module_namespaceObject = divi.module;\n;// external \"window.vendor.wp.i18n\"\nconst external_window_vendor_wp_i18n_namespaceObject = window.vendor.wp.i18n;\n;// external [\"divi\",\"fieldLibrary\"]\nconst external_divi_fieldLibrary_namespaceObject = divi.fieldLibrary;\n;// external [\"divi\",\"modal\"]\nconst external_divi_modal_namespaceObject = divi.modal;\n;// external \"window.vendor.wp.data\"\nconst external_window_vendor_wp_data_namespaceObject = window.vendor.wp.data;\n;// ./packages/extensions/line-hover-animation/read-inner-plain.js\n/**\n * Responsive `innerContent` reads **without** `@divi/module-utils` `getAttrByMode`:\n * that helper uses `@wordpress/data` hooks and must not run from class `render()`\n * or from `divi.module.wrapper.render` filter callbacks during invalid hook stacks.\n */\n\n\n\n/** Short TTL cache — `readOptsFromAttrs` runs often during VB decorate (not in React render). */\nlet _dsmLineHoverBpCache = 'desktop';\nlet _dsmLineHoverBpCacheAt = 0;\n\n/**\n * Current VB breakpoint via store selector (non-hook API).\n *\n * @return {'desktop'|'tablet'|'phone'|'widescreen'|string}\n */\nfunction dsmLineHoverBreakpointPlain() {\n  const now = typeof performance !== 'undefined' && performance.now ? performance.now() : Date.now();\n  if (now - _dsmLineHoverBpCacheAt < 48) {\n    return _dsmLineHoverBpCache;\n  }\n  _dsmLineHoverBpCacheAt = now;\n  try {\n    const bp = (0,external_window_vendor_wp_data_namespaceObject.select)('divi/app-ui')?.getBreakpoint?.();\n    if (typeof bp === 'string' && bp !== '') {\n      _dsmLineHoverBpCache = bp;\n      return bp;\n    }\n    // eslint-disable-next-line no-unused-vars -- `select`/store unavailable outside VB\n  } catch (_err) {}\n  _dsmLineHoverBpCache = 'desktop';\n  return 'desktop';\n}\n\n/**\n * Read Divi responsive `*.innerContent` value for active breakpoint + sensible fallbacks.\n *\n * @param {*} innerContent\n */\nfunction dsmInnerContentPlainValue(innerContent) {\n  if (innerContent == null || typeof innerContent !== 'object') {\n    return '';\n  }\n  const bp = dsmLineHoverBreakpointPlain();\n  const mode = bp === 'widescreen' || bp === 'desktop' ? 'desktop' : bp === 'tablet' ? 'tablet' : bp === 'phone' ? 'phone' : 'desktop';\n  const order = mode === 'phone' ? (/** @type {const} */['phone', 'tablet', 'desktop']) : mode === 'tablet' ? (/** @type {const} */['tablet', 'desktop', 'phone']) : (/** @type {const} */['desktop', 'tablet', 'phone']);\n  for (const key of order) {\n    const branch = Object.prototype.hasOwnProperty.call(innerContent, key) ? innerContent[key] : null;\n    if (branch != null && typeof branch === 'object' && Object.prototype.hasOwnProperty.call(branch, 'value')) {\n      const raw = branch.value;\n      if (raw !== undefined && raw !== null) {\n        return raw;\n      }\n    }\n  }\n  return '';\n}\n\n/**\n * Divi persists global Color picks as `$variable({\"type\":\"color\",\"value\":{\"name\":\"gcid-…\"}})$`.\n * PHP resolves via `StyleLibrary\\Utils::resolve_dynamic_variable`; VB must map to `var(--…)` first.\n *\n * @param {string} input Raw stored string (possibly mixed with other text).\n * @return {string}\n */\nfunction diviNormalizeInlineVariableToken(input) {\n  if (typeof input !== 'string' || false === input.includes('$variable(')) {\n    return input;\n  }\n  return input.replace(/\\$variable\\(([\\s\\S]*?)\\)\\$/g, (full, jsonRaw) => {\n    let jsonStr = String(jsonRaw !== null && jsonRaw !== void 0 ? jsonRaw : '').trim();\n    if (jsonStr.includes('\\\\\"')) {\n      jsonStr = jsonStr.replace(/\\\\\"/g, '\"');\n    }\n    try {\n      var _decoded$type;\n      const decoded = JSON.parse(jsonStr);\n      const typ = String((_decoded$type = decoded?.type) !== null && _decoded$type !== void 0 ? _decoded$type : '').toLowerCase();\n      const nm = decoded?.value?.name;\n      if (typeof nm === 'string' && nm !== '' && (typ === 'color' || typ === 'variable')) {\n        const normalized = nm.replace(/^--/, '');\n        return `var(--${normalized})`;\n      }\n      // eslint-disable-next-line no-unused-vars -- fall through to preserve token\n    } catch (_err) {}\n    return full;\n  });\n}\n\n/**\n * Unwrap nested Color control `value` (string vs `{ value: … }` vs optional `hex`/`cssVariable`).\n *\n * @param {*} raw Output of `dsmInnerContentPlainValue( innerContent )`.\n * @param {number} [depth=0]\n * @return {string}\n */\nfunction lineHoverFlattenPaintLeaf(raw, depth = 0) {\n  if (depth > 8) {\n    return '';\n  }\n  if (raw === undefined || raw === null) {\n    return '';\n  }\n  if (typeof raw === 'string' || typeof raw === 'number') {\n    return String(raw).trim();\n  }\n  if (typeof raw === 'object') {\n    const vType = raw.type ? String(raw.type).toLowerCase() : '';\n    if (('color' === vType || 'variable' === vType) && null != raw.value && typeof raw.value === 'object') {\n      const vn = raw.value.name;\n      if (typeof vn === 'string' && vn !== '') {\n        const stripped = vn.replace(/^--/, '');\n        return `var(--${stripped})`;\n      }\n    }\n    if (Object.prototype.hasOwnProperty.call(raw, 'value')) {\n      return lineHoverFlattenPaintLeaf(raw.value, depth + 1);\n    }\n    if (typeof raw.cssVariable === 'string') {\n      return raw.cssVariable.trim();\n    }\n    if (typeof raw.hex === 'string') {\n      return raw.hex.trim();\n    }\n  }\n  return '';\n}\n\n/**\n * Split inner of `var( … )` on first comma at depth 0 (supports `rgba()` in fallback).\n *\n * @param {string} inner Trimmed contents inside parens (no wrapping `var(`).\n * @return {[string, string|null]}\n */\nfunction splitVarInnerFirstArg(inner) {\n  let depth = 0;\n  for (let i = 0; i < inner.length; i++) {\n    const c = inner.charAt(i);\n    if ('(' === c) {\n      depth++;\n    } else if (')' === c && depth > 0) {\n      depth--;\n    } else if (',' === c && 0 === depth) {\n      return [inner.slice(0, i).trim(), inner.slice(i + 1).trim()];\n    }\n  }\n  return [inner.trim(), null];\n}\n\n/**\n * Best-effort `var()` → concrete color inside the VB iframe (tokens often live on parent frames).\n *\n * @param {string} paint From `dsmInnerContentLineHoverPaint`.\n * @param {number} [depth=0] `var()` chain guard.\n * @return {string}\n */\nfunction vbResolveLineHoverScopedColor(paint, depth = 0) {\n  if (typeof paint !== 'string') {\n    return '';\n  }\n  if (depth > 4) {\n    return diviNormalizeInlineVariableToken(paint).trim();\n  }\n  const trimmed = diviNormalizeInlineVariableToken(paint).trim();\n  if (trimmed === '' || !/^var\\s*\\(/i.test(trimmed)) {\n    return trimmed;\n  }\n  const innerParen = trimmed.match(/^var\\s*\\(\\s*(.+)\\s*\\)\\s*$/i);\n  if (!innerParen?.[1]) {\n    return trimmed;\n  }\n  const [firstArg, secondArgRaw] = splitVarInnerFirstArg(innerParen[1]);\n  let varToken = firstArg.trim();\n  const nameMatch = varToken.match(/^(--[\\w-]+)/i);\n  const varName = nameMatch ? nameMatch[1].replace(/^-+/, '--') : '';\n  function readTokFromRoot(rootEl) {\n    var _rootEl$style$getProp, _getComputedStyle$get;\n    if (!(rootEl instanceof Element) || '' === varName) {\n      return '';\n    }\n    const inline = (_rootEl$style$getProp = rootEl.style.getPropertyValue(varName)?.trim?.()) !== null && _rootEl$style$getProp !== void 0 ? _rootEl$style$getProp : '';\n    if (inline !== '') {\n      return inline;\n    }\n    return (_getComputedStyle$get = getComputedStyle(rootEl).getPropertyValue(varName)?.trim?.()) !== null && _getComputedStyle$get !== void 0 ? _getComputedStyle$get : '';\n  }\n  function readFromDocument(doc) {\n    if (!doc || typeof doc.documentElement === 'undefined') {\n      return '';\n    }\n    const candidates = [doc.documentElement, ...(doc.body instanceof Element ? [doc.body] : [])];\n    const selectors = ['#et-boc', '.et-l', '.et_builder_inner_content', '.et_fake_root'];\n    for (const sel of selectors) {\n      try {\n        const el = doc.querySelector(sel);\n        if (el instanceof Element) {\n          candidates.push(el);\n        }\n        // eslint-disable-next-line no-empty -- invalid selector in edge documents\n      } catch (_err) {}\n    }\n    for (const rootEl of candidates) {\n      const out = readTokFromRoot(rootEl);\n      if (out !== '') {\n        return out;\n      }\n    }\n    return '';\n  }\n  let resolved = typeof document !== 'undefined' ? readFromDocument(document) : '';\n  function tryForeignDoc(win) {\n    try {\n      if (!win?.document || typeof window !== 'undefined' && win === window) {\n        return '';\n      }\n      return readFromDocument(win.document);\n      // eslint-disable-next-line no-unused-vars -- cross-origin\n    } catch (_e) {}\n    return '';\n  }\n  if (typeof window !== 'undefined') {\n    if (resolved === '') {\n      resolved = tryForeignDoc(window.parent);\n    }\n    if (resolved === '') {\n      resolved = tryForeignDoc(window.top);\n    }\n  }\n  if (resolved !== '' && resolved !== 'inherit') {\n    const t = resolved.trim();\n    if (/^var\\s*\\(/i.test(t) && t !== trimmed) {\n      return vbResolveLineHoverScopedColor(t, depth + 1);\n    }\n    return t;\n  }\n  if (typeof secondArgRaw === 'string' && secondArgRaw.trim() !== '') {\n    return secondArgRaw.trim();\n  }\n  return trimmed;\n}\n\n/**\n * Color token for `--dsm-lhe-line-color` (hex, `var()`, `rgb()`, globals).\n *\n * @param {*} innerContent `dsm_lhe_animation_color.innerContent`\n * @param {string} [fallback='#2EA3F2']\n * @return {string}\n */\nfunction dsmInnerContentLineHoverPaint(innerContent, fallback = '#2EA3F2') {\n  const leaf = dsmInnerContentPlainValue(innerContent);\n  const flat = lineHoverFlattenPaintLeaf(leaf).trim();\n  if (flat !== '') {\n    return diviNormalizeInlineVariableToken(flat);\n  }\n  return fallback;\n}\n;// ./packages/extensions/popup/popup-layout-options.js\n/**\n * Divi Library popup layout select options + visibility helpers (VB).\n *\n * @package DiviSupreme\n */\n\n\n\n\n/** Matches `Popup.php` when no layout is selected. */\nconst DSM_POPUP_LAYOUT_NONE = '-1';\n\n/** @type {Record<string, { label: string }>|null} */\nlet dsmCachedGlobalPopupSelectOptions = null;\n\n/** @type {unknown} */\nlet dsmCachedGlobalPopupListRef = null;\n\n/**\n * @param {readonly { id: number|string, title: string }[]} list\n * @return {Record<string, { label: string }>}\n */\nfunction dsmBuildGlobalPopupSelectOptions(list) {\n  const placeholder = {\n    [DSM_POPUP_LAYOUT_NONE]: {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('-- Select Popup --', 'dsm-supreme-modules-pro-for-divi')\n    }\n  };\n  return list.reduce((acc, popup) => {\n    acc[String(popup.id)] = {\n      label: popup.title\n    };\n    return acc;\n  }, {\n    ...placeholder\n  });\n}\n\n/**\n * @return {readonly { id: number|string, title: string }[]}\n */\nfunction dsmGlobalPopupListFromLocalize() {\n  return typeof diviSupreme5 !== 'undefined' && Array.isArray(diviSupreme5.globalPopups) ? diviSupreme5.globalPopups : [];\n}\n\n/**\n * Clear cached select options (e.g. after `globalPopups` is refreshed in-session).\n *\n * @return {void}\n */\nfunction dsmInvalidateGlobalPopupSelectOptionsCache() {\n  dsmCachedGlobalPopupSelectOptions = null;\n  dsmCachedGlobalPopupListRef = null;\n}\n\n/**\n * Stable options map for Popup layout select (builder session cache).\n *\n * @return {Record<string, { label: string }>}\n */\nfunction getGlobalPopupSelectOptions() {\n  const list = dsmGlobalPopupListFromLocalize();\n  if (dsmCachedGlobalPopupSelectOptions && dsmCachedGlobalPopupListRef === list) {\n    return dsmCachedGlobalPopupSelectOptions;\n  }\n  dsmCachedGlobalPopupListRef = list;\n  dsmCachedGlobalPopupSelectOptions = dsmBuildGlobalPopupSelectOptions(list);\n  return dsmCachedGlobalPopupSelectOptions;\n}\n\n/**\n * Whether “Use Popup” is on for the active breakpoint (metadata `visible` callbacks).\n *\n * @param {{ attrs?: Record<string, unknown> }|undefined} dep Settings dependency bag.\n * @return {boolean}\n */\nfunction dsmPopupUsePopupVisibleFromAttrs(dep) {\n  const raw = dsmInnerContentPlainValue(dep?.attrs?.use_popup?.innerContent);\n  return raw === 'on' || raw === true || raw === 'yes' || raw === 'true' || raw === '1';\n}\n;// external [\"divi\",\"moduleUtils\"]\nconst external_divi_moduleUtils_namespaceObject = divi.moduleUtils;\n;// ./packages/module-library/shared/popup-advanced-group.js\n// External library dependencies.\n\n\n// Wordpress dependencies.\n\n\n\n\n\n\nconst usePopupInnerContentDefaultAttr = {\n  desktop: {\n    value: 'off'\n  }\n};\nconst popupLayoutInnerContentDefaultAttr = {\n  desktop: {\n    value: DSM_POPUP_LAYOUT_NONE\n  }\n};\n\n/**\n * Advanced → Popup fields; same attrs as `Popup.php` / extension `render_block`.\n *\n * @param {Object} props\n * @param {Object} props.attrs Module attrs.\n */\nfunction PopupAdvancedGroupInner({\n  attrs\n}) {\n  const usePopup = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_popup?.innerContent) === 'on';\n  const popupListLength = typeof diviSupreme5 !== 'undefined' && Array.isArray(diviSupreme5.globalPopups) ? diviSupreme5.globalPopups.length : 0;\n  const popupLayoutOptions = (0,external_vendor_React_.useMemo)(() => getGlobalPopupSelectOptions(), [popupListLength]);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"dsmSupremePopup\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Popup', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_popup.innerContent\",\n    defaultAttr: usePopupInnerContentDefaultAttr,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Popup', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Open a Divi Library layout with Popup enabled. If the layout uses “Module trigger”, pick it below—no custom CSS class or ID on this module.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"popup_layout.innerContent\",\n    defaultAttr: popupLayoutInnerContentDefaultAttr,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Popup Layout', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Select the Library layout. With Popup Type “Module trigger”, no matching class/ID is required.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: usePopup\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: popupLayoutOptions\n  })));\n}\nconst PopupAdvancedGroup = /*#__PURE__*/external_vendor_React_default().memo(PopupAdvancedGroupInner);\n;// ./packages/module-library/shared/with-popup-advanced-settings.js\n// External library dependencies.\n\n\n\n\n/**\n * Flatten top-level (and nested) fragments into a list of child nodes.\n *\n * @param {React.ReactNode} node Tree from `SettingsAdvanced( props )`.\n * @return {React.ReactNode[]}\n */\nfunction flattenFragments(node) {\n  if (node == null || node === false) {\n    return [];\n  }\n  if (Array.isArray(node)) {\n    return node.flatMap(flattenFragments);\n  }\n  if (/*#__PURE__*/external_vendor_React_default().isValidElement(node) && node.type === (external_vendor_React_default()).Fragment) {\n    return external_vendor_React_default().Children.toArray(node.props.children).flatMap(flattenFragments);\n  }\n  return [node];\n}\n\n/**\n * Insert Popup before Divi’s Visibility group (standard Advanced tab order).\n * Modules without `VisibilitySettingsGroup` (e.g. flipbox) get Popup at the end.\n *\n * @param {React.ReactNode}  tree       Output of the module’s SettingsAdvanced.\n * @param {React.ReactElement} insertion Element to insert.\n * @return {React.ReactElement}\n */\nfunction insertBeforeVisibility(tree, insertion) {\n  const children = flattenFragments(tree);\n  const visibilityIndex = children.findIndex(child => /*#__PURE__*/external_vendor_React_default().isValidElement(child) && child.type === external_divi_module_namespaceObject.VisibilitySettingsGroup);\n  if (visibilityIndex === -1) {\n    return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, children, insertion);\n  }\n  const next = [...children.slice(0, visibilityIndex), insertion, ...children.slice(visibilityIndex)];\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, next);\n}\n\n/**\n * Injects Advanced → Popup before `VisibilitySettingsGroup` in a module’s\n * `settings.advanced` tree.\n *\n * Divi only auto-merges `metadata.settings.groups` into the Advanced tab when that tab\n * is built from metadata. Supreme modules pass a React `settings.advanced` tree, so\n * hook-only groups never appear — this wrapper applies the same UI everywhere in one place.\n *\n * Wrapped `SettingsAdvanced` components must not use React hooks (call as a plain function\n * to reorder children). Current Supreme modules follow that pattern.\n *\n * @param {React.ComponentType<Object>} AdvancedComponent Original SettingsAdvanced.\n * @return {React.ComponentType<Object>}\n */\nfunction withPopupAdvancedSettings(AdvancedComponent) {\n  if (typeof AdvancedComponent !== 'function') {\n    return AdvancedComponent;\n  }\n  function WithPopupAdvanced(props) {\n    const advancedTree = AdvancedComponent(props);\n    const popup = /*#__PURE__*/external_vendor_React_default().createElement(PopupAdvancedGroup, {\n      key: \"dsmSupremePopupAdvanced\",\n      attrs: props.attrs\n    });\n    return insertBeforeVisibility(advancedTree, popup);\n  }\n  const name = AdvancedComponent.displayName || AdvancedComponent.name || 'Advanced';\n  WithPopupAdvanced.displayName = `WithPopupAdvanced(${name})`;\n  return WithPopupAdvanced;\n}\n;// ./packages/extensions/supreme-parallax/feature-flags.js\n/**\n * Supreme Parallax feature flags (re-enable scroll without rebuilding from scratch).\n *\n * @package DiviSupreme\n */\n\n/**\n * When false: scroll UI, `data-parallax-scroll`, scroll listeners, and scroll multiplier\n * in `data-dsm-spx-inst-opts` are omitted. Mouse parallax only.\n *\n * @type {boolean}\n */\nconst DSM_SPX_SCROLL_FEATURE_ENABLED = false;\n;// ./packages/module-library/shared/dsm-supreme-parallax-extension-default-attrs.js\n/**\n * Default attrs for Supreme Parallax extension (merged on DSM modules in the module library store).\n *\n * @type {Record<string, unknown>}\n */\nconst dsmSupremeParallaxExtensionDefaultAttrs = {\n  dsm_spx_el_on: {\n    innerContent: {\n      desktop: {\n        value: 'off'\n      }\n    }\n  },\n  dsm_spx_mouse_multiplier: {\n    innerContent: {\n      desktop: {\n        value: '0.5'\n      }\n    }\n  },\n  dsm_spx_smoothing: {\n    innerContent: {\n      desktop: {\n        value: '0.1'\n      }\n    }\n  },\n  dsm_spx_center_mouse: {\n    innerContent: {\n      desktop: {\n        value: 'on'\n      }\n    }\n  },\n  dsm_spx_reset_mouse_leave: {\n    innerContent: {\n      desktop: {\n        value: 'on'\n      }\n    }\n  },\n  dsm_spx_depth: {\n    innerContent: {\n      desktop: {\n        value: '1'\n      }\n    }\n  },\n  dsm_spx_motion_ref: {\n    innerContent: {\n      desktop: {\n        value: 'section'\n      }\n    }\n  },\n  dsm_spx_axis: {\n    innerContent: {\n      desktop: {\n        value: 'both'\n      }\n    }\n  },\n  /** Legacy section master toggle — read-only for migrated layouts. */\n  dsm_spx_master: {\n    innerContent: {\n      desktop: {\n        value: 'off'\n      }\n    }\n  },\n  dsm_spx_scroll_multiplier: {\n    innerContent: {\n      desktop: {\n        value: '1'\n      }\n    }\n  },\n  dsm_spx_scroll: {\n    innerContent: {\n      desktop: {\n        value: ''\n      }\n    }\n  }\n};\n;// ./packages/module-library/shared/supreme-parallax-advanced-group.js\n// External library dependencies.\n\n\n// WordPress dependencies.\n\n\n\n\n\n\n\nconst spxDefaults = dsmSupremeParallaxExtensionDefaultAttrs;\n\n/**\n * Advanced → Mouse Parallax (DSM modules with React `settings.advanced` trees).\n *\n * @param {Object} props\n * @param {Object} props.attrs Module attrs.\n */\nfunction SupremeParallaxAdvancedGroupInner({\n  attrs\n}) {\n  const elOn = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_spx_el_on?.innerContent) === 'on';\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"dsmSupremeParallaxAdvanced\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Mouse Parallax', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_spx_el_on.innerContent\",\n    defaultAttr: spxDefaults.dsm_spx_el_on.innerContent,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enable Mouse Parallax', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Turn on mouse-driven parallax for this element per device. Tablet and phone inherit desktop when unset. Touch devices ignore mouse motion automatically.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      responsive: true\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_spx_mouse_multiplier.innerContent\",\n    defaultAttr: spxDefaults.dsm_spx_mouse_multiplier.innerContent,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Mouse strength', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('How much layers follow the cursor within this section. Typical starting value: 0.5.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: elOn\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 2,\n    step: 0.05,\n    defaultUnit: \"\",\n    allowedUnits: ['']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_spx_depth.innerContent\",\n    defaultAttr: spxDefaults.dsm_spx_depth.innerContent,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Depth', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('How strong this layer moves compared to others. Typical starting value: 1.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: elOn\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 10,\n    step: 0.1,\n    defaultUnit: \"\",\n    allowedUnits: ['']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_spx_motion_ref.innerContent\",\n    defaultAttr: spxDefaults.dsm_spx_motion_ref.innerContent,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Motion reference', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Section: motion follows the cursor inside this section. Viewport: motion follows the cursor across the browser window (this section’s layers only).', 'dsm-supreme-modules-pro-for-divi'),\n    visible: elOn\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      section: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Section', 'dsm-supreme-modules-pro-for-divi')\n      },\n      viewport: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Viewport', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_spx_smoothing.innerContent\",\n    defaultAttr: spxDefaults.dsm_spx_smoothing.innerContent,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Motion smoothness', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('How quickly layers ease toward the cursor. Try around 0.1 to start.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: elOn\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 1,\n    step: 0.05,\n    defaultUnit: \"\",\n    allowedUnits: ['']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_spx_center_mouse.innerContent\",\n    defaultAttr: spxDefaults.dsm_spx_center_mouse.innerContent,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Mouse from center', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('When on, movement is calculated from the middle of the section.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: elOn\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_spx_reset_mouse_leave.innerContent\",\n    defaultAttr: spxDefaults.dsm_spx_reset_mouse_leave.innerContent,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Relax when mouse leaves', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('When on, layers ease back when the cursor leaves the section.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: elOn\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_spx_axis.innerContent\",\n    defaultAttr: spxDefaults.dsm_spx_axis.innerContent,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Axis', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Choose whether motion is horizontal, vertical, or both.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: elOn\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      both: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Both', 'dsm-supreme-modules-pro-for-divi')\n      },\n      x: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Horizontal', 'dsm-supreme-modules-pro-for-divi')\n      },\n      y: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Vertical', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), DSM_SPX_SCROLL_FEATURE_ENABLED ? /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_spx_scroll_multiplier.innerContent\",\n    defaultAttr: spxDefaults.dsm_spx_scroll_multiplier.innerContent,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Scroll strength', 'dsm-supreme-modules-pro-for-divi'),\n    visible: elOn\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_spx_scroll.innerContent\",\n    defaultAttr: spxDefaults.dsm_spx_scroll.innerContent,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Custom scroll speed', 'dsm-supreme-modules-pro-for-divi'),\n    visible: elOn\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null))) : null);\n}\nconst SupremeParallaxAdvancedGroup = /*#__PURE__*/external_vendor_React_default().memo(SupremeParallaxAdvancedGroupInner);\n;// ./packages/module-library/shared/with-supreme-parallax-advanced-settings.js\n// External library dependencies.\n\n\n\n\n/**\n * Flatten top-level (and nested) fragments into a list of child nodes.\n *\n * @param {React.ReactNode} node Tree from `SettingsAdvanced( props )`.\n * @return {React.ReactNode[]}\n */\nfunction with_supreme_parallax_advanced_settings_flattenFragments(node) {\n  if (node == null || node === false) {\n    return [];\n  }\n  if (Array.isArray(node)) {\n    return node.flatMap(with_supreme_parallax_advanced_settings_flattenFragments);\n  }\n  if (/*#__PURE__*/external_vendor_React_default().isValidElement(node) && node.type === (external_vendor_React_default()).Fragment) {\n    return external_vendor_React_default().Children.toArray(node.props.children).flatMap(with_supreme_parallax_advanced_settings_flattenFragments);\n  }\n  return [node];\n}\n\n/**\n * Insert Mouse Parallax before Divi’s Visibility group.\n *\n * @param {React.ReactNode} tree       Output of the module’s SettingsAdvanced.\n * @param {React.ReactElement} insertion Element to insert.\n * @return {React.ReactElement}\n */\nfunction with_supreme_parallax_advanced_settings_insertBeforeVisibility(tree, insertion) {\n  const children = with_supreme_parallax_advanced_settings_flattenFragments(tree);\n  const visibilityIndex = children.findIndex(child => /*#__PURE__*/external_vendor_React_default().isValidElement(child) && child.type === external_divi_module_namespaceObject.VisibilitySettingsGroup);\n  if (visibilityIndex === -1) {\n    return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, children, insertion);\n  }\n  const next = [...children.slice(0, visibilityIndex), insertion, ...children.slice(visibilityIndex)];\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, next);\n}\n\n/**\n * Injects Advanced → Mouse Parallax for DSM modules that use a React `settings.advanced` tree.\n *\n * @param {React.ComponentType<Object>} AdvancedComponent Original SettingsAdvanced.\n * @return {React.ComponentType<Object>}\n */\nfunction withSupremeParallaxAdvancedSettings(AdvancedComponent) {\n  if (typeof AdvancedComponent !== 'function') {\n    return AdvancedComponent;\n  }\n  function WithSupremeParallaxAdvanced(props) {\n    const advancedTree = AdvancedComponent(props);\n    const parallax = /*#__PURE__*/external_vendor_React_default().createElement(SupremeParallaxAdvancedGroup, {\n      key: \"dsmSupremeParallaxAdvanced\",\n      attrs: props.attrs\n    });\n    return with_supreme_parallax_advanced_settings_insertBeforeVisibility(advancedTree, parallax);\n  }\n  const name = AdvancedComponent.displayName || AdvancedComponent.name || 'Advanced';\n  WithSupremeParallaxAdvanced.displayName = `WithSupremeParallaxAdvanced(${name})`;\n  return WithSupremeParallaxAdvanced;\n}\n;// ./packages/module-library/shared/dsm-line-hover-animation-module-default-attrs.js\n/**\n * Default attrs for Divi Supreme Line Hover Animation extension (merged on DSM modules only).\n *\n * @type {Record<string, unknown>}\n */\nconst dsmLineHoverAnimationModuleDefaultAttrs = {\n  dsm_lhe_use: {\n    innerContent: {\n      desktop: {\n        value: 'off'\n      }\n    }\n  },\n  dsm_lhe_animation_effect: {\n    innerContent: {\n      desktop: {\n        value: 'underline_sweep_right'\n      }\n    }\n  },\n  dsm_lhe_animation_color: {\n    innerContent: {\n      desktop: {\n        value: '#2EA3F2'\n      },\n      tablet: {\n        value: '#2EA3F2'\n      },\n      phone: {\n        value: '#2EA3F2'\n      }\n    }\n  },\n  dsm_lhe_animation_duration: {\n    innerContent: {\n      desktop: {\n        value: '300ms'\n      }\n    }\n  },\n  dsm_lhe_animation_delay: {\n    innerContent: {\n      desktop: {\n        value: '0ms'\n      }\n    }\n  },\n  dsm_lhe_menu_active: {\n    innerContent: {\n      desktop: {\n        value: 'on'\n      }\n    }\n  },\n  dsm_lhe_menu_active_color: {\n    innerContent: {\n      desktop: {\n        value: ''\n      }\n    }\n  }\n};\n;// ./packages/module-library/shared/get-line-hover-animation-effect-options.js\n\n\n/** Stable reference for SelectContainer — avoids rebuilding labels every Design panel render. */\nlet _cachedLineHoverEffectOptions = null;\n\n/**\n * Select options keyed by stored animation slug (`dsm_lhe_animation_effect`).\n * Shared by the Line Hover Animation extension VB fields and DSM module Design injection.\n *\n * @return {Record<string, { label: string }>}\n */\nfunction getLineHoverAnimationEffectOptions() {\n  if (_cachedLineHoverEffectOptions) {\n    return _cachedLineHoverEffectOptions;\n  }\n  _cachedLineHoverEffectOptions = {\n    underline_sweep_right: {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Underline Sweep Right', 'dsm-supreme-modules-pro-for-divi')\n    },\n    double_line_reveal: {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Double Line Reveal', 'dsm-supreme-modules-pro-for-divi')\n    },\n    double_line_sweep_right: {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Double Line Sweep Right', 'dsm-supreme-modules-pro-for-divi')\n    },\n    underline_swipe_text_shift: {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Underline Swipe & Text Shift', 'dsm-supreme-modules-pro-for-divi')\n    },\n    line_sweep_across: {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Line Sweep Across', 'dsm-supreme-modules-pro-for-divi')\n    },\n    lines_connect: {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Lines Connect', 'dsm-supreme-modules-pro-for-divi')\n    },\n    lines_pop_up: {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Lines Pop up', 'dsm-supreme-modules-pro-for-divi')\n    },\n    dashed_line_animate: {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Dashed Line Animate', 'dsm-supreme-modules-pro-for-divi')\n    },\n    underline_shift: {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Underline Shift', 'dsm-supreme-modules-pro-for-divi')\n    },\n    glitch_effect: {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Glitch Effect', 'dsm-supreme-modules-pro-for-divi')\n    },\n    upward_line_sweep: {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Upward Line Sweep', 'dsm-supreme-modules-pro-for-divi')\n    },\n    line_bends_animation: {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Line Bends Animation', 'dsm-supreme-modules-pro-for-divi')\n    },\n    line_expands_inward: {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Line Expands Inward', 'dsm-supreme-modules-pro-for-divi')\n    },\n    zigzag_line_animation: {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zigzag Line Animation', 'dsm-supreme-modules-pro-for-divi')\n    },\n    pulse_line_effect: {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pulse Line Effect', 'dsm-supreme-modules-pro-for-divi')\n    }\n  };\n  return _cachedLineHoverEffectOptions;\n}\n;// ./packages/module-library/shared/line-hover-animation-design-group.js\n// External library dependencies.\n\n\n// WordPress dependencies.\n\n\n\n\n\n\n\nconst lheDefaults = dsmLineHoverAnimationModuleDefaultAttrs;\nconst lineHoverEffectOpts = getLineHoverAnimationEffectOptions();\n\n/**\n * Design → Line Hover Animation — same attrs as SSR / `LineHoverAnimation.php`.\n *\n * Injected via {@see withLineHoverAnimationDesignSettings} because Divi skips `moduleSettings.groups`\n * for DSM modules that use a React `settings.design` tree (same rationale as Popup on Advanced).\n *\n * @param {Object} props\n * @param {Object} props.attrs Module attrs.\n */\nfunction LineHoverAnimationDesignGroupInner({\n  attrs\n}) {\n  const lineHoverToggleOn = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_lhe_use?.innerContent) === 'on';\n  const menuActiveOn = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_lhe_menu_active?.innerContent) !== 'off';\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"dsmSupremeLineHoverAnimationDesign\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Line Hover Animation', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_lhe_use.innerContent\",\n    defaultAttr: lheDefaults.dsm_lhe_use.innerContent,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Line Hover Animation', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Applies hover line effects to anchor links in this module, including Divi button links (CSS class et_pb_button). Matches the standalone Line Hover module presets.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_lhe_animation_effect.innerContent\",\n    defaultAttr: lheDefaults.dsm_lhe_animation_effect.innerContent,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animation Effect', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    visible: lineHoverToggleOn\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: lineHoverEffectOpts\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_lhe_animation_color.innerContent\",\n    defaultAttr: lheDefaults.dsm_lhe_animation_color.innerContent,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animation Line Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hex, RGB/HSL functions, keywords (inherit/transparent/currentColor), and CSS variables (e.g. var(--your-token)). Divi global colors are supported.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: lineHoverToggleOn\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_lhe_animation_duration.innerContent\",\n    defaultAttr: lheDefaults.dsm_lhe_animation_duration.innerContent,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animation Duration', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    visible: lineHoverToggleOn\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 100,\n    max: 10000,\n    step: 100,\n    defaultUnit: \"ms\",\n    allowedUnits: ['ms']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_lhe_animation_delay.innerContent\",\n    defaultAttr: lheDefaults.dsm_lhe_animation_delay.innerContent,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animation Delay', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    visible: lineHoverToggleOn\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 10000,\n    step: 100,\n    defaultUnit: \"ms\",\n    allowedUnits: ['ms']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_lhe_menu_active.innerContent\",\n    defaultAttr: lheDefaults.dsm_lhe_menu_active.innerContent,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Active State on Current Page', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Menu modules only: keeps the line drawn on the current page menu item (current-menu-item). Does not apply to parent/ancestor items. Frontend only — the builder preview may not show WordPress active classes.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: lineHoverToggleOn\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_lhe_menu_active_color.innerContent\",\n    defaultAttr: lheDefaults.dsm_lhe_menu_active_color.innerContent,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Active Menu Line Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Optional. Leave empty to use Animation Line Color for the active menu item.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: lineHoverToggleOn && menuActiveOn\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)));\n}\nconst LineHoverAnimationDesignGroup = /*#__PURE__*/external_vendor_React_default().memo(LineHoverAnimationDesignGroupInner);\n;// ./packages/module-library/shared/with-line-hover-animation-design-settings.js\n// External library dependencies.\n\n\n\n\n/**\n * Flatten top-level (and nested) fragments into a list of child nodes.\n *\n * @param {React.ReactNode} node Tree from `SettingsDesign( props )`.\n * @return {React.ReactNode[]}\n */\nfunction with_line_hover_animation_design_settings_flattenFragments(node) {\n  if (node == null || node === false) {\n    return [];\n  }\n  if (Array.isArray(node)) {\n    return node.flatMap(with_line_hover_animation_design_settings_flattenFragments);\n  }\n  if (/*#__PURE__*/external_vendor_React_default().isValidElement(node) && node.type === (external_vendor_React_default()).Fragment) {\n    return external_vendor_React_default().Children.toArray(node.props.children).flatMap(with_line_hover_animation_design_settings_flattenFragments);\n  }\n  return [node];\n}\n\n/**\n * Insert Line Hover Animation before Divi’s Animation group (`designAnimation`).\n * Modules without `AnimationGroup` get the extension group at the end of the Design tree.\n *\n * @param {React.ReactNode} tree       Output of the module’s `SettingsDesign`.\n * @param {React.ReactElement} insertion Element to insert.\n * @return {React.ReactElement}\n */\nfunction insertBeforeAnimation(tree, insertion) {\n  const children = with_line_hover_animation_design_settings_flattenFragments(tree);\n  const animationIndex = children.findIndex(child => /*#__PURE__*/external_vendor_React_default().isValidElement(child) && child.type === external_divi_module_namespaceObject.AnimationGroup);\n  if (animationIndex === -1) {\n    return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, children, insertion);\n  }\n  const next = [...children.slice(0, animationIndex), insertion, ...children.slice(animationIndex)];\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, next);\n}\n\n/**\n * Injects Design → Line Hover Animation before `@divi/module`’s `<AnimationGroup />`.\n *\n * Divi merges `metadata.settings.groups` only for metadata-driven tabs. Supreme DSM modules expose\n * a React settings tree, so the extension hook from `packages/extensions/line-hover-animation/group.js`\n * alone does not render — mirror {@see withPopupAdvancedSettings}.\n *\n * Wrapped `settings.design` helpers must behave like Popup (call as plain function components where used).\n *\n * @param {React.ComponentType<Object>} DesignComponent Original SettingsDesign-like component.\n * @return {React.ComponentType<Object>}\n */\nfunction withLineHoverAnimationDesignSettings(DesignComponent) {\n  if (typeof DesignComponent !== 'function') {\n    return DesignComponent;\n  }\n  function WithLineHoverAnimationDesign(props) {\n    const designTree = DesignComponent(props);\n    const insertion = /*#__PURE__*/external_vendor_React_default().createElement(LineHoverAnimationDesignGroup, {\n      key: \"dsmSupremeLineHoverAnimationDesignWrapped\",\n      attrs: props.attrs\n    });\n    return insertBeforeAnimation(designTree, insertion);\n  }\n  const baseName = DesignComponent.displayName || DesignComponent.name || 'Design';\n  WithLineHoverAnimationDesign.displayName = `WithLineHoverAnimationDesign(${baseName})`;\n  return WithLineHoverAnimationDesign;\n}\n;// ./packages/extensions/shared/extension-runtime.js\n/**\n * Shared extension runtime helpers (VB performance + gating).\n *\n * @package DiviSupreme\n */\n\n/**\n * Opt-in extension: enabled only when PHP sets the flag to true (settings default off).\n *\n * @param {string}      configKey  Key on `window.diviSupreme5` (e.g. `dsmImageParallaxExtensionEnabled`).\n * @param {string}      windowFlag Optional `window.__dsm*ExtensionEnabled` override.\n * @return {boolean}\n */\nfunction dsmExtensionOptInEnabled(configKey, windowFlag) {\n  if (windowFlag && typeof window[windowFlag] === 'boolean') {\n    return window[windowFlag];\n  }\n  return window.diviSupreme5?.[configKey] === true;\n}\n\n/**\n * Opt-out extension: enabled when the flag is not explicitly false (legacy defaults on).\n *\n * @param {string}      configKey  Key on `window.diviSupreme5`.\n * @param {string}      windowFlag Optional `window.__dsm*ExtensionEnabled` override.\n * @return {boolean}\n */\nfunction dsmExtensionOptOutEnabled(configKey, windowFlag) {\n  if (windowFlag && typeof window[windowFlag] === 'boolean') {\n    return window[windowFlag];\n  }\n  return window.diviSupreme5?.[configKey] !== false;\n}\n\n/**\n * @return {boolean}\n */\nfunction dsmPopupExtensionGloballyEnabled() {\n  return dsmExtensionOptOutEnabled('dsmSupremePopupExtensionEnabled', '__dsmSupremePopupExtensionEnabled');\n}\n\n/**\n * @return {boolean}\n */\nfunction dsmSupremeParallaxExtensionGloballyEnabled() {\n  return dsmExtensionOptOutEnabled('dsmSupremeParallaxExtensionEnabled', '__dsmSupremeParallaxExtensionEnabled');\n}\n\n/**\n * @return {boolean}\n */\nfunction dsmLineHoverAnimationExtensionGloballyEnabled() {\n  return dsmExtensionOptOutEnabled('dsmSupremeLineHoverAnimationExtensionEnabled', '__dsmSupremeLineHoverAnimationExtensionEnabled');\n}\n\n/**\n * @return {boolean}\n */\nfunction dsmImageParallaxExtensionGloballyEnabled() {\n  return dsmExtensionOptInEnabled('dsmImageParallaxExtensionEnabled', '__dsmImageParallaxExtensionEnabled');\n}\n\n/**\n * @return {boolean}\n */\nfunction dsmCustomCursorExtensionGloballyEnabled() {\n  return dsmExtensionOptInEnabled('dsmCustomCursorExtensionEnabled', '__dsmCustomCursorExtensionEnabled');\n}\n\n/**\n * @return {boolean}\n */\nfunction dsmIconLibrariesExtensionGloballyEnabled() {\n  return dsmExtensionOptInEnabled('dsmIconLibrariesExtensionEnabled', '__dsmIconLibrariesExtensionEnabled');\n}\n\n/**\n * Coalesce high-frequency VB callbacks (store subscribe, MutationObserver) to one frame.\n *\n * @param {() => void} fn\n * @return {() => void}\n */\nfunction dsmExtensionCreateRafCoalescer(fn) {\n  let queued = false;\n  return () => {\n    if (queued) {\n      return;\n    }\n    queued = true;\n    window.requestAnimationFrame(() => {\n      queued = false;\n      fn();\n    });\n  };\n}\n;// ./packages/extensions/image-parallax/defaults.js\n/**\n * Image Parallax — defaults aligned with simpleParallax.js.\n *\n * @see https://github.com/geosigno/simpleParallax.js/#settings\n *\n * @package DiviSupreme\n */\n\n/**\n * simpleParallax.js default orientation (`orientation` setting).\n *\n * @type {'up'}\n */\nconst DSM_IPX_DEFAULT_ORIENTATION = 'up';\n\n/** @type {readonly string[]} */\nconst DSM_IPX_ORIENTATIONS = /** @type {const} */['up', 'right', 'down', 'left', 'up left', 'up right', 'down left', 'down right'];\n\n/**\n * Capitalize orientation labels for UI (stored values stay lowercase for simpleParallax.js).\n *\n * @param {string} orientation\n * @return {string}\n */\nfunction dsmIpxFormatOrientationLabel(orientation) {\n  return String(orientation).split(' ').filter(part => part.length > 0).map(part => part.charAt(0).toUpperCase() + part.slice(1)).join(' ');\n}\n\n/** @type {Record<string, { label: string }>} */\nconst DSM_IPX_ORIENTATION_SELECT_OPTIONS = Object.fromEntries(DSM_IPX_ORIENTATIONS.map(orientation => [orientation, {\n  label: dsmIpxFormatOrientationLabel(orientation)\n}]));\n\n/**\n * Stored select value when the parallax engine should use its built-in curve.\n *\n * @type {'default'}\n */\nconst DSM_IPX_TRANSITION_DEFAULT = 'default';\n\n/**\n * Placeholder / label for the default transition curve in the Visual Builder.\n *\n * @type {'Smooth default'}\n */\nconst DSM_IPX_TRANSITION_PLACEHOLDER = 'Smooth default';\n\n/**\n * CSS transition timing values for the Parallax Transition dropdown.\n *\n * @type {readonly string[]}\n */\nconst DSM_IPX_TRANSITIONS = /** @type {const} */['ease', 'ease-in', 'ease-out', 'ease-in-out', 'linear', 'cubic-bezier(0,0,0,1)', DSM_IPX_TRANSITION_DEFAULT];\n\n/** @type {Record<string, string>} */\nconst DSM_IPX_TRANSITION_LABELS = {\n  ease: 'Ease',\n  'ease-in': 'Ease In',\n  'ease-out': 'Ease Out',\n  'ease-in-out': 'Ease In Out',\n  linear: 'Linear',\n  'cubic-bezier(0,0,0,1)': 'Cubic Bezier',\n  default: DSM_IPX_TRANSITION_PLACEHOLDER\n};\n\n/** @type {Record<string, { label: string }>} */\nconst DSM_IPX_TRANSITION_SELECT_OPTIONS = Object.fromEntries(DSM_IPX_TRANSITIONS.map(transition => {\n  var _DSM_IPX_TRANSITION_L;\n  return [transition, {\n    label: (_DSM_IPX_TRANSITION_L = DSM_IPX_TRANSITION_LABELS[transition]) !== null && _DSM_IPX_TRANSITION_L !== void 0 ? _DSM_IPX_TRANSITION_L : transition\n  }];\n}));\n\n/**\n * @param {string} transition Stored dropdown value.\n * @return {boolean}\n */\nfunction dsmIpxTransitionIsAllowed(transition) {\n  return DSM_IPX_TRANSITIONS.includes(/** @type {typeof DSM_IPX_TRANSITIONS[number]} */transition);\n}\n\n/**\n * @param {unknown} raw Stored or legacy value.\n * @return {string}\n */\nfunction dsmIpxNormalizeTransitionStored(raw) {\n  const trimmed = String(raw !== null && raw !== void 0 ? raw : '').trim();\n  if (trimmed === '' || trimmed === DSM_IPX_TRANSITION_DEFAULT) {\n    return DSM_IPX_TRANSITION_DEFAULT;\n  }\n  return dsmIpxTransitionIsAllowed(trimmed) ? trimmed : DSM_IPX_TRANSITION_DEFAULT;\n}\n\n/**\n * @param {string} stored Stored dropdown value.\n * @return {string} Value for the parallax engine (`''` = library default).\n */\nfunction dsmIpxTransitionToEngineValue(stored) {\n  if (stored === DSM_IPX_TRANSITION_DEFAULT || stored.trim() === '') {\n    return '';\n  }\n  return stored;\n}\n\n/**\n * @typedef {{\n *   on: 'on'|'off',\n *   orientation: string,\n *   scale: string,\n *   delay: string,\n *   transition: string,\n *   overflow: 'on'|'off',\n *   maxTransition: string,\n * }} DsmIpxFieldConfig\n */\n\n/** @type {DsmIpxFieldConfig} */\nconst DSM_IPX_FIELD_DEFAULTS = Object.freeze({\n  on: 'off',\n  orientation: DSM_IPX_DEFAULT_ORIENTATION,\n  scale: '1.3',\n  delay: '0',\n  transition: DSM_IPX_TRANSITION_DEFAULT,\n  overflow: 'off',\n  maxTransition: '0'\n});\n\n/**\n * @param {Record<string, unknown>|null|undefined} raw\n * @return {DsmIpxFieldConfig}\n */\nfunction dsmIpxNormalizeFieldConfig(raw) {\n  var _src$orientation, _src$on, _src$scale, _src$delay, _src$overflow, _src$maxTransition;\n  const src = raw && typeof raw === 'object' ? raw : {};\n  const orientationRaw = String((_src$orientation = src.orientation) !== null && _src$orientation !== void 0 ? _src$orientation : DSM_IPX_DEFAULT_ORIENTATION).trim();\n  const transitionNorm = dsmIpxNormalizeTransitionStored(src.transition);\n\n  /** @type {DsmIpxFieldConfig} */\n  const normalized = {\n    on: String((_src$on = src.on) !== null && _src$on !== void 0 ? _src$on : 'off').toLowerCase() === 'on' ? 'on' : 'off',\n    orientation: DSM_IPX_ORIENTATIONS.includes(/** @type {typeof DSM_IPX_ORIENTATIONS[number]} */orientationRaw) ? orientationRaw : DSM_IPX_DEFAULT_ORIENTATION,\n    scale: String((_src$scale = src.scale) !== null && _src$scale !== void 0 ? _src$scale : DSM_IPX_FIELD_DEFAULTS.scale),\n    delay: String((_src$delay = src.delay) !== null && _src$delay !== void 0 ? _src$delay : DSM_IPX_FIELD_DEFAULTS.delay),\n    transition: transitionNorm,\n    overflow: String((_src$overflow = src.overflow) !== null && _src$overflow !== void 0 ? _src$overflow : 'off').toLowerCase() === 'on' ? 'on' : 'off',\n    maxTransition: String((_src$maxTransition = src.maxTransition) !== null && _src$maxTransition !== void 0 ? _src$maxTransition : DSM_IPX_FIELD_DEFAULTS.maxTransition)\n  };\n  return normalized;\n}\n\n/**\n * @param {DsmIpxFieldConfig} config\n * @return {Record<string, string|number|boolean>}\n */\nfunction dsmIpxFieldConfigToSimpleParallaxOptions(config) {\n  const scale = parseFloat(config.scale);\n  const delay = parseFloat(config.delay);\n  const maxTransition = parseFloat(config.maxTransition);\n\n  /** @type {Record<string, string|number|boolean>} */\n  const opts = {\n    orientation: config.orientation,\n    scale: Number.isFinite(scale) && scale > 1 ? scale : 1.3,\n    delay: Number.isFinite(delay) && delay >= 0 ? delay : 0,\n    overflow: config.overflow === 'on'\n  };\n  const engineTransition = dsmIpxTransitionToEngineValue(config.transition);\n  if (engineTransition !== '') {\n    opts.transition = engineTransition;\n  }\n  if (Number.isFinite(maxTransition) && maxTransition >= 1 && maxTransition <= 99) {\n    opts.maxTransition = maxTransition;\n  }\n  return opts;\n}\n;// ./packages/extensions/image-parallax/read-inner-plain.js\n/**\n * Read plain `innerContent` leaf values outside React render (VB `visible` callbacks).\n *\n * @package DiviSupreme\n */\n\n/**\n * @param {unknown} innerContentNode\n * @return {unknown}\n */\nfunction dsmIpxInnerDesktopPlainValue(innerContentNode) {\n  if (!innerContentNode || typeof innerContentNode !== 'object') {\n    return undefined;\n  }\n  const desktop = /** @type {{ desktop?: unknown }} */innerContentNode.desktop;\n  if (!desktop || typeof desktop !== 'object') {\n    return undefined;\n  }\n  return /** @type {{ value?: unknown }} */desktop.value;\n}\n\n/**\n * @param {unknown} innerContentNode\n * @param {string}     subKey\n * @return {unknown}\n */\nfunction dsmIpxInnerDesktopPlainSubValue(innerContentNode, subKey) {\n  const value = dsmIpxInnerDesktopPlainValue(innerContentNode);\n  if (!value || typeof value !== 'object' || Array.isArray(value)) {\n    return undefined;\n  }\n  return /** @type {Record<string, unknown>} */value[subKey];\n}\n;// ./packages/extensions/image-parallax/image-parallax-vb-default-attrs.js\n/**\n * Visual Builder `defaultAttr` for Image Parallax compound `innerContent` fields.\n *\n * @package DiviSupreme\n */\n\n\n\n/**\n * Full `innerContent` default for `dsm_ipx_*` attrs (all `subName` fields share this).\n *\n * @return {{ desktop: { value: typeof DSM_IPX_FIELD_DEFAULTS } }}\n */\nfunction dsmIpxParallaxInnerContentDefaultAttr() {\n  return {\n    desktop: {\n      value: {\n        on: DSM_IPX_FIELD_DEFAULTS.on,\n        orientation: DSM_IPX_FIELD_DEFAULTS.orientation,\n        scale: DSM_IPX_FIELD_DEFAULTS.scale,\n        delay: DSM_IPX_FIELD_DEFAULTS.delay,\n        overflow: DSM_IPX_FIELD_DEFAULTS.overflow,\n        transition: DSM_IPX_FIELD_DEFAULTS.transition,\n        maxTransition: DSM_IPX_FIELD_DEFAULTS.maxTransition\n      }\n    }\n  };\n}\n;// ./packages/extensions/image-parallax/image-parallax-settings.js\n/**\n * Image Parallax — native Divi moduleAttributes field schema (below image upload fields).\n *\n * @package DiviSupreme\n */\n\n\n\n\n\n\n/**\n * @typedef {{\n *   elementKey: string,\n *   itemKey: string,\n *   item: Record<string, unknown>,\n * }} DsmIpxImageUploadDiscovery\n */\n\n/**\n * @param {string} elementKey\n * @param {string} itemKey\n * @return {string}\n */\nfunction dsmIpxParallaxAttrKey(elementKey, itemKey) {\n  return `dsm_ipx_${elementKey}_${itemKey}`;\n}\n\n/**\n * @param {string} attrKey\n * @return {string}\n */\nfunction dsmIpxFieldKeyFromParallaxAttrKey(attrKey) {\n  if (!attrKey.startsWith('dsm_ipx_')) {\n    return '';\n  }\n  return attrKey.slice('dsm_ipx_'.length);\n}\n\n/**\n * @param {Record<string, unknown>} attributes\n * @return {DsmIpxImageUploadDiscovery[]}\n */\nfunction dsmIpxDiscoverImageFieldTargets(attributes) {\n  /** @type {DsmIpxImageUploadDiscovery[]} */\n  const discoveries = [...dsmIpxDiscoverImageUploadFields(attributes)];\n  if (!attributes || typeof attributes !== 'object') {\n    return discoveries;\n  }\n  const hasDiscovery = (elementKey, itemKey) => discoveries.some(entry => entry.elementKey === elementKey && entry.itemKey === itemKey);\n  for (const [elementKey, elementDef] of Object.entries(attributes)) {\n    if (elementKey === 'module' || !elementDef || typeof elementDef !== 'object') {\n      continue;\n    }\n    const typed = /** @type {{ elementType?: string, inlineEditor?: string }} */\n    elementDef;\n    const isImageElement = typed.elementType === 'image' || typed.inlineEditor === 'UploadContainer';\n    if (!isImageElement || hasDiscovery(elementKey, 'src')) {\n      continue;\n    }\n    discoveries.push({\n      elementKey,\n      itemKey: 'src',\n      item: {\n        groupSlug: '',\n        priority: 15\n      }\n    });\n  }\n  return discoveries;\n}\n\n/**\n * @param {Record<string, unknown>} attributes\n * @return {DsmIpxImageUploadDiscovery[]}\n */\nfunction dsmIpxDiscoverImageUploadFields(attributes) {\n  /** @type {DsmIpxImageUploadDiscovery[]} */\n  const discoveries = [];\n  if (!attributes || typeof attributes !== 'object') {\n    return discoveries;\n  }\n  for (const [elementKey, elementDef] of Object.entries(attributes)) {\n    if (elementKey === 'module' || !elementDef || typeof elementDef !== 'object') {\n      continue;\n    }\n    const items = /** @type {{ settings?: { innerContent?: { items?: unknown } } }} */elementDef.settings?.innerContent?.items;\n    if (!items || typeof items !== 'object' || Array.isArray(items)) {\n      continue;\n    }\n    for (const [itemKey, item] of Object.entries(/** @type {Record<string, unknown>} */items)) {\n      if (!item || typeof item !== 'object') {\n        continue;\n      }\n      const componentName = /** @type {{ component?: { name?: string } }} */item.component?.name;\n      if (componentName !== 'divi/upload') {\n        continue;\n      }\n      discoveries.push({\n        elementKey,\n        itemKey,\n        item: (/** @type {Record<string, unknown>} */item)\n      });\n    }\n  }\n  return discoveries;\n}\n\n/**\n * @param {string} attrKey\n * @return {(dep: { attrs?: Record<string, unknown> }) => boolean}\n */\nfunction dsmIpxCreateParallaxOnVisible(attrKey) {\n  return dep => {\n    const inner = dep?.attrs?.[attrKey]?.innerContent;\n    const on = dsmIpxInnerDesktopPlainSubValue(inner, 'on');\n    return String(on !== null && on !== void 0 ? on : 'off').toLowerCase() === 'on';\n  };\n}\n\n/**\n * @param {DsmIpxImageUploadDiscovery} discovery\n * @return {Record<string, unknown>}\n */\nfunction dsmIpxBuildParallaxAttrDefinition(discovery) {\n  var _item$groupSlug;\n  const {\n    elementKey,\n    itemKey,\n    item\n  } = discovery;\n  const attrKey = dsmIpxParallaxAttrKey(elementKey, itemKey);\n  const groupSlug = String((_item$groupSlug = item.groupSlug) !== null && _item$groupSlug !== void 0 ? _item$groupSlug : '');\n  const basePriority = typeof item.priority === 'number' ? item.priority + 5 : 15;\n  const elOn = dsmIpxCreateParallaxOnVisible(attrKey);\n  const ipxDefaultAttr = dsmIpxParallaxInnerContentDefaultAttr();\n  const orientationPlaceholder = dsmIpxFormatOrientationLabel(DSM_IPX_DEFAULT_ORIENTATION);\n  const transitionPlaceholder = (0,external_window_vendor_wp_i18n_namespaceObject.__)(DSM_IPX_TRANSITION_PLACEHOLDER, 'dsm-supreme-modules-pro-for-divi');\n  return {\n    [attrKey]: {\n      type: 'object',\n      settings: {\n        innerContent: {\n          groupType: 'group-items',\n          items: {\n            on: {\n              groupSlug,\n              attrName: `${attrKey}.innerContent`,\n              subName: 'on',\n              label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Parallax', 'dsm-supreme-modules-pro-for-divi'),\n              description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Scroll parallax for this image only. Does not apply to CSS background images.', 'dsm-supreme-modules-pro-for-divi'),\n              render: true,\n              priority: basePriority,\n              features: {\n                responsive: false,\n                hover: false,\n                sticky: false\n              },\n              component: {\n                name: 'divi/toggle',\n                type: 'field'\n              },\n              defaultAttr: ipxDefaultAttr\n            },\n            orientation: {\n              groupSlug,\n              attrName: `${attrKey}.innerContent`,\n              subName: 'orientation',\n              label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Parallax Orientation', 'dsm-supreme-modules-pro-for-divi'),\n              description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Scroll direction for the parallax effect. Default: Up (simpleParallax.js).', 'dsm-supreme-modules-pro-for-divi'),\n              render: true,\n              priority: basePriority + 1,\n              visible: elOn,\n              features: {\n                responsive: false,\n                hover: false,\n                sticky: false\n              },\n              component: {\n                name: 'divi/select',\n                type: 'field',\n                props: {\n                  options: DSM_IPX_ORIENTATION_SELECT_OPTIONS,\n                  placeholder: orientationPlaceholder\n                }\n              },\n              defaultAttr: ipxDefaultAttr\n            },\n            scale: {\n              groupSlug,\n              attrName: `${attrKey}.innerContent`,\n              subName: 'scale',\n              label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Parallax Scale', 'dsm-supreme-modules-pro-for-divi'),\n              description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('How much the image scales while scrolling (simpleParallax scale).', 'dsm-supreme-modules-pro-for-divi'),\n              render: true,\n              priority: basePriority + 2,\n              visible: elOn,\n              features: {\n                responsive: false,\n                hover: false,\n                sticky: false\n              },\n              component: {\n                name: 'divi/range',\n                type: 'field',\n                props: {\n                  min: 1,\n                  max: 3,\n                  step: 0.1,\n                  defaultUnit: '',\n                  allowedUnits: ['']\n                }\n              },\n              defaultAttr: ipxDefaultAttr\n            },\n            delay: {\n              groupSlug,\n              attrName: `${attrKey}.innerContent`,\n              subName: 'delay',\n              label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Parallax Delay (s)', 'dsm-supreme-modules-pro-for-divi'),\n              render: true,\n              priority: basePriority + 3,\n              visible: elOn,\n              features: {\n                responsive: false,\n                hover: false,\n                sticky: false\n              },\n              component: {\n                name: 'divi/range',\n                type: 'field',\n                props: {\n                  min: 0,\n                  max: 5,\n                  step: 0.05,\n                  defaultUnit: 's',\n                  allowedUnits: ['s']\n                }\n              },\n              defaultAttr: ipxDefaultAttr\n            },\n            transition: {\n              groupSlug,\n              attrName: `${attrKey}.innerContent`,\n              subName: 'transition',\n              label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Parallax Transition', 'dsm-supreme-modules-pro-for-divi'),\n              description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Easing curve applied while the image moves during scroll.', 'dsm-supreme-modules-pro-for-divi'),\n              render: true,\n              priority: basePriority + 4,\n              visible: elOn,\n              features: {\n                responsive: false,\n                hover: false,\n                sticky: false\n              },\n              component: {\n                name: 'divi/select',\n                type: 'field',\n                props: {\n                  options: DSM_IPX_TRANSITION_SELECT_OPTIONS,\n                  placeholder: transitionPlaceholder\n                }\n              },\n              defaultAttr: ipxDefaultAttr\n            },\n            maxTransition: {\n              groupSlug,\n              attrName: `${attrKey}.innerContent`,\n              subName: 'maxTransition',\n              label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Parallax Max Transition (%)', 'dsm-supreme-modules-pro-for-divi'),\n              description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Caps how much of the scroll range drives the effect (1–99). Use 0 for no limit.', 'dsm-supreme-modules-pro-for-divi'),\n              render: true,\n              priority: basePriority + 5,\n              visible: elOn,\n              features: {\n                responsive: false,\n                hover: false,\n                sticky: false\n              },\n              component: {\n                name: 'divi/range',\n                type: 'field',\n                props: {\n                  min: 0,\n                  max: 99,\n                  step: 1,\n                  defaultUnit: '',\n                  allowedUnits: ['']\n                }\n              },\n              defaultAttr: ipxDefaultAttr\n            },\n            overflow: {\n              groupSlug,\n              attrName: `${attrKey}.innerContent`,\n              subName: 'overflow',\n              label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Parallax Overflow', 'dsm-supreme-modules-pro-for-divi'),\n              description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Allow the scaled image to extend outside its box.', 'dsm-supreme-modules-pro-for-divi'),\n              render: true,\n              priority: basePriority + 6,\n              visible: elOn,\n              features: {\n                responsive: false,\n                hover: false,\n                sticky: false\n              },\n              component: {\n                name: 'divi/toggle',\n                type: 'field'\n              },\n              defaultAttr: ipxDefaultAttr\n            }\n          }\n        }\n      },\n      childrenSanitizer: 'et_core_esc_previously'\n    }\n  };\n}\n\n/**\n * @param {Record<string, unknown>} attributes\n * @return {Record<string, unknown>}\n */\nfunction dsmIpxMergeParallaxSettingsIntoAttributes(attributes) {\n  const discoveries = dsmIpxDiscoverImageFieldTargets(attributes);\n  if (discoveries.length === 0) {\n    return attributes;\n  }\n\n  /** @type {Record<string, unknown>} */\n  let merged = {\n    ...attributes\n  };\n  for (const discovery of discoveries) {\n    merged = {\n      ...merged,\n      ...dsmIpxBuildParallaxAttrDefinition(discovery)\n    };\n  }\n  return merged;\n}\n\n/**\n * @param {Record<string, unknown>} defaultAttrs\n * @param {Record<string, unknown>} attributes\n * @return {Record<string, unknown>}\n */\nfunction dsmIpxMergeParallaxDefaultAttrs(defaultAttrs, attributes) {\n  const discoveries = dsmIpxDiscoverImageFieldTargets(attributes);\n  if (discoveries.length === 0) {\n    return defaultAttrs;\n  }\n\n  /** @type {Record<string, unknown>} */\n  const merged = {\n    ...(defaultAttrs !== null && defaultAttrs !== void 0 ? defaultAttrs : {})\n  };\n  for (const {\n    elementKey,\n    itemKey\n  } of discoveries) {\n    const attrKey = dsmIpxParallaxAttrKey(elementKey, itemKey);\n    if (merged[attrKey]) {\n      continue;\n    }\n    merged[attrKey] = {\n      innerContent: {\n        desktop: {\n          value: {\n            on: DSM_IPX_FIELD_DEFAULTS.on,\n            orientation: DSM_IPX_FIELD_DEFAULTS.orientation,\n            scale: DSM_IPX_FIELD_DEFAULTS.scale,\n            delay: DSM_IPX_FIELD_DEFAULTS.delay,\n            overflow: DSM_IPX_FIELD_DEFAULTS.overflow,\n            transition: DSM_IPX_FIELD_DEFAULTS.transition,\n            maxTransition: DSM_IPX_FIELD_DEFAULTS.maxTransition\n          }\n        }\n      }\n    };\n  }\n  return merged;\n}\n;// ./packages/module-library/shared/image-parallax-content-fields.js\n// External library dependencies.\n\n\n// WordPress dependencies.\n\n\n\n\n\n\n\n\n/**\n * Content-tab Image Parallax controls for one `<img>` upload field.\n *\n * @param {Object} props\n * @param {string} props.elementKey Module image attr key (e.g. `blob_image`, `image`).\n * @param {Object} props.attrs      Module attrs from settings panel.\n */\nfunction ImageParallaxContentFields({\n  elementKey,\n  attrs\n}) {\n  var _parallaxValue$on;\n  const parallaxAttrKey = dsmIpxParallaxAttrKey(elementKey, 'src');\n  const innerAttrName = `${parallaxAttrKey}.innerContent`;\n  const ipxDefaultAttr = dsmIpxParallaxInnerContentDefaultAttr();\n  const parallaxValue = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.[parallaxAttrKey]?.innerContent);\n  const parallaxOn = parallaxValue && typeof parallaxValue === 'object' && !Array.isArray(parallaxValue) && String((_parallaxValue$on = parallaxValue.on) !== null && _parallaxValue$on !== void 0 ? _parallaxValue$on : 'off').toLowerCase() === 'on';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: innerAttrName,\n    subName: \"on\",\n    defaultAttr: ipxDefaultAttr,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Parallax', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Scroll parallax for this image only. Does not apply to CSS background images.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: innerAttrName,\n    subName: \"orientation\",\n    defaultAttr: ipxDefaultAttr,\n    placeholder: dsmIpxFormatOrientationLabel(DSM_IPX_DEFAULT_ORIENTATION),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Parallax Orientation', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Scroll direction for the parallax effect. Default: Up (simpleParallax.js).', 'dsm-supreme-modules-pro-for-divi'),\n    visible: parallaxOn\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: DSM_IPX_ORIENTATION_SELECT_OPTIONS\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: innerAttrName,\n    subName: \"scale\",\n    defaultAttr: ipxDefaultAttr,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Parallax Scale', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('How much the image scales while scrolling (simpleParallax scale).', 'dsm-supreme-modules-pro-for-divi'),\n    visible: parallaxOn\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 3,\n    step: 0.1,\n    defaultUnit: \"\",\n    allowedUnits: ['']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: innerAttrName,\n    subName: \"delay\",\n    defaultAttr: ipxDefaultAttr,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Parallax Delay (s)', 'dsm-supreme-modules-pro-for-divi'),\n    visible: parallaxOn\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 5,\n    step: 0.05,\n    defaultUnit: \"s\",\n    allowedUnits: ['s']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: innerAttrName,\n    subName: \"transition\",\n    defaultAttr: ipxDefaultAttr,\n    placeholder: (0,external_window_vendor_wp_i18n_namespaceObject.__)(DSM_IPX_TRANSITION_PLACEHOLDER, 'dsm-supreme-modules-pro-for-divi'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Parallax Transition', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Easing curve applied while the image moves during scroll.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: parallaxOn\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: DSM_IPX_TRANSITION_SELECT_OPTIONS\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: innerAttrName,\n    subName: \"maxTransition\",\n    defaultAttr: ipxDefaultAttr,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Parallax Max Transition (%)', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Caps how much of the scroll range drives the effect (1–99). Use 0 for no limit.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: parallaxOn\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 99,\n    step: 1,\n    defaultUnit: \"\",\n    allowedUnits: ['']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: innerAttrName,\n    subName: \"overflow\",\n    defaultAttr: ipxDefaultAttr,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Parallax Overflow', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Allow the scaled image to extend outside its box.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: parallaxOn\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)));\n}\n;// ./packages/module-library/shared/with-image-parallax-content-settings.js\n// External library dependencies.\n\n\n\n\n\n\n/**\n * @param {React.ReactNode} node\n * @return {React.ReactNode[]}\n */\nfunction flattenNodes(node) {\n  if (node == null || node === false) {\n    return [];\n  }\n  if (Array.isArray(node)) {\n    return node.flatMap(flattenNodes);\n  }\n  if (/*#__PURE__*/external_vendor_React_default().isValidElement(node) && node.type === (external_vendor_React_default()).Fragment) {\n    return external_vendor_React_default().Children.toArray(node.props.children).flatMap(flattenNodes);\n  }\n  return [node];\n}\n\n/**\n * @param {React.ReactElement} element\n * @return {boolean}\n */\nfunction isImageUploadFieldContainer(element) {\n  var _element$props, _props$attrName;\n  if (! /*#__PURE__*/external_vendor_React_default().isValidElement(element) || element.type !== external_divi_module_namespaceObject.FieldContainer) {\n    return false;\n  }\n  const props = (_element$props = element.props) !== null && _element$props !== void 0 ? _element$props : {};\n  if (props.subName !== 'src') {\n    return false;\n  }\n  const attrName = String((_props$attrName = props.attrName) !== null && _props$attrName !== void 0 ? _props$attrName : '');\n  if (!attrName.endsWith('.innerContent')) {\n    return false;\n  }\n  const child = props.children;\n  if (/*#__PURE__*/external_vendor_React_default().isValidElement(child) && child.type === external_divi_fieldLibrary_namespaceObject.UploadContainer) {\n    if (child.props?.dataType === 'file') {\n      return false;\n    }\n    return true;\n  }\n  return props.features?.dynamicContent?.type === 'image';\n}\n\n/**\n * @param {React.ReactElement} element\n * @return {string}\n */\nfunction elementKeyFromUploadFieldContainer(element) {\n  var _element$props$attrNa;\n  return String((_element$props$attrNa = element.props?.attrName) !== null && _element$props$attrNa !== void 0 ? _element$props$attrNa : '').replace(/\\.innerContent$/, '');\n}\n\n/**\n * Insert Image Parallax controls immediately after each image upload field.\n *\n * @param {React.ReactNode} node  Settings tree node.\n * @param {Object}          attrs Module attrs.\n * @return {React.ReactNode}\n */\nfunction injectImageParallaxAfterUploadFields(node, attrs) {\n  if (node == null || node === false) {\n    return node;\n  }\n  if (Array.isArray(node)) {\n    return node.flatMap(child => flattenNodes(injectImageParallaxAfterUploadFields(child, attrs)));\n  }\n  if (/*#__PURE__*/external_vendor_React_default().isValidElement(node) && node.type === (external_vendor_React_default()).Fragment) {\n    const children = external_vendor_React_default().Children.toArray(node.props.children).flatMap(child => flattenNodes(injectImageParallaxAfterUploadFields(child, attrs)));\n    return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, children);\n  }\n  if (/*#__PURE__*/external_vendor_React_default().isValidElement(node) && isImageUploadFieldContainer(node)) {\n    const elementKey = elementKeyFromUploadFieldContainer(node);\n    return [node, /*#__PURE__*/external_vendor_React_default().createElement(ImageParallaxContentFields, {\n      key: `dsm-ipx-${elementKey}`,\n      elementKey: elementKey,\n      attrs: attrs\n    })];\n  }\n  if (/*#__PURE__*/external_vendor_React_default().isValidElement(node) && node.props?.children != null) {\n    const nextChildren = external_vendor_React_default().Children.map(node.props.children, child => injectImageParallaxAfterUploadFields(child, attrs));\n    return /*#__PURE__*/external_vendor_React_default().cloneElement(node, {}, ...flattenNodes(nextChildren));\n  }\n  return node;\n}\n\n/**\n * Injects Content-tab Image Parallax fields below each image upload in DSM React settings trees.\n *\n * Divi merges metadata `settings.innerContent` only for metadata-driven modules. Supreme DSM\n * modules expose a React `settings.content` tree — mirror {@see withLineHoverAnimationDesignSettings}.\n *\n * @param {React.ComponentType<Object>} ContentComponent Original SettingsContent-like component.\n * @return {React.ComponentType<Object>}\n */\nfunction withImageParallaxContentSettings(ContentComponent) {\n  if (typeof ContentComponent !== 'function') {\n    return ContentComponent;\n  }\n  function WithImageParallaxContent(props) {\n    var _props$attrs;\n    if (!dsmImageParallaxExtensionGloballyEnabled()) {\n      return ContentComponent(props);\n    }\n    const contentTree = ContentComponent(props);\n    const injected = injectImageParallaxAfterUploadFields(contentTree, (_props$attrs = props?.attrs) !== null && _props$attrs !== void 0 ? _props$attrs : {});\n    return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, flattenNodes(injected));\n  }\n  const baseName = ContentComponent.displayName || ContentComponent.name || 'Content';\n  WithImageParallaxContent.displayName = `WithImageParallaxContent(${baseName})`;\n  return WithImageParallaxContent;\n}\n;// ./packages/module-library/shared/dsm-popup-module-default-attrs.js\n/**\n * Defaults for extension attrs `use_popup` / `popup_layout` on modules that use\n * `withPopupAdvancedSettings`. Ensures the Popup Layout select shows\n * \"-- Select Popup --\" (`-1`) for new modules and matches `Popup.php`.\n *\n * @type {Object}\n */\nconst dsmPopupModuleDefaultAttrs = {\n  use_popup: {\n    innerContent: {\n      desktop: {\n        value: 'off'\n      }\n    }\n  },\n  popup_layout: {\n    innerContent: {\n      desktop: {\n        value: '-1'\n      }\n    }\n  }\n};\n;// ./packages/module-library/animated-gradient-text/module.json\nconst module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/animated-gradient-text\",\"d4Shortcode\":\"dsm_animated_gradient_text\",\"title\":\"Supreme Animated Gradient Text\",\"titles\":\"Supreme Animated Gradient Text\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/animated-gradient-text\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"header\":{\"type\":\"object\",\"selector\":\"{{selector}}.dsm_animated_gradient_text\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"animated_gradient_text\":{\"type\":\"object\",\"selector\":\"{{selector}}.dsm_animated_gradient_text\",\"attributes\":{\"class\":\"dsm_animated_gradient_text\"},\"tagName\":\"span\",\"inlineEditor\":\"plainText\",\"elementType\":\"headingLink\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}}.dsm_animated_gradient_text\",\"hover\":\"{{selector}}:hover .dsm_animated_gradient_text\"}}}}},\"animated_gradient_direction\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"animated_gradient_speed\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"heading_html_tag\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"gradient_one_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"gradient_two_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"gradient_three_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"gradient_four_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/animated-gradient-text/module-default-render-attributes.json\nconst module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"animated_gradient_text\":{\"innerContent\":{\"desktop\":{\"value\":{\"text\":\"Animated Gradient Text\"}}}},\"heading_html_tag\":{\"innerContent\":{\"desktop\":{\"value\":\"h2\"}}},\"animated_gradient_direction\":{\"innerContent\":{\"desktop\":{\"value\":\"-45deg\"}}},\"animated_gradient_speed\":{\"innerContent\":{\"desktop\":{\"value\":\"8\"}}},\"gradient_one_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#cc2b5e\"}}},\"gradient_two_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#753a88\"}}},\"gradient_three_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#ec008c\"}}},\"gradient_four_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#6dd5ed\"}}}}');\n;// ./packages/module-library/animated-gradient-text/conversion-outline.js\nconst conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    disabled_on: 'module.decoration.disabledOn',\n    display_conditions: 'module.decoration.conditions',\n    borders: {\n      default: 'module.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow'\n    },\n    module: 'module.advanced.htmlAttributes',\n    margin_padding: 'module.decoration.spacing',\n    height: 'module.decoration.sizing',\n    max_width: 'module.decoration.sizing',\n    link_options: 'module.advanced.link',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    text: 'module.advanced.text',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    text_shadow: {\n      default: 'module.advanced.text.textShadow'\n    },\n    fonts: {\n      header: 'header.decoration.font'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    animated_gradient_text: 'animated_gradient_text.innerContent.*.text',\n    animated_gradient_direction: 'animated_gradient_direction.innerContent.*',\n    animated_gradient_speed: 'animated_gradient_speed.innerContent.*',\n    heading_html_tag: 'heading_html_tag.innerContent.*',\n    gradient_one_color: 'gradient_one_color.innerContent.*',\n    gradient_two_color: 'gradient_two_color.innerContent.*',\n    gradient_three_color: 'gradient_three_color.innerContent.*',\n    gradient_four_color: 'gradient_four_color.innerContent.*',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/animated-gradient-text/animated-gradient-text-vb-default-attrs.js\n/**\n * Visual Builder `defaultAttr` map derived from `module-default-render-attributes.json`.\n *\n * @package DiviSupreme\n */\n\n\nconst animatedGradientTextFieldDefaultInnerContent = Object.fromEntries(Object.entries(module_default_render_attributes_namespaceObject).map(([key, attr]) => [key, attr.innerContent]));\n\n/** @type {typeof animatedGradientTextFieldDefaultInnerContent} */\nconst agtFd = animatedGradientTextFieldDefaultInnerContent;\n;// ./packages/module-library/animated-gradient-text/settings-content.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\nfunction SettingsContent({\n  defaultSettingsAttrs\n}) {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"animated_gradient_text.innerContent\",\n    subName: \"text\",\n    defaultAttr: agtFd.animated_gradient_text,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animated Gradient Text', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text entered here will appear as animated gradient text.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"animatedGradientSettings\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animated Gradient Settings', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"animated_gradient_direction.innerContent\",\n    defaultAttr: agtFd.animated_gradient_direction,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Gradient Direction', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Set the angle of the gradient in degrees.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 360,\n    step: 1,\n    defaultUnit: 'deg'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"animated_gradient_speed.innerContent\",\n    defaultAttr: agtFd.animated_gradient_speed,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animation Speed (s)', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Set how long one full gradient animation cycle takes.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 80,\n    step: 1,\n    defaultUnit: ''\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const settings_content = (SettingsContent);\n;// ./packages/module-library/animated-gradient-text/settings-design.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\n\nfunction SettingsDesign() {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"headingSettings\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Heading Settings', 'dsm-supreme-modules-pro-for-divi'),\n    preset: \"content\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"heading_html_tag.innerContent\",\n    defaultAttr: agtFd.heading_html_tag,\n    description: \"\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Heading HTLML Tag', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      h1: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('H1', 'dsm-supreme-modules-pro-for-divi')\n      },\n      h2: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('H2', 'dsm-supreme-modules-pro-for-divi')\n      },\n      h3: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('H3', 'dsm-supreme-modules-pro-for-divi')\n      },\n      h4: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('H4', 'dsm-supreme-modules-pro-for-divi')\n      },\n      h5: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('H5', 'dsm-supreme-modules-pro-for-divi')\n      },\n      h6: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('H6', 'dsm-supreme-modules-pro-for-divi')\n      },\n      div: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('div', 'dsm-supreme-modules-pro-for-divi')\n      },\n      span: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('span', 'dsm-supreme-modules-pro-for-divi')\n      },\n      p: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('p', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"animatedGradientText\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animated Gradient Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"gradient_one_color.innerContent\",\n    defaultAttr: agtFd.gradient_one_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('#1 Gradient Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom color for the #1 Gradient Color.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"gradient_two_color.innerContent\",\n    defaultAttr: agtFd.gradient_two_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('#2 Gradient Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom color for the #2 Gradient Color.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"gradient_three_color.innerContent\",\n    defaultAttr: agtFd.gradient_three_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('#3 Gradient Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom color for the #3 Gradient Color.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"gradient_four_color.innerContent\",\n    defaultAttr: agtFd.gradient_four_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('#4 Gradient Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom color for the #4 Gradient Color.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"header.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animated Gradient', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const settings_design = (SettingsDesign);\n;// ./packages/module-library/animated-gradient-text/settings-advanced.js\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\nfunction SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_animated_gradient_text\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const settings_advanced = (SettingsAdvanced);\n;// external [\"divi\",\"styleLibrary\"]\nconst external_divi_styleLibrary_namespaceObject = divi.styleLibrary;\n;// ./packages/module-library/animated-gradient-text/module-styles.js\n\n\n\n\n\n/**\n * Helper function to extract color value from either hex or variable format\n * @param {string} colorValue The color value to process\n * @returns {string} The processed color value\n */\nconst extractColorValue = colorValue => {\n  // Check if the color value is in variable format\n  if (typeof colorValue === 'string' && colorValue.startsWith('$variable')) {\n    try {\n      // Extract the variable data\n      const variableData = colorValue.slice(10, -2); // Remove $variable( and )$\n      const decodedData = JSON.parse(variableData);\n\n      // Return the variable name if it exists\n      if (decodedData?.value?.name) {\n        return `var(--${decodedData.value.name})`;\n      }\n    } catch (e) {\n      console.error('Error parsing color variable:', e);\n    }\n  }\n\n  // Return the original value if it's a hex color or invalid format\n  return colorValue;\n};\n\n/**\n * React function component for rendering module style.\n */\nconst ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  const animated_gradient_speed = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.animated_gradient_speed?.innerContent);\n  const animated_gradient_direction = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.animated_gradient_direction?.innerContent);\n  const gradient_one_color = extractColorValue((0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.gradient_one_color?.innerContent));\n  const gradient_two_color = extractColorValue((0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.gradient_two_color?.innerContent));\n  const gradient_three_color = extractColorValue((0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.gradient_three_color?.innerContent));\n  const gradient_four_color = extractColorValue((0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.gradient_four_color?.innerContent));\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextStyle, {\n    selector: orderClass,\n    attr: attrs?.module?.advanced?.text\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'header'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm_animated_gradient_text`,\n    attr: attrs?.animated_gradient_direction?.innerContent,\n    declarationFunction: attrValue => {\n      const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n        returnType: 'string',\n        important: true\n      });\n      declarations.add('background', `linear-gradient(${animated_gradient_direction},${gradient_one_color},${gradient_two_color},${gradient_three_color},${gradient_four_color}); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-size: 300%; animation: dsm-animated-gradient-flow ${animated_gradient_speed}s ease-in-out infinite; -webkit-animation: dsm-animated-gradient-flow ${animated_gradient_speed}s ease-in-out infinite;`);\n      return declarations.value;\n    }\n  }));\n};\n;// ./packages/module-library/animated-gradient-text/edit.js\n\n// Divi package dependencies.\n\n\n\n// Custom dependencies.\n\nconst ALLOWED_HEADING_TAGS = ['h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'div', 'span', 'p'];\n\n/**\n * Match `AnimatedGradientText::sanitize_heading_tag()` so VB root tag matches frontend.\n *\n * @param {unknown} raw Raw setting value.\n * @returns {string}\n */\nfunction sanitizeHeadingTag(raw) {\n  if (typeof raw !== 'string') {\n    return 'h2';\n  }\n  const tag = raw.trim().toLowerCase();\n  return ALLOWED_HEADING_TAGS.includes(tag) ? tag : 'h2';\n}\n\n/**\n * React function component for registering module script data.\n */\n\nconst ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  var _attrs$heading_html_t;\n  const headingRaw = (_attrs$heading_html_t = attrs?.heading_html_tag?.innerContent?.desktop?.value) !== null && _attrs$heading_html_t !== void 0 ? _attrs$heading_html_t : 'h2';\n  const headingTag = sanitizeHeadingTag(headingRaw);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    tag: headingTag,\n    hasModuleWrapper: false,\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: ModuleScriptData,\n    stylesComponent: ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      const decoration = {\n        ...((_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {})\n      };\n      const link = attrs?.module?.advanced?.link;\n      if (link) {\n        decoration.link = link;\n      }\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: decoration\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), elements.render({\n    attrName: 'animated_gradient_text'\n  }));\n}\n/* harmony default export */ const edit = (Edit);\n;// ./packages/module-library/animated-gradient-text/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmAnimatedGradientText', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/animated-gradient-text': {\n      name: 'divi-supreme/animated-gradient-text',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 9.613281 11.972656 L 5.964844 11.972656 L 5.964844 11.492188 C 6.195312 11.492188 6.371094 11.429688 6.488281 11.296875 C 6.71875 11.039062 6.6875 10.601562 6.6875 10.601562 L 6.6875 7.132812 L 5.570312 7.132812 C 5.210938 7.132812 4.980469 7.308594 4.855469 7.460938 C 4.765625 7.558594 4.625 7.597656 4.5 7.554688 C 4.367188 7.503906 4.285156 7.382812 4.285156 7.246094 L 4.285156 4.957031 L 11.308594 4.957031 L 11.308594 7.234375 C 11.308594 7.371094 11.226562 7.492188 11.097656 7.539062 C 10.964844 7.589844 10.828125 7.554688 10.738281 7.445312 C 10.613281 7.296875 10.382812 7.121094 10.027344 7.121094 L 8.90625 7.121094 L 8.90625 10.59375 C 8.90625 10.601562 8.875 11.039062 9.105469 11.296875 C 9.222656 11.429688 9.394531 11.492188 9.632812 11.492188 L 9.632812 11.972656 Z M 6.945312 11.492188 L 8.636719 11.492188 C 8.386719 11.113281 8.40625 10.652344 8.410156 10.570312 L 8.410156 6.652344 L 10.011719 6.652344 C 10.359375 6.652344 10.625 6.757812 10.820312 6.894531 L 10.820312 5.4375 L 4.761719 5.4375 L 4.761719 6.894531 C 4.960938 6.757812 5.222656 6.652344 5.570312 6.652344 L 7.171875 6.652344 L 7.171875 10.570312 C 7.175781 10.65625 7.195312 11.121094 6.945312 11.492188 Z M 6.945312 11.492188 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 7.792969 3.328125 C 7.316406 3.328125 6.929688 2.941406 6.929688 2.464844 C 6.929688 1.988281 7.316406 1.601562 7.792969 1.601562 C 8.269531 1.601562 8.65625 1.988281 8.65625 2.464844 C 8.65625 2.941406 8.269531 3.328125 7.792969 3.328125 Z M 7.792969 2.074219 C 7.582031 2.074219 7.40625 2.25 7.40625 2.464844 C 7.40625 2.675781 7.582031 2.851562 7.792969 2.851562 C 8.007812 2.851562 8.179688 2.675781 8.179688 2.464844 C 8.179688 2.25 8.007812 2.074219 7.792969 2.074219 Z M 7.792969 2.074219 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 2.996094 5.792969 C 2.519531 5.792969 2.132812 5.40625 2.132812 4.929688 C 2.132812 4.453125 2.519531 4.066406 2.996094 4.066406 C 3.472656 4.066406 3.859375 4.453125 3.859375 4.929688 C 3.859375 5.40625 3.472656 5.792969 2.996094 5.792969 Z M 2.996094 4.542969 C 2.785156 4.542969 2.609375 4.71875 2.609375 4.929688 C 2.609375 5.144531 2.785156 5.320312 2.996094 5.320312 C 3.210938 5.320312 3.378906 5.144531 3.378906 4.929688 C 3.378906 4.71875 3.210938 4.542969 2.996094 4.542969 Z M 2.996094 4.542969 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 2.996094 11.972656 C 2.519531 11.972656 2.132812 11.585938 2.132812 11.109375 C 2.132812 10.632812 2.519531 10.246094 2.996094 10.246094 C 3.472656 10.246094 3.859375 10.632812 3.859375 11.109375 C 3.859375 11.585938 3.472656 11.972656 2.996094 11.972656 Z M 2.996094 10.722656 C 2.785156 10.722656 2.609375 10.894531 2.609375 11.109375 C 2.609375 11.320312 2.785156 11.496094 2.996094 11.496094 C 3.210938 11.496094 3.386719 11.320312 3.386719 11.109375 C 3.378906 10.894531 3.210938 10.722656 2.996094 10.722656 Z M 2.996094 10.722656 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 7.792969 14.394531 C 7.316406 14.394531 6.929688 14.007812 6.929688 13.53125 C 6.929688 13.054688 7.316406 12.667969 7.792969 12.667969 C 8.269531 12.667969 8.65625 13.054688 8.65625 13.53125 C 8.65625 14.007812 8.269531 14.394531 7.792969 14.394531 Z M 7.792969 13.144531 C 7.582031 13.144531 7.40625 13.320312 7.40625 13.53125 C 7.40625 13.746094 7.582031 13.917969 7.792969 13.917969 C 8.007812 13.917969 8.179688 13.746094 8.179688 13.53125 C 8.179688 13.320312 8.007812 13.144531 7.792969 13.144531 Z M 7.792969 13.144531 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.589844 5.792969 C 12.113281 5.792969 11.726562 5.40625 11.726562 4.929688 C 11.726562 4.453125 12.113281 4.066406 12.589844 4.066406 C 13.066406 4.066406 13.453125 4.453125 13.453125 4.929688 C 13.453125 5.40625 13.066406 5.792969 12.589844 5.792969 Z M 12.589844 4.542969 C 12.375 4.542969 12.199219 4.71875 12.199219 4.929688 C 12.199219 5.144531 12.375 5.320312 12.589844 5.320312 C 12.800781 5.320312 12.976562 5.144531 12.976562 4.929688 C 12.976562 4.71875 12.800781 4.542969 12.589844 4.542969 Z M 12.589844 4.542969 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 2.996094 10.484375 C 3.082031 10.484375 3.164062 10.5 3.234375 10.53125 L 3.234375 5.507812 C 3.160156 5.539062 3.078125 5.554688 2.996094 5.554688 C 2.910156 5.554688 2.828125 5.539062 2.757812 5.507812 L 2.757812 10.53125 C 2.828125 10.5 2.910156 10.484375 2.996094 10.484375 Z M 2.996094 10.484375 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 3.585938 4.730469 L 7.359375 2.914062 C 7.242188 2.800781 7.171875 2.652344 7.167969 2.476562 L 3.246094 4.359375 C 3.410156 4.429688 3.53125 4.5625 3.585938 4.730469 Z M 3.585938 4.730469 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 8.226562 2.914062 L 12 4.730469 C 12.054688 4.5625 12.175781 4.429688 12.335938 4.359375 L 8.417969 2.476562 C 8.414062 2.652344 8.335938 2.800781 8.226562 2.914062 Z M 8.226562 2.914062 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.984375 11.273438 L 8.214844 13.082031 C 8.335938 13.195312 8.40625 13.34375 8.410156 13.519531 L 12.285156 11.660156 C 12.140625 11.578125 12.027344 11.441406 11.984375 11.273438 Z M 11.984375 11.273438 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.589844 5.554688 C 12.5 5.554688 12.417969 5.539062 12.351562 5.507812 L 12.351562 10.53125 C 12.425781 10.5 12.507812 10.484375 12.589844 10.484375 C 12.675781 10.484375 12.757812 10.5 12.824219 10.53125 L 12.824219 5.507812 C 12.757812 5.539062 12.675781 5.554688 12.589844 5.554688 Z M 12.589844 5.554688 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 7.359375 13.082031 L 3.597656 11.273438 C 3.554688 11.441406 3.441406 11.578125 3.292969 11.652344 L 7.171875 13.511719 C 7.171875 13.34375 7.246094 13.195312 7.359375 13.082031 Z M 7.359375 13.082031 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.589844 11.972656 C 12.113281 11.972656 11.726562 11.585938 11.726562 11.109375 C 11.726562 10.632812 12.113281 10.246094 12.589844 10.246094 C 13.066406 10.246094 13.453125 10.632812 13.453125 11.109375 C 13.453125 11.585938 13.066406 11.972656 12.589844 11.972656 Z M 12.589844 10.722656 C 12.375 10.722656 12.199219 10.894531 12.199219 11.109375 C 12.199219 11.320312 12.375 11.496094 12.589844 11.496094 C 12.800781 11.496094 12.976562 11.320312 12.976562 11.109375 C 12.976562 10.894531 12.800781 10.722656 12.589844 10.722656 Z M 12.589844 10.722656 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/animated-gradient-text/index.js\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\n\n/**\n * Canonical defaults: `module-default-render-attributes.json` only (see MODULE_OPTIONS_AUDIT.md).\n */\nconst defaultAttrs = module_default_render_attributes_namespaceObject;\nconst animatedGradientTextModule = {\n  metadata: module_namespaceObject,\n  conversionOutline: conversionOutline,\n  renderers: {\n    edit: edit,\n    styles: ModuleStyles\n  },\n  defaultAttrs,\n  settings: {\n    content: settings_content,\n    design: settings_design,\n    advanced: settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    ...module_default_render_attributes_namespaceObject\n  }\n};\n/* harmony default export */ const animated_gradient_text = (animatedGradientTextModule);\n;// ./packages/module-library/animated-headline/module.json\nconst animated_headline_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/animated-headline\",\"d4Shortcode\":\"dsm_animated_headline\",\"title\":\"Supreme Animated Headlines\",\"titles\":\"Supreme Animated Headlines\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/animated-headline\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"header\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-headline\",\"tagName\":\"h1\",\"inlineEditor\":\"plainText\",\"elementType\":\"headingLink\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-headline\",\"hover\":\"{{selector}}:hover .dsm-headline\"}}}}},\"prefix\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-animated-prefix\",\"attributes\":{\"class\":\"dsm-animated-prefix\"},\"tagName\":\"span\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-animated-prefix\",\"hover\":\"{{selector}}:hover .dsm-animated-prefix\"}}}}},\"suffix\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-animated-suffix\",\"attributes\":{\"class\":\"dsm-animated-suffix\"},\"tagName\":\"span\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-animated-suffix\",\"hover\":\"{{selector}}:hover .dsm-animated-suffix\"}}}}},\"animated_headline\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-animated-words-wrapper\",\"tagName\":\"h1\",\"inlineEditor\":\"SortableList\",\"elementType\":\"headingLink\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-animated-words-wrapper\",\"hover\":\"{{selector}}:hover .dsm-animated-words-wrapper\"}}}}},\"prefix_display_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"animated_display_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"suffix_display_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"effects\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"tag\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"animation_delay\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"type_letters_delay\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"type_selection_duration\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"letters_delay\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"clip_reveal_duration\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"clip_reveal_animation_delay\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"bar_width\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"bar_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"text_highlight\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"text_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"bar_height\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"prefix_background\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"prefix_spacing\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-animated-prefix\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"suffix_background\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"suffix_spacing\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-animated-suffix\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"animated_headline_background\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"animated_headline_spacing\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-animated-words-wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"prefix_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-animated-prefix\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-animated-prefix\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-animated-prefix\",\"useOverlay\":true}}},\"suffix_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-animated-suffix\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-animated-suffix\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-animated-suffix\",\"useOverlay\":true}}},\"animated_headline_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-animated-words-wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-animated-words-wrapper\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-animated-words-wrapper\",\"useOverlay\":true}}}}}');\n;// ./packages/module-library/animated-headline/settings-content.js\n\n// Wordpress dependencies.\n\n\n// Divi package dependencies.\n\n\n\n\nfunction settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  const effects = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.effects?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"animated_headline.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animated Headline Text', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SortableList, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"prefix.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Prefix', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"suffix.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Suffix', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"effects.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Effects', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      rotate1: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rotate 1', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rotate2: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rotate 2', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rotate3: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rotate 3', 'dsm-supreme-modules-pro-for-divi')\n      },\n      type: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Type', 'dsm-supreme-modules-pro-for-divi')\n      },\n      loadingBar: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Loading Bar', 'dsm-supreme-modules-pro-for-divi')\n      },\n      slide: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide', 'dsm-supreme-modules-pro-for-divi')\n      },\n      clip: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Clip', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zoom: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom', 'dsm-supreme-modules-pro-for-divi')\n      },\n      scale: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Scale', 'dsm-supreme-modules-pro-for-divi')\n      },\n      push: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Push', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"tag.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('HTML Tag', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      div: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('div', 'dsm-supreme-modules-pro-for-divi')\n      },\n      h1: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('h1', 'dsm-supreme-modules-pro-for-divi')\n      },\n      h2: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('h2', 'dsm-supreme-modules-pro-for-divi')\n      },\n      h3: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('h3', 'dsm-supreme-modules-pro-for-divi')\n      },\n      h4: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('h4', 'dsm-supreme-modules-pro-for-divi')\n      },\n      h5: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('h5', 'dsm-supreme-modules-pro-for-divi')\n      },\n      h6: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('h6', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"settings\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Settings', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"animation_delay.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animation Delay', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"letters_delay.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Letters Delay', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    },\n    visible: effects === 'rotate2' || effects === 'rotate3' || effects === 'scale'\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"type_letters_delay.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Letters Delay', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    },\n    visible: effects === 'type'\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"type_selection_duration.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Type Selection Duration', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    },\n    visible: effects === 'type'\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"clip_reveal_duration.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Clip Reveal Duration', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    },\n    visible: effects === 'clip'\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"clip_reveal_animation_delay.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Clip Reveal Animation Delay', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    },\n    visible: effects === 'clip'\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"bar_width.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bar Width', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    },\n    visible: effects === 'type' || effects === 'clip'\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"bar_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bar Color', 'dsm-supreme-modules-pro-for-divi'),\n    visible: effects === 'type' || effects === 'loadingBar' || effects === 'clip'\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"text_highlight.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text Highlight Color', 'dsm-supreme-modules-pro-for-divi'),\n    visible: effects === 'type'\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"text_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text Color', 'dsm-supreme-modules-pro-for-divi'),\n    visible: effects === 'type'\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"bar_height.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bar Height', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    },\n    visible: effects === 'loadingBar'\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const animated_headline_settings_content = (settings_content_SettingsContent);\n;// ./packages/module-library/animated-headline/settings-design.js\n\n// Wordpress dependencies.\n\n\n// Divi package dependencies.\n\n\n\nfunction settings_design_SettingsDesign({\n  attrs\n}) {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"header.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Main Text', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    },\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Main', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"prefix_style\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Prefix Style', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"prefix.decoration.font\",\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    },\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Prefix', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"prefix_display_type.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Display', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      'inline-block': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inline Block', 'dsm-supreme-modules-pro-for-divi')\n      },\n      inline: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inline', 'dsm-supreme-modules-pro-for-divi')\n      },\n      block: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Block', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"prefix_background.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Prefix Background Color', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"prefix_style.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"prefix_style.decoration.boxShadow\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"prefix_spacing.decoration.spacing\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"animated_headline_style\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animated Headline Style', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"animated_headline.decoration.font\",\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    },\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animated Headline', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"animated_display_type.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Display', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      'inline-block': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inline Block', 'dsm-supreme-modules-pro-for-divi')\n      },\n      inline: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inline', 'dsm-supreme-modules-pro-for-divi')\n      },\n      block: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Block', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"animated_headline_background.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animated Headline Background Color', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"animated_headline_style.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"animated_headline_style.decoration.boxShadow\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"animated_headline_spacing.decoration.spacing\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"suffix_style\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Suffix Style', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"suffix.decoration.font\",\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    },\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Suffix', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"suffix_display_type.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Display', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      'inline-block': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inline Block', 'dsm-supreme-modules-pro-for-divi')\n      },\n      inline: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inline', 'dsm-supreme-modules-pro-for-divi')\n      },\n      block: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Block', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"suffix_background.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Suffix Background Color', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"suffix_style.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"suffix_style.decoration.boxShadow\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"suffix_spacing.decoration.spacing\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const animated_headline_settings_design = (settings_design_SettingsDesign);\n;// ./packages/module-library/animated-headline/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_animated_headline\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const animated_headline_settings_advanced = (settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/animated-headline/common.scss\n// extracted by mini-css-extract-plugin\n\n;// ./packages/module-library/animated-headline/module-styles.js\n\n\n\n\n\n\n/**\n * React function component for rendering module style.\n */\n\nconst prefixDisplayTypeCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      display: true\n    }\n  });\n  if ('inline-block' === attrValue || 'inline' === attrValue) {\n    declarations.add('display', 'inline-block');\n  }\n  if ('block' === attrValue) {\n    declarations.add('display', 'block');\n  }\n  return declarations.value;\n};\nconst animatedDisplayTypeCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      display: true\n    }\n  });\n  if ('inline-block' === attrValue || 'inline' === attrValue) {\n    declarations.add('display', 'inline-block');\n  }\n  if ('block' === attrValue) {\n    declarations.add('display', 'block');\n  }\n  return declarations.value;\n};\nconst suffixDisplayTypeCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      display: true\n    }\n  });\n  if ('inline-block' === attrValue || 'inline' === attrValue) {\n    declarations.add('display', 'inline-block');\n  }\n  if ('block' === attrValue) {\n    declarations.add('display', 'block');\n  }\n  return declarations.value;\n};\nconst module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextStyle, {\n    selector: orderClass,\n    attr: attrs?.module?.advanced?.text\n  }), elements.style({\n    attrName: 'header'\n  }), elements.style({\n    attrName: 'prefix'\n  }), elements.style({\n    attrName: 'prefix_spacing'\n  }), elements.style({\n    attrName: 'prefix_style'\n  }), elements.style({\n    attrName: 'animated_headline'\n  }), elements.style({\n    attrName: 'animated_headline_spacing'\n  }), elements.style({\n    attrName: 'animated_headline_style'\n  }), elements.style({\n    attrName: 'suffix'\n  }), elements.style({\n    attrName: 'suffix_style'\n  }), elements.style({\n    attrName: 'suffix_spacing'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-animated-prefix`,\n    attr: attrs?.prefix_background?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-animated-suffix`,\n    attr: attrs?.suffix_background?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-animated-words-wrapper`,\n    attr: attrs?.animated_headline_background?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-animated-prefix`,\n    attr: attrs?.prefix_display_type?.innerContent,\n    declarationFunction: prefixDisplayTypeCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-animated-words-wrapper`,\n    attr: attrs?.animated_display_type?.innerContent,\n    declarationFunction: animatedDisplayTypeCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-animated-suffix`,\n    attr: attrs?.suffix_display_type?.innerContent,\n    declarationFunction: suffixDisplayTypeCss\n  }));\n};\n;// ./packages/module-library/animated-headline/edit.js\n\n\n\n\n\nconst edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nconst edit_extractColorValue = colorValue => {\n  // Check if the color value is in variable format\n  if (typeof colorValue === 'string' && colorValue.startsWith('$variable')) {\n    try {\n      // Extract the variable data\n      const variableData = colorValue.slice(10, -2); // Remove $variable( and )$\n      const decodedData = JSON.parse(variableData);\n\n      // Return the variable name if it exists\n      if (decodedData?.value?.name) {\n        return `var(--${decodedData.value.name})`;\n      }\n    } catch (e) {\n      console.error('Error parsing color variable:', e);\n    }\n  }\n\n  // Return the original value if it's a hex color or invalid format\n  return colorValue;\n};\nfunction edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  const words = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.animated_headline?.innerContent);\n  const effect = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.effects?.innerContent);\n  const animDelay = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.animation_delay?.innerContent);\n  const lettersDelay = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.letters_delay?.innerContent);\n  const typeLettersDelay = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.type_letters_delay?.innerContent);\n  const typeSelectionDuration = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.type_selection_duration?.innerContent);\n  const clipRevealDuration = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.clip_reveal_duration?.innerContent);\n  const clipRevealAnimationDelay = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.clip_reveal_animation_delay?.innerContent);\n  const barWidth = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.bar_width?.innerContent);\n  const textHighlight = edit_extractColorValue((0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.text_highlight?.innerContent));\n  const textColor = edit_extractColorValue((0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.text_color?.innerContent));\n  const barHeight = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.bar_height?.innerContent);\n  const Tag = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.tag?.innerContent);\n  const barColor = edit_extractColorValue((0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.bar_color?.innerContent));\n  const headlineRef = (0,external_vendor_React_.useRef)(null);\n  const timeoutRefs = (0,external_vendor_React_.useRef)([]);\n  const resizeObserverRef = (0,external_vendor_React_.useRef)(null);\n  const effectFormatted = effect.replace('rotate1', 'rotate-1').replace('rotate2', 'rotate-2').replace('rotate3', 'rotate-3').replace('loadingBar', 'loading-bar').replace('slide', 'slide');\n  const letterEffects = ['scale', 'type', 'rotate-2', 'rotate-3'];\n  const needsLettersClass = letterEffects.includes(effectFormatted);\n  const rootClasses = ['dsm-animated-headline', 'et_pb_module_header', 'dsm-headline', effectFormatted];\n  if (needsLettersClass) {\n    rootClasses.push('dsm-headline-letters');\n  }\n  const animatedHeadlineOptions = {\n    effect: effectFormatted,\n    animationDelay: parseInt(animDelay),\n    lettersDelay: parseInt(lettersDelay),\n    typeLettersDelay: parseInt(typeLettersDelay),\n    typeSelectionDuration: parseInt(typeSelectionDuration),\n    clipRevealDuration: parseInt(clipRevealDuration),\n    clipRevealAnimationDelay: parseInt(clipRevealAnimationDelay)\n  };\n  const addTimeout = (callback, delay) => {\n    const timeoutId = setTimeout(callback, delay);\n    timeoutRefs.current.push(timeoutId);\n    return timeoutId;\n  };\n  const clearAllTimeouts = () => {\n    timeoutRefs.current.forEach(timeoutId => {\n      clearTimeout(timeoutId);\n    });\n    timeoutRefs.current = [];\n  };\n  const recalculateWordsWrapperWidth = () => {\n    if (!headlineRef.current) return;\n    const headline = headlineRef.current;\n    const wordsWrapper = headline.querySelector('.dsm-animated-words-wrapper');\n    if (!wordsWrapper) return;\n    const effect = effectFormatted || '';\n    if (effect === 'clip') {\n      const visibleWord = headline.querySelector('.is-visible');\n      if (visibleWord) {\n        const newWidth = visibleWord.offsetWidth + 10;\n        wordsWrapper.style.width = `${newWidth}px`;\n      }\n    } else if (effect === 'type' || effect === 'loading-bar') {\n      wordsWrapper.style.width = '';\n    } else {\n      const words = wordsWrapper.querySelectorAll('b');\n      let width = 0;\n      words.forEach(word => {\n        const wordWidth = word.offsetWidth;\n        if (wordWidth > width) width = wordWidth;\n      });\n      wordsWrapper.style.width = `${width}px`;\n    }\n  };\n  const setupResizeObserver = () => {\n    if (!headlineRef.current) return;\n    if (resizeObserverRef.current) {\n      resizeObserverRef.current.disconnect();\n    }\n    resizeObserverRef.current = new ResizeObserver(entries => {\n      for (const entry of entries) {\n        addTimeout(() => {\n          recalculateWordsWrapperWidth();\n        }, 100);\n      }\n    });\n    resizeObserverRef.current.observe(headlineRef.current);\n  };\n  const initHeadline = () => {\n    if (!headlineRef.current) return;\n    let headline = headlineRef.current;\n    const INIT_CLASSNAME = 'dsm-animated-headline-init';\n    const isInitialized = headline.classList.contains(INIT_CLASSNAME);\n    if (isInitialized) {\n      destroyHeadline();\n      headline = headlineRef.current;\n    }\n    headline.classList.add(effectFormatted);\n    if (needsLettersClass) {\n      headline.classList.add('dsm-headline-letters');\n    }\n    if (headline.classList.contains('dsm-headline-letters')) {\n      singleLetters(headline.querySelectorAll('b'));\n    }\n    headline.classList.add(INIT_CLASSNAME);\n    animateHeadline([headline]);\n    setupResizeObserver();\n  };\n  const destroyHeadline = () => {\n    if (!headlineRef.current) return;\n    let headline = headlineRef.current;\n    const INIT_CLASSNAME = 'dsm-animated-headline-init';\n    clearAllTimeouts();\n    if (resizeObserverRef.current) {\n      resizeObserverRef.current.disconnect();\n      resizeObserverRef.current = null;\n    }\n    headline.classList.remove(INIT_CLASSNAME);\n    const originalContent = headline.cloneNode(true);\n    originalContent.classList.remove(INIT_CLASSNAME);\n    headline.parentNode.replaceChild(originalContent, headline);\n    headlineRef.current = originalContent;\n  };\n  const singleLetters = words => {\n    if (!words.length) return;\n    words.forEach(word => {\n      const letters = word.textContent.split('');\n      const selected = word.classList.contains('is-visible');\n      const newLetters = letters.map(letter => {\n        if (headlineRef.current.classList.contains('rotate-2')) {\n          letter = `<em>${letter}</em>`;\n        }\n        return selected ? `<i class=\"in\">${letter}</i>` : `<i>${letter}</i>`;\n      }).join('');\n      word.innerHTML = newLetters;\n      word.style.opacity = 1;\n    });\n  };\n  const animateHeadline = headlines => {\n    if (!headlines.length) return;\n    const animationDelay = parseInt(animDelay);\n    const barAnimationDelay = 3800;\n    const barWaiting = barAnimationDelay - 3000;\n    const lettersDelayInt = parseInt(lettersDelay);\n    const typeLettersDelayInt = parseInt(typeLettersDelay);\n    const selectionDuration = parseInt(typeSelectionDuration);\n    const typeAnimationDelay = selectionDuration + 800;\n    const revealDuration = parseInt(clipRevealDuration);\n    const revealAnimationDelay = parseInt(clipRevealAnimationDelay);\n    let duration = Number(animationDelay);\n    headlines.forEach(headline => {\n      const effect = effectFormatted || '';\n      const wordsWrapper = headline.querySelector('.dsm-animated-words-wrapper');\n      if (!wordsWrapper) return;\n      if (effect === 'loading-bar') {\n        duration = barAnimationDelay;\n        addTimeout(() => {\n          wordsWrapper.classList.add('is-loading');\n        }, barWaiting);\n      } else if (effect === 'clip') {\n        const visibleWord = headline.querySelector('.is-visible');\n        if (visibleWord) {\n          const newWidth = visibleWord.offsetWidth + 10;\n          wordsWrapper.style.width = `${newWidth}px`;\n        }\n      } else if (effect === 'type') {\n        wordsWrapper.style.width = '';\n      } else {\n        const words = wordsWrapper.querySelectorAll('b');\n        let width = 0;\n        words.forEach(word => {\n          const wordWidth = word.offsetWidth;\n          if (wordWidth > width) width = wordWidth;\n        });\n        wordsWrapper.style.width = `${width}px`;\n      }\n      const visibleWord = headline.querySelector('.is-visible');\n      if (visibleWord) {\n        setTimeout(() => {\n          hideWord(visibleWord);\n        }, duration);\n      }\n    });\n  };\n  const hideWord = word => {\n    if (!word) return;\n    const nextWord = takeNext(word);\n    const parent = word.closest('.dsm-headline');\n    if (!parent) return;\n    const effect = effectFormatted || '';\n    const animationDelay = parseInt(animDelay);\n    const barAnimationDelay = 3800;\n    const lettersDelayInt = parseInt(lettersDelay);\n    const typeLettersDelayInt = parseInt(typeLettersDelay);\n    const selectionDuration = parseInt(typeSelectionDuration);\n    const typeAnimationDelay = selectionDuration + 800;\n    const revealDuration = parseInt(clipRevealDuration);\n    const revealAnimationDelay = parseInt(clipRevealAnimationDelay);\n    if (['rotate-1', 'rotate-2', 'rotate-3', 'push', 'slide', 'scale', 'zoom'].includes(effect)) {\n      const wrapper = parent.querySelector('.dsm-animated-words-wrapper');\n      if (wrapper && nextWord) {\n        wrapper.style.transition = 'width 0.2s'; // Smooth width transition\n        wrapper.style.width = `${nextWord.offsetWidth}px`;\n      }\n    }\n    if (effect === 'type') {\n      const parentSpan = word.parentElement;\n      if (!parentSpan) return;\n      parentSpan.classList.add('selected');\n      parentSpan.classList.remove('waiting');\n      setTimeout(() => {\n        parentSpan.classList.remove('selected');\n        word.classList.remove('is-visible');\n        word.classList.add('is-hidden');\n        const letters = word.querySelectorAll('i');\n        letters.forEach(letter => {\n          letter.classList.remove('in');\n          letter.classList.add('out');\n        });\n      }, selectionDuration);\n      setTimeout(() => {\n        showWord(nextWord, typeLettersDelayInt);\n      }, typeAnimationDelay);\n    } else if (parent.classList.contains('dsm-headline-letters')) {\n      const bool = word.querySelectorAll('i').length >= nextWord.querySelectorAll('i').length;\n      hideLetter(word.querySelector('i'), word, bool, lettersDelayInt);\n      showLetter(nextWord.querySelector('i'), nextWord, bool, lettersDelayInt);\n    } else if (effect === 'clip') {\n      const wrapper = parent.querySelector('.dsm-animated-words-wrapper');\n      if (wrapper) {\n        wrapper.style.transition = 'width 0.2s';\n        wrapper.style.width = `${word.offsetWidth + 10}px`;\n        addTimeout(() => {\n          wrapper.style.width = '2px';\n          addTimeout(() => {\n            switchWord(word, nextWord);\n            wrapper.style.width = `${nextWord.offsetWidth + 10}px`;\n            showWord(nextWord);\n          }, revealDuration);\n        }, 50);\n      }\n    } else if (effect === 'loading-bar') {\n      const wrapper = parent.querySelector('.dsm-animated-words-wrapper');\n      if (wrapper) {\n        wrapper.classList.remove('is-loading');\n        switchWord(word, nextWord);\n        addTimeout(() => {\n          wrapper.classList.add('is-loading');\n        }, 50);\n        addTimeout(() => {\n          hideWord(nextWord);\n        }, barAnimationDelay);\n      }\n    } else {\n      switchWord(word, nextWord);\n      addTimeout(() => {\n        hideWord(nextWord);\n      }, animationDelay);\n    }\n  };\n  const showWord = (word, duration) => {\n    if (!word) return;\n    const parent = word.closest('.dsm-headline');\n    if (!parent) return;\n    const effect = effectFormatted || '';\n    const revealAnimationDelay = 1500;\n    if (effect === 'type') {\n      showLetter(word.querySelector('i'), word, false, duration);\n      word.classList.add('is-visible');\n      word.classList.remove('is-hidden');\n    } else if (effect === 'clip') {\n      word.classList.add('is-visible');\n      word.classList.remove('is-hidden');\n      addTimeout(() => {\n        hideWord(word);\n      }, revealAnimationDelay);\n    }\n  };\n  const hideLetter = (letter, word, bool, duration) => {\n    if (!letter) return;\n    const animationDelay = parseInt(animDelay);\n    letter.classList.remove('in');\n    letter.classList.add('out');\n    if (letter.nextElementSibling) {\n      addTimeout(() => {\n        hideLetter(letter.nextElementSibling, word, bool, duration);\n      }, duration);\n    } else if (bool) {\n      addTimeout(() => {\n        hideWord(takeNext(word));\n      }, animationDelay);\n    }\n    if (!letter.nextElementSibling && document.documentElement.classList.contains('no-csstransitions')) {\n      const nextWord = takeNext(word);\n      switchWord(word, nextWord);\n    }\n  };\n  const showLetter = (letter, word, bool, duration) => {\n    if (!letter) return;\n    const animationDelay = parseInt(animDelay);\n    letter.classList.add('in');\n    letter.classList.remove('out');\n    if (letter.nextElementSibling) {\n      addTimeout(() => {\n        showLetter(letter.nextElementSibling, word, bool, duration);\n      }, duration);\n    } else {\n      const parent = word.closest('.dsm-headline');\n      if (parent && parent.classList.contains('type')) {\n        setTimeout(() => {\n          const wrapper = parent.querySelector('.dsm-animated-words-wrapper');\n          if (wrapper) {\n            wrapper.classList.add('waiting');\n          }\n        }, 200);\n      }\n      if (!bool) {\n        addTimeout(() => {\n          hideWord(word);\n        }, animationDelay);\n      }\n    }\n  };\n  const takeNext = word => {\n    return word.nextElementSibling || word.parentElement.firstElementChild;\n  };\n  const switchWord = (oldWord, newWord) => {\n    if (!oldWord || !newWord) return;\n    oldWord.classList.remove('is-visible');\n    oldWord.classList.add('is-hidden');\n    newWord.classList.remove('is-hidden');\n    newWord.classList.add('is-visible');\n  };\n  const refreshKey = [effect, animDelay, JSON.stringify(words), lettersDelay, typeLettersDelay];\n  (0,external_vendor_React_.useEffect)(() => {\n    if (headlineRef.current) {\n      addTimeout(() => {\n        initHeadline();\n      }, 10);\n    }\n  }, refreshKey);\n  (0,external_vendor_React_.useEffect)(() => {\n    return () => {\n      clearAllTimeouts();\n      if (resizeObserverRef.current) {\n        resizeObserverRef.current.disconnect();\n        resizeObserverRef.current = null;\n      }\n      if (headlineRef.current) {\n        destroyHeadline();\n      }\n    };\n  }, []);\n  const isAnimatedWords = Array.isArray(words) && words.length > 0 && /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm-animated-words-wrapper\"\n  }, words.map((wordObj, index) => {\n    const word = typeof wordObj === 'string' ? wordObj : wordObj?.value || '';\n    return /*#__PURE__*/external_vendor_React_default().createElement(\"b\", {\n      key: index,\n      className: index === 0 ? 'is-visible' : 'is-hidden'\n    }, word);\n  }));\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: edit_ModuleScriptData,\n    stylesComponent: module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"et_pb_module dsm_animated_headline_wrapper\",\n    key: refreshKey.join(',')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(Tag, {\n    key: `headline-${effect}`,\n    ref: headlineRef,\n    className: `dsm-headline ${effectFormatted}${needsLettersClass ? ' dsm-headline-letters' : ''}`,\n    \"data-dsm-animated-headline-options\": JSON.stringify(animatedHeadlineOptions),\n    style: {\n      '--dsm-bar-width': `${barWidth}px`,\n      '--dsm-bar-height': `${barHeight}px`,\n      '--dsm-bar-color': barColor,\n      '--dsm-text-highlight': textHighlight,\n      '--dsm-text-color': textColor\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-animated-headlines-words-container\"\n  }, elements.render({\n    attrName: 'prefix'\n  }), isAnimatedWords, elements.render({\n    attrName: 'suffix'\n  })))));\n}\n/* harmony default export */ const animated_headline_edit = (edit_Edit);\n;// ./packages/module-library/animated-headline/conversion-outline.js\nconst conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border',\n      prefix: 'prefix_style.decoration.border',\n      suffix: 'suffix_style.decoration.border',\n      animated: 'animated_headline_style.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow',\n      prefix: 'prefix_style.decoration.boxShadow',\n      suffix: 'suffix_style.decoration.boxShadow',\n      animated: 'animated_headline_style.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    display_conditions: 'module.decoration.conditions',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    fonts: {\n      header: 'header.decoration.font',\n      prefix: 'prefix.decoration.font',\n      animated: 'animated_headline.decoration.font',\n      suffix: 'suffix.decoration.font'\n    },\n    height: 'module.decoration.sizing',\n    link_options: 'module.advanced.link',\n    margin_padding: 'module.decoration.spacing',\n    max_width: 'module.decoration.sizing',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    text: 'module.advanced.text',\n    text_shadow: {\n      default: 'module.advanced.text.textShadow'\n    },\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex'\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    animated_headline: 'animated_headline.innerContent.*',\n    prefix: 'prefix.innerContent.*',\n    suffix: 'suffix.innerContent.*',\n    effects: 'effects.innerContent.*',\n    tag: 'tag.innerContent.*',\n    animation_delay: 'animation_delay.innerContent.*',\n    letters_delay: 'letters_delay.innerContent.*',\n    type_letters_delay: 'type_letters_delay.innerContent.*',\n    type_selection_duration: 'type_selection_duration.innerContent.*',\n    clip_reveal_duration: 'clip_reveal_duration.innerContent.*',\n    clip_reveal_animation_delay: 'clip_reveal_animation_delay.innerContent.*',\n    bar_width: 'bar_width.innerContent.*',\n    bar_color: 'bar_color.innerContent.*',\n    text_highlight: 'text_highlight.innerContent.*',\n    text_color: 'text_color.innerContent.*',\n    bar_height: 'bar_height.innerContent.*',\n    prefix_display_type: 'prefix_display_type.innerContent.*',\n    animated_display_type: 'animated_display_type.innerContent.*',\n    suffix_display_type: 'suffix_display_type.innerContent.*',\n    prefix_background: 'prefix_background.innerContent.*',\n    suffix_background: 'suffix_background.innerContent.*',\n    animated_headline_background: 'animated_headline_background.innerContent.*',\n    prefix_padding: 'prefix_spacing.decoration.spacing.*.padding',\n    suffix_padding: 'suffix_spacing.decoration.spacing.*.padding',\n    animated_headline_padding: 'animated_headline_spacing.decoration.spacing.*.padding',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    animated_headline: 'sortableListConverter',\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/animated-headline/index.js\n// External library dependencies.\n\n// Wordpress dependencies.\n\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n//  Custom dependencies.\n\n\n\n\n\n\nconst animatedHeadlineModule = {\n  metadata: animated_headline_module_namespaceObject,\n  conversionOutline: conversion_outline_conversionOutline,\n  renderers: {\n    edit: animated_headline_edit,\n    styles: module_styles_ModuleStyles\n  },\n  settings: {\n    content: animated_headline_settings_content,\n    design: animated_headline_settings_design,\n    advanced: animated_headline_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    header: {\n      decoration: {\n        font: {\n          font: {\n            desktop: {\n              value: {\n                headingLevel: 'h1'\n              }\n            }\n          }\n        }\n      }\n    },\n    animated_headline: {\n      innerContent: {\n        desktop: {\n          value: [{\n            value: 'Design',\n            dragID: '8fbd133e-8fed-4a09-88c5-d7aa83e447c9'\n          }, {\n            value: 'Code',\n            dragID: '63e8b210-3b85-46b6-8101-b6878fcf8dd8'\n          }, {\n            value: 'Launch',\n            dragID: '2ad44ecd-97f7-4218-9af8-87974750ee8c'\n          }]\n        }\n      }\n    },\n    prefix: {\n      innerContent: {\n        desktop: {\n          value: 'This is '\n        }\n      }\n    },\n    suffix: {\n      innerContent: {\n        desktop: {\n          value: ''\n        }\n      }\n    },\n    effects: {\n      innerContent: {\n        desktop: {\n          value: 'rotate1'\n        }\n      }\n    },\n    tag: {\n      innerContent: {\n        desktop: {\n          value: 'h1'\n        }\n      }\n    },\n    animation_delay: {\n      innerContent: {\n        desktop: {\n          value: '2500'\n        }\n      }\n    },\n    letters_delay: {\n      innerContent: {\n        desktop: {\n          value: '50'\n        }\n      }\n    },\n    type_letters_delay: {\n      innerContent: {\n        desktop: {\n          value: '50'\n        }\n      }\n    },\n    clip_reveal_duration: {\n      innerContent: {\n        desktop: {\n          value: '600'\n        }\n      }\n    },\n    clip_reveal_animation_delay: {\n      innerContent: {\n        desktop: {\n          value: '1500'\n        }\n      }\n    },\n    type_selection_duration: {\n      innerContent: {\n        desktop: {\n          value: '500'\n        }\n      }\n    },\n    bar_width: {\n      innerContent: {\n        desktop: {\n          value: '1'\n        }\n      }\n    },\n    bar_color: {\n      innerContent: {\n        desktop: {\n          value: '#2c3e50'\n        }\n      }\n    },\n    text_highlight: {\n      innerContent: {\n        desktop: {\n          value: '#2c3e50'\n        }\n      }\n    },\n    text_color: {\n      innerContent: {\n        desktop: {\n          value: '#ffffff'\n        }\n      }\n    },\n    bar_height: {\n      innerContent: {\n        desktop: {\n          value: '3'\n        }\n      }\n    }\n  }\n};\n/* harmony default export */ const animated_headline = (animatedHeadlineModule);\n;// ./packages/module-library/before-after-slider/module.json\nconst before_after_slider_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/before-after-image\",\"d4Shortcode\":\"dsm_before_after_image\",\"title\":\"Supreme Before/After Image Slider\",\"titles\":\"Supreme Before/After Image Slider\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/before-after-slider\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"before_src\":{\"type\":\"object\",\"label\":\"Before image\",\"selector\":\"{{selector}} .dsm-before-after-upload-before\",\"elementType\":\"image\",\"supportsCustomAttributes\":true,\"childrenSanitizer\":\"et_core_esc_previously\"},\"before_alt\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"before_title_text\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"after_src\":{\"type\":\"object\",\"label\":\"After image\",\"selector\":\"{{selector}} .dsm-before-after-upload-after\",\"elementType\":\"image\",\"supportsCustomAttributes\":true,\"childrenSanitizer\":\"et_core_esc_previously\"},\"after_alt\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"after_title_text\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"before_label_text\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"after_label_text\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"show_label_hover\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"label_align\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"default_offset_pct\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"orientation\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"no_overlay\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"move_slider_on_hover\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"compare_control_shadow\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"compare_add_circle\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"compare_add_circle_blur\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"compare_smoothing\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"compare_smoothing_amount\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"compare_fluid_mode\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"before_label_background_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"after_label_background_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"overlay_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"handle_border_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"handle_border_radius\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"handle_background_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"handle_arrow_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"before_label\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-label.dsm-before, {{selector}} .icv__label.icv__label-before\",\"childrenSanitizer\":\"et_core_esc_previously\",\"settings\":{\"decoration\":{\"font\":{}}},\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-label.dsm-before, {{selector}} .icv__label.icv__label-before\",\"hover\":\"{{selector}}:hover .dsm-label.dsm-before, {{selector}}:hover .icv__label.icv__label-before\"}}}}},\"after_label\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-label.dsm-after, {{selector}} .icv__label.icv__label-after\",\"childrenSanitizer\":\"et_core_esc_previously\",\"settings\":{\"decoration\":{\"font\":{}}},\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-label.dsm-after, {{selector}} .icv__label.icv__label-after\",\"hover\":\"{{selector}}:hover .dsm-label.dsm-after, {{selector}}:hover .icv__label.icv__label-after\"}}}}}}}');\n;// ./packages/module-library/before-after-slider/module-default-render-attributes.json\nconst before_after_slider_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"before_src\":{\"innerContent\":{\"desktop\":{\"value\":{\"src\":\"\"}}}},\"after_src\":{\"innerContent\":{\"desktop\":{\"value\":{\"src\":\"\"}}}},\"before_alt\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"before_title_text\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"after_alt\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"after_title_text\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"no_overlay\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"before_label_text\":{\"innerContent\":{\"desktop\":{\"value\":\"Before\"}}},\"after_label_text\":{\"innerContent\":{\"desktop\":{\"value\":\"After\"}}},\"show_label_hover\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"label_align\":{\"innerContent\":{\"desktop\":{\"value\":\"center\"}}},\"default_offset_pct\":{\"innerContent\":{\"desktop\":{\"value\":\"0.5\"}}},\"orientation\":{\"innerContent\":{\"desktop\":{\"value\":\"horizontal\"}}},\"move_slider_on_hover\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"compare_control_shadow\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"compare_add_circle\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"compare_add_circle_blur\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"compare_smoothing\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"compare_smoothing_amount\":{\"innerContent\":{\"desktop\":{\"value\":\"100\"}}},\"compare_fluid_mode\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"handle_border_radius\":{\"innerContent\":{\"desktop\":{\"value\":\"50%\"}}},\"before_label_background_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"after_label_background_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"overlay_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"handle_border_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"handle_background_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"handle_arrow_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}}}');\n;// ./packages/module-library/before-after-slider/before-after-slider-vb-default-attrs.js\n/**\n * Visual Builder `defaultAttr` map from `module-default-render-attributes.json`.\n *\n * @package DiviSupreme\n */\n\n\nconst beforeAfterFieldDefaultInnerContent = Object.fromEntries(Object.entries(before_after_slider_module_default_render_attributes_namespaceObject).map(([key, attr]) => [key, attr.innerContent]));\n\n/** @type {typeof beforeAfterFieldDefaultInnerContent} */\nconst beforeAfterFd = beforeAfterFieldDefaultInnerContent;\n\n/** Placeholder upload; must match `index.js` before/after image defaults. */\nconst beforeAfterUploadVbDefaultAttr = {\n  desktop: {\n    value: {\n      src: 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTA4MCIgaGVpZ2h0PSI1NDAiIHZpZXdCb3g9IjAgMCAxMDgwIDU0MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPHBhdGggZmlsbD0iI0VCRUJFQiIgZD0iTTAgMGgxMDgwdjU0MEgweiIvPgogICAgICAgIDxwYXRoIGQ9Ik00NDUuNjQ5IDU0MGgtOTguOTk1TDE0NC42NDkgMzM3Ljk5NSAwIDQ4Mi42NDR2LTk4Ljk5NWwxMTYuMzY1LTExNi4zNjVjMTUuNjItMTUuNjIgNDAuOTQ3LTE1LjYyIDU2LjU2OCAwTDQ0NS42NSA1NDB6IiBmaWxsLW9wYWNpdHk9Ii4xIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgICAgICA8Y2lyY2xlIGZpbGwtb3BhY2l0eT0iLjA1IiBmaWxsPSIjMDAwIiBjeD0iMzMxIiBjeT0iMTQ4IiByPSI3MCIvPgogICAgICAgIDxwYXRoIGQ9Ik0xMDgwIDM3OXYxMTMuMTM3TDcyOC4xNjIgMTQwLjMgMzI4LjQ2MiA1NDBIMjE1LjMyNEw2OTkuODc4IDU1LjQ0NmMxNS42Mi0xNS42MiA0MC45NDgtMTUuNjIgNTYuNTY4IDBMMTA4MCAzNzl6IiBmaWxsLW9wYWNpdHk9Ii4yIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgIDwvZz4KPC9zdmc+Cg=='\n    }\n  }\n};\n;// ./packages/module-library/before-after-slider/settings-content.js\n\n// Wordpress dependencies.\n\n// Divi package dependencies.\n\n\n\n\n\n\nfunction before_after_slider_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  const hideLabelsEnabled = 'on' === (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.no_overlay?.innerContent);\n  const isVerticalOrientation = 'vertical' === (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.orientation?.innerContent);\n  const labelAlignSelectOptions = isVerticalOrientation ? {\n    start: {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left', 'dsm-supreme-modules-pro-for-divi')\n    },\n    center: {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center', 'dsm-supreme-modules-pro-for-divi')\n    },\n    end: {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right', 'dsm-supreme-modules-pro-for-divi')\n    }\n  } : {\n    start: {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top', 'dsm-supreme-modules-pro-for-divi')\n    },\n    center: {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center', 'dsm-supreme-modules-pro-for-divi')\n    },\n    end: {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom', 'dsm-supreme-modules-pro-for-divi')\n    }\n  };\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Images', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"before_src.innerContent\",\n    subName: \"src\",\n    defaultAttr: beforeAfterUploadVbDefaultAttr,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Before Image', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Upload your desired before image, or type in the URL to the image you would like to display.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"before_alt.innerContent\",\n    defaultAttr: beforeAfterFd.before_alt,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Before Image Alternative Text', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('This defines the HTML ALT text. A short description of your image can be placed here.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"before_title_text.innerContent\",\n    defaultAttr: beforeAfterFd.before_title_text,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Before Image Title Text', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('This defines the HTML Title text.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"after_src.innerContent\",\n    subName: \"src\",\n    defaultAttr: beforeAfterUploadVbDefaultAttr,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('After Image', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Upload your desired after image, or type in the URL to the image you would like to display.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"after_alt.innerContent\",\n    defaultAttr: beforeAfterFd.after_alt,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('After Image Alternative Text', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('This defines the HTML ALT text. A short description of your image can be placed here.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"after_title_text.innerContent\",\n    defaultAttr: beforeAfterFd.after_title_text,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('After Image Title Text', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('This defines the HTML Title text.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"labels\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Labels', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"before_label_text.innerContent\",\n    defaultAttr: beforeAfterFd.before_label_text,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Before Label Text', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('This defines the before label text.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"after_label_text.innerContent\",\n    defaultAttr: beforeAfterFd.after_label_text,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('After Label Text', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('This defines the after label text.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"no_overlay.innerContent\",\n    defaultAttr: beforeAfterFd.no_overlay,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hide Labels', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('When enabled, caption labels are hidden (Image Compare Viewer showLabels off). Matches legacy “No overlay” / hide labels.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"show_label_hover.innerContent\",\n    defaultAttr: beforeAfterFd.show_label_hover,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Labels on Hover', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Matches Image Compare Viewer labelOptions.onHover on the live site.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: !hideLabelsEnabled,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"label_align.innerContent\",\n    defaultAttr: beforeAfterFd.label_align,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Label alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: isVerticalOrientation ? (0,external_window_vendor_wp_i18n_namespaceObject.__)('When orientation is vertical, positions captions on the horizontal cross-axis (start / center / end — shown as Left / Center / Right). Before stays toward the top of the compare area; after toward the bottom.', 'dsm-supreme-modules-pro-for-divi') : (0,external_window_vendor_wp_i18n_namespaceObject.__)('When orientation is horizontal, positions captions on the vertical cross-axis (start / center / end — shown as Top / Center / Bottom).', 'dsm-supreme-modules-pro-for-divi'),\n    visible: !hideLabelsEnabled\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    key: isVerticalOrientation ? 'dsm-before-after-label-align-v' : 'dsm-before-after-label-align-h',\n    options: labelAlignSelectOptions\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"settings\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Settings', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"default_offset_pct.innerContent\",\n    defaultAttr: beforeAfterFd.default_offset_pct,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Default Offset Percentage', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('How much of the before image is visible when the page loads (Image Compare Viewer startingPoint).', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 1,\n    defaultUnit: '',\n    step: 0.1\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"orientation.innerContent\",\n    defaultAttr: beforeAfterFd.orientation,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Orientation', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Compare Viewer verticalMode on the live site.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      horizontal: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Horizontal', 'dsm-supreme-modules-pro-for-divi')\n      },\n      vertical: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Vertical', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"move_slider_on_hover.innerContent\",\n    defaultAttr: beforeAfterFd.move_slider_on_hover,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Move Slider on Hover', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Live site: Image Compare Viewer hoverStart. Builder: React Compare Slider changePositionOnHover.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"compare_smoothing.innerContent\",\n    defaultAttr: beforeAfterFd.compare_smoothing,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Smoothing', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animate the divider when dragging (smoothing). Disabled automatically in Safari.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"compare_smoothing_amount.innerContent\",\n    defaultAttr: beforeAfterFd.compare_smoothing_amount,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Smoothing Amount (ms)', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Transition duration when smoothing is on (smoothingAmount; max 2000).', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 2000,\n    defaultUnit: '',\n    step: 10\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"compare_control_shadow.innerContent\",\n    defaultAttr: beforeAfterFd.compare_control_shadow,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Handle Shadow', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Drop shadow on the control line and arrows (controlShadow).', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"compare_add_circle.innerContent\",\n    defaultAttr: beforeAfterFd.compare_add_circle,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Circular Handle', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Circular handle with outlined arrows (addCircle).', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"compare_add_circle_blur.innerContent\",\n    defaultAttr: beforeAfterFd.compare_add_circle_blur,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Circular Handle Blur', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Backdrop blur behind the circular handle (addCircleBlur).', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"compare_fluid_mode.innerContent\",\n    defaultAttr: beforeAfterFd.compare_fluid_mode,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fluid Mode', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Clip-path / background reveal (fluidMode). Recommended for responsive containers.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const before_after_slider_settings_content = (before_after_slider_settings_content_SettingsContent);\n;// ./packages/module-library/before-after-slider/settings-design.js\n\n// Wordpress dependencies.\n\n\n// Divi package dependencies.\n\n\n\n\n\nfunction before_after_slider_settings_design_SettingsDesign({\n  attrs\n}) {\n  const isOverlay = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.no_overlay?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"before_label\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Before Label', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"before_label_background_color.innerContent\",\n    defaultAttr: beforeAfterFd.before_label_background_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom background color for the before label.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"before_label.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Before Label', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"after_label\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('After Label', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"after_label_background_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom background color for the after label.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"after_label.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('After Label', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"overlay\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hover Overlay', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'off' === isOverlay\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"overlay_color.innerContent\",\n    defaultAttr: beforeAfterFd.overlay_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Color of the overlay when hovering the compare area (pseudo-element on `.icv`; ICV removes the stock `.icv__imposter` after mount).', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'off' === isOverlay\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"handle_slider\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Handle Slider', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"handle_border_color.innerContent\",\n    defaultAttr: beforeAfterFd.handle_border_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Handle Border Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom border color for the handle slider.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"handle_border_radius.innerContent\",\n    defaultAttr: beforeAfterFd.handle_border_radius,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Handle Border Radius', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"handle_background_color.innerContent\",\n    defaultAttr: beforeAfterFd.handle_background_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Handle Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom background color for the handle slider.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"handle_arrow_color.innerContent\",\n    defaultAttr: beforeAfterFd.handle_arrow_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Arrow Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom arrow color for the handle slider.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const before_after_slider_settings_design = (before_after_slider_settings_design_SettingsDesign);\n;// ./packages/module-library/before-after-slider/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction before_after_slider_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_before_after_image\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const before_after_slider_settings_advanced = (before_after_slider_settings_advanced_SettingsAdvanced);\n;// external [\"divi\",\"dynamicData\"]\nconst external_divi_dynamicData_namespaceObject = divi.dynamicData;\n;// ./packages/module-library/before-after-slider/module-styles.js\n\n\n\n\n\n/**\n * Handle shadow (ICV `controlShadow`), default on — matches PHP `compare_toggle_is_on`.\n *\n * @param {Object} attrs Module attrs.\n * @return {boolean}\n */\nfunction getCompareControlShadowOn(attrs) {\n  if (attrs?.compare_control_shadow?.innerContent) {\n    const v = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs.compare_control_shadow.innerContent);\n    if (v === undefined || v === null || v === '') {\n      return true;\n    }\n    return 'on' === v;\n  }\n  if (attrs?.icv_control_shadow?.innerContent) {\n    const v = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs.icv_control_shadow.innerContent);\n    if (v === undefined || v === null || v === '') {\n      return true;\n    }\n    return 'on' === v;\n  }\n  return true;\n}\n\n/**\n * React function component for rendering module style.\n */\nconst before_after_slider_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  var _attrs$compare_contro, _attrs$compare_contro2;\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'before_label'\n  }), elements.style({\n    attrName: 'after_label'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_before_after_image_wrapper.icv:hover::before`,\n    attr: attrs?.overlay_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .icv__label.icv__label-before`,\n    attr: attrs?.before_label_background_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .icv__label.icv__label-after`,\n    attr: attrs?.after_label_background_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .icv__control-line`,\n    attr: attrs?.handle_border_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .icv__circle`,\n    attr: attrs?.handle_background_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .icv__circle`,\n    attr: attrs?.handle_border_color?.innerContent,\n    property: \"border-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .icv__circle`,\n    attr: attrs?.handle_border_radius?.innerContent,\n    property: \"border-radius\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .icv__arrow-wrapper svg path`,\n    attr: attrs?.handle_arrow_color?.innerContent,\n    property: \"fill\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .icv__arrow-wrapper svg path`,\n    attr: attrs?.handle_arrow_color?.innerContent,\n    property: \"stroke\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .icv__control-line, ${orderClass} .icv__circle`,\n    attr: (_attrs$compare_contro = attrs?.compare_control_shadow?.innerContent) !== null && _attrs$compare_contro !== void 0 ? _attrs$compare_contro : attrs?.icv_control_shadow?.innerContent,\n    declarationFunction: () => {\n      if (getCompareControlShadowOn(attrs)) {\n        return '';\n      }\n      const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n        returnType: 'string',\n        important: {\n          'box-shadow': true\n        }\n      });\n      declarations.add('box-shadow', 'none');\n      return declarations.value;\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .icv__arrow-wrapper svg`,\n    attr: (_attrs$compare_contro2 = attrs?.compare_control_shadow?.innerContent) !== null && _attrs$compare_contro2 !== void 0 ? _attrs$compare_contro2 : attrs?.icv_control_shadow?.innerContent,\n    declarationFunction: () => {\n      if (getCompareControlShadowOn(attrs)) {\n        return '';\n      }\n      const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n        returnType: 'string',\n        important: {\n          filter: true,\n          '-webkit-filter': true\n        }\n      });\n      declarations.add('-webkit-filter', 'none');\n      declarations.add('filter', 'none');\n      return declarations.value;\n    }\n  }));\n};\n;// ./packages/module-library/before-after-slider/icv-mobile-touch-fix.js\n/**\n * Mobile touch fix for image-compare-viewer (v1.6.2 bundled in before-after-library.js).\n *\n * Root cause: the library uses body-scroll-lock on touch/mouse start. On iOS that sets\n * body { position: fixed; top: -scrollY }. touchend (and synthesized mouseup on every\n * instance) calls enableBodyScroll, which scrollTo() from body.style.top — often 0,0.\n *\n * Fix: replace _events without body-scroll-lock; touchmove uses passive:false +\n * preventDefault during slider drag; no per-instance document.body mouseup unlock.\n */\n\n/**\n * @param {typeof ImageCompare} ImageCompareCtor image-compare-viewer constructor\n * @returns {boolean} true when patch was applied\n */\nfunction patchImageCompareMobileTouch(ImageCompareCtor) {\n  if (!ImageCompareCtor || !ImageCompareCtor.prototype) {\n    return false;\n  }\n  if (ImageCompareCtor.prototype.__dsmMobileTouchPatched) {\n    return true;\n  }\n  ImageCompareCtor.prototype._events = function dsmPatchedIcvEvents() {\n    const self = this;\n    const el = this.el;\n    const control = this.control;\n    if (!el || !control) {\n      return;\n    }\n    let touchDragging = false;\n    let touchMoved = false;\n    let touchStartX = 0;\n    let touchStartY = 0;\n    const resetArrowAnimator = function (offset) {\n      const coords = self.settings.addCircle ? self.arrowCoordinates.circle : self.arrowCoordinates.standard;\n      self.arrowAnimator.forEach(function (arrow, index) {\n        const sign = 0 === index ? 1 : -1;\n        const transform = self.settings.verticalMode ? 'transform: translateY(' + (offset ? coords[1] * sign : 0 === index ? coords[0] : -coords[0]) + 'px);' : 'transform: translateX(' + (offset ? coords[1] * sign : 0 === index ? coords[0] : -coords[0]) + 'px);';\n        arrow.style.cssText = transform;\n      });\n    };\n    el.addEventListener('mousedown', function (event) {\n      self._activate(true);\n      document.body.classList.add('icv__body');\n      self._slideCompare(event);\n    });\n    el.addEventListener('mousemove', function (event) {\n      if (self.active) {\n        self._slideCompare(event);\n      }\n    });\n    el.addEventListener('mouseup', function () {\n      self._activate(false);\n    });\n    document.body.addEventListener('mouseup', function () {\n      if (!self.active) {\n        return;\n      }\n      document.body.classList.remove('icv__body');\n      self._activate(false);\n    });\n    control.addEventListener('touchstart', function (event) {\n      touchDragging = true;\n      touchMoved = false;\n      touchStartX = event.touches[0].clientX;\n      touchStartY = event.touches[0].clientY;\n      self._activate(true);\n      self._slideCompare(event);\n    }, {\n      passive: true\n    });\n    el.addEventListener('touchmove', function (event) {\n      if (!touchDragging || !self.active || !event.touches.length) {\n        return;\n      }\n      const dx = Math.abs(event.touches[0].clientX - touchStartX);\n      const dy = Math.abs(event.touches[0].clientY - touchStartY);\n      if (!touchMoved) {\n        if (dx < 4 && dy < 4) {\n          return;\n        }\n        touchMoved = self.settings.verticalMode ? dy >= dx : dx >= dy;\n      }\n      if (touchMoved) {\n        event.preventDefault();\n        self._slideCompare(event);\n      }\n    }, {\n      passive: false\n    });\n    const onTouchEnd = function () {\n      touchDragging = false;\n      touchMoved = false;\n      self._activate(false);\n    };\n    el.addEventListener('touchend', onTouchEnd, {\n      passive: true\n    });\n    el.addEventListener('touchcancel', onTouchEnd, {\n      passive: true\n    });\n    el.addEventListener('mouseenter', function () {\n      if (self.settings.hoverStart) {\n        self._activate(true);\n      }\n      resetArrowAnimator(true);\n    });\n    el.addEventListener('mouseleave', function () {\n      resetArrowAnimator(false);\n    });\n  };\n  ImageCompareCtor.prototype.__dsmMobileTouchPatched = true;\n  return true;\n}\n;// ./packages/module-library/before-after-slider/edit.js\n\n\n\n\n\n\n\n\n/**\n * WordPress localized script adds `ImageCompare` when `supreme-before-after-library` is enqueued.\n *\n * @typedef {new ( el: Element, opts: Record<string, unknown> ) => { mount: () => void }} ImageCompareConstructor\n */\n\n/**\n * Normalize UploadContainer value for useDynamicData / img src.\n *\n * @param {*} raw From getAttrByMode( attrs.*_src.innerContent ).\n * @return {string}\n */\nfunction getUploadValueForDynamicData(raw) {\n  if (raw == null || raw === '') {\n    return '';\n  }\n  if (typeof raw === 'string' || typeof raw === 'number') {\n    return String(raw);\n  }\n  if (typeof raw === 'object') {\n    if (typeof raw.src === 'string' && raw.src !== '') {\n      return raw.src;\n    }\n    if (typeof raw.url === 'string' && raw.url !== '') {\n      return raw.url;\n    }\n  }\n  return '';\n}\n\n/**\n * Read `compare_*` attribute with legacy `icv_*` fallback (pre-rename saves).\n *\n * @param {Object} attrs       Module attrs.\n * @param {string} compareKey  Canonical key.\n * @param {string} legacyKey   Legacy `icv_*` key.\n * @return {*|undefined}\n */\nfunction getCompareAttrByMode(attrs, compareKey, legacyKey) {\n  const primary = attrs?.[compareKey]?.innerContent;\n  if (primary) {\n    return (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(primary);\n  }\n  const legacy = attrs?.[legacyKey]?.innerContent;\n  if (legacy) {\n    return (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(legacy);\n  }\n  return undefined;\n}\n\n/**\n * Build Image Compare Viewer options to match `BeforeAfterSlider::render_callback` + `before-after-slider.js`.\n *\n * @param {Object} args Builder-derived values.\n * @return {Record<string, unknown>}\n */\nfunction buildImageCompareOptions(args) {\n  const start = Math.max(0, Math.min(100, (Number(args.offsetHandle) || 0.5) * 100));\n  let smoothAmt = parseInt(String(args.compareSmoothMsRaw), 10);\n  if (Number.isNaN(smoothAmt)) {\n    smoothAmt = 100;\n  }\n  smoothAmt = Math.max(0, Math.min(2000, smoothAmt));\n  let controlColor = typeof args.controlColor === 'string' && args.controlColor.trim() !== '' ? args.controlColor.trim() : '#FFFFFF';\n  if (typeof document !== 'undefined' && controlColor.startsWith('var(')) {\n    const el = document.createElement('span');\n    el.style.color = controlColor;\n    document.body.appendChild(el);\n    const resolved = window.getComputedStyle(el).color;\n    document.body.removeChild(el);\n    if (resolved && resolved !== '') {\n      controlColor = resolved;\n    }\n  }\n  return {\n    controlColor,\n    controlShadow: args.compareControlShadow !== 'off',\n    addCircle: args.compareAddCircle !== 'off',\n    addCircleBlur: args.compareAddCircleBlur !== 'off',\n    showLabels: args.noOverlay !== 'on',\n    labelOptions: {\n      before: 'string' === typeof args.beforeLabelText && args.beforeLabelText ? args.beforeLabelText : 'Before',\n      after: 'string' === typeof args.afterLabelText && args.afterLabelText ? args.afterLabelText : 'After',\n      onHover: args.showLabelOnHover !== 'off'\n    },\n    smoothing: args.compareSmoothing !== 'off',\n    smoothingAmount: smoothAmt,\n    hoverStart: args.moveSliderOnHover === 'on',\n    verticalMode: 'vertical' === args.orientation,\n    startingPoint: start,\n    fluidMode: args.compareFluidMode !== 'off'\n  };\n}\n\n/**\n * React function component for registering module script data.\n */\nconst before_after_slider_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}), elements.scriptData({\n  attrName: 'before_src'\n}), elements.scriptData({\n  attrName: 'after_src'\n}));\nfunction before_after_slider_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _getAttrByMode4, _getAttrByMode5;\n  const containerRef = (0,external_vendor_React_.useRef)(null);\n  const beforeImageUrl = getUploadValueForDynamicData((0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.before_src?.innerContent));\n  const afterImageUrl = getUploadValueForDynamicData((0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.after_src?.innerContent));\n  const orientation = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.orientation?.innerContent);\n  const offsetHandle = Number((0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.default_offset_pct?.innerContent));\n  const moveSliderOnHover = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.move_slider_on_hover?.innerContent);\n  const beforeLabelText = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.before_label_text?.innerContent);\n  const afterLabelText = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.after_label_text?.innerContent);\n  const showLabelOnHover = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_label_hover?.innerContent);\n  const labelAlignRaw = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.label_align?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.label_vertical_align?.innerContent);\n  const labelAlign = ['start', 'center', 'end'].includes(labelAlignRaw) ? labelAlignRaw : 'end';\n  const noOverlay = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.no_overlay?.innerContent);\n  const compareAddCircle = getCompareAttrByMode(attrs, 'compare_add_circle', 'icv_add_circle');\n  const compareAddCircleBlur = getCompareAttrByMode(attrs, 'compare_add_circle_blur', 'icv_add_circle_blur');\n  const compareControlShadow = getCompareAttrByMode(attrs, 'compare_control_shadow', 'icv_control_shadow');\n  const compareFluidMode = getCompareAttrByMode(attrs, 'compare_fluid_mode', 'icv_fluid_mode');\n  const compareSmoothing = getCompareAttrByMode(attrs, 'compare_smoothing', 'icv_smoothing');\n  const compareSmoothMsRaw = getCompareAttrByMode(attrs, 'compare_smoothing_amount', 'icv_smoothing_amount');\n  const controlColorRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.handle_border_color?.innerContent);\n  const controlColor = typeof controlColorRaw === 'string' && controlColorRaw.trim() !== '' ? controlColorRaw.trim() : '#FFFFFF';\n  const beforeAlt = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.before_alt?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : '';\n  const beforeTitle = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.before_title_text?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : '';\n  const afterAlt = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.after_alt?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : '';\n  const afterTitle = (_getAttrByMode5 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.after_title_text?.innerContent)) !== null && _getAttrByMode5 !== void 0 ? _getAttrByMode5 : '';\n  const previewKey = [orientation, String(offsetHandle), moveSliderOnHover, showLabelOnHover, labelAlign, noOverlay, compareAddCircle, compareAddCircleBlur, compareControlShadow, compareFluidMode, compareSmoothing, String(compareSmoothMsRaw), controlColor, beforeLabelText, afterLabelText, beforeImageUrl, afterImageUrl].join('|');\n  const {\n    resolvedValue: resolvedBefore,\n    isDynamic: isDynamicBefore\n  } = (0,external_divi_dynamicData_namespaceObject.useDynamicData)(beforeImageUrl);\n  const {\n    resolvedValue: resolvedAfter,\n    isDynamic: isDynamicAfter\n  } = (0,external_divi_dynamicData_namespaceObject.useDynamicData)(afterImageUrl);\n  const beforeImageSrc = (0,lodash.isEmpty)(beforeImageUrl) ? 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTA4MCIgaGVpZ2h0PSI1NDAiIHZpZXdCb3g9IjAgMCAxMDgwIDU0MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPHBhdGggZmlsbD0iI0VCRUJFQiIgZD0iTTAgMGgxMDgwdjU0MEgweiIvPgogICAgICAgIDxwYXRoIGQ9Ik00NDUuNjQ5IDU0MGgtOTguOTk1TDE0NC42NDkgMzM3Ljk5NSAwIDQ4Mi42NDR2LTk4Ljk5NWwxMTYuMzY1LTExNi4zNjVjMTUuNjItMTUuNjIgNDAuOTQ3LTE1LjYyIDU2LjU2OCAwTDQ0NS42NSA1NDB6IiBmaWxsLW9wYWNpdHk9Ii4xIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgICAgICA8Y2lyY2xlIGZpbGwtb3BhY2l0eT0iLjA1IiBmaWxsPSIjMDAwIiBjeD0iMzMxIiBjeT0iMTQ4IiByPSI3MCIvPgogICAgICAgIDxwYXRoIGQ9Ik0xMDgwIDM3OXYxMTMuMTM3TDcyOC4xNjIgMTQwLjMgMzI4LjQ2MiA1NDBIMjE1LjMyNEw2OTkuODc4IDU1LjQ0NmMxNS42Mi0xNS42MiA0MC45NDgtMTUuNjIgNTYuNTY4IDBMMTA4MCAzNzl6IiBmaWxsLW9wYWNpdHk9Ii4yIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgIDwvZz4KPC9zdmc+Cg==' : beforeImageUrl;\n  const afterImageSrc = (0,lodash.isEmpty)(afterImageUrl) ? 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTA4MCIgaGVpZ2h0PSI1NDAiIHZpZXdCb3g9IjAgMCAxMDgwIDU0MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPHBhdGggZmlsbD0iI0VCRUJFQiIgZD0iTTAgMGgxMDgwdjU0MEgweiIvPgogICAgICAgIDxwYXRoIGQ9Ik00NDUuNjQ5IDU0MGgtOTguOTk1TDE0NC42NDkgMzM3Ljk5NSAwIDQ4Mi42NDR2LTk4Ljk5NWwxMTYuMzY1LTExNi4zNjVjMTUuNjItMTUuNjIgNDAuOTQ3LTE1LjYyIDU2LjU2OCAwTDQ0NS42NSA1NDB6IiBmaWxsLW9wYWNpdHk9Ii4xIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgICAgICA8Y2lyY2xlIGZpbGwtb3BhY2l0eT0iLjA1IiBmaWxsPSIjMDAwIiBjeD0iMzMxIiBjeT0iMTQ4IiByPSI3MCIvPgogICAgICAgIDxwYXRoIGQ9Ik0xMDgwIDM3OXYxMTMuMTM3TDcyOC4xNjIgMTQwLjMgMzI4LjQ2MiA1NDBIMjE1LjMyNEw2OTkuODc4IDU1LjQ0NmMxNS42Mi0xNS42MiA0MC45NDgtMTUuNjIgNTYuNTY4IDBMMTA4MCAzNzl6IiBmaWxsLW9wYWNpdHk9Ii4yIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgIDwvZz4KPC9zdmc+Cg==' : afterImageUrl;\n  const beforeSrcDisplay = isDynamicBefore ? resolvedBefore : beforeImageSrc;\n  const afterSrcDisplay = isDynamicAfter ? resolvedAfter : afterImageSrc;\n  (0,external_vendor_React_.useEffect)(() => {\n    const el = containerRef.current;\n    if (!el) {\n      return undefined;\n    }\n    let cancelled = false;\n    let pollId = 0;\n    const teardownIcvClasses = () => {\n      el.removeAttribute('data-dsm-icv-mounted');\n      el.classList.remove('icv', 'icv__icv--vertical', 'icv__icv--horizontal', 'icv__is--fluid', 'standard');\n    };\n    const mountCompare = () => {\n      if (cancelled) {\n        return;\n      }\n      const ImageCompareCtor = /** @type {ImageCompareConstructor|undefined} */\n      window.ImageCompare;\n      if (!ImageCompareCtor) {\n        return;\n      }\n      patchImageCompareMobileTouch(ImageCompareCtor);\n      teardownIcvClasses();\n      el.replaceChildren();\n      const imgBefore = document.createElement('img');\n      const imgAfter = document.createElement('img');\n      imgBefore.src = beforeSrcDisplay || '';\n      imgAfter.src = afterSrcDisplay || '';\n      if (beforeAlt) {\n        imgBefore.alt = beforeAlt;\n      }\n      if (beforeTitle) {\n        imgBefore.title = beforeTitle;\n      }\n      if (afterAlt) {\n        imgAfter.alt = afterAlt;\n      }\n      if (afterTitle) {\n        imgAfter.title = afterTitle;\n      }\n      el.appendChild(imgBefore);\n      el.appendChild(imgAfter);\n      const opts = buildImageCompareOptions({\n        offsetHandle,\n        compareSmoothMsRaw,\n        controlColor,\n        compareControlShadow,\n        compareAddCircle,\n        compareAddCircleBlur,\n        noOverlay,\n        beforeLabelText,\n        afterLabelText,\n        showLabelOnHover,\n        compareSmoothing,\n        moveSliderOnHover,\n        orientation,\n        compareFluidMode\n      });\n      el.setAttribute('data-params', JSON.stringify(opts));\n      try {\n        const viewer = new ImageCompareCtor(el, opts);\n        viewer.mount();\n        el.setAttribute('data-dsm-icv-mounted', '1');\n      } catch (err) {\n        teardownIcvClasses();\n      }\n    };\n    const tryMount = () => {\n      if (typeof window.ImageCompare !== 'undefined') {\n        mountCompare();\n        return true;\n      }\n      return false;\n    };\n    if (!tryMount()) {\n      pollId = window.setInterval(() => {\n        if (tryMount()) {\n          window.clearInterval(pollId);\n          pollId = 0;\n        }\n      }, 50);\n    }\n    return () => {\n      cancelled = true;\n      if (pollId) {\n        window.clearInterval(pollId);\n      }\n      document.body.classList.remove('icv__body');\n      teardownIcvClasses();\n      el.replaceChildren();\n    };\n  }, [previewKey, beforeSrcDisplay, afterSrcDisplay, beforeAlt, beforeTitle, afterAlt, afterTitle, offsetHandle, compareSmoothMsRaw, controlColor, compareControlShadow, compareAddCircle, compareAddCircleBlur, noOverlay, beforeLabelText, afterLabelText, showLabelOnHover, compareSmoothing, moveSliderOnHover, orientation, compareFluidMode]);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: before_after_slider_edit_ModuleScriptData,\n    stylesComponent: before_after_slider_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n      if ('off' === (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_label_hover?.innerContent)) {\n        params.classnamesInstance.add('dsm-before-after-image-show-labels');\n      }\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    key: previewKey,\n    ref: containerRef,\n    className: `dsm_before_after_image_wrapper dsm-before-after-image-slider-container dsm_before_after_slider_frontend dsm-icv-label-align-${labelAlign}`\n  }));\n}\n/* harmony default export */ const before_after_slider_edit = (before_after_slider_edit_Edit);\n;// ./packages/module-library/before-after-slider/conversion-outline.js\nconst before_after_slider_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    display_conditions: 'module.decoration.conditions',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    fonts: {\n      before_label: 'before_label.decoration.font',\n      after_label: 'after_label.decoration.font'\n    },\n    text: 'module.advanced.text',\n    text_shadow: {\n      default: 'module.advanced.text.textShadow'\n    },\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    height: 'module.decoration.sizing',\n    link_options: 'module.advanced.link',\n    margin_padding: 'module.decoration.spacing',\n    max_width: 'module.decoration.sizing',\n    module: 'module.advanced.htmlAttributes'\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    // Match divi/image + scroll-image / tilt-image: URL must land on `innerContent.*.value.src` for UploadContainer + subName=\"src\".\n    before_src: 'before_src.innerContent.*.src',\n    before_alt: 'before_alt.innerContent.*',\n    before_title_text: 'before_title_text.innerContent.*',\n    after_src: 'after_src.innerContent.*.src',\n    after_alt: 'after_alt.innerContent.*',\n    after_title_text: 'after_title_text.innerContent.*',\n    before_label_text: 'before_label_text.innerContent.*',\n    after_label_text: 'after_label_text.innerContent.*',\n    show_label_hover: 'show_label_hover.innerContent.*',\n    label_align: 'label_align.innerContent.*',\n    default_offset_pct: 'default_offset_pct.innerContent.*',\n    orientation: 'orientation.innerContent.*',\n    no_overlay: 'no_overlay.innerContent.*',\n    move_slider_on_hover: 'move_slider_on_hover.innerContent.*',\n    compare_control_shadow: 'compare_control_shadow.innerContent.*',\n    compare_add_circle: 'compare_add_circle.innerContent.*',\n    compare_add_circle_blur: 'compare_add_circle_blur.innerContent.*',\n    compare_smoothing: 'compare_smoothing.innerContent.*',\n    compare_smoothing_amount: 'compare_smoothing_amount.innerContent.*',\n    compare_fluid_mode: 'compare_fluid_mode.innerContent.*',\n    before_label_background_color: 'before_label_background_color.innerContent.*',\n    after_label_background_color: 'after_label_background_color.innerContent.*',\n    overlay_color: 'overlay_color.innerContent.*',\n    handle_border_color: 'handle_border_color.innerContent.*',\n    handle_border_radius: 'handle_border_radius.innerContent.*',\n    handle_background_color: 'handle_background_color.innerContent.*',\n    handle_arrow_color: 'handle_arrow_color.innerContent.*',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  },\n  // Unmapped D4 attrs become `unknownAttributes` and Divi skips conversion (shortcode left in content).\n  deprecatedMap: ['move_with_handle_only', 'click_to_move']\n};\n;// ./packages/module-library/before-after-slider/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmBeforeAfterSlider', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/before-after-slider': {\n      name: 'divi-supreme/before-after-slider',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.757812 12.277344 L 3.519531 12.277344 C 2.753906 12.277344 2.132812 11.65625 2.132812 10.894531 L 2.132812 5.410156 C 2.132812 4.648438 2.753906 4.027344 3.519531 4.027344 L 12.765625 4.027344 C 13.527344 4.027344 14.148438 4.648438 14.148438 5.410156 L 14.148438 10.894531 C 14.148438 11.65625 13.527344 12.277344 12.757812 12.277344 Z M 3.519531 4.421875 C 2.976562 4.421875 2.53125 4.867188 2.53125 5.410156 L 2.53125 10.894531 C 2.53125 11.4375 2.976562 11.882812 3.519531 11.882812 L 12.765625 11.882812 C 13.308594 11.882812 13.753906 11.4375 13.753906 10.894531 L 13.753906 5.410156 C 13.753906 4.867188 13.308594 4.421875 12.765625 4.421875 Z M 3.519531 4.421875 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 10.625 3.574219 C 10.226562 3.574219 9.902344 3.25 9.902344 2.855469 C 9.902344 2.457031 10.226562 2.132812 10.625 2.132812 C 11.023438 2.132812 11.347656 2.457031 11.347656 2.855469 C 11.347656 3.25 11.023438 3.574219 10.625 3.574219 Z M 10.625 2.53125 C 10.449219 2.53125 10.300781 2.675781 10.300781 2.855469 C 10.300781 3.03125 10.449219 3.179688 10.625 3.179688 C 10.804688 3.179688 10.949219 3.03125 10.949219 2.855469 C 10.949219 2.675781 10.804688 2.53125 10.625 2.53125 Z M 10.625 2.53125 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 3.277344 14.15625 C 2.878906 14.15625 2.554688 13.832031 2.554688 13.433594 C 2.554688 13.035156 2.878906 12.710938 3.277344 12.710938 C 3.675781 12.710938 4 13.035156 4 13.433594 C 4 13.832031 3.675781 14.15625 3.277344 14.15625 Z M 3.277344 13.109375 C 3.101562 13.109375 2.953125 13.253906 2.953125 13.433594 C 2.953125 13.609375 3.101562 13.757812 3.277344 13.757812 C 3.457031 13.757812 3.601562 13.609375 3.601562 13.433594 C 3.597656 13.253906 3.457031 13.109375 3.277344 13.109375 Z M 3.277344 13.109375 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 7.417969 7.949219 C 7.394531 8.011719 7.390625 8.082031 7.390625 8.148438 C 7.390625 8.21875 7.402344 8.285156 7.417969 8.347656 L 2.332031 8.347656 L 2.332031 7.945312 L 7.417969 7.945312 Z M 7.417969 7.949219 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 13.945312 7.949219 L 13.945312 8.351562 L 8.859375 8.351562 C 8.878906 8.289062 8.882812 8.222656 8.882812 8.15625 C 8.882812 8.085938 8.875 8.019531 8.859375 7.957031 L 13.945312 7.957031 Z M 13.945312 7.949219 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 8.136719 9.105469 C 7.613281 9.105469 7.183594 8.675781 7.183594 8.15625 C 7.183594 7.632812 7.613281 7.203125 8.136719 7.203125 C 8.660156 7.203125 9.089844 7.632812 9.089844 8.15625 C 9.089844 8.675781 8.660156 9.105469 8.136719 9.105469 Z M 8.136719 7.601562 C 7.832031 7.601562 7.589844 7.847656 7.589844 8.148438 C 7.589844 8.453125 7.832031 8.699219 8.136719 8.699219 C 8.441406 8.699219 8.683594 8.453125 8.683594 8.148438 C 8.683594 7.847656 8.441406 7.601562 8.136719 7.601562 Z M 8.136719 7.601562 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 7.058594 7.136719 C 6.996094 7.136719 6.933594 7.109375 6.886719 7.066406 C 6.789062 6.972656 6.789062 6.816406 6.882812 6.71875 L 7.964844 5.636719 C 8.058594 5.542969 8.226562 5.542969 8.320312 5.636719 L 9.390625 6.707031 C 9.492188 6.804688 9.484375 6.960938 9.386719 7.0625 C 9.285156 7.15625 9.136719 7.15625 9.042969 7.0625 L 8.136719 6.164062 L 7.238281 7.0625 C 7.195312 7.105469 7.132812 7.128906 7.058594 7.136719 C 7.066406 7.136719 7.066406 7.136719 7.058594 7.136719 Z M 6.957031 6.773438 C 6.957031 6.78125 6.957031 6.78125 6.957031 6.773438 Z M 6.957031 6.773438 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 8.136719 10.683594 C 8.074219 10.683594 8.007812 10.65625 7.964844 10.609375 L 6.886719 9.535156 C 6.839844 9.480469 6.816406 9.417969 6.816406 9.355469 C 6.816406 9.289062 6.839844 9.226562 6.894531 9.183594 C 6.988281 9.089844 7.144531 9.089844 7.238281 9.183594 L 8.136719 10.082031 L 9.035156 9.183594 C 9.078125 9.136719 9.140625 9.109375 9.207031 9.109375 C 9.277344 9.105469 9.339844 9.136719 9.386719 9.179688 C 9.433594 9.226562 9.460938 9.289062 9.464844 9.351562 C 9.464844 9.417969 9.4375 9.480469 9.398438 9.527344 L 8.320312 10.605469 C 8.269531 10.65625 8.203125 10.683594 8.136719 10.683594 Z M 8.136719 10.683594 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/before-after-slider/index.js\n\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\nconst beforeAfterPlaceholderSrc = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTA4MCIgaGVpZ2h0PSI1NDAiIHZpZXdCb3g9IjAgMCAxMDgwIDU0MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPHBhdGggZmlsbD0iI0VCRUJFQiIgZD0iTTAgMGgxMDgwdjU0MEgweiIvPgogICAgICAgIDxwYXRoIGQ9Ik00NDUuNjQ5IDU0MGgtOTguOTk1TDE0NC42NDkgMzM3Ljk5NSAwIDQ4Mi42NDR2LTk4Ljk5NWwxMTYuMzY1LTExNi4zNjVjMTUuNjItMTUuNjIgNDAuOTQ3LTE1LjYyIDU2LjU2OCAwTDQ0NS42NSA1NDB6IiBmaWxsLW9wYWNpdHk9Ii4xIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgICAgICA8Y2lyY2xlIGZpbGwtb3BhY2l0eT0iLjA1IiBmaWxsPSIjMDAwIiBjeD0iMzMxIiBjeT0iMTQ4IiByPSI3MCIvPgogICAgICAgIDxwYXRoIGQ9Ik0xMDgwIDM3OXYxMTMuMTM3TDcyOC4xNjIgMTQwLjMgMzI4LjQ2MiA1NDBIMjE1LjMyNEw2OTkuODc4IDU1LjQ0NmMxNS42Mi0xNS42MiA0MC45NDgtMTUuNjIgNTYuNTY4IDBMMTA4MCAzNzl6IiBmaWxsLW9wYWNpdHk9Ii4yIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgIDwvZz4KPC9zdmc+Cg==';\nconst before_after_slider_defaultAttrs = {\n  ...before_after_slider_module_default_render_attributes_namespaceObject,\n  before_src: {\n    innerContent: {\n      desktop: {\n        value: {\n          src: beforeAfterPlaceholderSrc\n        }\n      }\n    }\n  },\n  after_src: {\n    innerContent: {\n      desktop: {\n        value: {\n          src: beforeAfterPlaceholderSrc\n        }\n      }\n    }\n  }\n};\nconst beforeAfterImageModule = {\n  metadata: before_after_slider_module_namespaceObject,\n  conversionOutline: before_after_slider_conversion_outline_conversionOutline,\n  renderers: {\n    edit: before_after_slider_edit,\n    styles: before_after_slider_module_styles_ModuleStyles\n  },\n  defaultAttrs: before_after_slider_defaultAttrs,\n  settings: {\n    content: before_after_slider_settings_content,\n    design: before_after_slider_settings_design,\n    advanced: before_after_slider_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    ...before_after_slider_defaultAttrs\n  }\n};\n/* harmony default export */ const before_after_slider = (beforeAfterImageModule);\n;// ./packages/module-library/blob-image/module.json\nconst blob_image_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/blob-image\",\"d4Shortcode\":\"dsm_blob_image\",\"title\":\"Supreme Blob Shape Image\",\"titles\":\"Supreme Blob Shape Images\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/blob-image\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"blob_title\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_blob_title\",\"attributes\":{\"class\":\"dsm_blob_title et_pb_module_header\"},\"tagName\":\"h3\",\"inlineEditor\":\"plainText\",\"elementType\":\"headingLink\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm_blob_title\",\"hover\":\"{{selector}}:hover .dsm_blob_title\"}}}}},\"blob_image\":{\"type\":\"object\",\"label\":\"Image\",\"selector\":\"{{selector}} .dsm_blob_image_img\",\"elementType\":\"image\",\"supportsCustomAttributes\":true,\"childrenSanitizer\":\"et_core_esc_previously\",\"attributes\":{\"class\":\"dsm_blob_image_img\"}},\"blob_shapes\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"blob_desc\":{\"type\":\"object\",\"inlineEditor\":\"RichTextContainer\",\"selector\":\"{{selector}} .dsm_blob_description\",\"elementType\":\"content\",\"attributes\":{\"class\":\"dsm_blob_description\"},\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm_blob_description\",\"hover\":\"{{selector}}:hover .dsm_blob_description\"}}}}},\"show_content_hover\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"url\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"url_new_window\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_overlay\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_gradient\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"gradient_angle\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"fade_offset\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"gradient_color_one\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"gradient_color_one_offset\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"gradient_color_two\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"gradient_color_two_offset\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"overlay_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"blob_size\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"blob_position\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_height\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"overlay_content_padding\":{\"type\":\"object\",\"inlineEditor\":\"CustomPadding\",\"selector\":\"{{selector}} .dsm_blob_overlay_text\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"overlay_content_design\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"blob_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_blob_image_wrap\",\"childrenSanitizer\":\"et_core_esc_previously\",\"settings\":{\"decoration\":{\"border\":{},\"boxShadow\":{}}},\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm_blob_image_wrap\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm_blob_image_wrap\",\"useOverlay\":true}}}}}');\n;// ./packages/module-library/blob-image/module-default-render-attributes.json\nconst blob_image_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"module\":{\"decoration\":{}},\"blob_title\":{\"innerContent\":{\"desktop\":{\"value\":{\"text\":\"\"}}}},\"blob_image\":{\"innerContent\":{\"desktop\":{\"value\":{\"src\":\"\"}}}},\"blob_shapes\":{\"innerContent\":{\"desktop\":{\"value\":\"image_one\"}}},\"blob_desc\":{\"innerContent\":{\"desktop\":{\"value\":{\"text\":\"\"}}}},\"show_content_hover\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"url\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"url_new_window\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"use_overlay\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"overlay_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"use_gradient\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"blob_size\":{\"innerContent\":{\"desktop\":{\"value\":\"cover\"}}},\"blob_position\":{\"innerContent\":{\"desktop\":{\"value\":\"center\"}}},\"image_height\":{\"innerContent\":{\"desktop\":{\"value\":\"380px\"}}},\"overlay_content_design\":{\"innerContent\":{\"desktop\":{\"value\":\"title\"}}},\"gradient_angle\":{\"innerContent\":{\"desktop\":{\"value\":\"45\"}}},\"fade_offset\":{\"innerContent\":{\"desktop\":{\"value\":\"50%\"}}},\"gradient_color_one\":{\"innerContent\":{\"desktop\":{\"value\":\"#2ea3f2\"}}},\"gradient_color_one_offset\":{\"innerContent\":{\"desktop\":{\"value\":\"0%\"}}},\"gradient_color_two\":{\"innerContent\":{\"desktop\":{\"value\":\"#2ea3f2\"}}},\"gradient_color_two_offset\":{\"innerContent\":{\"desktop\":{\"value\":\"100%\"}}}}');\n;// ./packages/module-library/blob-image/blob-image-vb-default-attrs.js\n/**\n * Visual Builder `defaultAttr` map from `module-default-render-attributes.json`.\n *\n * @package DiviSupreme\n */\n\n\nconst blobImageFieldDefaultInnerContent = Object.fromEntries(Object.entries(blob_image_module_default_render_attributes_namespaceObject).map(([key, attr]) => [key, attr.innerContent]));\n\n/** @type {typeof blobImageFieldDefaultInnerContent} */\nconst blobFd = blobImageFieldDefaultInnerContent;\n\n/** Must match `index.js` placeholder data URI for `blob_image`. */\nconst blobImageUploadVbDefaultAttr = {\n  desktop: {\n    value: {\n      src: 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTA4MCIgaGVpZ2h0PSI1NDAiIHZpZXdCb3g9IjAgMCAxMDgwIDU0MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPHBhdGggZmlsbD0iI0VCRUJFQiIgZD0iTTAgMGgxMDgwdjU0MEgweiIvPgogICAgICAgIDxwYXRoIGQ9Ik00NDUuNjQ5IDU0MGgtOTguOTk1TDE0NC42NDkgMzM3Ljk5NSAwIDQ4Mi42NDR2LTk4Ljk5NWwxMTYuMzY1LTExNi4zNjVjMTUuNjItMTUuNjIgNDAuOTQ3LTE1LjYyIDU2LjU2OCAwTDQ0NS42NSA1NDB6IiBmaWxsLW9wYWNpdHk9Ii4xIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgICAgICA8Y2lyY2xlIGZpbGwtb3BhY2l0eT0iLjA1IiBmaWxsPSIjMDAwIiBjeD0iMzMxIiBjeT0iMTQ4IiByPSI3MCIvPgogICAgICAgIDxwYXRoIGQ9Ik0xMDgwIDM3OXYxMTMuMTM3TDcyOC4xNjIgMTQwLjMgMzI4LjQ2MiA1NDBIMjE1LjMyNEw2OTkuODc4IDU1LjQ0NmMxNS42Mi0xNS42MiA0MC45NDgtMTUuNjIgNTYuNTY4IDBMMTA4MCAzNzl6IiBmaWxsLW9wYWNpdHk9Ii4yIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgIDwvZz4KPC9zdmc+Cg=='\n    }\n  }\n};\n\n/** Rich body default for `blob_desc` (`elementType: content`). */\nconst blobDescRichTextVbDefaultAttr = {\n  desktop: {\n    value: {\n      text: ''\n    }\n  }\n};\n;// ./packages/module-library/blob-image/settings-content.js\n\n// Wordpress dependencies.\n\n// Divi package dependencies.\n\n\n\n\n\nfunction blob_image_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    preset: \"content\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"blob_image.innerContent\",\n    subName: \"src\",\n    defaultAttr: blobImageUploadVbDefaultAttr,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"blob_size.innerContent\",\n    defaultAttr: blobFd.blob_size,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Size', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      none: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Initial', 'dsm-supreme-modules-pro-for-divi')\n      },\n      cover: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Cover', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"blob_position.innerContent\",\n    defaultAttr: blobFd.blob_position,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Position', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      top: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom', 'dsm-supreme-modules-pro-for-divi')\n      },\n      left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_height.innerContent\",\n    defaultAttr: blobFd.image_height,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Height', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 800,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"blob_shapes.innerContent\",\n    defaultAttr: blobFd.blob_shapes,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Blob Shapes', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      image_one: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Blob 1', 'dsm-supreme-modules-pro-for-divi')\n      },\n      image_two: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Blob 2', 'dsm-supreme-modules-pro-for-divi')\n      },\n      image_three: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Blob 3', 'dsm-supreme-modules-pro-for-divi')\n      },\n      image_four: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Blob 4', 'dsm-supreme-modules-pro-for-divi')\n      },\n      image_five: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Blob 5', 'dsm-supreme-modules-pro-for-divi')\n      },\n      image_six: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Blob 6', 'dsm-supreme-modules-pro-for-divi')\n      },\n      image_seven: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Blob 7', 'dsm-supreme-modules-pro-for-divi')\n      },\n      image_eight: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Blob 8', 'dsm-supreme-modules-pro-for-divi')\n      },\n      image_nine: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Blob 9', 'dsm-supreme-modules-pro-for-divi')\n      },\n      image_ten: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Blob 10', 'dsm-supreme-modules-pro-for-divi')\n      },\n      image_eleven: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Blob 11', 'dsm-supreme-modules-pro-for-divi')\n      },\n      image_twelve: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Blob 12', 'dsm-supreme-modules-pro-for-divi')\n      },\n      image_thirdteen: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Blob 13', 'dsm-supreme-modules-pro-for-divi')\n      },\n      image_fourteen: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Blob 14', 'dsm-supreme-modules-pro-for-divi')\n      },\n      image_fifteen: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Blob 15', 'dsm-supreme-modules-pro-for-divi')\n      },\n      image_sixteen: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Blob 16', 'dsm-supreme-modules-pro-for-divi')\n      },\n      image_seventeen: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Blob 17', 'dsm-supreme-modules-pro-for-divi')\n      },\n      image_eighteen: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Blob 18', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"overlay_content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay Content', 'dsm-supreme-modules-pro-for-divi'),\n    preset: \"content\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"blob_title.innerContent\",\n    subName: \"text\",\n    defaultAttr: blobFd.blob_title,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"blob_desc.innerContent\",\n    subName: \"text\",\n    defaultAttr: blobDescRichTextVbDefaultAttr,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Description', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RichTextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"show_content_hover.innerContent\",\n    defaultAttr: blobFd.show_content_hover,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Content On Hover', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"link\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Link', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"url.innerContent\",\n    defaultAttr: blobFd.url,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Link URL', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'url'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"url_new_window.innerContent\",\n    defaultAttr: blobFd.url_new_window,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Link Target', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      off: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The Same Window', 'dsm-supreme-modules-pro-for-divi')\n      },\n      on: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The New Tab', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const blob_image_settings_content = (blob_image_settings_content_SettingsContent);\n;// ./packages/module-library/blob-image/settings-design.js\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\nfunction blob_image_settings_design_SettingsDesign({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  var _getAttrByMode;\n  const use_overlay = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_overlay?.innerContent);\n  const use_gradient = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_gradient?.innerContent);\n  const overlay_content_design = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.overlay_content_design?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'title';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"overlay\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay', 'dsm-supreme-modules-pro-for-divi'),\n    preset: \"content\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_overlay.innerContent\",\n    defaultAttr: blobFd.use_overlay,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Overlay', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', '')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"overlay_color.innerContent\",\n    defaultAttr: blobFd.overlay_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', ''),\n    visible: 'on' === use_overlay && 'on' !== use_gradient\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_gradient.innerContent\",\n    defaultAttr: blobFd.use_gradient,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Gradient Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', ''),\n    visible: 'on' === use_overlay\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"gradient_angle.innerContent\",\n    defaultAttr: blobFd.gradient_angle,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Gradient Angle', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', ''),\n    visible: 'on' === use_overlay && 'on' === use_gradient\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 360,\n    defaultUnit: ''\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"fade_offset.innerContent\",\n    defaultAttr: blobFd.fade_offset,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade Offset', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', ''),\n    visible: 'on' === use_overlay && 'on' === use_gradient\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: '%'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"gradient_color_one.innerContent\",\n    defaultAttr: blobFd.gradient_color_one,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Gradient Color 1', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', ''),\n    visible: 'on' === use_overlay && 'on' === use_gradient\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"gradient_color_one_offset.innerContent\",\n    defaultAttr: blobFd.gradient_color_one_offset,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Gradient Color 1 Offset', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', ''),\n    visible: 'on' === use_overlay && 'on' === use_gradient\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: '%',\n    allowedUnits: ['%']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"gradient_color_two.innerContent\",\n    defaultAttr: blobFd.gradient_color_two,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Gradient Color 2', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', ''),\n    visible: 'on' === use_overlay && 'on' === use_gradient\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"gradient_color_two_offset.innerContent\",\n    defaultAttr: blobFd.gradient_color_two_offset,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Gradient Color 2 Offset', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', ''),\n    visible: 'on' === use_overlay && 'on' === use_gradient\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: '%',\n    allowedUnits: ['%']\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"overlay_content_typography\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay Text & Spacing', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"overlay_content_design.innerContent\",\n    defaultAttr: blobFd.overlay_content_design\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: {\n      title: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi')\n      },\n      description: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Description', 'dsm-supreme-modules-pro-for-divi')\n      },\n      spacing: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Spacing', 'dsm-supreme-modules-pro-for-divi')\n      }\n    },\n    tabUi: true,\n    showLabel: true\n  })), overlay_content_design === 'title' && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"blob_title.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: true\n      }\n    }\n  }), overlay_content_design === 'description' && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"blob_desc.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Description', 'dsm-supreme-modules-pro-for-divi'),\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Description', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), overlay_content_design === 'spacing' && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Spacing', 'dsm-supreme-modules-pro-for-divi'),\n    attrName: \"overlay_content_padding.decoration.spacing\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"spacing\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Spacing', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"blob_border\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Border', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"blob_style.decoration.border\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"blob_box_shadow\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Box Shadow', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"blob_style.decoration.boxShadow\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const blob_image_settings_design = (blob_image_settings_design_SettingsDesign);\n;// ./packages/module-library/blob-image/settings-advanced.js\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\nfunction blob_image_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_blob_image\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const blob_image_settings_advanced = (blob_image_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/blob-image/module-styles.js\n\n\n\n\n\n/**\n * React function component for rendering module style.\n */\nconst blob_image_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  const gradient_angle = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.gradient_angle?.innerContent);\n  const fade_offset = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.fade_offset?.innerContent);\n  const gradient_color_one = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.gradient_color_one?.innerContent);\n  const gradient_color_one_offset = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.gradient_color_one_offset?.innerContent);\n  const gradient_color_two = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.gradient_color_two?.innerContent);\n  const gradient_color_two_offset = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.gradient_color_two_offset?.innerContent);\n  const use_overlay = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_overlay?.innerContent);\n  const use_gradient = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_gradient?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextStyle, {\n    selector: orderClass,\n    attr: attrs?.module?.advanced?.text\n  }), elements.style({\n    attrName: 'blob_style'\n  }), elements.style({\n    attrName: 'blob_title'\n  }), elements.style({\n    attrName: 'blob_desc'\n  }), elements.style({\n    attrName: 'overlay_content_padding'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_blob_image_wrap`,\n    attr: attrs?.image_height?.innerContent,\n    property: \"height\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_blob_image_img`,\n    attr: attrs?.blob_size?.innerContent,\n    property: \"object-fit\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_blob_image_img`,\n    attr: attrs?.blob_position?.innerContent,\n    property: \"object-position\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_blob_image_overlay`,\n    attr: attrs?.overlay_color?.innerContent,\n    property: \"background-color\"\n  }), 'on' === use_overlay && 'off' === use_gradient && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_blob_image_overlay`,\n    attr: attrs?.overlay_color?.innerContent,\n    property: \"background-color\"\n  }), 'on' === use_overlay && 'on' === use_gradient && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_blob_image_gradient_overlay`,\n    attr: attrs?.gradient_color_one?.innerContent,\n    declarationFunction: attrValue => {\n      const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n        returnType: 'string',\n        important: true\n      });\n      declarations.add('background', `linear-gradient(${gradient_angle}deg, ${gradient_color_one} ${gradient_color_one_offset}, ${fade_offset}, ${gradient_color_two} ${gradient_color_two_offset} )`);\n      return declarations.value;\n    }\n  }));\n};\n;// ./packages/module-library/blob-image/edit.js\n\n// Divi package dependencies.\n\n\n\n\n// Custom dependencies.\n\n\n\n/**\n * React function component for registering module script data.\n */\nconst blob_image_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}), elements.scriptData({\n  attrName: 'blob_image'\n}));\nfunction blob_image_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  const blob_shapes = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.blob_shapes?.innerContent);\n  const use_overlay = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_overlay?.innerContent);\n  const use_gradient = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_gradient?.innerContent);\n  const overlayContentOnHover = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_content_hover?.innerContent);\n  const IsOverlay = 'on' === use_overlay ? 'off' === use_gradient ? 'dsm_blob_image_overlay' : 'dsm_blob_image_gradient_overlay' : '';\n  const isOverlayContentOnHover = 'on' === overlayContentOnHover ? 'dsm_blob_image_content_hover' : '';\n  const overlayText = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_blob_overlay_wrapper\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_blob_overlay_text\"\n  }, elements.render({\n    attrName: 'blob_title'\n  }), elements.render({\n    attrName: 'blob_desc',\n    attrSubName: 'text'\n  })));\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: blob_image_edit_ModuleScriptData,\n    stylesComponent: blob_image_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: `dsm_blob_image_wrap  dsm_blob_${blob_shapes} ${IsOverlay} ${isOverlayContentOnHover}`\n  }, elements.render({\n    attrName: 'blob_image',\n    allowEmptyValue: true\n  }), overlayText));\n}\n/* harmony default export */ const blob_image_edit = (blob_image_edit_Edit);\n;// ./packages/module-library/blob-image/conversion-outline.js\n\nconst blob_image_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'blob_style.decoration.border',\n      blob: 'blob_style.decoration.border'\n    },\n    box_shadow: {\n      default: 'blob_style.decoration.boxShadow',\n      blob: 'blob_style.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    display_conditions: 'module.decoration.conditions',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    fonts: {\n      title: 'blob_title.decoration.font',\n      desc: 'blob_desc.decoration.font'\n    },\n    text: 'module.advanced.text',\n    text_shadow: {\n      default: 'module.advanced.text.textShadow'\n    },\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    height: 'module.decoration.sizing',\n    link_options: 'module.advanced.link',\n    margin_padding: 'module.decoration.spacing',\n    max_width: 'module.decoration.sizing',\n    module: 'module.advanced.htmlAttributes'\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    blob_title: 'blob_title.innerContent.*.text',\n    // D4 `fonts.title.header_level` → shortcode prop `title_level` (not `header_level`).\n    title_level: 'blob_title.decoration.font.font.*.headingLevel',\n    // URL must land on `innerContent.*.value.src` for UploadContainer + subName=\"src\" (same as tilt / before-after).\n    blob_image: 'blob_image.innerContent.*.src',\n    blob_shapes: 'blob_shapes.innerContent.*',\n    blob_desc: 'blob_desc.innerContent.*.text',\n    show_content_hover: 'show_content_hover.innerContent.*',\n    url: 'url.innerContent.*',\n    url_new_window: 'url_new_window.innerContent.*',\n    use_overlay: 'use_overlay.innerContent.*',\n    use_gradient: 'use_gradient.innerContent.*',\n    gradient_angle: 'gradient_angle.innerContent.*',\n    fade_offset: 'fade_offset.innerContent.*',\n    gradient_color_one: 'gradient_color_one.innerContent.*',\n    gradient_color_one_offset: 'gradient_color_one_offset.innerContent.*',\n    gradient_color_two: 'gradient_color_two.innerContent.*',\n    gradient_color_two_offset: 'gradient_color_two_offset.innerContent.*',\n    overlay_color: 'overlay_color.innerContent.*',\n    blob_size: 'blob_size.innerContent.*',\n    blob_position: 'blob_position.innerContent.*',\n    image_height: 'image_height.innerContent.*',\n    overlay_content_padding: 'overlay_content_padding.innerContent.*',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    overlay_content_padding: external_divi_module_namespaceObject.convertSpacing,\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/blob-image/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmBlobImageIcon', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/blob-image': {\n      name: 'divi-supreme/blob-image',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"transparent\",\n        stroke: \"#5C1DB0\",\n        d: \"M 5.317383 24.118652 C 7.009277 25.422363 9.51416 25.03418 12.458496 23.225098 C 14.0625 22.236328 16.083984 22.265625 18.054199 22.976074 C 20.771484 23.950195 23.48877 23.840332 25.085449 21.694336 C 26.674805 19.54834 27.626953 15.102539 21.525879 13.117676 C 19.306641 12.392578 17.06543 10.378418 15.856934 7.976074 C 14.58252 5.43457 12.854004 4.892578 11.015625 5.01709 C 9.938965 5.083008 7.338867 5.895996 6.723633 8.422852 C 6.013184 11.352539 7.895508 13.601074 5.734863 16.984863 C 3.684082 20.200195 3.33252 22.609863 5.317383 24.118652 Z M 5.317383 24.118652 \",\n        transform: \"matrix(0.533333,0,0,0.533333,0,0)\"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        stroke: \"#5C1DB0\",\n        d: \"M 7.646484 19.299316 C 7.646484 19.21875 7.668457 19.138184 7.712402 19.072266 C 7.756348 18.999023 7.822266 18.947754 7.902832 18.918457 C 7.976074 18.881836 8.063965 18.874512 8.144531 18.896484 C 8.225098 18.911133 8.29834 18.947754 8.356934 19.006348 C 8.415527 19.064941 8.452148 19.138184 8.466797 19.21875 C 8.481445 19.299316 8.474121 19.387207 8.444824 19.460449 C 8.415527 19.541016 8.356934 19.599609 8.291016 19.650879 C 8.225098 19.694824 8.144531 19.716797 8.056641 19.716797 C 7.946777 19.716797 7.844238 19.672852 7.763672 19.592285 C 7.69043 19.519043 7.646484 19.40918 7.646484 19.299316 Z M 8.24707 19.299316 C 8.24707 19.262695 8.232422 19.233398 8.210449 19.196777 C 8.195801 19.16748 8.166504 19.145508 8.129883 19.130859 C 8.093262 19.116211 8.056641 19.116211 8.02002 19.123535 C 7.990723 19.130859 7.954102 19.145508 7.924805 19.174805 C 7.902832 19.196777 7.888184 19.233398 7.880859 19.27002 C 7.873535 19.299316 7.873535 19.343262 7.888184 19.372559 C 7.902832 19.40918 7.924805 19.438477 7.954102 19.453125 C 7.983398 19.475098 8.02002 19.489746 8.056641 19.489746 C 8.085938 19.489746 8.10791 19.482422 8.129883 19.475098 C 8.151855 19.467773 8.173828 19.453125 8.188477 19.431152 C 8.210449 19.416504 8.217773 19.394531 8.232422 19.372559 C 8.239746 19.350586 8.24707 19.328613 8.24707 19.299316 Z M 8.24707 19.299316 \",\n        transform: \"matrix(0.533333,0,0,0.533333,0,0)\"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        stroke: \"#5C1DB0\",\n        d: \"M 22.705078 12.062988 C 22.705078 11.982422 22.734375 11.901855 22.77832 11.828613 C 22.822266 11.762695 22.888184 11.711426 22.961426 11.682129 C 23.041992 11.645508 23.122559 11.638184 23.203125 11.652832 C 23.283691 11.674805 23.356934 11.711426 23.415527 11.77002 C 23.474121 11.828613 23.518066 11.901855 23.532715 11.982422 C 23.547363 12.062988 23.540039 12.150879 23.510742 12.224121 C 23.474121 12.297363 23.422852 12.363281 23.356934 12.407227 C 23.283691 12.458496 23.203125 12.480469 23.122559 12.480469 C 23.063965 12.480469 23.012695 12.46582 22.961426 12.451172 C 22.910156 12.429199 22.866211 12.399902 22.82959 12.355957 C 22.792969 12.319336 22.756348 12.275391 22.741699 12.224121 C 22.719727 12.172852 22.705078 12.121582 22.705078 12.062988 Z M 23.305664 12.062988 C 23.305664 12.026367 23.29834 11.989746 23.276367 11.960449 C 23.254395 11.931152 23.225098 11.90918 23.195801 11.894531 C 23.15918 11.879883 23.122559 11.872559 23.085938 11.879883 C 23.049316 11.887207 23.02002 11.90918 22.990723 11.931152 C 22.961426 11.960449 22.946777 11.989746 22.939453 12.026367 C 22.932129 12.062988 22.939453 12.099609 22.954102 12.13623 C 22.961426 12.165527 22.990723 12.194824 23.02002 12.216797 C 23.049316 12.23877 23.085938 12.246094 23.122559 12.246094 C 23.173828 12.246094 23.217773 12.231445 23.254395 12.194824 C 23.283691 12.158203 23.305664 12.114258 23.305664 12.062988 Z M 23.305664 12.062988 \",\n        transform: \"matrix(0.533333,0,0,0.533333,0,0)\"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        stroke: \"#5C1DB0\",\n        d: \"M 18.054199 18.80127 L 12.099609 18.80127 C 11.806641 18.80127 11.52832 18.684082 11.323242 18.479004 C 11.118164 18.273926 11.000977 17.995605 11.000977 17.702637 L 11.000977 14.677734 C 11.000977 14.39209 11.118164 14.106445 11.323242 13.901367 C 11.52832 13.696289 11.813965 13.579102 12.099609 13.579102 L 18.054199 13.579102 C 18.266602 13.579102 18.47168 13.64502 18.647461 13.754883 C 18.823242 13.864746 18.962402 14.025879 19.050293 14.216309 C 19.116211 14.362793 19.152832 14.523926 19.152832 14.677734 L 19.152832 17.695312 C 19.152832 17.841797 19.123535 17.988281 19.072266 18.120117 C 19.013672 18.251953 18.933105 18.376465 18.830566 18.479004 C 18.728027 18.581543 18.61084 18.662109 18.479004 18.720703 C 18.339844 18.771973 18.200684 18.80127 18.054199 18.80127 Z M 12.099609 13.952637 C 11.90918 13.952637 11.726074 14.033203 11.586914 14.165039 C 11.455078 14.304199 11.381836 14.487305 11.381836 14.677734 L 11.381836 17.695312 C 11.381836 17.893066 11.455078 18.076172 11.594238 18.208008 C 11.726074 18.347168 11.90918 18.427734 12.106934 18.427734 L 18.054199 18.427734 C 18.244629 18.427734 18.427734 18.347168 18.566895 18.208008 C 18.69873 18.076172 18.779297 17.893066 18.779297 17.695312 L 18.779297 14.677734 C 18.779297 14.575195 18.757324 14.465332 18.713379 14.370117 C 18.654785 14.245605 18.55957 14.135742 18.442383 14.0625 C 18.325195 13.989258 18.193359 13.945312 18.054199 13.945312 Z M 12.099609 13.952637 \",\n        transform: \"matrix(0.533333,0,0,0.533333,0,0)\"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        stroke: \"#5C1DB0\",\n        d: \"M 18.054199 18.80127 L 12.099609 18.80127 C 11.806641 18.80127 11.52832 18.684082 11.323242 18.479004 C 11.118164 18.273926 11.000977 17.995605 11.000977 17.702637 L 11.000977 17.380371 L 13.337402 15.695801 L 14.348145 16.809082 L 18.969727 14.033203 L 19.050293 14.223633 C 19.123535 14.362793 19.152832 14.523926 19.152832 14.685059 L 19.152832 17.695312 C 19.152832 17.841797 19.130859 17.988281 19.072266 18.120117 C 19.020996 18.259277 18.933105 18.376465 18.830566 18.479004 C 18.728027 18.581543 18.61084 18.662109 18.47168 18.720703 C 18.339844 18.779297 18.193359 18.80127 18.054199 18.80127 Z M 11.374512 17.570801 L 11.374512 17.702637 C 11.374512 17.893066 11.455078 18.076172 11.586914 18.215332 C 11.726074 18.347168 11.90918 18.427734 12.099609 18.427734 L 18.054199 18.427734 C 18.244629 18.427734 18.427734 18.347168 18.55957 18.208008 C 18.69873 18.076172 18.771973 17.893066 18.771973 17.695312 L 18.771973 14.677734 C 18.779297 14.648438 18.779297 14.611816 18.771973 14.575195 L 14.267578 17.285156 L 13.278809 16.201172 Z M 11.374512 17.570801 \",\n        transform: \"matrix(0.533333,0,0,0.533333,0,0)\"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        stroke: \"#5C1DB0\",\n        d: \"M 14.597168 15.893555 C 14.458008 15.893555 14.333496 15.849609 14.223633 15.776367 C 14.11377 15.703125 14.025879 15.600586 13.974609 15.476074 C 13.92334 15.358887 13.908691 15.219727 13.937988 15.087891 C 13.959961 14.963379 14.025879 14.838867 14.121094 14.743652 C 14.208984 14.655762 14.333496 14.589844 14.458008 14.560547 C 14.589844 14.538574 14.729004 14.553223 14.846191 14.604492 C 14.970703 14.648438 15.073242 14.736328 15.146484 14.846191 C 15.227051 14.956055 15.263672 15.087891 15.263672 15.219727 C 15.263672 15.395508 15.19043 15.571289 15.065918 15.695801 C 14.941406 15.820312 14.772949 15.893555 14.597168 15.893555 Z M 14.597168 14.926758 C 14.53125 14.926758 14.47998 14.941406 14.428711 14.978027 C 14.377441 15.007324 14.34082 15.058594 14.318848 15.109863 C 14.296875 15.168457 14.289551 15.227051 14.296875 15.285645 C 14.311523 15.344238 14.34082 15.395508 14.377441 15.439453 C 14.421387 15.483398 14.472656 15.505371 14.53125 15.52002 C 14.589844 15.534668 14.648438 15.527344 14.707031 15.505371 C 14.758301 15.483398 14.80957 15.439453 14.838867 15.395508 C 14.875488 15.344238 14.890137 15.285645 14.890137 15.227051 C 14.890137 15.146484 14.86084 15.073242 14.802246 15.021973 C 14.743652 14.963379 14.67041 14.934082 14.597168 14.926758 Z M 14.597168 14.926758 \",\n        transform: \"matrix(0.533333,0,0,0.533333,0,0)\"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/blob-image/index.js\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\nconst blobImagePlaceholderSrc = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTA4MCIgaGVpZ2h0PSI1NDAiIHZpZXdCb3g9IjAgMCAxMDgwIDU0MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPHBhdGggZmlsbD0iI0VCRUJFQiIgZD0iTTAgMGgxMDgwdjU0MEgweiIvPgogICAgICAgIDxwYXRoIGQ9Ik00NDUuNjQ5IDU0MGgtOTguOTk1TDE0NC42NDkgMzM3Ljk5NSAwIDQ4Mi42NDR2LTk4Ljk5NWwxMTYuMzY1LTExNi4zNjVjMTUuNjItMTUuNjIgNDAuOTQ3LTE1LjYyIDU2LjU2OCAwTDQ0NS42NSA1NDB6IiBmaWxsLW9wYWNpdHk9Ii4xIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgICAgICA8Y2lyY2xlIGZpbGwtb3BhY2l0eT0iLjA1IiBmaWxsPSIjMDAwIiBjeD0iMzMxIiBjeT0iMTQ4IiByPSI3MCIvPgogICAgICAgIDxwYXRoIGQ9Ik0xMDgwIDM3OXYxMTMuMTM3TDcyOC4xNjIgMTQwLjMgMzI4LjQ2MiA1NDBIMjE1LjMyNEw2OTkuODc4IDU1LjQ0NmMxNS42Mi0xNS42MiA0MC45NDgtMTUuNjIgNTYuNTY4IDBMMTA4MCAzNzl6IiBmaWxsLW9wYWNpdHk9Ii4yIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgIDwvZz4KPC9zdmc+Cg==';\nconst blob_image_defaultAttrs = {\n  ...blob_image_module_default_render_attributes_namespaceObject,\n  blob_image: {\n    innerContent: {\n      desktop: {\n        value: {\n          src: blobImagePlaceholderSrc\n        }\n      }\n    }\n  }\n};\nconst blobImageModule = {\n  metadata: blob_image_module_namespaceObject,\n  conversionOutline: blob_image_conversion_outline_conversionOutline,\n  renderers: {\n    edit: blob_image_edit,\n    styles: blob_image_module_styles_ModuleStyles\n  },\n  defaultAttrs: blob_image_defaultAttrs,\n  settings: {\n    content: blob_image_settings_content,\n    design: blob_image_settings_design,\n    advanced: blob_image_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    ...blob_image_defaultAttrs,\n    blob_title: {\n      innerContent: {\n        desktop: {\n          value: {\n            text: 'Your Title Goes Here'\n          }\n        }\n      }\n    },\n    blob_desc: {\n      innerContent: {\n        desktop: {\n          value: {\n            text: 'Your description goes here.'\n          }\n        }\n      }\n    }\n  }\n};\n/* harmony default export */ const blob_image = (blobImageModule);\n;// ./packages/module-library/breadcrumbs/module.json\nconst breadcrumbs_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/breadcrumbs\",\"d4Shortcode\":\"dsm_breadcrumbs\",\"title\":\"Supreme Breadcrumbs\",\"titles\":\"Supreme Breadcrumbs\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/breadcrumbs\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"styleProps\":{\"sizing\":{\"propertySelectors\":{\"desktop\":{\"value\":{\"margin-left\":\"{{selector}}.et_pb_module\",\"margin-right\":\"{{selector}}.et_pb_module\"}}},\"important\":{\"desktop\":{\"value\":{\"margin-left\":true,\"margin-right\":true}}}},\"spacing\":{\"important\":true}},\"settings\":{\"decoration\":{\"layout\":{},\"animation\":{},\"attributes\":{},\"background\":{},\"border\":{},\"boxShadow\":{},\"conditions\":{},\"disabledOn\":{},\"filters\":{},\"interactions\":{},\"overflow\":{},\"order\":{},\"position\":{},\"scroll\":{},\"sizing\":{},\"spacing\":{},\"sticky\":{},\"transform\":{},\"transition\":{},\"zIndex\":{}}}},\"separators\":{\"type\":\"object\",\"selector\":\"{{selector}} span.dsm_separator_icon\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"current_text\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_breadcrumbs_item.dsm_breadcrumbs_item_current\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"home_items\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_breadcrumbs li.dsm_breadcrumbs_item:not(.dsm_breadcrumbs_item_current), {{selector}} .dsm_breadcrumbs li.dsm_breadcrumbs_item a\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"home_icon_size\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_home_icon\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"show_home\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"home_text\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_custom_home_url_link\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"home_url_link\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"home_url_link_new_window\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"show_home_icon\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"home_icon\":{\"type\":\"object\",\"inlineEditor\":\"IconPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"show_separator\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"separator_icon\":{\"type\":\"object\",\"inlineEditor\":\"IconPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"enable_schema_markup\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"align\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"items_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"separator_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"current_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"items_bottom\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"separator_bottom\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"current_bottom\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"items_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm_breadcrumbs li.dsm_breadcrumbs_item a\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"separator_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm_separator_icon\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"current_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm_breadcrumbs_item.dsm_breadcrumbs_item_current\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"items_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_breadcrumbs li.dsm_breadcrumbs_item\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm_breadcrumbs li.dsm_breadcrumbs_item\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm_breadcrumbs li.dsm_breadcrumbs_item\",\"useOverlay\":true}}},\"separator_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_separator_icon\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm_separator_icon\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm_separator_icon\",\"useOverlay\":true}}},\"current_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_breadcrumbs_item.dsm_breadcrumbs_item_current\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm_breadcrumbs_item.dsm_breadcrumbs_item_current\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm_breadcrumbs_item.dsm_breadcrumbs_item_current\",\"useOverlay\":true}}}}}');\n;// ./packages/module-library/breadcrumbs/module-default-render-attributes.json\nconst breadcrumbs_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"show_home\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"home_text\":{\"innerContent\":{\"desktop\":{\"value\":\"Home\"}}},\"use_custom_home_url_link\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"home_url_link\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"home_url_link_new_window\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"show_home_icon\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"home_icon\":{\"innerContent\":{\"desktop\":{\"value\":{\"type\":\"divi\",\"unicode\":\"&#xe009;\",\"weight\":\"400\"}}}},\"show_separator\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"separator_icon\":{\"innerContent\":{\"desktop\":{\"value\":{\"type\":\"divi\",\"unicode\":\"&#x35;\",\"weight\":\"400\"}}}},\"enable_schema_markup\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"align\":{\"innerContent\":{\"desktop\":{\"value\":\"left\"}}},\"items_bottom\":{\"innerContent\":{\"desktop\":{\"value\":\"10px\"}}},\"separator_bottom\":{\"innerContent\":{\"desktop\":{\"value\":\"10px\"}}},\"current_bottom\":{\"innerContent\":{\"desktop\":{\"value\":\"10px\"}}}}');\n;// ./packages/module-library/breadcrumbs/settings-content.js\n\n// Wordpress dependencies.\n\n// Divi package dependencies.\n\n\n\n\n\nfunction breadcrumbs_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _getAttrByMode4;\n  const showHome = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_home?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'on';\n  const useCustomHomeUrlLink = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_custom_home_url_link?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'off';\n  const showHomeIcon = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_home_icon?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'on';\n  const showSeparator = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_separator?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : 'on';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"main_content\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Breadcrumbs', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"show_home.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Custom Home', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: breadcrumbs_module_default_render_attributes_namespaceObject.show_home.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"home_text.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Home Text', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    },\n    visible: 'on' === showHome,\n    defaultAttr: breadcrumbs_module_default_render_attributes_namespaceObject.home_text.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_custom_home_url_link.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Custom URL Link for Home', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: breadcrumbs_module_default_render_attributes_namespaceObject.use_custom_home_url_link.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"home_url_link.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Custom Home Link URL', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If you would like have a custom link URL to be a link, input your destination URL here. No link will be created if this field is left blank.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    },\n    visible: 'on' === useCustomHomeUrlLink,\n    defaultAttr: breadcrumbs_module_default_render_attributes_namespaceObject.home_url_link.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"home_url_link_new_window.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Custom Home Link Target', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose whether or not your link opens in a new window', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: breadcrumbs_module_default_render_attributes_namespaceObject.home_url_link_new_window.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      off: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The Same Window', 'dsm-supreme-modules-pro-for-divi')\n      },\n      on: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The New Tab', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"show_home_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Home Icon', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: breadcrumbs_module_default_render_attributes_namespaceObject.show_home_icon.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"home_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Home Icon', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === showHomeIcon,\n    defaultAttr: breadcrumbs_module_default_render_attributes_namespaceObject.home_icon.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"show_separator.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Custom Separator Icon', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: breadcrumbs_module_default_render_attributes_namespaceObject.show_separator.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"separator_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Separator Icon', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === showSeparator,\n    defaultAttr: breadcrumbs_module_default_render_attributes_namespaceObject.separator_icon.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"enable_schema_markup.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Schema Markup (BreadcrumbList)', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Outputs BreadcrumbList microdata for search engines. Disable if another plugin already provides breadcrumb structured data.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: breadcrumbs_module_default_render_attributes_namespaceObject.enable_schema_markup.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const breadcrumbs_settings_content = (breadcrumbs_settings_content_SettingsContent);\n;// ./packages/module-library/breadcrumbs/settings-design.js\n\n// Wordpress dependencies.\n\n// Divi package dependencies.\n\n\n\n\nfunction breadcrumbs_settings_design_SettingsDesign() {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"alignment\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Alignment', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"align.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose the breadcrumbs alignment.', 'dsm-supreme-modules-pro-for-divi'),\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    },\n    defaultAttr: breadcrumbs_module_default_render_attributes_namespaceObject.align.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"items\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Items', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"items_bg_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Items Background Color', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"items_bottom.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Gap', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: breadcrumbs_module_default_render_attributes_namespaceObject.items_bottom.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    step: 1,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"items_padding.decoration.spacing\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Items', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"home_items.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Item', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      },\n      textAlign: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"items_style.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"items_style.decoration.boxShadow\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"home_icon_size.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Home Icon', 'dsm-supreme-modules-pro-for-divi'),\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Home Icon', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      },\n      textAlign: {\n        render: false\n      },\n      textShadowGroup: {\n        render: false\n      },\n      family: {\n        render: false\n      },\n      letterSpacing: {\n        render: false\n      },\n      lineHeight: {\n        render: false\n      },\n      style: {\n        render: false\n      },\n      weight: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"separators\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Separators', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"separator_bg_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Separators Background Color', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"separator_bottom.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Separator Bottom Gap', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: breadcrumbs_module_default_render_attributes_namespaceObject.separator_bottom.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    step: 1,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"separator_padding.decoration.spacing\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Separator', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"separators.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Separators', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      },\n      textAlign: {\n        render: false\n      },\n      family: {\n        render: false\n      },\n      letterSpacing: {\n        render: false\n      },\n      lineHeight: {\n        render: false\n      },\n      style: {\n        render: false\n      },\n      weight: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"separator_style.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"separator_style.decoration.boxShadow\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"current\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Current', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"current_bg_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Items Background Color', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"current_bottom.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Current Item Bottom Gap', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: breadcrumbs_module_default_render_attributes_namespaceObject.current_bottom.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    step: 1,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"current_padding.decoration.spacing\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Current Item', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"current_text.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Current', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      },\n      textAlign: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"current_style.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"current_style.decoration.boxShadow\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const breadcrumbs_settings_design = (breadcrumbs_settings_design_SettingsDesign);\n;// ./packages/module-library/breadcrumbs/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction breadcrumbs_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_breadcrumbs\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const breadcrumbs_settings_advanced = (breadcrumbs_settings_advanced_SettingsAdvanced);\n;// external [\"divi\",\"iconLibrary\"]\nconst external_divi_iconLibrary_namespaceObject = divi.iconLibrary;\n;// ./packages/extensions/icon-libraries/icon-value.js\n/**\n * Stored icon value helpers for DSM webfont icon libraries.\n *\n * @package DiviSupreme\n */\n\n/**\n * @param {unknown} icon Icon settings object.\n * @return {boolean}\n */\nfunction isDsmIcon(icon) {\n  var _icon$type;\n  if (!icon || typeof icon !== 'object') {\n    return false;\n  }\n  const type = String(/** @type {{ type?: string }} */(_icon$type = icon.type) !== null && _icon$type !== void 0 ? _icon$type : '');\n  if ('' === type) {\n    return false;\n  }\n  const bootstrapIds = window.dsmIconLibrariesVbBootstrap?.libraryIds;\n  if (Array.isArray(bootstrapIds) && bootstrapIds.length > 0) {\n    return bootstrapIds.includes(type);\n  }\n  return false;\n}\n\n/**\n * Normalize picker output — preserve variant for Phosphor weights.\n *\n * @param {{ unicode?: string, type?: string, weight?: string, variant?: string }} icon Raw picker value.\n * @return {{ unicode: string, type: string, weight: string, variant?: string }}\n */\nfunction normalizeStoredIconValue(icon) {\n  var _icon$type2, _icon$unicode, _icon$weight;\n  const type = String((_icon$type2 = icon?.type) !== null && _icon$type2 !== void 0 ? _icon$type2 : '');\n  const unicode = String((_icon$unicode = icon?.unicode) !== null && _icon$unicode !== void 0 ? _icon$unicode : '');\n  const weight = String((_icon$weight = icon?.weight) !== null && _icon$weight !== void 0 ? _icon$weight : '400');\n  let variant = typeof icon?.variant === 'string' && icon.variant !== '' ? icon.variant : type === 'phosphor' ? 'regular' : '';\n  if ('duotone' === variant) {\n    variant = 'regular';\n  }\n  const out = {\n    unicode,\n    type,\n    weight\n  };\n  if (variant) {\n    /** @type {{ unicode: string, type: string, weight: string, variant?: string }} */out.variant = variant;\n  }\n  return out;\n}\n\n/**\n * Build composite icon map key for icon.map entries (preview components).\n *\n * @param {string} libraryId Library slug.\n * @param {string} iconId    Icon slug.\n * @return {string}\n */\nfunction buildIconMapKey(libraryId, iconId) {\n  return `divi-supreme/${libraryId}/${iconId}`;\n}\n;// ./packages/module-library/shared/dsm-native-icon-font-css.js\n/**\n * Skip ETmodules/FA pseudo-element content for DSM webfont library icons (VB + frontend).\n *\n * Always use `buildLegacyPseudoIconFontCss` (or `addNativeIconFontFamily` +\n * `addNativeIconFontContent`) in module-styles — never call `processFontIcon`\n * directly without importing it and without an `isDsmIcon()` guard.\n *\n * PHP modules should use {@see LegacyModuleIconStyles::build_pseudo_icon_declaration}.\n *\n * @package DiviSupreme\n */\n\n\n\n\n\n/**\n * Add CSS `content` for native font icons only; DSM icons render via webfont bridge.\n *\n * @param {import('@divi/style-library').StyleDeclarations} declarations Style builder.\n * @param {Record<string, unknown>|null|undefined}        attrValue     Icon picker leaf.\n * @return {void}\n */\nfunction addNativeIconFontContent(declarations, attrValue) {\n  if (!attrValue?.unicode || isDsmIcon(attrValue)) {\n    return;\n  }\n  const glyph = (0,external_divi_iconLibrary_namespaceObject.processFontIcon)(attrValue);\n  if (glyph) {\n    declarations.add('content', `'${glyph}'`);\n  }\n}\n\n/**\n * Add font-family / weight for native icons; DSM icons use per-library webfonts.\n *\n * @param {import('@divi/style-library').StyleDeclarations} declarations Style builder.\n * @param {Record<string, unknown>|null|undefined}        attrValue     Icon picker leaf.\n * @return {void}\n */\nfunction addNativeIconFontFamily(declarations, attrValue) {\n  if (!attrValue || isDsmIcon(attrValue)) {\n    return;\n  }\n  if (attrValue.type) {\n    const fontFamily = 'fa' === attrValue.type ? 'FontAwesome' : 'ETmodules';\n    declarations.add('font-family', `'${fontFamily}'`);\n  }\n  if (attrValue.weight) {\n    declarations.add('font-weight', String(attrValue.weight));\n  }\n}\n\n/**\n * CommonStyle helper for legacy `::before` / `::after` native icon slots.\n *\n * @param {{ attrValue?: Record<string, unknown>|null|undefined }} attr CommonStyle params.\n * @return {string}\n */\nfunction buildLegacyPseudoIconFontCss(attr) {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'font-family': true\n    }\n  });\n  addNativeIconFontFamily(declarations, attrValue);\n  addNativeIconFontContent(declarations, attrValue);\n  return declarations.value;\n}\n;// ./packages/module-library/breadcrumbs/module-styles.js\n\n\n\n\n\nconst iconFontCss = buildLegacyPseudoIconFontCss;\nconst alignStyleDeclaration = attr => {\n  var _map$choice;\n  const raw = attr?.attrValue;\n  const choice = typeof raw === 'string' ? raw : raw && typeof raw === 'object' && 'value' in raw && typeof raw.value === 'string' ? raw.value : '';\n  const map = {\n    left: 'flex-start',\n    center: 'center',\n    right: 'flex-end',\n    'flex-start': 'flex-start',\n    'flex-end': 'flex-end'\n  };\n  const justify = (_map$choice = map[choice]) !== null && _map$choice !== void 0 ? _map$choice : 'flex-start';\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'justify-content': true\n    }\n  });\n  declarations.add('justify-content', justify);\n  return declarations.value;\n};\n\n/**\n * React function component for rendering module style.\n */\nconst breadcrumbs_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  var _attrs$separator_bott, _attrs$current_bottom, _attrs$items_bottom$i;\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'home_icon_size'\n  }), elements.style({\n    attrName: 'separator_padding'\n  }), elements.style({\n    attrName: 'separator_style'\n  }), elements.style({\n    attrName: 'separators'\n  }), elements.style({\n    attrName: 'current_padding'\n  }), elements.style({\n    attrName: 'current_style'\n  }), elements.style({\n    attrName: 'items_padding'\n  }), elements.style({\n    attrName: 'items_style'\n  }), elements.style({\n    attrName: 'home_items'\n  }), elements.style({\n    attrName: 'current_text'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_separator_icon::before`,\n    attr: attrs?.separator_icon?.innerContent,\n    declarationFunction: iconFontCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_home_icon::before`,\n    attr: attrs?.home_icon?.innerContent,\n    declarationFunction: iconFontCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_breadcrumbs`,\n    attr: attrs?.align?.innerContent,\n    declarationFunction: alignStyleDeclaration\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_separator_icon`,\n    attr: attrs?.separator_bg_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_breadcrumbs_separator`,\n    attr: (_attrs$separator_bott = attrs?.separator_bottom?.innerContent) !== null && _attrs$separator_bott !== void 0 ? _attrs$separator_bott : breadcrumbs_module_default_render_attributes_namespaceObject.separator_bottom.innerContent,\n    property: \"margin-bottom\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_breadcrumbs_item.dsm_breadcrumbs_item_current`,\n    attr: attrs?.current_bg_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_breadcrumbs_item.dsm_breadcrumbs_item_current`,\n    attr: (_attrs$current_bottom = attrs?.current_bottom?.innerContent) !== null && _attrs$current_bottom !== void 0 ? _attrs$current_bottom : breadcrumbs_module_default_render_attributes_namespaceObject.current_bottom.innerContent,\n    property: \"margin-bottom\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_breadcrumbs_item:not(.dsm_breadcrumbs_item_current)`,\n    attr: attrs?.items_bg_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_breadcrumbs_item:not(.dsm_breadcrumbs_item_current)`,\n    attr: (_attrs$items_bottom$i = attrs?.items_bottom?.innerContent) !== null && _attrs$items_bottom$i !== void 0 ? _attrs$items_bottom$i : breadcrumbs_module_default_render_attributes_namespaceObject.items_bottom.innerContent,\n    property: \"margin-bottom\"\n  }));\n};\n;// external \"window.vendor.wp.element\"\nconst external_window_vendor_wp_element_namespaceObject = window.vendor.wp.element;\n;// ./packages/extensions/icon-libraries/vb-window-bridge.js\n/**\n * Resolve the VB app iframe where Divi's iconLibrary lives.\n *\n * The icon picker DOM is portaled into the top window, but filtering uses\n * `divi.iconLibrary` in the app iframe. Manifest rows must mutate that list.\n *\n * @package DiviSupreme\n */\n\n/** @type {Window|null} */\nlet cachedAppWindow = null;\n\n/**\n * @param {Window} win Window.\n * @return {boolean}\n */\nfunction windowHasIconLibrary(win) {\n  return Boolean(win?.divi?.iconLibrary && Array.isArray(win.divi.iconLibrary.iconList));\n}\n\n/**\n * @return {Document[]}\n */\nfunction getIframeOwnerDocuments() {\n  /** @type {Document[]} */\n  const docs = [document];\n  try {\n    if (window.top?.document && !docs.includes(window.top.document)) {\n      docs.push(window.top.document);\n    }\n  } catch {\n    // Ignore cross-origin top access.\n  }\n  try {\n    if (window.parent?.document && window.parent !== window && !docs.includes(window.parent.document)) {\n      docs.push(window.parent.document);\n    }\n  } catch {\n    // Ignore.\n  }\n  return docs;\n}\n\n/**\n * @return {Window|null}\n */\nfunction findAppWindowViaIframes() {\n  for (const ownerDoc of getIframeOwnerDocuments()) {\n    /** @type {HTMLIFrameElement[]} */\n    const iframes = Array.from(ownerDoc.querySelectorAll('iframe'));\n    for (const iframe of iframes) {\n      try {\n        const contentWindow = iframe.contentWindow;\n        if (contentWindow && windowHasIconLibrary(contentWindow)) {\n          return contentWindow;\n        }\n      } catch {\n        // Cross-origin iframe — skip.\n      }\n    }\n  }\n  return null;\n}\n\n/**\n * Move lazy iconList state from the top window onto the app iframe once ready.\n *\n * @param {Window} appWin App iframe window.\n * @return {void}\n */\nfunction migrateIconLibraryStateToAppWindow(appWin) {\n  if (!appWin || appWin === window) {\n    return;\n  }\n  const sourceRows = window.__dsmIconLibraryLazyRows;\n  if (Array.isArray(sourceRows) && sourceRows.length > 0) {\n    if (!Array.isArray(appWin.__dsmIconLibraryLazyRows)) {\n      appWin.__dsmIconLibraryLazyRows = [];\n    }\n    sourceRows.forEach(row => {\n      if (!appWin.__dsmIconLibraryLazyRows.includes(row)) {\n        appWin.__dsmIconLibraryLazyRows.push(row);\n      }\n    });\n    window.__dsmIconLibraryLazyRows = [];\n  }\n  const sourceBuffer = window.__dsmIconListMergedBuffer;\n  if (Array.isArray(sourceBuffer) && sourceBuffer.length > 0) {\n    const targetList = appWin.divi?.iconLibrary?.iconList;\n    if (Array.isArray(targetList)) {\n      sourceBuffer.forEach(row => {\n        if (!targetList.includes(row)) {\n          targetList.push(row);\n        }\n      });\n    }\n    window.__dsmIconListMergedBuffer = undefined;\n  }\n  const sourceSessions = window.__dsmIconLibraryLoadedSessions;\n  if (sourceSessions instanceof Set && sourceSessions.size > 0) {\n    if (!(appWin.__dsmIconLibraryLoadedSessions instanceof Set)) {\n      appWin.__dsmIconLibraryLoadedSessions = new Set();\n    }\n    sourceSessions.forEach(session => {\n      appWin.__dsmIconLibraryLoadedSessions.add(session);\n    });\n    sourceSessions.clear();\n  }\n}\n\n/**\n * @return {Window}\n */\nfunction getVbAppWindow() {\n  if (cachedAppWindow && windowHasIconLibrary(cachedAppWindow)) {\n    return cachedAppWindow;\n  }\n  if (windowHasIconLibrary(window)) {\n    cachedAppWindow = window;\n    return window;\n  }\n  const viaIframe = findAppWindowViaIframes();\n  if (viaIframe) {\n    migrateIconLibraryStateToAppWindow(viaIframe);\n    cachedAppWindow = viaIframe;\n    return viaIframe;\n  }\n  const viaDiviWindow = window.divi?.window?.getWindow?.('app');\n  if (viaDiviWindow && windowHasIconLibrary(viaDiviWindow)) {\n    migrateIconLibraryStateToAppWindow(viaDiviWindow);\n    cachedAppWindow = viaDiviWindow;\n    return viaDiviWindow;\n  }\n  return window;\n}\n\n/**\n * @return {import('@divi/icon-library')|null}\n */\nfunction getVbIconLibrary() {\n  var _appWin$divi$iconLibr;\n  const appWin = getVbAppWindow();\n  return (_appWin$divi$iconLibr = appWin.divi?.iconLibrary) !== null && _appWin$divi$iconLibr !== void 0 ? _appWin$divi$iconLibr : null;\n}\n\n/**\n * Cross-window host for iconList/lazy state (top picker + app iframe bundles).\n *\n * @return {Window}\n */\nfunction getGlobalIconListStateHost() {\n  try {\n    var _window$top;\n    return (_window$top = window.top) !== null && _window$top !== void 0 ? _window$top : window;\n  } catch {\n    return window;\n  }\n}\n\n/**\n * Shared lazy-row store lives on the global host so top-window picker UI can sync.\n *\n * @return {Window}\n */\nfunction getSharedStateWindow() {\n  return getGlobalIconListStateHost();\n}\n;// ./packages/extensions/icon-libraries/icon-list-rows.js\n/**\n * Divi iconList buffer helpers — FA model (full manifest merged at memoization).\n *\n * @package DiviSupreme\n */\n\n\n\n/** @type {Set<string>|null} */\nlet webfontLibraryIdsCache = null;\n\n/**\n * @return {Set<string>}\n */\nfunction getWebfontLibraryIds() {\n  if (webfontLibraryIdsCache) {\n    return webfontLibraryIdsCache;\n  }\n  const catalog = window.diviSupreme5?.iconLibrariesCatalog;\n  if (Array.isArray(catalog)) {\n    const ids = catalog.filter(lib => 'webfont' === lib?.pickerMode).map(lib => {\n      var _lib$id;\n      return String((_lib$id = lib?.id) !== null && _lib$id !== void 0 ? _lib$id : '');\n    }).filter(Boolean);\n    if (ids.length > 0) {\n      webfontLibraryIdsCache = new Set(ids);\n      return webfontLibraryIdsCache;\n    }\n  }\n  const bootstrapIds = window.dsmIconLibrariesVbBootstrap?.libraryIds;\n  if (Array.isArray(bootstrapIds) && bootstrapIds.length > 0) {\n    webfontLibraryIdsCache = new Set(bootstrapIds);\n    return webfontLibraryIdsCache;\n  }\n  webfontLibraryIdsCache = new Set();\n  return webfontLibraryIdsCache;\n}\n\n/**\n * @return {Window[]}\n */\nfunction getIconListStateWindows() {\n  /** @type {Window[]} */\n  const windows = [];\n  const globalHost = getGlobalIconListStateHost();\n  if (globalHost) {\n    windows.push(globalHost);\n  }\n  if (window !== globalHost && !windows.includes(window)) {\n    windows.push(window);\n  }\n  const appWin = getVbAppWindow();\n  if (appWin && !windows.includes(appWin)) {\n    windows.push(appWin);\n  }\n  return windows;\n}\n\n/**\n * Strip Divi ETmodules picker fields from webfont library rows.\n *\n * @param {Record<string, unknown>} row Icon list row.\n * @return {Record<string, unknown>}\n */\nfunction sanitizeWebfontIconListRow(row) {\n  if (!row || typeof row !== 'object') {\n    return row;\n  }\n  const styles = Array.isArray(row.styles) ? row.styles : [];\n  const isWebfontRow = styles.some(style => getWebfontLibraryIds().has(String(style)));\n  if (!isWebfontRow) {\n    return row;\n  }\n  const clean = {\n    ...row\n  };\n  delete clean.decodedUnicode;\n  delete clean.dsmPreviewSvg;\n  if (!clean.fontWeight) {\n    clean.fontWeight = 400;\n  }\n  if (!Array.isArray(clean.styles) || clean.styles.length === 0) {\n    clean.styles = clean.dsmLibraryId ? [String(clean.dsmLibraryId)] : [];\n  }\n  return clean;\n}\n\n/**\n * Return one stable mutable iconList array tied to Divi's memoized getter.\n *\n * @param {Array<Record<string, unknown>>} baseList Divi base icon rows.\n * @return {Array<Record<string, unknown>>}\n */\nfunction ensureMergedIconListBuffer(baseList) {\n  const globalHost = getGlobalIconListStateHost();\n  if (!Array.isArray(globalHost.__dsmIconListMergedBuffer)) {\n    globalHost.__dsmIconListMergedBuffer = [...baseList];\n  }\n  const shared = globalHost.__dsmIconListMergedBuffer;\n  getIconListStateWindows().forEach(stateWin => {\n    stateWin.__dsmIconListMergedBuffer = shared;\n  });\n  return shared;\n}\n\n/**\n * @return {Array<Record<string, unknown>>|null}\n */\nfunction getMergedIconListTarget() {\n  const globalHost = getGlobalIconListStateHost();\n  if (Array.isArray(globalHost.__dsmIconListMergedBuffer)) {\n    return globalHost.__dsmIconListMergedBuffer;\n  }\n  for (const stateWin of getIconListStateWindows()) {\n    if (Array.isArray(stateWin.__dsmIconListMergedBuffer)) {\n      globalHost.__dsmIconListMergedBuffer = stateWin.__dsmIconListMergedBuffer;\n      return globalHost.__dsmIconListMergedBuffer;\n    }\n  }\n  const iconList = getVbIconLibrary()?.iconList;\n  return Array.isArray(iconList) ? iconList : null;\n}\n;// ./packages/extensions/icon-libraries/picker-font-class.js\n/**\n * Resolve VB picker webfont CSS classes from stored icon values.\n *\n * Mirrors PHP IconLibraryInterface webfont class helpers.\n *\n * @package DiviSupreme\n */\n\n\n\n/** @type {Record<string, string>} */\nconst PHOSPHOR_WEIGHT_CLASS = {\n  thin: 'ph-thin',\n  light: 'ph-light',\n  regular: 'ph',\n  bold: 'ph-bold',\n  fill: 'ph-fill'\n};\n\n/** @type {Record<string, string>} */\nconst PHOSPHOR_FONT_FAMILY = {\n  thin: 'Phosphor-Thin',\n  light: 'Phosphor-Light',\n  regular: 'Phosphor',\n  bold: 'Phosphor-Bold',\n  fill: 'Phosphor-Fill'\n};\nconst TABLER_OUTLINE_SCOPE = 'dsm-tabler-outline-glyph';\nconst TABLER_FILLED_SCOPE = 'dsm-tabler-filled-glyph';\nconst LUCIDE_SCOPE = 'dsm-lucide-glyph';\n\n/** @type {Record<string, unknown>|null} */\nlet tablerWebfontIndexCache = null;\n\n/** @type {Promise<Record<string, unknown>|null>|null} */\nlet tablerWebfontIndexPromise = null;\n\n/**\n * @return {Record<string, unknown>|null}\n */\nfunction getTablerWebfontIndexSync() {\n  if (tablerWebfontIndexCache) {\n    return tablerWebfontIndexCache;\n  }\n  if (window.__dsmTablerWebfontIndex && typeof window.__dsmTablerWebfontIndex === 'object') {\n    tablerWebfontIndexCache = window.__dsmTablerWebfontIndex;\n    return tablerWebfontIndexCache;\n  }\n  return null;\n}\n\n/**\n * Lazy-load Tabler filled-glyph index (only when Tabler picker is opened).\n *\n * @return {Promise<Record<string, unknown>|null>}\n */\nasync function ensureTablerWebfontIndexLoaded() {\n  const cached = getTablerWebfontIndexSync();\n  if (cached) {\n    return cached;\n  }\n  if (tablerWebfontIndexPromise) {\n    return tablerWebfontIndexPromise;\n  }\n  const base = window.dsmIconLibraries?.restUrl || '/wp-json/dsm/v1/icon-libraries';\n  const url = `${String(base).replace(/\\/$/, '')}/tabler/webfont-index`;\n  const headers = {};\n  if (window.dsmIconLibraries?.restNonce) {\n    headers['X-WP-Nonce'] = window.dsmIconLibraries.restNonce;\n  }\n  tablerWebfontIndexPromise = fetch(url, {\n    credentials: 'same-origin',\n    headers\n  }).then(response => response.ok ? response.json() : null).then(data => {\n    if (data && typeof data === 'object') {\n      tablerWebfontIndexCache = data;\n      window.__dsmTablerWebfontIndex = data;\n      return data;\n    }\n    return null;\n  }).catch(() => null).finally(() => {\n    tablerWebfontIndexPromise = null;\n  });\n  return tablerWebfontIndexPromise;\n}\n\n/**\n * @param {string} iconId Icon slug.\n * @return {boolean}\n */\nfunction tablerIconHasFilledWebfont(iconId) {\n  const index = getTablerWebfontIndexSync();\n  const filled = index?.filled;\n  if (!Array.isArray(filled)) {\n    return false;\n  }\n  return filled.includes(iconId);\n}\n\n/**\n * @param {string} libraryId Library slug.\n * @param {string} iconId    Icon slug.\n * @return {Record<string, unknown>|null}\n */\nfunction lookupManifestRow(libraryId, iconId) {\n  var _iconList$find;\n  const iconList = getMergedIconListTarget();\n  if (!iconList) {\n    return null;\n  }\n  return (_iconList$find = iconList.find(row => {\n    var _row$styles$, _row$unicode;\n    return String((_row$styles$ = row?.styles?.[0]) !== null && _row$styles$ !== void 0 ? _row$styles$ : '') === libraryId && String((_row$unicode = row?.unicode) !== null && _row$unicode !== void 0 ? _row$unicode : '') === iconId;\n  })) !== null && _iconList$find !== void 0 ? _iconList$find : null;\n}\n\n/**\n * @param {string} libraryId Library slug.\n * @return {string}\n */\nfunction getLibraryDefaultVariant(libraryId) {\n  const catalog = window.diviSupreme5?.iconLibrariesCatalog;\n  const bootstrap = window.dsmIconLibrariesVbBootstrap;\n  if (Array.isArray(catalog)) {\n    const found = catalog.find(lib => lib?.id === libraryId);\n    if (found?.defaultVariant) {\n      return String(found.defaultVariant);\n    }\n  }\n  if (bootstrap?.libraryIds?.includes(libraryId)) {\n    if ('phosphor' === libraryId) {\n      return 'regular';\n    }\n    if ('tabler' === libraryId) {\n      return 'outline';\n    }\n  }\n  return '';\n}\n\n/**\n * Whether a library uses webfont previews in the picker.\n *\n * @param {string} libraryId Library slug.\n * @return {boolean}\n */\nfunction isWebfontPickerLibrary(libraryId) {\n  const catalog = window.diviSupreme5?.iconLibrariesCatalog;\n  if (Array.isArray(catalog)) {\n    const found = catalog.find(lib => lib?.id === libraryId);\n    if (found?.pickerMode) {\n      return 'webfont' === found.pickerMode;\n    }\n  }\n  return false;\n}\n\n/**\n * @param {string} libraryId Library slug.\n * @param {string} iconId    Icon slug (stored unicode).\n * @param {string} [variant] Variant / weight slug.\n * @return {string}\n */\nfunction getPickerWebfontFamily(libraryId, iconId, variant = '') {\n  const iconSlug = String(iconId || '').trim();\n  const variantSlug = variant || getLibraryDefaultVariant(libraryId);\n  if (!iconSlug) {\n    return '';\n  }\n  const manifestRow = lookupManifestRow(libraryId, iconSlug);\n  if (manifestRow?.dsmWebfontFamily) {\n    return String(manifestRow.dsmWebfontFamily);\n  }\n  if ('tabler' === libraryId) {\n    if ('filled' === variantSlug && tablerIconHasFilledWebfont(iconSlug)) {\n      return 'tabler-icons-filled';\n    }\n    return 'tabler-icons';\n  }\n  if ('phosphor' === libraryId) {\n    return PHOSPHOR_FONT_FAMILY[variantSlug] || 'Phosphor';\n  }\n  if ('lucide' === libraryId) {\n    return 'lucide';\n  }\n  const catalogFamily = window.diviSupreme5?.iconLibrariesCatalog?.find(lib => lib?.id === libraryId)?.webfontFamily;\n  return catalogFamily ? String(catalogFamily) : '';\n}\n\n/**\n * @param {string} libraryId Library slug.\n * @param {string} iconId    Icon slug (stored unicode).\n * @param {string} [variant] Variant / weight slug.\n * @return {string}\n */\nfunction getPickerFontClass(libraryId, iconId, variant = '') {\n  const iconSlug = String(iconId || '').trim();\n  const variantSlug = variant || getLibraryDefaultVariant(libraryId);\n  if (!iconSlug) {\n    return '';\n  }\n  const manifestRow = lookupManifestRow(libraryId, iconSlug);\n  if (manifestRow?.dsmPickerFontClass) {\n    return String(manifestRow.dsmPickerFontClass);\n  }\n  if ('tabler' === libraryId) {\n    const scopeClass = 'filled' === variantSlug && tablerIconHasFilledWebfont(iconSlug) ? TABLER_FILLED_SCOPE : TABLER_OUTLINE_SCOPE;\n    return `ti ti-${iconSlug} ${scopeClass}`;\n  }\n  if ('phosphor' === libraryId) {\n    const weightClass = PHOSPHOR_WEIGHT_CLASS[variantSlug] || 'ph';\n    return `${weightClass} ph-${iconSlug}`;\n  }\n  if ('lucide' === libraryId) {\n    return `icon-${iconSlug} ${LUCIDE_SCOPE}`;\n  }\n  return '';\n}\n\n/**\n * Resolve font class from a manifest row or picker button.\n *\n * @param {Element|null} button   Picker button (optional).\n * @param {string}       libraryId Library slug.\n * @param {string}       iconId    Icon slug.\n * @param {string}       [variant] Variant slug.\n * @return {string}\n */\nfunction resolvePickerFontClass(button, libraryId, iconId, variant = '') {\n  const rowClass = button?.getAttribute('data-dsm-picker-font-class');\n  if (rowClass) {\n    return rowClass;\n  }\n  const dataVariant = button?.getAttribute('data-dsm-variant') || button?.getAttribute('data-variant') || variant;\n  return getPickerFontClass(libraryId, iconId, dataVariant);\n}\n\n/**\n * @param {Element|null} button   Picker button (optional).\n * @param {string}       libraryId Library slug.\n * @param {string}       iconId    Icon slug.\n * @param {string}       [variant] Variant slug.\n * @return {string}\n */\nfunction resolvePickerWebfontFamily(button, libraryId, iconId, variant = '') {\n  const rowFamily = button?.getAttribute('data-dsm-webfont-family');\n  if (rowFamily) {\n    return rowFamily;\n  }\n  const dataVariant = button?.getAttribute('data-dsm-variant') || button?.getAttribute('data-variant') || variant;\n  return getPickerWebfontFamily(libraryId, iconId, dataVariant);\n}\n;// ./packages/extensions/icon-libraries/picker-webfonts.js\n/**\n * Inject picker webfont CSS into every VB document that can host the icon grid.\n *\n * @package DiviSupreme\n */\n\n/**\n * @return {Set<string>}\n */\nfunction getInjectedWebfontUrls() {\n  if (!window.__dsmInjectedWebfontUrls) {\n    window.__dsmInjectedWebfontUrls = new Set();\n  }\n  return window.__dsmInjectedWebfontUrls;\n}\n\n/**\n * @return {Document[]}\n */\nfunction getTargetDocuments() {\n  /** @type {Document[]} */\n  const docs = [document];\n  const candidates = [window.top?.document, window.parent?.document, window.divi?.window?.topWindow?.document];\n  candidates.forEach(doc => {\n    if (doc && !docs.includes(doc)) {\n      docs.push(doc);\n    }\n  });\n  return docs;\n}\n\n/**\n * @param {string} libraryId Library slug.\n * @return {Array<{ libraryId?: string, variant?: string, url?: string }>}\n */\nfunction getPickerWebfontStylesheets(libraryId) {\n  const bootstrap = window.dsmIconLibrariesVbBootstrap;\n  const bootstrapSheets = Array.isArray(bootstrap?.pickerWebfontStylesheets) ? bootstrap.pickerWebfontStylesheets : [];\n  const fromBootstrap = bootstrapSheets.filter(sheet => sheet?.libraryId === libraryId && sheet?.url);\n  if (fromBootstrap.length > 0) {\n    return fromBootstrap;\n  }\n  const catalog = window.diviSupreme5?.iconLibrariesCatalog;\n  if (!Array.isArray(catalog)) {\n    return [];\n  }\n  const library = catalog.find(lib => lib?.id === libraryId);\n  return Array.isArray(library?.webfontStylesheets) ? library.webfontStylesheets : [];\n}\n\n/**\n * Picker preview only needs the default weight stylesheets (not all variants).\n *\n * @param {string}                                                       libraryId Library slug.\n * @param {Array<{ libraryId?: string, variant?: string, url?: string }>} sheets    Stylesheets.\n * @return {Array<{ libraryId?: string, variant?: string, url?: string }>}\n */\nfunction getLibraryDefaultVariantForPicker(libraryId) {\n  const catalog = window.diviSupreme5?.iconLibrariesCatalog;\n  const found = catalog?.find(lib => lib?.id === libraryId);\n  if (found?.defaultVariant !== undefined && found?.defaultVariant !== null) {\n    return String(found.defaultVariant);\n  }\n  if ('phosphor' === libraryId) {\n    return 'regular';\n  }\n  if ('tabler' === libraryId) {\n    return 'outline';\n  }\n  return '';\n}\n\n/**\n * @param {string}                                                       libraryId Library slug.\n * @param {Array<{ libraryId?: string, variant?: string, url?: string }>} sheets    Stylesheets.\n * @return {Array<{ libraryId?: string, variant?: string, url?: string }>}\n */\nfunction filterPickerWebfontSheets(libraryId, sheets) {\n  if ('phosphor' === libraryId) {\n    return sheets.filter(sheet => 'regular' === sheet?.variant);\n  }\n  if ('tabler' === libraryId) {\n    return sheets.filter(sheet => {\n      var _sheet$variant;\n      return ['outline', 'filled'].includes(String((_sheet$variant = sheet?.variant) !== null && _sheet$variant !== void 0 ? _sheet$variant : ''));\n    });\n  }\n  const defaultVariant = getLibraryDefaultVariantForPicker(libraryId);\n  const variantSheets = sheets.filter(sheet => {\n    var _sheet$variant2;\n    return String((_sheet$variant2 = sheet?.variant) !== null && _sheet$variant2 !== void 0 ? _sheet$variant2 : '') === defaultVariant;\n  });\n  return variantSheets.length > 0 ? variantSheets : sheets;\n}\n\n/**\n * @param {Document} doc       Target document.\n * @param {string}   url       Stylesheet URL.\n * @param {string}   libraryId Library slug.\n * @return {Promise<void>}\n */\nfunction injectStylesheet(doc, url, libraryId) {\n  var _doc$location$href;\n  const injectionKey = `${String((_doc$location$href = doc.location?.href) !== null && _doc$location$href !== void 0 ? _doc$location$href : 'doc')}::${url}`;\n  const injectedWebfontUrls = getInjectedWebfontUrls();\n  if (injectedWebfontUrls.has(injectionKey) || !doc.head) {\n    return Promise.resolve();\n  }\n  injectedWebfontUrls.add(injectionKey);\n  return new Promise(resolve => {\n    const link = doc.createElement('link');\n    link.rel = 'stylesheet';\n    link.href = url;\n    link.dataset.dsmIconLibraryWebfont = libraryId;\n    const finish = () => {\n      resolve();\n    };\n    link.addEventListener('load', finish, {\n      once: true\n    });\n    link.addEventListener('error', finish, {\n      once: true\n    });\n    doc.head.appendChild(link);\n  });\n}\n\n/**\n * Inject self-hosted webfont CSS for a library into all VB documents.\n *\n * @param {string} libraryId Library slug.\n * @return {Promise<void>}\n */\nasync function ensurePickerWebfontsLoaded(libraryId) {\n  const sheets = filterPickerWebfontSheets(libraryId, getPickerWebfontStylesheets(libraryId));\n  if (sheets.length === 0) {\n    return;\n  }\n  const jobs = [];\n  getTargetDocuments().forEach(doc => {\n    sheets.forEach(sheet => {\n      var _sheet$url;\n      const url = String((_sheet$url = sheet?.url) !== null && _sheet$url !== void 0 ? _sheet$url : '').trim();\n      if (url) {\n        jobs.push(injectStylesheet(doc, url, libraryId));\n      }\n    });\n  });\n  await Promise.all(jobs);\n}\n;// ./packages/extensions/icon-libraries/icon-map.js\n/**\n * Visual Builder icon.map entries — webfont previews for DSM libraries.\n *\n * @package DiviSupreme\n */\n\n\n\n\n\n/**\n * @param {string} libraryId Library slug.\n * @param {string} iconId    Icon slug.\n * @param {string} variant   Variant slug.\n * @return {() => JSX.Element}\n */\nfunction createFontPreviewComponent(libraryId, iconId, variant = '', fontClass = '') {\n  const resolvedClass = fontClass || getPickerFontClass(libraryId, iconId, variant);\n  return function DsmFontIconPreview() {\n    return /*#__PURE__*/(0,external_vendor_React_.createElement)('span', {\n      className: 'dsm-icon-map-preview dsm-icon-map-preview--font',\n      'aria-hidden': true\n    }, /*#__PURE__*/(0,external_vendor_React_.createElement)('i', {\n      className: resolvedClass\n    }));\n  };\n}\n\n/**\n * @return {Record<string, () => JSX.Element>}\n */\nfunction getLazyIconMapEntries() {\n  if (!window.__dsmIconMapLazyEntries || typeof window.__dsmIconMapLazyEntries !== 'object') {\n    window.__dsmIconMapLazyEntries = {};\n  }\n  return window.__dsmIconMapLazyEntries;\n}\n\n/**\n * Register icon.map preview components for manifest rows (lazy, per library).\n *\n * @param {Array<Record<string, unknown>>} rows Manifest rows.\n * @return {void}\n */\nfunction registerIconMapEntriesForRows(rows) {\n  if (!Array.isArray(rows) || rows.length === 0) {\n    return;\n  }\n  const entries = getLazyIconMapEntries();\n  rows.forEach(row => {\n    var _ref, _row$dsmLibraryId, _row$unicode, _row$dsmVariant, _row$dsmPickerFontCla;\n    if (!row || typeof row !== 'object') {\n      return;\n    }\n    const libraryId = String((_ref = (_row$dsmLibraryId = row.dsmLibraryId) !== null && _row$dsmLibraryId !== void 0 ? _row$dsmLibraryId : row.styles?.[0]) !== null && _ref !== void 0 ? _ref : '');\n    const iconId = String((_row$unicode = row.unicode) !== null && _row$unicode !== void 0 ? _row$unicode : '');\n    const variant = String((_row$dsmVariant = row.dsmVariant) !== null && _row$dsmVariant !== void 0 ? _row$dsmVariant : '');\n    if (!libraryId || !iconId || !isWebfontPickerLibrary(libraryId)) {\n      return;\n    }\n    const key = buildIconMapKey(libraryId, iconId);\n    if (entries[key]) {\n      return;\n    }\n    entries[key] = createFontPreviewComponent(libraryId, iconId, variant, String((_row$dsmPickerFontCla = row.dsmPickerFontClass) !== null && _row$dsmPickerFontCla !== void 0 ? _row$dsmPickerFontCla : ''));\n  });\n}\n\n/**\n * Register icon.map preview components for enabled libraries (lazy entries only).\n *\n * @param {string[]} libraryIds Enabled library ids.\n * @return {Record<string, () => JSX.Element>}\n */\nfunction buildIconMapEntries(libraryIds) {\n  const entries = getLazyIconMapEntries();\n  /** @type {Record<string, () => JSX.Element>} */\n  const scoped = {};\n  libraryIds.forEach(libraryId => {\n    const prefix = `divi-supreme/${libraryId}/`;\n    Object.entries(entries).forEach(([key, component]) => {\n      if (key.startsWith(prefix)) {\n        scoped[key] = component;\n      }\n    });\n  });\n  return scoped;\n}\n\n/**\n * Ensure icon.map has a preview entry for a single icon (canvas / settings).\n *\n * @param {string} libraryId Library slug.\n * @param {string} iconId    Icon slug.\n * @param {string} [variant] Variant slug.\n * @return {void}\n */\nfunction ensureIconMapEntryForIcon(libraryId, iconId, variant = '') {\n  if (!libraryId || !iconId || !isWebfontPickerLibrary(libraryId)) {\n    return;\n  }\n  const entries = getLazyIconMapEntries();\n  const key = buildIconMapKey(libraryId, iconId);\n  if (!entries[key]) {\n    entries[key] = createFontPreviewComponent(libraryId, iconId, variant);\n  }\n}\n;// ./packages/extensions/icon-libraries/module-icon-host.js\nfunction _extends() {\n  return _extends = Object.assign ? Object.assign.bind() : function (n) {\n    for (var e = 1; e < arguments.length; e++) {\n      var t = arguments[e];\n      for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n    }\n    return n;\n  }, _extends.apply(null, arguments);\n}\n/**\n * Declarative VB icon host — DSM webfont glyph or empty native host for pseudo CSS.\n *\n * Most modules render native Divi/FA icons via `::before` / `::after` CSS; use the default\n * `nativeRender=\"pseudo\"` mode. Card, Icon Divider, and Flipbox use inline text glyphs.\n *\n * @package DiviSupreme\n */\n\n\n\n\n\n\n\n\n/**\n * @param {Record<string, unknown>|null|undefined} icon Icon picker leaf.\n * @return {Record<string, string>}\n */\nfunction buildIconDataAttributes(icon) {\n  var _icon$type, _icon$unicode, _icon$variant;\n  /** @type {Record<string, string>} */\n  const attrs = {\n    'data-dsm-icon-type': String((_icon$type = icon?.type) !== null && _icon$type !== void 0 ? _icon$type : ''),\n    'data-dsm-icon-id': String((_icon$unicode = icon?.unicode) !== null && _icon$unicode !== void 0 ? _icon$unicode : '')\n  };\n  const variant = String((_icon$variant = icon?.variant) !== null && _icon$variant !== void 0 ? _icon$variant : '').trim();\n  if (variant) {\n    attrs['data-dsm-icon-variant'] = variant;\n  }\n  return attrs;\n}\n\n/**\n * @param {Record<string, unknown>|null|undefined} icon Icon picker leaf.\n * @return {string}\n */\nfunction getNativeFontFamily(icon) {\n  var _icon$type2;\n  const type = String((_icon$type2 = icon?.type) !== null && _icon$type2 !== void 0 ? _icon$type2 : 'divi');\n  return 'fa' === type ? 'FontAwesome' : 'ETmodules';\n}\n\n/**\n * @param {object} props\n * @param {Record<string, unknown>|null|undefined} props.icon         Icon picker leaf.\n * @param {string}                             [props.className]   Module-specific host class.\n * @param {'pseudo'|'inline'}                  [props.nativeRender] Native icon output mode.\n * @return {import('react').JSX.Element}\n */\nfunction ModuleIconHost({\n  icon,\n  className = '',\n  nativeRender = 'pseudo'\n}) {\n  var _dsmIcon$type, _dsmIcon$unicode, _dsmIcon$variant;\n  const dsmIcon = isDsmIcon(icon) ? icon : null;\n  const nativeIcon = !dsmIcon && icon && typeof icon === 'object' && icon.unicode ? icon : null;\n  const hostClasses = (0,external_window_vendor_wp_element_namespaceObject.useMemo)(() => ['et-pb-icon', className, dsmIcon ? 'dsm-webfont-icon-host' : ''].filter(Boolean).join(' '), [className, dsmIcon]);\n  const libraryId = String((_dsmIcon$type = dsmIcon?.type) !== null && _dsmIcon$type !== void 0 ? _dsmIcon$type : '');\n  const iconId = String((_dsmIcon$unicode = dsmIcon?.unicode) !== null && _dsmIcon$unicode !== void 0 ? _dsmIcon$unicode : '');\n  const variant = String((_dsmIcon$variant = dsmIcon?.variant) !== null && _dsmIcon$variant !== void 0 ? _dsmIcon$variant : '');\n  (0,external_window_vendor_wp_element_namespaceObject.useEffect)(() => {\n    if (dsmIcon && libraryId) {\n      void ensurePickerWebfontsLoaded(libraryId);\n      ensureIconMapEntryForIcon(libraryId, iconId, variant);\n    }\n  }, [dsmIcon, libraryId, iconId, variant]);\n  if (dsmIcon) {\n    const fontClass = getPickerFontClass(libraryId, iconId, variant);\n    return /*#__PURE__*/React.createElement(\"span\", _extends({\n      className: hostClasses,\n      \"aria-hidden\": \"true\"\n    }, buildIconDataAttributes(dsmIcon)), fontClass ? /*#__PURE__*/React.createElement(\"i\", {\n      className: `${fontClass} dsm-webfont-icon-glyph`,\n      \"aria-hidden\": \"true\"\n    }) : null);\n  }\n  if (nativeIcon && 'inline' === nativeRender) {\n    var _nativeIcon$weight;\n    const glyph = (0,external_divi_iconLibrary_namespaceObject.processFontIcon)(nativeIcon);\n    const fontFamily = getNativeFontFamily(nativeIcon);\n    const fontWeight = String((_nativeIcon$weight = nativeIcon.weight) !== null && _nativeIcon$weight !== void 0 ? _nativeIcon$weight : '400');\n    if (glyph) {\n      return /*#__PURE__*/React.createElement(\"span\", {\n        className: hostClasses,\n        \"aria-hidden\": \"true\",\n        style: {\n          fontFamily: `'${fontFamily}'`,\n          fontStyle: 'normal',\n          fontWeight\n        }\n      }, glyph);\n    }\n  }\n  return /*#__PURE__*/React.createElement(\"span\", {\n    className: hostClasses,\n    \"aria-hidden\": \"true\"\n  });\n}\n;// ./packages/module-library/breadcrumbs/edit.js\nfunction edit_extends() {\n  return edit_extends = Object.assign ? Object.assign.bind() : function (n) {\n    for (var e = 1; e < arguments.length; e++) {\n      var t = arguments[e];\n      for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n    }\n    return n;\n  }, edit_extends.apply(null, arguments);\n}\n\n\n\n// Divi package dependencies.\n\n\n\n\n\n\n/**\n * Site title for VB preview when \"Show Custom Home\" is off (matches frontend blog name).\n *\n * @return {string}\n */\nfunction getPreviewSiteTitle() {\n  if (typeof window === 'undefined') {\n    return '';\n  }\n  try {\n    const title = window.wp?.data?.select('core')?.getSite?.()?.title;\n    if (title && typeof title === 'string') {\n      return title;\n    }\n  } catch (e) {\n    // Non-editor context: ignore.\n  }\n  return '';\n}\n\n/**\n * Normalize post title from core/editor getCurrentPost() shape (string or rich object).\n *\n * @param {Object} post Post object.\n * @return {string}\n */\nfunction readPostTitleString(post) {\n  if (!post || typeof post !== 'object') {\n    return '';\n  }\n  if (typeof post.title === 'string' && post.title.trim() !== '') {\n    return post.title.trim();\n  }\n  if (post.title?.rendered) {\n    const raw = String(post.title.rendered).replace(/<[^>]+>/g, '');\n    return raw.trim();\n  }\n  if (post.title?.raw) {\n    return String(post.title.raw).trim();\n  }\n  return '';\n}\n\n/**\n * Resolve wp.data.select from this window or parent (VB iframe).\n *\n * @return {Function|null}\n */\nfunction getWpDataSelect() {\n  if (typeof window === 'undefined') {\n    return null;\n  }\n  const local = window.wp?.data?.select;\n  if (typeof local === 'function') {\n    return local;\n  }\n  try {\n    if (window.parent && window.parent !== window && typeof window.parent.wp?.data?.select === 'function') {\n      return window.parent.wp.data.select;\n    }\n  } catch (e) {\n    // Cross-origin parent: ignore.\n  }\n  return null;\n}\n\n/**\n * Title for the current crumb in the VB: prefer edited post title (matches frontend PHP),\n * not `document.title` (often the site name in the builder iframe).\n *\n * @param {string} segmentFallback Last path segment, title-cased (e.g. from slug).\n * @return {string}\n */\nfunction getVisualBuilderCurrentCrumbTitle(segmentFallback) {\n  if (typeof window === 'undefined') {\n    return segmentFallback;\n  }\n  try {\n    const select = getWpDataSelect();\n    if (!select) {\n      return segmentFallback;\n    }\n    const editorSelect = select('core/editor');\n    if (editorSelect) {\n      if (typeof editorSelect.getEditedPostAttribute === 'function') {\n        const edited = editorSelect.getEditedPostAttribute('title');\n        if (typeof edited === 'string' && edited.trim() !== '') {\n          return edited.trim();\n        }\n      }\n      if (typeof editorSelect.getCurrentPost === 'function') {\n        const post = editorSelect.getCurrentPost();\n        const fromPost = readPostTitleString(post);\n        if (fromPost !== '') {\n          return fromPost;\n        }\n      }\n    }\n  } catch (e) {\n    // Builder without block editor store: use fallback.\n  }\n  return segmentFallback;\n}\n\n/**\n * React function component for registering module script data.\n */\nconst breadcrumbs_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction breadcrumbs_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _getAttrByMode4, _getAttrByMode5, _getAttrByMode6, _getAttrByMode7;\n  const showHome = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_home?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'on';\n  const useCustomHome = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_custom_home_url_link?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'off';\n  const homeUrlCustom = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.home_url_link?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : '';\n  const homeNewWindow = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.home_url_link_new_window?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : 'off';\n  const showSeparator = (_getAttrByMode5 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_separator?.innerContent)) !== null && _getAttrByMode5 !== void 0 ? _getAttrByMode5 : 'on';\n  const showHomeIcon = (_getAttrByMode6 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_home_icon?.innerContent)) !== null && _getAttrByMode6 !== void 0 ? _getAttrByMode6 : 'on';\n  const homeIcon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.home_icon?.innerContent);\n  const separatorIcon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.separator_icon?.innerContent);\n  const enableSchema = (_getAttrByMode7 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.enable_schema_markup?.innerContent)) !== null && _getAttrByMode7 !== void 0 ? _getAttrByMode7 : 'on';\n  const homeLinkHref = 'on' === useCustomHome && homeUrlCustom ? homeUrlCustom : '/';\n  const homeLinkTarget = 'on' === homeNewWindow ? '_blank' : '_self';\n  const currentPath = window.location.pathname;\n  const pathSegments = currentPath.split('/').filter(segment => segment);\n  const capitalizeSegment = segment => {\n    return segment.replace(/-/g, ' ').split(' ').map(word => word.charAt(0).toUpperCase() + word.slice(1)).join(' ');\n  };\n  const renderBreadcrumbs = () => {\n    const items = [];\n    const schemaOn = 'on' === enableSchema;\n    const listItemSchemaProps = schemaOn ? {\n      itemProp: 'itemListElement',\n      itemScope: true,\n      itemType: 'https://schema.org/ListItem'\n    } : {};\n    items.push(/*#__PURE__*/external_vendor_React_default().createElement(\"li\", edit_extends({\n      key: \"home\",\n      className: 'on' === showHome ? 'dsm_breadcrumbs_item dsm_home_item dsm_home_item_custom' : 'dsm_breadcrumbs_item dsm_home_item dsm_home_item_default'\n    }, listItemSchemaProps), /*#__PURE__*/external_vendor_React_default().createElement(\"a\", edit_extends({\n      href: homeLinkHref\n    }, schemaOn ? {\n      itemProp: 'item'\n    } : {}, {\n      target: homeLinkTarget,\n      rel: '_blank' === homeLinkTarget ? 'noopener noreferrer' : undefined\n    }), /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n      className: \"dsm_home_text_wrapper\"\n    }, 'on' === showHomeIcon && /*#__PURE__*/external_vendor_React_default().createElement(ModuleIconHost, {\n      icon: homeIcon,\n      className: \"dsm_home_icon\"\n    }), /*#__PURE__*/external_vendor_React_default().createElement(\"span\", edit_extends({\n      className: \"dsm_home_text\"\n    }, schemaOn ? {\n      itemProp: 'name'\n    } : {}), 'on' === showHome ? elements.render({\n      attrName: 'home_text'\n    }) : getPreviewSiteTitle() || (0,external_window_vendor_wp_i18n_namespaceObject.__)('Site', 'dsm-supreme-modules-pro-for-divi')))), schemaOn && /*#__PURE__*/external_vendor_React_default().createElement(\"meta\", {\n      itemProp: \"position\",\n      content: \"1\"\n    })));\n    if ('on' === showSeparator && pathSegments.length > 0) {\n      items.push(/*#__PURE__*/external_vendor_React_default().createElement(\"li\", {\n        key: \"home-separator\",\n        className: \"dsm_breadcrumbs_separator\",\n        \"aria-hidden\": \"true\"\n      }, /*#__PURE__*/external_vendor_React_default().createElement(ModuleIconHost, {\n        icon: separatorIcon,\n        className: \"dsm_separator_icon\"\n      })));\n    }\n    let cumulativePath = '';\n    pathSegments.forEach((segment, index) => {\n      cumulativePath += '/' + segment;\n      const title = capitalizeSegment(segment);\n      if (index < pathSegments.length - 1) {\n        const listPosition = String(index + 2);\n        items.push(/*#__PURE__*/external_vendor_React_default().createElement(\"li\", edit_extends({\n          key: `parent-${index}`,\n          className: \"dsm_breadcrumbs_item dsm_parent_item\"\n        }, listItemSchemaProps), /*#__PURE__*/external_vendor_React_default().createElement(\"a\", edit_extends({\n          href: cumulativePath\n        }, schemaOn ? {\n          itemProp: 'item'\n        } : {}), /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n          className: \"dsm_home_text_wrapper\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", edit_extends({\n          className: \"dsm_home_text\"\n        }, schemaOn ? {\n          itemProp: 'name'\n        } : {}), title))), schemaOn && /*#__PURE__*/external_vendor_React_default().createElement(\"meta\", {\n          itemProp: \"position\",\n          content: listPosition\n        })));\n        if ('on' === showSeparator) {\n          items.push(/*#__PURE__*/external_vendor_React_default().createElement(\"li\", {\n            key: `parent-separator-${index}`,\n            className: \"dsm_breadcrumbs_separator\",\n            \"aria-hidden\": \"true\"\n          }, /*#__PURE__*/external_vendor_React_default().createElement(ModuleIconHost, {\n            icon: separatorIcon,\n            className: \"dsm_separator_icon\"\n          })));\n        }\n      } else {\n        const segmentTitle = capitalizeSegment(segment);\n        const currentCrumbTitle = getVisualBuilderCurrentCrumbTitle(segmentTitle);\n        const currentPosition = String(pathSegments.length + 1);\n        items.push(/*#__PURE__*/external_vendor_React_default().createElement(\"li\", edit_extends({\n          key: \"current\",\n          className: \"dsm_breadcrumbs_item dsm_breadcrumbs_item_current\"\n        }, listItemSchemaProps), /*#__PURE__*/external_vendor_React_default().createElement(\"span\", edit_extends({\n          className: \"dsm_breadcrumbs_crumb dsm_breadcrumbs_crumb_current\"\n        }, schemaOn ? {\n          itemProp: 'name'\n        } : {}), currentCrumbTitle), schemaOn && /*#__PURE__*/external_vendor_React_default().createElement(\"meta\", {\n          itemProp: \"position\",\n          content: currentPosition\n        })));\n      }\n    });\n    return items;\n  };\n  const isHomeIconEmpty = (0,lodash.isEmpty)(homeIcon) ? 'dsm-home-icon-empty' : '';\n  const isSeparatorIconEmpty = (0,lodash.isEmpty)(separatorIcon) ? 'dsm-seprator-icon-empty' : '';\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: breadcrumbs_edit_ModuleScriptData,\n    stylesComponent: breadcrumbs_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"nav\", {\n    className: \"dsm_breadcrumbs_wrap\",\n    role: \"navigation\",\n    \"aria-label\": (0,external_window_vendor_wp_i18n_namespaceObject.__)('Breadcrumb', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"ul\", edit_extends({\n    className: `dsm_breadcrumbs ${isHomeIconEmpty} ${isSeparatorIconEmpty}`\n  }, 'on' === enableSchema ? {\n    itemScope: true,\n    itemType: 'https://schema.org/BreadcrumbList'\n  } : {}), renderBreadcrumbs())));\n}\n/* harmony default export */ const breadcrumbs_edit = (breadcrumbs_edit_Edit);\n;// ./packages/module-library/breadcrumbs/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmBreadcrumbs', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/breadcrumbs': {\n      name: 'divi-supreme/breadcrumbs',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 1.90625 8.441406 C 1.460938 8.441406 1.066406 8.050781 1.066406 7.601562 C 1.066406 7.152344 1.460938 6.761719 1.90625 6.761719 C 2.355469 6.761719 2.75 7.152344 2.75 7.601562 C 2.75 8.050781 2.355469 8.441406 1.90625 8.441406 Z M 1.90625 7.207031 C 1.683594 7.207031 1.515625 7.375 1.515625 7.601562 C 1.515625 7.824219 1.683594 7.992188 1.90625 7.992188 C 2.132812 7.992188 2.300781 7.824219 2.300781 7.601562 C 2.300781 7.375 2.132812 7.207031 1.90625 7.207031 Z M 1.90625 7.207031 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 13.738281 12.703125 C 13.289062 12.703125 12.894531 12.308594 12.894531 11.859375 C 12.894531 11.414062 13.289062 11.019531 13.738281 11.019531 C 14.183594 11.019531 14.578125 11.414062 14.578125 11.859375 C 14.632812 12.308594 14.242188 12.703125 13.738281 12.703125 Z M 13.738281 11.46875 C 13.511719 11.46875 13.34375 11.636719 13.34375 11.859375 C 13.34375 12.085938 13.511719 12.253906 13.738281 12.253906 C 13.960938 12.253906 14.128906 12.085938 14.128906 11.859375 C 14.128906 11.636719 13.960938 11.46875 13.738281 11.46875 Z M 13.738281 11.46875 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.894531 7.601562 L 10.484375 3.734375 L 8.691406 3.734375 L 11.15625 7.601562 Z M 12.894531 7.601562 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.15625 7.601562 L 8.691406 11.46875 L 10.484375 11.46875 L 12.894531 7.601562 Z M 11.15625 7.601562 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 7.457031 7.601562 L 8.800781 7.601562 L 6.390625 3.734375 L 4.652344 3.734375 L 4.652344 11.46875 L 6.390625 11.46875 L 8.800781 7.601562 Z M 7.457031 7.601562 \"\n      }))\n    }\n  };\n});\n;// external [\"divi\",\"conversion\"]\nconst external_divi_conversion_namespaceObject = divi.conversion;\n;// ./packages/module-library/breadcrumbs/conversion-outline.js\n\n\nconst breadcrumbs_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border',\n      items: 'items_style.decoration.border',\n      separators: 'separator_style.decoration.border',\n      current: 'current_style.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow',\n      items: 'items_style.decoration.boxShadow',\n      separators: 'separator_style.decoration.boxShadow',\n      current: 'current_style.decoration.boxShadow'\n    },\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    fonts: {\n      items: 'home_items.decoration.font',\n      home_icon: 'home_icon_size.decoration.font',\n      separators: 'separators.decoration.font',\n      current: 'current_text.decoration.font'\n    },\n    margin_padding: 'module.decoration.spacing',\n    link_options: 'module.advanced.link'\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    show_home: 'show_home.innerContent.*',\n    home_text: 'home_text.innerContent.*',\n    use_custom_home_url_link: 'use_custom_home_url_link.innerContent.*',\n    home_url_link: 'home_url_link.innerContent.*',\n    home_url_link_new_window: 'home_url_link_new_window.innerContent.*',\n    show_home_icon: 'show_home_icon.innerContent.*',\n    home_icon: 'home_icon.innerContent.*',\n    show_separator: 'show_separator.innerContent.*',\n    separator_icon: 'separator_icon.innerContent.*',\n    enable_schema_markup: 'enable_schema_markup.innerContent.*',\n    align: 'align.innerContent.*',\n    items_bg_color: 'items_bg_color.innerContent.*',\n    items_bottom: 'items_bottom.innerContent.*',\n    separator_bg_color: 'separator_bg_color.innerContent.*',\n    separator_bottom: 'separator_bottom.innerContent.*',\n    current_bg_color: 'current_bg_color.innerContent.*',\n    current_bottom: 'current_bottom.innerContent.*',\n    items_padding: 'items_padding.decoration.spacing.*.padding',\n    separator_padding: 'separator_padding.decoration.spacing.*.padding',\n    current_padding: 'current_padding.decoration.spacing.*.padding',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    home_icon: external_divi_conversion_namespaceObject.convertFontIcon,\n    separator_icon: external_divi_conversion_namespaceObject.convertFontIcon,\n    items_padding: external_divi_module_namespaceObject.convertSpacing,\n    separator_padding: external_divi_module_namespaceObject.convertSpacing,\n    current_padding: external_divi_module_namespaceObject.convertSpacing,\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/breadcrumbs/index.js\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\nconst breadcrumbsModule = {\n  metadata: breadcrumbs_module_namespaceObject,\n  conversionOutline: breadcrumbs_conversion_outline_conversionOutline,\n  renderers: {\n    edit: breadcrumbs_edit,\n    styles: breadcrumbs_module_styles_ModuleStyles\n  },\n  defaultAttrs: {\n    ...breadcrumbs_module_default_render_attributes_namespaceObject\n  },\n  settings: {\n    content: breadcrumbs_settings_content,\n    design: breadcrumbs_settings_design,\n    advanced: breadcrumbs_settings_advanced\n  },\n  placeholderContent: {\n    ...breadcrumbs_module_default_render_attributes_namespaceObject,\n    module: {\n      decoration: {}\n    }\n  }\n};\n/* harmony default export */ const breadcrumbs = (breadcrumbsModule);\n;// ./packages/module-library/block-reveal-image/module.json\nconst block_reveal_image_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/block-reveal-image\",\"d4Shortcode\":\"dsm_block_reveal_image\",\"title\":\"Supreme Block Reveal Image\",\"titles\":\"Supreme Block Reveal Images\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/block-reveal-image\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}},\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .et_pb_image_wrap\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .et_pb_image_wrap\",\"useOverlay\":true}},\"default\":{\"advanced\":{\"text\":{\"text\":{\"desktop\":{\"value\":{\"color\":\"light\"}}}}}}},\"src\":{\"type\":\"object\",\"inlineEditor\":\"UploadContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"show_in_lightbox\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"show_lightbox_other_img\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"show_lightbox_other_img_src\":{\"type\":\"object\",\"inlineEditor\":\"UploadContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"lightbox_close_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"lightbox_max_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"url\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"url_new_window\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_video_popup\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_overlay\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"hover_overlay_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_icon\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"overlay_icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"hover_icon\":{\"type\":\"object\",\"inlineEditor\":\"IconPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"overlay_on_hover\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"align\":{\"type\":\"object\",\"inlineEditor\":\"ButtonAlignmentContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"force_fullwidth\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"block_reveal_animation\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"lr\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"block_reveal_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"#7ebec5\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"block_reveal_delay\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"0.1\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"block_reveal_viewport\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"80%\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"overlay\":{\"type\":\"object\",\"selector\":\"{{selector}} .et_overlay\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .et_overlay\",\"important\":true}}},\"css\":{\"type\":\"object\",\"inlineEditor\":\"codemirror\",\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/block-reveal-image/module-default-render-attributes.json\nconst block_reveal_image_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"module\":{\"decoration\":{},\"advanced\":{\"text\":{\"text\":{\"desktop\":{\"value\":{\"color\":\"light\"}}}}}},\"src\":{\"innerContent\":{\"desktop\":{\"value\":{\"src\":\"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTA4MCIgaGVpZ2h0PSI1NDAiIHZpZXdCb3g9IjAgMCAxMDgwIDU0MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPHBhdGggZmlsbD0iI0VCRUJFQiIgZD0iTTAgMGgxMDgwdjU0MEgweiIvPgogICAgICAgIDxwYXRoIGQ9Ik00NDUuNjQ5IDU0MGgtOTguOTk1TDE0NC42NDkgMzM3Ljk5NSAwIDQ4Mi42NDR2LTk4Ljk5NWwxMTYuMzY1LTExNi4zNjVjMTUuNjItMTUuNjIgNDAuOTQ3LTE1LjYyIDU2LjU2OCAwTDQ0NS42NSA1NDB6IiBmaWxsLW9wYWNpdHk9Ii4xIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgICAgICA8Y2lyY2xlIGZpbGwtb3BhY2l0eT0iLjA1IiBmaWxsPSIjMDAwIiBjeD0iMzMxIiBjeT0iMTQ4IiByPSI3MCIvPgogICAgICAgIDxwYXRoIGQ9Ik0xMDgwIDM3OXYxMTMuMTM3TDcyOC4xNjIgMTQwLjMgMzI4LjQ2MiA1NDBIMjE1LjMyNEw2OTkuODc4IDU1LjQ0NmMxNS42Mi0xNS42MiA0MC45NDgtMTUuNjIgNTYuNTY4IDBMMTA4MCAzNzl6IiBmaWxsLW9wYWNpdHk9Ii4yIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgIDwvZz4KPC9zdmc+Cg==\"}}}},\"show_in_lightbox\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"show_lightbox_other_img\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"show_lightbox_other_img_src\":{\"innerContent\":{\"desktop\":{\"value\":{\"src\":\"\"}}}},\"lightbox_close_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"lightbox_max_width\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"url\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"url_new_window\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"use_video_popup\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"use_overlay\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"hover_overlay_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"use_icon\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"overlay_icon_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"hover_icon\":{\"innerContent\":{\"desktop\":{\"value\":{}}}},\"overlay_on_hover\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"align\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"force_fullwidth\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"block_reveal_animation\":{\"innerContent\":{\"desktop\":{\"value\":\"lr\"}}},\"block_reveal_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#7ebec5\"}}},\"block_reveal_delay\":{\"innerContent\":{\"desktop\":{\"value\":\"0.1\"}}},\"block_reveal_viewport\":{\"innerContent\":{\"desktop\":{\"value\":\"80%\"}}}}');\n;// ./packages/module-library/block-reveal-image/block-reveal-image-vb-default-attrs.js\n\nconst sliceInner = key => {\n  var _defaultRenderAttribu;\n  return (_defaultRenderAttribu = block_reveal_image_module_default_render_attributes_namespaceObject[key]?.innerContent) !== null && _defaultRenderAttribu !== void 0 ? _defaultRenderAttribu : undefined;\n};\n\n/**\n * Defaults for FieldContainer `defaultAttr` (mirror `module-default-render-attributes.json`).\n */\nconst blockRevealImageFieldDefaultInnerContent = Object.fromEntries(Object.keys(block_reveal_image_module_default_render_attributes_namespaceObject).filter(k => k !== 'module').map(k => [k, sliceInner(k)]));\n\n/** @type {typeof blockRevealImageFieldDefaultInnerContent} */\nconst blockRevealImageFd = blockRevealImageFieldDefaultInnerContent;\n;// ./packages/module-library/block-reveal-image/settings-content.js\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\n\nfunction block_reveal_image_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  const fd = blockRevealImageFd;\n  const showInLightbox = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_in_lightbox?.innerContent);\n  const showInOtherLightboxImage = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_lightbox_other_img?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"src.innerContent\",\n    subName: \"src\",\n    defaultAttr: fd.src,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"link\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Link', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"show_in_lightbox.innerContent\",\n    defaultAttr: fd.show_in_lightbox,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Open in Lightbox', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"show_lightbox_other_img.innerContent\",\n    defaultAttr: fd.show_lightbox_other_img,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Other Lightbox Image', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === showInLightbox\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"show_lightbox_other_img_src.innerContent\",\n    subName: \"src\",\n    defaultAttr: fd.show_lightbox_other_img_src,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === showInLightbox && 'on' === showInOtherLightboxImage\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"url.innerContent\",\n    defaultAttr: fd.url,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Link Url', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'off' === showInLightbox\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"url_new_window.innerContent\",\n    defaultAttr: fd.url_new_window,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Link Target', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', ''),\n    visible: 'off' === showInLightbox\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      off: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The Same Window', 'dsm-supreme-modules-pro-for-divi')\n      },\n      on: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The New Tab', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_video_popup.innerContent\",\n    defaultAttr: fd.use_video_popup,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use as Video Popup', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', ''),\n    visible: 'off' === showInLightbox\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"block_reveal_animation\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Block Reveal Animation', 'dsm-supreme-modules-pro-for-divi'),\n    preset: \"content\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"block_reveal_animation.innerContent\",\n    defaultAttr: fd.block_reveal_animation,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Block Reveal Animation', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', '')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      lr: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left to Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rl: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right to Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      tb: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top to Bottom', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bt: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom to Top', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"block_reveal_color.innerContent\",\n    defaultAttr: fd.block_reveal_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Block Reveal Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', '')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"block_reveal_delay.innerContent\",\n    defaultAttr: fd.block_reveal_delay,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Delay', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', '')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 5,\n    step: 0.1,\n    defaultUnit: '',\n    allowedUnits: ['']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"block_reveal_viewport.innerContent\",\n    defaultAttr: fd.block_reveal_viewport,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animate in Viewport', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', '')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: '%',\n    allowedUnits: ['%']\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const block_reveal_image_settings_content = (block_reveal_image_settings_content_SettingsContent);\n;// ./packages/module-library/block-reveal-image/settings-design.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\nfunction block_reveal_image_settings_design_SettingsDesign({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  const useOverlay = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_overlay?.innerContent);\n  const useIcon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_icon?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"overlay\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay', 'dsm-supreme-modules-pro-for-divi'),\n    preset: \"content\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_overlay.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Overlay', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', '')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"hover_overlay_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', ''),\n    visible: 'on' === useOverlay\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Icon', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', ''),\n    visible: 'on' === useOverlay\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"overlay_icon_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay Icon Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', ''),\n    visible: 'on' === useOverlay && 'on' === useIcon\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"hover_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Picker', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', ''),\n    visible: 'on' === useOverlay && 'on' === useIcon\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"overlay_on_hover.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Overlay On Hover', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', ''),\n    visible: 'on' === useOverlay\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    grouped: false,\n    attrName: \"overlay.decoration.border\",\n    visible: 'on' === useOverlay\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"alignment\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Alignment', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"align.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', '')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"lightbox\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Lightbox', 'dsm-supreme-modules-pro-for-divi'),\n    preset: \"content\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"lightbox_close_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Close Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', '')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"lightbox_max_width.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Max Width', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', '')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 100,\n    max: 1200,\n    defaultUnit: 'px'\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const block_reveal_image_settings_design = (block_reveal_image_settings_design_SettingsDesign);\n;// ./packages/module-library/block-reveal-image/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction block_reveal_image_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_block_reveal_image\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const block_reveal_image_settings_advanced = (block_reveal_image_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/block-reveal-image/module-styles.js\n\n\n\n\n\n/**\n * React function component for rendering module style.\n */\n\nconst module_styles_iconFontCss = buildLegacyPseudoIconFontCss;\nconst block_reveal_image_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  var _attrs$align$innerCon;\n  const blockRevealImageAlignInner = (_attrs$align$innerCon = attrs?.align?.innerContent) !== null && _attrs$align$innerCon !== void 0 ? _attrs$align$innerCon : attrs?.module?.advanced?.align;\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'overlay'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et_pb_inline_icon::before`,\n    attr: attrs?.hover_icon?.innerContent,\n    declarationFunction: module_styles_iconFontCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_block_reveal_image_wrapper .dsm_block_image_reveal `,\n    attr: attrs?.block_reveal_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_block_reveal_image_wrapper .dsm_block_image_reveal_front `,\n    attr: attrs?.block_reveal_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_block_reveal_image_wrapper .et_overlay `,\n    attr: attrs?.hover_overlay_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et_pb_inline_icon::before`,\n    attr: attrs?.overlay_icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm-lightbox-custom .mfp-close `,\n    attr: attrs?.lightbox_close_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm-lightbox-custom .mfp-content `,\n    attr: attrs?.lightbox_max_width?.innerContent,\n    property: \"max-width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_block_reveal_image_wrapper`,\n    attr: blockRevealImageAlignInner,\n    property: \"text-align\"\n  }));\n};\n;// ./packages/components/dynamic-wrapper/index.js\n\n\nconst DynamicDataWrapper = ({\n  value,\n  children\n}) => {\n  const {\n    resolvedValue,\n    isDynamic\n  } = (0,external_divi_dynamicData_namespaceObject.useDynamicData)(value);\n  const finalValue = isDynamic ? resolvedValue : value;\n  if (typeof children === 'function') {\n    return children(finalValue);\n  }\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, finalValue);\n};\n/* harmony default export */ const dynamic_wrapper = (DynamicDataWrapper);\n;// ./packages/module-library/block-reveal-image/edit.js\nfunction block_reveal_image_edit_extends() {\n  return block_reveal_image_edit_extends = Object.assign ? Object.assign.bind() : function (n) {\n    for (var e = 1; e < arguments.length; e++) {\n      var t = arguments[e];\n      for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n    }\n    return n;\n  }, block_reveal_image_edit_extends.apply(null, arguments);\n}\n\n\n// Divi package dependencies.\n\n\n\n\n// Custom dependencies.\n\n\n\n/**\n * @param {*} value Attr fragment for a stable React key.\n * @return {string}\n */\nfunction blockRevealKeyPart(value) {\n  if (value === null || value === undefined) {\n    return '';\n  }\n  if (typeof value === 'object') {\n    try {\n      return JSON.stringify(value);\n    } catch {\n      return '';\n    }\n  }\n  return String(value);\n}\nconst BLOCK_REVEAL_ANIMATIONS = new Set(['lr', 'rl', 'tb', 'bt']);\n\n/**\n * @param {*} raw From getAttrByMode( attrs.src.innerContent ).\n * @return {string}\n */\nfunction edit_getUploadValueForDynamicData(raw) {\n  if (raw == null || raw === '') {\n    return '';\n  }\n  if (typeof raw === 'string' || typeof raw === 'number') {\n    return String(raw);\n  }\n  if (typeof raw === 'object') {\n    if (typeof raw.src === 'string' && raw.src !== '') {\n      return raw.src;\n    }\n    if (typeof raw.url === 'string' && raw.url !== '') {\n      return raw.url;\n    }\n  }\n  return '';\n}\n\n/**\n * React function component for registering module script data.\n */\nconst block_reveal_image_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction block_reveal_image_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  var _attrs$src$innerConte, _attrs$src$innerConte2;\n  const url = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.url?.innerContent);\n  const useOverlay = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_overlay?.innerContent);\n  const overlayOnHover = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.overlay_on_hover?.innerContent);\n  const showInLightbox = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_in_lightbox?.innerContent);\n  const useVideoPopup = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_video_popup?.innerContent);\n  const showLightboxOtherImg = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_lightbox_other_img?.innerContent);\n  const showLightboxOtherImgSrcRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_lightbox_other_img_src?.innerContent);\n  const showLightboxOtherImgSrc = edit_getUploadValueForDynamicData(showLightboxOtherImgSrcRaw);\n  const imageUrl = edit_getUploadValueForDynamicData((0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.src?.innerContent));\n  const blockRevealAnimationRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.block_reveal_animation?.innerContent) || 'lr';\n  const blockRevealAnimation = BLOCK_REVEAL_ANIMATIONS.has(blockRevealAnimationRaw) ? blockRevealAnimationRaw : 'lr';\n  const blockRevealColor = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.block_reveal_color?.innerContent) || '';\n  const blockRevealDelay = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.block_reveal_delay?.innerContent) || '0.1';\n  const blockRevealViewport = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.block_reveal_viewport?.innerContent) || '80%';\n  const revealDataAttrs = {\n    'data-dsm-block-reveal-animation': blockRevealAnimation,\n    'data-dsm-block-reveal-color': blockRevealColor,\n    'data-dsm-block-reveal-delay': blockRevealDelay,\n    'data-dsm-block-reveal-viewport': blockRevealViewport\n  };\n\n  /** Remount when reveal options, src, or link mode change (RevealFx mutates the wrap DOM). */\n  const blockRevealBuilderPreviewKey = `${String(id)}:${[blockRevealKeyPart(blockRevealAnimation), blockRevealKeyPart(blockRevealColor), blockRevealKeyPart(blockRevealDelay), blockRevealKeyPart(blockRevealViewport), blockRevealKeyPart(attrs?.src?.innerContent), blockRevealKeyPart(showInLightbox), blockRevealKeyPart(useVideoPopup)].join('|')}`;\n  const imageWrapRef = (0,external_vendor_React_.useRef)(null);\n  const imageWrapClasses = ['et_pb_image_wrap', `dsm_block_image_${blockRevealAnimation}`, `dsm_block_image_reveal_${blockRevealAnimation}`].join(' ');\n  (0,external_vendor_React_.useLayoutEffect)(() => {\n    const wrap = imageWrapRef.current;\n    if (!wrap || typeof window === 'undefined' || typeof window.dsmBlockRevealInitImageWrap !== 'function') {\n      return undefined;\n    }\n    return window.dsmBlockRevealInitImageWrap(wrap);\n  }, [blockRevealBuilderPreviewKey]);\n  const useIcon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_icon?.innerContent);\n  const isOverlay = 'on' === useOverlay ? 'et_pb_has_overlay' : '';\n  const isOverlayOnHover = 'on' === useOverlay && 'off' === overlayOnHover ? 'dsm_block_reveal_image_overlay_off' : '';\n  const outerWrapperClasses = ['dsm_block_reveal_image_wrapper', isOverlay, isOverlayOnHover].filter(Boolean).join(' ');\n  const isIcon = 'on' === useIcon ? 'et_pb_inline_icon' : 'dsm_block_reveal_image_icon_empty';\n  (0,external_vendor_React_.useEffect)(() => {\n    if (typeof jQuery === 'undefined' || !jQuery.fn.magnificPopup) {\n      return;\n    }\n    jQuery(function ($) {\n      const uniqueClass = `dsm_block_reveal_image_${id}`;\n      if ('on' === showInLightbox && 'off' === useVideoPopup) {\n        $('.dsm_block_reveal_image_wrapper').each(function () {\n          $(this).find('a.dsm-image-lightbox').magnificPopup({\n            type: 'image',\n            removalDelay: 500,\n            mainClass: 'mfp-fade',\n            items: {\n              src: 'off' === showLightboxOtherImg ? imageUrl : showLightboxOtherImgSrc\n            },\n            callbacks: {\n              open: function () {\n                this.container.addClass(uniqueClass + ' dsm-lightbox-custom');\n              }\n            }\n          });\n        });\n      }\n      if ('on' === useVideoPopup && 'off' === showInLightbox) {\n        $('.dsm_block_reveal_image_wrapper').each(function () {\n          $(this).find('a.dsm-video-lightbox').magnificPopup({\n            type: 'iframe',\n            removalDelay: 500,\n            iframe: {\n              markup: '<div class=\"mfp-iframe-scaler dsm-video-popup\">' + '<div class=\"mfp-close\"></div>' + '<iframe class=\"mfp-iframe\" frameborder=\"0\" allowfullscreen allow=\"autoplay\"></iframe>' + '</div>',\n              patterns: {\n                youtube: {\n                  index: 'youtube.com/',\n                  id: 'v=',\n                  src: '//www.youtube.com/embed/%id%?autoplay=1&rel=0'\n                },\n                youtu_be: {\n                  index: 'youtu.be',\n                  id: '/',\n                  src: '//www.youtube.com/embed/%id%?autoplay=1&rel=0'\n                },\n                vimeo: {\n                  index: 'vimeo.com/',\n                  id: '/',\n                  src: '//player.vimeo.com/video/%id%?autoplay=1'\n                },\n                dailymotion: {\n                  index: 'dailymotion.com',\n                  id: function (url) {\n                    var m = url.match(/^.+dailymotion.com\\/(video|hub)\\/([^_]+)[^#]*(#video=([^_&]+))?/);\n                    if (m !== null) {\n                      if (m[4] !== undefined) {\n                        return m[4];\n                      }\n                      return m[2];\n                    }\n                    return null;\n                  },\n                  src: 'https://www.dailymotion.com/embed/video/%id%'\n                }\n              },\n              srcAction: 'iframe_src'\n            },\n            mainClass: 'dsm-video-popup-wrap mfp-fade',\n            callbacks: {\n              open: function () {\n                this.container.addClass(uniqueClass + ' dsm-lightbox-custom');\n              }\n            }\n          });\n        });\n      }\n    });\n  }, [id, imageUrl, showInLightbox, useVideoPopup, showLightboxOtherImg, showLightboxOtherImgSrc]);\n  const renderWithOverlay = /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: `et_overlay  ${isIcon}`\n  });\n  const renderImageWithoutOutput = /*#__PURE__*/external_vendor_React_default().createElement(\"span\", block_reveal_image_edit_extends({\n    key: blockRevealBuilderPreviewKey,\n    ref: imageWrapRef,\n    className: imageWrapClasses\n  }, revealDataAttrs), /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: (_attrs$src$innerConte = attrs?.src?.innerContent?.desktop?.value) !== null && _attrs$src$innerConte !== void 0 ? _attrs$src$innerConte : imageUrl\n  }, resolvedImage => /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n    className: \"dsm_block_reveal_fe_preinit\",\n    style: {\n      opacity: 0\n    },\n    src: edit_getUploadValueForDynamicData(resolvedImage) || imageUrl,\n    alt: \"\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm_block_image_reveal\"\n  }), 'on' === useOverlay && renderWithOverlay);\n  const isShowImageLightbox = 'on' === showInLightbox && 'off' === useVideoPopup ? `dsm-image-lightbox` : '';\n  const isShowVideoLightbox = 'off' === showInLightbox && 'on' === useVideoPopup ? `dsm-video-lightbox` : '';\n  const renderImageOutputWithOverlay = /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n    href: url,\n    className: `${isShowVideoLightbox} ${isShowImageLightbox}`.trim()\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", block_reveal_image_edit_extends({\n    key: blockRevealBuilderPreviewKey,\n    ref: imageWrapRef,\n    className: imageWrapClasses\n  }, revealDataAttrs), /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: (_attrs$src$innerConte2 = attrs?.src?.innerContent?.desktop?.value) !== null && _attrs$src$innerConte2 !== void 0 ? _attrs$src$innerConte2 : imageUrl\n  }, resolvedImage => /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n    className: \"dsm_block_reveal_fe_preinit\",\n    style: {\n      opacity: 0\n    },\n    src: edit_getUploadValueForDynamicData(resolvedImage) || imageUrl,\n    alt: \"\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm_block_image_reveal\"\n  }), 'on' === useOverlay && renderWithOverlay));\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: block_reveal_image_edit_ModuleScriptData,\n    stylesComponent: block_reveal_image_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: outerWrapperClasses\n  }, 'off' === showInLightbox && 'off' === useVideoPopup && renderImageWithoutOutput, ('on' === showInLightbox || 'on' === useVideoPopup) && renderImageOutputWithOverlay));\n}\n/* harmony default export */ const block_reveal_image_edit = (block_reveal_image_edit_Edit);\n;// ./packages/module-library/block-reveal-image/conversion-outline.js\n\nconst block_reveal_image_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex'\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    src: 'src.innerContent.*.src',\n    show_in_lightbox: 'show_in_lightbox.innerContent.*',\n    show_lightbox_other_img: 'show_lightbox_other_img.innerContent.*',\n    show_lightbox_other_img_src: 'show_lightbox_other_img_src.innerContent.*.src',\n    lightbox_close_color: 'lightbox_close_color.innerContent.*',\n    lightbox_max_width: 'lightbox_max_width.innerContent.*',\n    url: 'url.innerContent.*',\n    url_new_window: 'url_new_window.innerContent.*',\n    use_video_popup: 'use_video_popup.innerContent.*',\n    use_overlay: 'use_overlay.innerContent.*',\n    hover_overlay_color: 'hover_overlay_color.innerContent.*',\n    use_icon: 'use_icon.innerContent.*',\n    overlay_icon_color: 'overlay_icon_color.innerContent.*',\n    hover_icon: 'hover_icon.innerContent.*',\n    overlay_on_hover: 'overlay_on_hover.innerContent.*',\n    // Match Divi Image (`et_pb_image`): D4 `align` migrates to `module.advanced.align`, not top-level `align`.\n    align: 'module.advanced.align.*',\n    force_fullwidth: 'force_fullwidth.innerContent.*',\n    block_reveal_animation: 'block_reveal_animation.innerContent.*',\n    block_reveal_color: 'block_reveal_color.innerContent.*',\n    block_reveal_delay: 'block_reveal_delay.innerContent.*',\n    block_reveal_viewport: 'block_reveal_viewport.innerContent.*',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/block-reveal-image/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmBlockRevealImage', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/block-reveal-image': {\n      name: 'divi-supreme/block-reveal-image',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 9.621094 8.128906 L 9.621094 10.949219 C 9.621094 11.316406 9.328125 11.609375 8.960938 11.609375 L 2.15625 11.609375 C 1.789062 11.609375 1.492188 11.316406 1.492188 10.949219 L 1.492188 6.914062 C 1.492188 6.546875 1.789062 6.253906 2.15625 6.253906 L 6.113281 6.253906 L 6.113281 5.824219 L 2.15625 5.824219 C 1.554688 5.824219 1.066406 6.3125 1.066406 6.914062 L 1.066406 10.949219 C 1.066406 11.546875 1.554688 12.03125 2.15625 12.03125 L 8.957031 12.03125 C 9.554688 12.03125 10.042969 11.542969 10.042969 10.949219 L 10.042969 8.128906 Z M 9.621094 8.128906 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 13.792969 8.339844 L 6.984375 8.339844 C 6.386719 8.339844 5.898438 7.851562 5.898438 7.25 L 5.898438 3.222656 C 5.898438 2.621094 6.386719 2.132812 6.984375 2.132812 L 13.785156 2.132812 C 14.386719 2.132812 14.867188 2.621094 14.867188 3.222656 L 14.867188 7.257812 C 14.875 7.855469 14.386719 8.339844 13.792969 8.339844 Z M 6.984375 2.5625 C 6.621094 2.5625 6.324219 2.855469 6.324219 3.222656 L 6.324219 7.257812 C 6.324219 7.625 6.621094 7.917969 6.984375 7.917969 L 13.785156 7.917969 C 14.152344 7.917969 14.445312 7.625 14.445312 7.257812 L 14.445312 3.222656 C 14.445312 2.855469 14.152344 2.5625 13.785156 2.5625 Z M 6.984375 2.5625 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 2.917969 5.308594 C 2.496094 5.308594 2.152344 4.964844 2.152344 4.542969 C 2.152344 4.121094 2.496094 3.777344 2.917969 3.777344 C 3.339844 3.777344 3.683594 4.113281 3.683594 4.535156 C 3.683594 4.964844 3.339844 5.308594 2.917969 5.308594 Z M 2.917969 4.199219 C 2.730469 4.199219 2.574219 4.355469 2.574219 4.542969 C 2.574219 4.730469 2.730469 4.886719 2.917969 4.886719 C 3.105469 4.886719 3.257812 4.726562 3.257812 4.535156 C 3.257812 4.347656 3.105469 4.199219 2.917969 4.199219 Z M 2.917969 4.199219 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 8.949219 14.085938 C 8.527344 14.085938 8.183594 13.742188 8.183594 13.320312 C 8.183594 12.898438 8.527344 12.554688 8.949219 12.554688 C 9.371094 12.554688 9.714844 12.898438 9.714844 13.320312 C 9.714844 13.742188 9.371094 14.085938 8.949219 14.085938 Z M 8.949219 12.980469 C 8.761719 12.980469 8.605469 13.136719 8.605469 13.324219 C 8.605469 13.511719 8.761719 13.667969 8.949219 13.667969 C 9.136719 13.667969 9.292969 13.511719 9.292969 13.324219 C 9.289062 13.128906 9.136719 12.980469 8.949219 12.980469 Z M 8.949219 12.980469 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.914062 5.175781 C 12.359375 5.175781 11.902344 4.71875 11.902344 4.164062 C 11.902344 3.609375 12.359375 3.15625 12.914062 3.15625 C 13.46875 3.15625 13.925781 3.609375 13.925781 4.164062 C 13.925781 4.71875 13.46875 5.175781 12.914062 5.175781 Z M 12.914062 3.582031 C 12.59375 3.582031 12.332031 3.84375 12.332031 4.164062 C 12.332031 4.488281 12.59375 4.75 12.914062 4.75 C 13.238281 4.75 13.496094 4.488281 13.496094 4.164062 C 13.496094 3.84375 13.238281 3.582031 12.914062 3.582031 Z M 12.914062 3.582031 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 13.414062 12.140625 L 12.015625 12.140625 L 12.015625 11.714844 C 12.09375 11.714844 12.121094 11.6875 12.125 11.683594 C 12.171875 11.636719 12.175781 11.539062 12.171875 11.503906 L 12.171875 10.28125 L 11.859375 10.28125 C 11.78125 10.28125 11.726562 10.308594 11.675781 10.367188 C 11.609375 10.445312 11.503906 10.472656 11.40625 10.433594 C 11.308594 10.398438 11.242188 10.304688 11.242188 10.199219 L 11.242188 9.207031 L 14.179688 9.207031 L 14.179688 10.199219 C 14.179688 10.300781 14.113281 10.394531 14.019531 10.433594 C 13.917969 10.472656 13.8125 10.445312 13.746094 10.367188 C 13.699219 10.308594 13.636719 10.28125 13.5625 10.28125 L 13.253906 10.28125 L 13.253906 11.503906 C 13.253906 11.542969 13.257812 11.636719 13.296875 11.683594 C 13.304688 11.691406 13.332031 11.714844 13.410156 11.714844 L 13.410156 12.140625 Z M 12.570312 11.714844 L 12.855469 11.714844 C 12.824219 11.609375 12.824219 11.515625 12.832031 11.476562 L 12.832031 9.855469 L 13.570312 9.855469 C 13.636719 9.855469 13.699219 9.867188 13.757812 9.882812 L 13.757812 9.632812 L 11.671875 9.632812 L 11.671875 9.882812 C 11.730469 9.867188 11.792969 9.855469 11.859375 9.855469 L 12.597656 9.855469 L 12.597656 11.476562 C 12.597656 11.515625 12.597656 11.609375 12.570312 11.714844 Z M 12.570312 11.714844 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/block-reveal-image/index.js\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\nconst blockRevealImageModule = {\n  metadata: block_reveal_image_module_namespaceObject,\n  conversionOutline: block_reveal_image_conversion_outline_conversionOutline,\n  defaultAttrs: {\n    ...block_reveal_image_module_default_render_attributes_namespaceObject\n  },\n  renderers: {\n    edit: block_reveal_image_edit,\n    styles: block_reveal_image_module_styles_ModuleStyles\n  },\n  settings: {\n    content: block_reveal_image_settings_content,\n    design: block_reveal_image_settings_design,\n    advanced: block_reveal_image_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    src: {\n      innerContent: {\n        desktop: {\n          value: {\n            src: 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTA4MCIgaGVpZ2h0PSI1NDAiIHZpZXdCb3g9IjAgMCAxMDgwIDU0MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPHBhdGggZmlsbD0iI0VCRUJFQiIgZD0iTTAgMGgxMDgwdjU0MEgweiIvPgogICAgICAgIDxwYXRoIGQ9Ik00NDUuNjQ5IDU0MGgtOTguOTk1TDE0NC42NDkgMzM3Ljk5NSAwIDQ4Mi42NDR2LTk4Ljk5NWwxMTYuMzY1LTExNi4zNjVjMTUuNjItMTUuNjIgNDAuOTQ3LTE1LjYyIDU2LjU2OCAwTDQ0NS42NSA1NDB6IiBmaWxsLW9wYWNpdHk9Ii4xIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgICAgICA8Y2lyY2xlIGZpbGwtb3BhY2l0eT0iLjA1IiBmaWxsPSIjMDAwIiBjeD0iMzMxIiBjeT0iMTQ4IiByPSI3MCIvPgogICAgICAgIDxwYXRoIGQ9Ik0xMDgwIDM3OXYxMTMuMTM3TDcyOC4xNjIgMTQwLjMgMzI4LjQ2MiA1NDBIMjE1LjMyNEw2OTkuODc4IDU1LjQ0NmMxNS42Mi0xNS42MiA0MC45NDgtMTUuNjIgNTYuNTY4IDBMMTA4MCAzNzl6IiBmaWxsLW9wYWNpdHk9Ii4yIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgIDwvZz4KPC9zdmc+Cg=='\n          }\n        }\n      }\n    },\n    show_in_lightbox: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    show_lightbox_other_img: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    block_reveal_color: {\n      innerContent: {\n        desktop: {\n          value: '#7ebec5'\n        }\n      }\n    },\n    use_video_popup: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    use_overlay: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    use_icon: {\n      innerContent: {\n        desktop: {\n          value: 'on'\n        }\n      }\n    },\n    overlay_on_hover: {\n      innerContent: {\n        desktop: {\n          value: 'on'\n        }\n      }\n    },\n    force_fullwidth: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    block_reveal_animation: {\n      innerContent: {\n        desktop: {\n          value: 'lr'\n        }\n      }\n    },\n    block_reveal_delay: {\n      innerContent: {\n        desktop: {\n          value: '0.1'\n        }\n      }\n    },\n    block_reveal_viewport: {\n      innerContent: {\n        desktop: {\n          value: '80%'\n        }\n      }\n    }\n  }\n};\n/* harmony default export */ const block_reveal_image = (blockRevealImageModule);\n;// ./packages/module-library/block-reveal-text/module.json\nconst block_reveal_text_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/block-reveal-text\",\"d4Shortcode\":\"dsm_block_reveal_text\",\"title\":\"Supreme Block Reveal Text\",\"titles\":\"Supreme Block Reveal Text\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/block-reveal-text\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"default\":{\"advanced\":{\"text\":{\"text\":{\"desktop\":{\"value\":{\"color\":\"light\"}}}}}},\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"block_reveal_text\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_block_reveal_text_header\",\"attributes\":{\"class\":\"dsm_block_reveal_text_header et_pb_module_header\"},\"tagName\":\"h2\",\"inlineEditor\":\"plainText\",\"elementType\":\"headingLink\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm_block_reveal_text_header\",\"hover\":\"{{selector}}:hover .dsm_block_reveal_text_header\"}},\"propertySelectors\":{\"font\":{\"desktop\":{\"value\":{\"text-align\":\"{{selector}}.dsm_block_reveal_text\"},\"hover\":{\"text-align\":\"{{selector}}.dsm_block_reveal_text:hover\"}}}}}}},\"heading_html_tag\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"block_reveal_animation\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"block_reveal_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"block_reveal_delay\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"block_reveal_viewport\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"css\":{\"type\":\"object\",\"inlineEditor\":\"codemirror\",\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/block-reveal-text/module-default-render-attributes.json\nconst block_reveal_text_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"module\":{\"decoration\":{},\"advanced\":{\"text\":{\"text\":{\"desktop\":{\"value\":{\"color\":\"light\"}}}}}},\"block_reveal_text\":{\"innerContent\":{\"desktop\":{\"value\":{\"text\":\"Block Reveal Text\"}}},\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"headingLevel\":\"h2\"}},\"tablet\":{\"value\":{\"headingLevel\":\"h2\"}},\"phone\":{\"value\":{\"headingLevel\":\"h2\"}}}}}},\"block_reveal_animation\":{\"innerContent\":{\"desktop\":{\"value\":\"lr\"}}},\"block_reveal_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#7ebec5\"}}},\"block_reveal_delay\":{\"innerContent\":{\"desktop\":{\"value\":\"0.1\"}}},\"block_reveal_viewport\":{\"innerContent\":{\"desktop\":{\"value\":\"80%\"}}}}');\n;// ./packages/module-library/block-reveal-text/block-reveal-text-vb-default-attrs.js\n\nconst block_reveal_text_vb_default_attrs_sliceInner = key => {\n  var _defaultRenderAttribu;\n  return (_defaultRenderAttribu = block_reveal_text_module_default_render_attributes_namespaceObject[key]?.innerContent) !== null && _defaultRenderAttribu !== void 0 ? _defaultRenderAttribu : undefined;\n};\n\n/**\n * Defaults for FieldContainer `defaultAttr` (mirror `module-default-render-attributes.json`).\n */\nconst blockRevealTextFieldDefaultInnerContent = Object.fromEntries(Object.keys(block_reveal_text_module_default_render_attributes_namespaceObject).filter(k => k !== 'module').map(k => [k, block_reveal_text_vb_default_attrs_sliceInner(k)]));\n\n/** @type {typeof blockRevealTextFieldDefaultInnerContent} */\nconst blockRevealTextFd = blockRevealTextFieldDefaultInnerContent;\n;// ./packages/module-library/block-reveal-text/settings-content.js\n\n// Wordpress dependencies.\n\n// Divi package dependencies.\n\n\n\n\n\nfunction block_reveal_text_settings_content_SettingsContent({\n  defaultSettingsAttrs\n}) {\n  const fd = blockRevealTextFd;\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"block_reveal_text.innerContent\",\n    subName: \"text\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Block Reveal Text', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: fd.block_reveal_text,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"block_reveal_animation\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Block Reveal Animation', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"block_reveal_animation.innerContent\",\n    defaultAttr: fd.block_reveal_animation,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Block Reveal Animation', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      lr: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left to Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rl: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right to Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      tb: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top to Bottom', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bt: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom to Top', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"block_reveal_color.innerContent\",\n    defaultAttr: fd.block_reveal_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Block Reveal Color', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"block_reveal_delay.innerContent\",\n    defaultAttr: fd.block_reveal_delay,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Delay', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 5,\n    defaultUnit: '',\n    allowedUnits: [''],\n    step: 0.1\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"block_reveal_viewport.innerContent\",\n    defaultAttr: fd.block_reveal_viewport,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animate in Viewport', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: '%',\n    allowedUnits: ['%']\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const block_reveal_text_settings_content = (block_reveal_text_settings_content_SettingsContent);\n;// ./packages/module-library/block-reveal-text/settings-design.js\n\n// Wordpress dependencies.\n\n\n// Divi package dependencies.\n\nfunction block_reveal_text_settings_design_SettingsDesign() {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"block_reveal_text.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const block_reveal_text_settings_design = (block_reveal_text_settings_design_SettingsDesign);\n;// ./packages/module-library/block-reveal-text/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction block_reveal_text_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_block_reveal_text\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const block_reveal_text_settings_advanced = (block_reveal_text_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/block-reveal-text/module-styles.js\n\n\n\n/**\n * React function component for rendering module style.\n */\nconst block_reveal_text_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'block_reveal_text'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_block_reveal_text_wrapper .dsm_block_text_reveal`,\n    attr: attrs?.block_reveal_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_block_reveal_text_wrapper .dsm_block_image_reveal_front`,\n    attr: attrs?.block_reveal_color?.innerContent,\n    property: \"background-color\"\n  }));\n};\n;// ./packages/module-library/block-reveal-text/edit.js\n\n// Divi package dependencies.\n\n\n\n\nconst edit_BLOCK_REVEAL_ANIMATIONS = new Set(['lr', 'rl', 'tb', 'bt']);\n\n/**\n * @param {*} value Attr fragment for a stable React key.\n * @return {string}\n */\nfunction edit_blockRevealKeyPart(value) {\n  if (value === null || value === undefined) {\n    return '';\n  }\n  if (typeof value === 'object') {\n    try {\n      return JSON.stringify(value);\n    } catch {\n      return '';\n    }\n  }\n  return String(value);\n}\n\n/**\n * React function component for registering module script data.\n */\nconst block_reveal_text_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction block_reveal_text_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  const blockRevealAnimationRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.block_reveal_animation?.innerContent) || 'lr';\n  const blockRevealAnimation = edit_BLOCK_REVEAL_ANIMATIONS.has(blockRevealAnimationRaw) ? blockRevealAnimationRaw : 'lr';\n  const blockRevealColor = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.block_reveal_color?.innerContent) || '';\n  const blockRevealDelay = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.block_reveal_delay?.innerContent) || '0.1';\n  const blockRevealViewport = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.block_reveal_viewport?.innerContent) || '80%';\n  const wrapRef = (0,external_vendor_React_.useRef)(null);\n\n  /** Remount when reveal options or heading attrs change (RevealFx mutates the wrapper DOM). */\n  const blockRevealBuilderPreviewKey = `${String(id)}:${[edit_blockRevealKeyPart(blockRevealAnimation), edit_blockRevealKeyPart(blockRevealColor), edit_blockRevealKeyPart(blockRevealDelay), edit_blockRevealKeyPart(blockRevealViewport), edit_blockRevealKeyPart(attrs?.block_reveal_text)].join('|')}`;\n  (0,external_vendor_React_.useLayoutEffect)(() => {\n    const wrap = wrapRef.current;\n    if (!wrap || typeof window === 'undefined' || typeof window.dsmBlockRevealInitTextWrap !== 'function') {\n      return undefined;\n    }\n    return window.dsmBlockRevealInitTextWrap(wrap);\n  }, [blockRevealBuilderPreviewKey]);\n  const wrapperClasses = ['dsm_block_reveal_text_wrapper', `dsm_block_text_reveal_${blockRevealAnimation}`, 'dsm-block-reveal-frontend'].join(' ');\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: block_reveal_text_edit_ModuleScriptData,\n    stylesComponent: block_reveal_text_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    key: blockRevealBuilderPreviewKey,\n    ref: wrapRef,\n    className: wrapperClasses,\n    \"data-dsm-block-reveal-viewport\": blockRevealViewport,\n    \"data-dsm-block-reveal-animation\": blockRevealAnimation,\n    \"data-dsm-block-reveal-color\": blockRevealColor,\n    \"data-dsm-block-reveal-delay\": blockRevealDelay\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm_block_reveal_fe_preinit\",\n    style: {\n      opacity: 0\n    }\n  }, elements.render({\n    attrName: 'block_reveal_text',\n    attrSubName: 'text'\n  }))));\n}\n/* harmony default export */ const block_reveal_text_edit = (block_reveal_text_edit_Edit);\n;// ./packages/module-library/block-reveal-text/conversion-outline.js\nconst block_reveal_text_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    fonts: {\n      header: 'block_reveal_text.decoration.font'\n    },\n    height: 'module.decoration.sizing',\n    link_options: 'module.advanced.link',\n    margin_padding: 'module.decoration.spacing',\n    max_width: 'module.decoration.sizing',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    text: 'module.advanced.text',\n    text_shadow: {\n      default: 'module.advanced.text.textShadow'\n    },\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex'\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    // D4 header font group applies text-align on the module; map like accordion `title_text_align`.\n    header_text_align: 'block_reveal_text.decoration.font.font.*.textAlign',\n    block_reveal_text: 'block_reveal_text.innerContent.*.text',\n    heading_html_tag: 'heading_html_tag.innerContent.*',\n    block_reveal_animation: 'block_reveal_animation.innerContent.*',\n    block_reveal_color: 'block_reveal_color.innerContent.*',\n    block_reveal_delay: 'block_reveal_delay.innerContent.*',\n    block_reveal_viewport: 'block_reveal_viewport.innerContent.*',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/block-reveal-text/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmBlockRevealText', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/block-reveal-text': {\n      name: 'divi-supreme/block-reveal-text',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.628906 11.964844 L 6.792969 11.964844 L 6.792969 11.320312 C 7.105469 11.320312 7.332031 11.234375 7.488281 11.058594 C 7.800781 10.722656 7.757812 10.148438 7.757812 10.136719 L 7.757812 5.546875 L 6.273438 5.546875 C 5.796875 5.546875 5.496094 5.78125 5.328125 5.976562 C 5.210938 6.109375 5.019531 6.160156 4.851562 6.09375 C 4.675781 6.027344 4.566406 5.867188 4.566406 5.683594 L 4.566406 2.667969 L 13.878906 2.667969 L 13.878906 5.691406 C 13.878906 5.875 13.773438 6.035156 13.597656 6.101562 C 13.429688 6.167969 13.234375 6.117188 13.117188 5.984375 C 12.949219 5.789062 12.648438 5.554688 12.171875 5.554688 L 10.691406 5.554688 L 10.691406 10.15625 C 10.691406 10.164062 10.648438 10.742188 10.957031 11.078125 C 11.117188 11.242188 11.34375 11.328125 11.652344 11.328125 L 11.652344 11.964844 Z M 8.09375 11.328125 L 10.320312 11.328125 C 9.996094 10.832031 10.019531 10.222656 10.027344 10.105469 L 10.027344 4.902344 L 12.15625 4.902344 C 12.609375 4.902344 12.960938 5.046875 13.226562 5.230469 L 13.226562 3.304688 L 5.203125 3.304688 L 5.203125 5.230469 C 5.460938 5.046875 5.816406 4.902344 6.273438 4.902344 L 8.402344 4.902344 L 8.402344 10.105469 C 8.394531 10.222656 8.417969 10.832031 8.09375 11.328125 Z M 8.09375 11.328125 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 13.542969 12.800781 C 12.90625 12.800781 12.386719 12.28125 12.386719 11.644531 C 12.386719 11.007812 12.90625 10.488281 13.542969 10.488281 C 14.179688 10.488281 14.695312 11.007812 14.695312 11.644531 C 14.707031 12.28125 14.1875 12.800781 13.542969 12.800781 Z M 13.542969 11.136719 C 13.257812 11.136719 13.023438 11.371094 13.023438 11.652344 C 13.023438 11.9375 13.257812 12.171875 13.542969 12.171875 C 13.824219 12.171875 14.0625 11.9375 14.0625 11.652344 C 14.0625 11.359375 13.824219 11.136719 13.542969 11.136719 Z M 13.542969 11.136719 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 1.066406 8.453125 L 5.179688 8.453125 L 5.179688 9.097656 L 1.066406 9.097656 Z M 1.066406 8.453125 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 3.5625 10.824219 L 3.175781 10.3125 L 5.195312 8.789062 L 3.183594 7.367188 L 3.554688 6.847656 L 6.285156 8.773438 Z M 3.5625 10.824219 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/block-reveal-text/index.js\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\nconst blockRevealTextModule = {\n  metadata: block_reveal_text_module_namespaceObject,\n  conversionOutline: block_reveal_text_conversion_outline_conversionOutline,\n  renderers: {\n    edit: block_reveal_text_edit,\n    styles: block_reveal_text_module_styles_ModuleStyles\n  },\n  defaultAttrs: {\n    ...block_reveal_text_module_default_render_attributes_namespaceObject\n  },\n  settings: {\n    content: block_reveal_text_settings_content,\n    design: block_reveal_text_settings_design,\n    advanced: block_reveal_text_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    block_reveal_text: {\n      innerContent: {\n        desktop: {\n          value: {\n            text: 'Block Reveal Text'\n          }\n        }\n      },\n      decoration: {\n        font: {\n          font: {\n            desktop: {\n              value: {\n                headingLevel: 'h2'\n              }\n            },\n            tablet: {\n              value: {\n                headingLevel: 'h2'\n              }\n            },\n            phone: {\n              value: {\n                headingLevel: 'h2'\n              }\n            }\n          }\n        }\n      }\n    },\n    block_reveal_animation: {\n      innerContent: {\n        desktop: {\n          value: 'lr'\n        }\n      }\n    },\n    block_reveal_color: {\n      innerContent: {\n        desktop: {\n          value: '#7ebec5'\n        }\n      }\n    },\n    block_reveal_delay: {\n      innerContent: {\n        desktop: {\n          value: '0.1'\n        }\n      }\n    },\n    block_reveal_viewport: {\n      innerContent: {\n        desktop: {\n          value: '80%'\n        }\n      }\n    }\n  }\n};\n/* harmony default export */ const block_reveal_text = (blockRevealTextModule);\n;// ./packages/module-library/buttons/module.json\nconst buttons_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/button\",\"d4Shortcode\":\"dsm_button\",\"title\":\"Supreme Button\",\"titles\":\"Supreme Buttons\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/button\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"button_links_content_tab\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"button_one\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"lightbox_button_design_tab\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"button_one\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"tooltip_text_design_tab\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"button_one\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_one_text\":{\"type\":\"object\",\"selector\":\"{{selector}}.et_pb_button_one\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\",\"tagName\":\"span\"},\"button_one_url_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_one_email_address\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_one_email_cc\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_one_email_bcc\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_one_email_subject\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_one_email_msg\":{\"type\":\"object\",\"inlineEditor\":\"RichTextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_one_phone_number\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_one_sms_number\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_one_sms_body_text\":{\"type\":\"object\",\"inlineEditor\":\"RichTextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_one_fb_messenger\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_one_skype\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_one_skype_action_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_one_whatsapp_number\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_one_whatsapp_msg\":{\"type\":\"object\",\"inlineEditor\":\"RichTextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_one_telegram\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_one_telegram_msg\":{\"type\":\"object\",\"inlineEditor\":\"RichTextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_one_url\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_one_url_new_window\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_one_download_file\":{\"type\":\"object\",\"inlineEditor\":\"uploadFile\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_one_image_popup\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_one_image_src\":{\"type\":\"object\",\"inlineEditor\":\"UploadContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_one_lightbox_close_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_one_lightbox_max_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_one_video_popup\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_one_tooltip\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_one_tooltip_content\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_one_tooltip_arrow\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_one_tooltip_size\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_one_tooltip_placement\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_one_tooltip_animation\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_one_tooltip_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_two_text\":{\"type\":\"object\",\"selector\":\"{{selector}}.et_pb_button_two\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\",\"tagName\":\"span\"},\"button_two_url_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_two_email_address\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_two_email_cc\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_two_email_bcc\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_two_email_subject\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_two_email_msg\":{\"type\":\"object\",\"inlineEditor\":\"RichTextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_two_phone_number\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_two_sms_number\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_two_sms_body_text\":{\"type\":\"object\",\"inlineEditor\":\"RichTextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_two_fb_messenger\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_two_skype\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_two_skype_action_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_two_whatsapp_number\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_two_whatsapp_msg\":{\"type\":\"object\",\"inlineEditor\":\"RichTextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_two_telegram\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_two_telegram_msg\":{\"type\":\"object\",\"inlineEditor\":\"RichTextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_two_url\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_two_url_new_window\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_two_download_file\":{\"type\":\"object\",\"inlineEditor\":\"uploadFile\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_two_image_popup\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_two_image_src\":{\"type\":\"object\",\"inlineEditor\":\"UploadContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_two_lightbox_close_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_two_lightbox_max_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_two_video_popup\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_two_tooltip\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_two_tooltip_content\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_two_tooltip_arrow\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_two_tooltip_size\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_two_tooltip_placement\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_two_tooltip_animation\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_two_tooltip_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_alignment\":{\"type\":\"object\",\"inlineEditor\":\"\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_group_gap\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"stack_buttons\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"fullwidth_buttons_on_mobile\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"separator_text\":{\"type\":\"object\",\"selector\":\"{{selector}}.dsm-button-separator-text\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"tooltip_one_font\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_button_one.dsm-tooltip[data-dsm-tooltip]:after\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"tooltip_two_font\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_button_two.dsm-tooltip[data-dsm-tooltip]:after\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"fullwidth_separator_text_on_mobile\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"remove_separator_text_on_mobile\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"separator_gap\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_one_hover_animation\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_one_icon_hover_animation\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_two_hover_animation\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_two_icon_hover_animation\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_one\":{\"type\":\"object\",\"label\":\"Button #1\",\"selector\":\"{{selector}} .et_pb_button_one\",\"elementType\":\"button\",\"supportsCustomAttributes\":true,\"styleProps\":{\"background\":{\"important\":true},\"border\":{\"important\":true},\"font\":{\"important\":{\"font\":{\"desktop\":{\"value\":{\"color\":true,\"font-size\":true,\"letter-spacing\":true}}}}},\"spacing\":{\"important\":true}},\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"button_two\":{\"type\":\"object\",\"label\":\"Button #2\",\"selector\":\"{{selector}} .et_pb_button_two\",\"elementType\":\"button\",\"supportsCustomAttributes\":true,\"styleProps\":{\"background\":{\"important\":true},\"border\":{\"important\":true},\"font\":{\"important\":{\"font\":{\"desktop\":{\"value\":{\"color\":true,\"font-size\":true,\"letter-spacing\":true}}}}},\"spacing\":{\"important\":true}},\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}}}}');\n;// ./packages/module-library/buttons/module-default-render-attributes.json\nconst buttons_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"module\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}},\"advanced\":{\"text\":{\"text\":{\"desktop\":{\"value\":{\"color\":\"light\"}}}}}},\"button_one\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{},\"spacing\":{\"desktop\":{\"value\":{\"margin\":{\"left\":\"0px\"}}}},\"button\":{\"desktop\":{\"value\":{\"icon\":{\"enable\":\"on\"}}},\"decoration\":{\"spacing\":{\"desktop\":{\"value\":{\"margin\":{\"left\":\"0px\"}}}}}}}},\"button_two\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}},\"button_one_text\":{\"innerContent\":{\"desktop\":{\"value\":\"Button #1\"}}},\"button_two_text\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_links_content_tab\":{\"innerContent\":{\"desktop\":{\"value\":\"button_one\"}}},\"lightbox_button_design_tab\":{\"innerContent\":{\"desktop\":{\"value\":\"button_one\"}}},\"tooltip_text_design_tab\":{\"innerContent\":{\"desktop\":{\"value\":\"button_one\"}}},\"button_one_url_type\":{\"innerContent\":{\"desktop\":{\"value\":\"url\"}}},\"button_two_url_type\":{\"innerContent\":{\"desktop\":{\"value\":\"url\"}}},\"button_one_email_address\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_one_email_cc\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_one_email_bcc\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_one_email_subject\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_one_email_msg\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_one_phone_number\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_one_sms_number\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_one_sms_body_text\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_one_fb_messenger\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_one_skype\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_one_skype_action_type\":{\"innerContent\":{\"desktop\":{\"value\":\"chat\"}}},\"button_one_whatsapp_number\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_one_whatsapp_msg\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_one_telegram\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_one_telegram_msg\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_one_url\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_one_url_new_window\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"button_one_download_file\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_one_image_popup\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"button_one_image_src\":{\"innerContent\":{\"desktop\":{\"value\":{\"src\":\"\"}}}},\"button_one_lightbox_close_color\":{\"innerContent\":{\"desktop\":{\"value\":\"rgba(255,255,255,0.2)\"}}},\"button_one_lightbox_max_width\":{\"innerContent\":{\"desktop\":{\"value\":\"none\"}}},\"button_one_video_popup\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"button_one_tooltip\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"button_one_tooltip_content\":{\"innerContent\":{\"desktop\":{\"value\":\"Tooltip #1\"}}},\"button_one_tooltip_arrow\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"button_one_tooltip_size\":{\"innerContent\":{\"desktop\":{\"value\":\"regular\"}}},\"button_one_tooltip_placement\":{\"innerContent\":{\"desktop\":{\"value\":\"top\"}}},\"button_one_tooltip_animation\":{\"innerContent\":{\"desktop\":{\"value\":\"fade\"}}},\"button_one_tooltip_bg_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_two_email_address\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_two_email_cc\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_two_email_bcc\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_two_email_subject\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_two_email_msg\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_two_phone_number\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_two_sms_number\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_two_sms_body_text\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_two_fb_messenger\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_two_skype\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_two_skype_action_type\":{\"innerContent\":{\"desktop\":{\"value\":\"chat\"}}},\"button_two_whatsapp_number\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_two_whatsapp_msg\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_two_telegram\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_two_telegram_msg\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_two_url\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_two_url_new_window\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"button_two_download_file\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_two_image_popup\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"button_two_image_src\":{\"innerContent\":{\"desktop\":{\"value\":{\"src\":\"\"}}}},\"button_two_lightbox_close_color\":{\"innerContent\":{\"desktop\":{\"value\":\"rgba(255,255,255,0.2)\"}}},\"button_two_lightbox_max_width\":{\"innerContent\":{\"desktop\":{\"value\":\"none\"}}},\"button_two_video_popup\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"button_two_tooltip\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"button_two_tooltip_content\":{\"innerContent\":{\"desktop\":{\"value\":\"Tooltip #2\"}}},\"button_two_tooltip_arrow\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"button_two_tooltip_size\":{\"innerContent\":{\"desktop\":{\"value\":\"regular\"}}},\"button_two_tooltip_placement\":{\"innerContent\":{\"desktop\":{\"value\":\"top\"}}},\"button_two_tooltip_animation\":{\"innerContent\":{\"desktop\":{\"value\":\"fade\"}}},\"button_two_tooltip_bg_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_alignment\":{\"innerContent\":{\"desktop\":{\"value\":\"left\"}}},\"button_group_gap\":{\"innerContent\":{\"desktop\":{\"value\":\"20px\"}}},\"stack_buttons\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"fullwidth_buttons_on_mobile\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"separator_text\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}},\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{}}}}}},\"tooltip_one_font\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{}}}}}},\"tooltip_two_font\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{}}}}}},\"fullwidth_separator_text_on_mobile\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"remove_separator_text_on_mobile\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"separator_gap\":{\"innerContent\":{\"desktop\":{\"value\":\"10px\"}}},\"button_one_hover_animation\":{\"innerContent\":{\"desktop\":{\"value\":\"dsm-none\"}}},\"button_one_icon_hover_animation\":{\"innerContent\":{\"desktop\":{\"value\":\"dsm-icon-none\"}}},\"button_two_hover_animation\":{\"innerContent\":{\"desktop\":{\"value\":\"dsm-none\"}}},\"button_two_icon_hover_animation\":{\"innerContent\":{\"desktop\":{\"value\":\"dsm-icon-none\"}}}}');\n;// ./packages/module-library/buttons/buttons-vb-default-attrs.js\n/**\n * Visual Builder `defaultAttr` map: each value is the `innerContent` object\n * (`{ desktop: { value } }`), derived from `module-default-render-attributes.json`.\n *\n * Use with `FieldContainer` where `attrName` ends in `.innerContent` — same pattern as\n * `dsm/card` (`cardFieldDefaultInnerContent`).\n *\n * @package DiviSupreme\n */\n\n\n\nconst buttonsFieldDefaultInnerContent = Object.fromEntries(Object.entries(buttons_module_default_render_attributes_namespaceObject).filter(([, attr]) => attr && typeof attr === 'object' && typeof attr.innerContent !== 'undefined').map(([key, attr]) => [key, attr.innerContent]));\n\n/**\n * Button One spacing — margin-left only (desktop). Replaces Divi button preset spacing\n * so the VB does not show the ~10px margin-left placeholder from `defaultSettingsAttrs`.\n *\n * @type {Record<string, { value: { margin: { left: string } } }>}\n */\nconst buttonsButtonOneSpacingDesktop = {\n  desktop: {\n    value: {\n      margin: {\n        left: '0px'\n      }\n    }\n  }\n};\n\n/**\n * Button One decoration defaults — outer + inner (`decoration.button.decoration.spacing`).\n *\n * @type {Record<string, unknown>}\n */\nconst buttonsButtonOneDecorationDefaults = {\n  attributes: {},\n  conditions: {},\n  interactions: {},\n  spacing: buttonsButtonOneSpacingDesktop,\n  button: {\n    desktop: {\n      value: {\n        icon: {\n          enable: 'on'\n        }\n      }\n    },\n    decoration: {\n      spacing: buttonsButtonOneSpacingDesktop\n    }\n  }\n};\n\n/**\n * Replace `spacing` wholesale when merging — do not deep-merge with Divi's 10px preset.\n *\n * @param {unknown} objValue Destination value.\n * @param {unknown} srcValue Source value.\n * @param {string} key Property key.\n * @return {unknown|undefined}\n */\nconst replaceSpacingCustomizer = (objValue, srcValue, key) => {\n  if (key === 'spacing') {\n    return srcValue;\n  }\n};\n\n/**\n * Merged decoration for `ButtonGroupContainer` `defaultGroupAttr` (flipbox-style + spacing replace).\n *\n * @param {Record<string, unknown>|undefined} defaultSettingsAttrsDecoration\n * @return {Record<string, unknown>}\n */\nconst getButtonsButtonOneDecorationDefaultGroupAttr = defaultSettingsAttrsDecoration => {\n  var _buttonDefaultRenderA;\n  return (0,lodash.mergeWith)({}, defaultSettingsAttrsDecoration !== null && defaultSettingsAttrsDecoration !== void 0 ? defaultSettingsAttrsDecoration : {}, (_buttonDefaultRenderA = buttons_module_default_render_attributes_namespaceObject.button_one?.decoration) !== null && _buttonDefaultRenderA !== void 0 ? _buttonDefaultRenderA : {}, buttonsButtonOneDecorationDefaults, replaceSpacingCustomizer);\n};\n;// ./packages/module-library/buttons/settings-content.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\n\nconst fd = buttonsFieldDefaultInnerContent;\nfunction buttons_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  var _getAttrByMode;\n  const removeSeparatorMobileAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.remove_separator_text_on_mobile?.innerContent);\n  const buttonOneLinkType = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_one_url_type?.innerContent);\n  const buttonTwoLinkType = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_two_url_type?.innerContent);\n  const buttonOneUseTooltip = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_one_tooltip?.innerContent);\n  const buttonTwoUseTooltip = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_two_tooltip?.innerContent);\n  const buttonOneOpenImagePopup = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_one_image_popup?.innerContent);\n  const buttonTwoOpenImagePopup = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_two_image_popup?.innerContent);\n  const buttonOneVideoPopup = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_one_video_popup?.innerContent);\n  const buttonLinksContentTab = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_links_content_tab?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'button_one';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_one_text.innerContent\",\n    defaultAttr: fd.button_one_text,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button #1 Text', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enter the text for the Button.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_two_text.innerContent\",\n    defaultAttr: fd.button_two_text,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button #2 Text', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enter the text for the Button.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"button_links_group\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Links', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_links_content_tab.innerContent\",\n    defaultAttr: fd.button_links_content_tab,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: {\n      button_one: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Links #1', 'dsm-supreme-modules-pro-for-divi')\n      },\n      button_two: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Links #2', 'dsm-supreme-modules-pro-for-divi')\n      }\n    },\n    tabUi: true,\n    showLabel: true\n  })), 'button_one' === buttonLinksContentTab && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_one_url_type.innerContent\",\n    defaultAttr: fd.button_one_url_type,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Link Type for Button #1', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Choose the type of URL', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      url: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('URL Link', 'dsm-supreme-modules-pro-for-divi')\n      },\n      download: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Download File', 'dsm-supreme-modules-pro-for-divi')\n      },\n      email: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Email', 'dsm-supreme-modules-pro-for-divi')\n      },\n      phone: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Phone', 'dsm-supreme-modules-pro-for-divi')\n      },\n      sms: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('SMS', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fb_messenger: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Facebook Messenger', 'dsm-supreme-modules-pro-for-divi')\n      },\n      skype: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('skype', 'dsm-supreme-modules-pro-for-divi')\n      },\n      whatsapp: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('WhatsApp', 'dsm-supreme-modules-pro-for-divi')\n      },\n      telegram: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Telegram', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_one_download_file.innerContent\",\n    defaultAttr: fd.button_one_download_file,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Download File', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Set As Download File', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'download' === buttonOneLinkType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, {\n    dataType: \"file\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_one_email_address.innerContent\",\n    defaultAttr: fd.button_one_email_address,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Email', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enter the Email Address for Button #1.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'email' === buttonOneLinkType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_one_email_cc.innerContent\",\n    defaultAttr: fd.button_one_email_cc,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('CC', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enter the carbon copy email address for Button #1.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'email' === buttonOneLinkType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_one_email_bcc.innerContent\",\n    defaultAttr: fd.button_one_email_bcc,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('BCC', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enter the blind carbon copy email address for Button #1.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'email' === buttonOneLinkType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_one_email_subject.innerContent\",\n    defaultAttr: fd.button_one_email_subject,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Subject', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enter the default subject of the email for Button #1.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'email' === buttonOneLinkType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_one_email_msg.innerContent\",\n    defaultAttr: fd.button_one_email_msg,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Message', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enter the default body message of the email for Button #1.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'email' === buttonOneLinkType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RichTextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_one_phone_number.innerContent\",\n    defaultAttr: fd.button_one_phone_number,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Phone Number', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enter the phone number to call for Button #1 (This will usually work on mobile phones)', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'phone' === buttonOneLinkType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_one_sms_number.innerContent\",\n    defaultAttr: fd.button_one_sms_number,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Phone Number', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enter the phone number to SMS for Button #1 (This will usually work on mobile phones)', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'sms' === buttonOneLinkType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_one_sms_body_text.innerContent\",\n    defaultAttr: fd.button_one_sms_body_text,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Body Text', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pre-Populate SMS Text for Button #1 (This will usually work on mobile phones)', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'sms' === buttonOneLinkType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RichTextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_one_fb_messenger.innerContent\",\n    defaultAttr: fd.button_one_fb_messenger,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('username', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enter a person, page, or bot username.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'fb_messenger' === buttonOneLinkType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_one_skype.innerContent\",\n    defaultAttr: fd.button_one_skype,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Username', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enter the Skype username for Button #1.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'skype' === buttonOneLinkType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_one_skype_action_type.innerContent\",\n    defaultAttr: fd.button_one_skype_action_type,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Action Type', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Choose the action type for Skype', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'skype' === buttonOneLinkType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      chat: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Chat', 'dsm-supreme-modules-pro-for-divi')\n      },\n      call: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Call', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_one_whatsapp_number.innerContent\",\n    defaultAttr: fd.button_one_whatsapp_number,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Number', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enter the phone number to message directly via WhatsApp message for Button #1.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'whatsapp' === buttonOneLinkType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_one_whatsapp_msg.innerContent\",\n    defaultAttr: fd.button_one_whatsapp_msg,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Number', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enter the default body message of the WhatsApp for Button #1.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'whatsapp' === buttonOneLinkType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RichTextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_one_telegram.innerContent\",\n    defaultAttr: fd.button_one_telegram,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Telegram Username', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enter the Telegram Username.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'telegram' === buttonOneLinkType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_one_telegram_msg.innerContent\",\n    defaultAttr: fd.button_one_telegram_msg,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Message', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enter the default body message of the Telegram for Button #1.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'telegram' === buttonOneLinkType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RichTextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_one_url.innerContent\",\n    defaultAttr: fd.button_one_url,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button #1 URL', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enter the URL for the Button.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'url' === buttonOneLinkType,\n    features: {\n      dynamicContent: {\n        type: 'url'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_one_url_new_window.innerContent\",\n    defaultAttr: fd.button_one_url_new_window,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Url Opens', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose whether or not your link opens in a new window', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      off: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The Same Window', 'dsm-supreme-modules-pro-for-divi')\n      },\n      on: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The New Tab', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_one_tooltip.innerContent\",\n    defaultAttr: fd.button_one_tooltip,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Tooltip', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('This will show a tooltip on your Button #1.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_one_tooltip_content.innerContent\",\n    defaultAttr: fd.button_one_tooltip_content,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tooltip Content', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enter the content for the your tooltip.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === buttonOneUseTooltip,\n    features: {\n      dynamicContent: {\n        type: 'url'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_one_tooltip_arrow.innerContent\",\n    defaultAttr: fd.button_one_tooltip_arrow,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Arrow', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If enable, then an arrow will be added to the tooltip.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === buttonOneUseTooltip\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_one_tooltip_size.innerContent\",\n    defaultAttr: fd.button_one_tooltip_size,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Size', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('The size of the tooltip.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === buttonOneUseTooltip\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      small: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Small', 'dsm-supreme-modules-pro-for-divi')\n      },\n      regular: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Regular', 'dsm-supreme-modules-pro-for-divi')\n      },\n      large: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Large', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_one_tooltip_placement.innerContent\",\n    defaultAttr: fd.button_one_tooltip_placement,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Placement', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === buttonOneUseTooltip\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      top: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom', 'dsm-supreme-modules-pro-for-divi')\n      },\n      left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_one_tooltip_animation.innerContent\",\n    defaultAttr: fd.button_one_tooltip_animation,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animations', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose different types of animations for your tooltips.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === buttonOneUseTooltip\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      fade: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'fade-in-direction': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Direction', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_one_image_popup.innerContent\",\n    defaultAttr: fd.button_one_image_popup,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Open as Image Lightbox', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose whether or not the button should open in Lightbox. Note: if you select to open the button in Lightbox, url options below will be ignored.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'off' === buttonOneVideoPopup\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_one_image_src.innerContent\",\n    subName: \"src\",\n    defaultAttr: fd.button_one_image_src,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Upload your desired image for Button One Image Lightbox, or type in the URL to the image you would like to display.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === buttonOneOpenImagePopup\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_one_video_popup.innerContent\",\n    defaultAttr: fd.button_one_video_popup,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Open as Video Lightbox', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Put the Video link on the Button #1 URL. Copy the video URL link and paste it here. Support: YouTube, Vimeo and Dailymotion.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' !== buttonOneOpenImagePopup\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), 'button_two' === buttonLinksContentTab && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_two_url_type.innerContent\",\n    defaultAttr: fd.button_two_url_type,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Link Type for Button #2', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Choose the type of URL', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      url: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('URL Link', 'dsm-supreme-modules-pro-for-divi')\n      },\n      download: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Download File', 'dsm-supreme-modules-pro-for-divi')\n      },\n      email: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Email', 'dsm-supreme-modules-pro-for-divi')\n      },\n      phone: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Phone', 'dsm-supreme-modules-pro-for-divi')\n      },\n      sms: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('SMS', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fb_messenger: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Facebook Messenger', 'dsm-supreme-modules-pro-for-divi')\n      },\n      skype: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('skype', 'dsm-supreme-modules-pro-for-divi')\n      },\n      whatsapp: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('WhatsApp', 'dsm-supreme-modules-pro-for-divi')\n      },\n      telegram: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Telegram', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_two_download_file.innerContent\",\n    defaultAttr: fd.button_two_download_file,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Download File', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Set As Download File', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'download' === buttonTwoLinkType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, {\n    dataType: \"file\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_two_email_address.innerContent\",\n    defaultAttr: fd.button_two_email_address,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Email', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enter the Email Address for Button #2.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'email' === buttonTwoLinkType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_two_email_cc.innerContent\",\n    defaultAttr: fd.button_two_email_cc,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('CC', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enter the carbon copy email address for Button #2.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'email' === buttonTwoLinkType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_two_email_bcc.innerContent\",\n    defaultAttr: fd.button_two_email_bcc,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('BCC', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enter the blind carbon copy email address for Button #2.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'email' === buttonTwoLinkType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_two_email_subject.innerContent\",\n    defaultAttr: fd.button_two_email_subject,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Subject', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enter the default subject of the email for Button #2.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'email' === buttonTwoLinkType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_two_email_msg.innerContent\",\n    defaultAttr: fd.button_two_email_msg,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Message', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enter the default body message of the email for Button #2.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'email' === buttonTwoLinkType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RichTextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_two_phone_number.innerContent\",\n    defaultAttr: fd.button_two_phone_number,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Phone Number', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enter the phone number to call for Button #2 (This will usually work on mobile phones)', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'phone' === buttonTwoLinkType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_two_sms_number.innerContent\",\n    defaultAttr: fd.button_two_sms_number,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Phone Number', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enter the phone number to SMS for Button #2 (This will usually work on mobile phones)', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'sms' === buttonTwoLinkType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_two_sms_body_text.innerContent\",\n    defaultAttr: fd.button_two_sms_body_text,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Body Text', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pre-Populate SMS Text for Button #2 (This will usually work on mobile phones)', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'sms' === buttonTwoLinkType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RichTextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_two_fb_messenger.innerContent\",\n    defaultAttr: fd.button_two_fb_messenger,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Username', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enter a person, page, or bot username.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'fb_messenger' === buttonTwoLinkType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_two_skype.innerContent\",\n    defaultAttr: fd.button_two_skype,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Username', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enter the Skype username for Button #2.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'skype' === buttonTwoLinkType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_two_skype_action_type.innerContent\",\n    defaultAttr: fd.button_two_skype_action_type,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Action Type', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Choose the action type for Skype', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'skype' === buttonTwoLinkType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      chat: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Chat', 'dsm-supreme-modules-pro-for-divi')\n      },\n      call: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Call', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_two_whatsapp_number.innerContent\",\n    defaultAttr: fd.button_two_whatsapp_number,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Number', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enter the phone number to message directly via WhatsApp message for Button #2.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'whatsapp' === buttonTwoLinkType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_two_whatsapp_msg.innerContent\",\n    defaultAttr: fd.button_two_whatsapp_msg,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Number', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enter the default body message of the WhatsApp for Button #2.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'whatsapp' === buttonTwoLinkType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RichTextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_two_telegram.innerContent\",\n    defaultAttr: fd.button_two_telegram,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Telegram Username', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enter the Telegram Username.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'telegram' === buttonTwoLinkType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_two_telegram_msg.innerContent\",\n    defaultAttr: fd.button_two_telegram_msg,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Message', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enter the default body message of the Telegram for Button #2.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'telegram' === buttonTwoLinkType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RichTextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_two_url.innerContent\",\n    defaultAttr: fd.button_two_url,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button #2 URL', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enter the URL for the Button.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'url' === buttonTwoLinkType,\n    features: {\n      dynamicContent: {\n        type: 'url'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_two_url_new_window.innerContent\",\n    defaultAttr: fd.button_two_url_new_window,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Url Opens', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose whether or not your link opens in a new window', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'url'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      off: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The Same Window', 'dsm-supreme-modules-pro-for-divi')\n      },\n      on: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The New Tab', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_two_tooltip.innerContent\",\n    defaultAttr: fd.button_two_tooltip,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Tooltip', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('This will show a tooltip on your Button #2.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_two_tooltip_content.innerContent\",\n    defaultAttr: fd.button_two_tooltip_content,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tooltip Content', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enter the content for the your tooltip.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === buttonTwoUseTooltip,\n    features: {\n      dynamicContent: {\n        type: 'url'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_two_tooltip_arrow.innerContent\",\n    defaultAttr: fd.button_two_tooltip_arrow,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Arrow', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If enable, then an arrow will be added to the tooltip.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === buttonTwoUseTooltip\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_two_tooltip_size.innerContent\",\n    defaultAttr: fd.button_two_tooltip_size,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Size', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('The size of the tooltip.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === buttonTwoUseTooltip\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      small: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Small', 'dsm-supreme-modules-pro-for-divi')\n      },\n      regular: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Regular', 'dsm-supreme-modules-pro-for-divi')\n      },\n      large: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Large', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_two_tooltip_placement.innerContent\",\n    defaultAttr: fd.button_two_tooltip_placement,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Placement', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === buttonTwoUseTooltip\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      top: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom', 'dsm-supreme-modules-pro-for-divi')\n      },\n      left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_two_tooltip_animation.innerContent\",\n    defaultAttr: fd.button_two_tooltip_animation,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animations', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose different types of animations for your tooltips.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === buttonTwoUseTooltip\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      fade: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'fade-in-direction': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Direction', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_two_image_popup.innerContent\",\n    defaultAttr: fd.button_two_image_popup,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Open as Image Lightbox', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose whether or not the button should open in Lightbox. Note: if you select to open the button in Lightbox, url options below will be ignored.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_two_image_src.innerContent\",\n    subName: \"src\",\n    defaultAttr: fd.button_two_image_src,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Upload your desired image for Button One Image Lightbox, or type in the URL to the image you would like to display.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === buttonTwoOpenImagePopup\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_two_video_popup.innerContent\",\n    defaultAttr: fd.button_two_video_popup,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Open as Video Lightbox', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Put the Video link on the Button #2 URL. Copy the video URL link and paste it here. Support: YouTube, Vimeo and Dailymotion.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'off' === buttonTwoOpenImagePopup\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"separator\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Separator', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"separator_text.innerContent\",\n    defaultAttr: fd.separator_text,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Separator Text', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Input your desired seprator text, or leave blank for no separator text in between the both buttons.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"fullwidth_separator_text_on_mobile.innerContent\",\n    defaultAttr: fd.fullwidth_separator_text_on_mobile,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Make Separator Text Fullwidth On Mobile', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('This will make the Separator Text as fullwidth instead of inline-block.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'off' === removeSeparatorMobileAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"remove_separator_text_on_mobile.innerContent\",\n    defaultAttr: fd.remove_separator_text_on_mobile,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Remove Separator Text On Mobile', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('This will remove Separator Text on mobile devices.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const buttons_settings_content = (buttons_settings_content_SettingsContent);\n;// ./packages/module-library/buttons/settings-design.js\n\n// Wordpress dependencies.\n\n\n\n\n// Divi package dependencies.\n\n\n\n\nfunction buttons_settings_design_SettingsDesign({\n  attrs,\n  defaultSettingsAttrs\n}) {\n  var _getAttrByMode, _getAttrByMode2, _buttonDefaultRenderA;\n  const fd = buttonsFieldDefaultInnerContent;\n  const decorationDefaults = buttons_module_default_render_attributes_namespaceObject.module?.decoration;\n  const lightboxButtonDesignTab = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.lightbox_button_design_tab?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'button_one';\n  const tooltipTextDesignTab = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.tooltip_text_design_tab?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'button_one';\n  const animationOpt = {\n    'dsm-none': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('None', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-grow': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Grow', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-grow-rotate': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Grow Rotate', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-shrink': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shrink', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-pulse': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pulse', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-pulse-grow': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pulse Grow', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-pulse-shrink': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pulse Shrink', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-push': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Push', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-pop': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pop', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-bounce-in': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bounce In', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-bounce-out': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bounce Out', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-rotate': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rotate', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-float': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Float', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-sink': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Sink', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-bob': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bob', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-hang': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hang', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-skew': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Skew', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-skew-forward': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Skew Forward', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-skew-backward': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Skew Backward', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-wobble-vertical': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Wobble Vertical', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-wobble-horizontal': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Wobble Horizontal', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-wobble-to-bottom-right': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Wobble to Bottom Right', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-wobble-to-top-right': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Wobble to Top Right', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-wobble-top': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Wobble Top', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-wobble-bottom': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Wobble Bottom', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-wobble-skew': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Wobble Skew', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-buzz': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Buzz', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-buzz-out': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Buzz Out', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-forward': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Forward', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-backward': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Backward', 'dsm-supreme-modules-pro-for-divi')\n    }\n  };\n  const iconAnimationOpt = {\n    'dsm-icon-none': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('None', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-icon-back': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Back', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-icon-forward': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Forward', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-icon-down': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Down', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-icon-up': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Up', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-icon-spin': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Spin', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-icon-float-away': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Float Away', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-icon-sink-away': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Sink Away', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-icon-grow': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Grow', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-icon-shrink': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shrink', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-icon-pulse': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pulse', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-icon-pulse-grow': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pulse Grow', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-icon-pulse-shrink': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pulse Shrink', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-icon-push': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pulse Shrink', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-icon-pop': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pop', 'dsm-supreme-modules-pro-for-divi')\n    },\n    'dsm-icon-bounce': {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bounce', 'dsm-supreme-modules-pro-for-divi')\n    }\n  };\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"alignment\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Alignment', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_alignment.innerContent\",\n    defaultAttr: fd.button_alignment,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Group Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_group_gap.innerContent\",\n    defaultAttr: fd.button_group_gap,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Group Gap', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Spacing between buttons and separator text.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      responsive: true\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: \"px\",\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"stack_buttons.innerContent\",\n    defaultAttr: fd.stack_buttons,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Stack Buttons', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Stack buttons vertically at this breakpoint.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      responsive: true\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"fullwidth_buttons_on_mobile.innerContent\",\n    defaultAttr: fd.fullwidth_buttons_on_mobile,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Full Width on Mobile', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('When stacked, stretch buttons to the full width of the container.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      responsive: true\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"lightbox_buttons\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Lightbox', 'dsm-supreme-modules-pro-for-divi'),\n    preset: \"content\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"lightbox_button_design_tab.innerContent\",\n    defaultAttr: fd.lightbox_button_design_tab\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: {\n      button_one: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Lightbox Button #1', 'dsm-supreme-modules-pro-for-divi')\n      },\n      button_two: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Lightbox Button #2', 'dsm-supreme-modules-pro-for-divi')\n      }\n    },\n    tabUi: true,\n    showLabel: true\n  })), 'button_one' === lightboxButtonDesignTab && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_one_lightbox_close_color.innerContent\",\n    defaultAttr: fd.button_one_lightbox_close_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Close Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_one_lightbox_max_width.innerContent\",\n    defaultAttr: fd.button_one_lightbox_max_width,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Max Width', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 100,\n    max: 1200,\n    defaultUnit: 'px'\n  }))), 'button_two' === lightboxButtonDesignTab && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_two_lightbox_close_color.innerContent\",\n    defaultAttr: fd.button_two_lightbox_close_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Close Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_two_lightbox_max_width.innerContent\",\n    defaultAttr: fd.button_two_lightbox_max_width,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Max Width', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 100,\n    max: 1200,\n    defaultUnit: 'px'\n  })))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"separator_text.decoration.font\",\n    defaultGroupAttr: buttons_module_default_render_attributes_namespaceObject.separator_text?.decoration?.font,\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Separator Text', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Separator', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"sizing\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Sizing', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"separator_gap.innerContent\",\n    defaultAttr: fd.separator_gap,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text Separator Gap', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnits: 'px',\n    allowedUnits: ['px']\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"tooltip_text\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tooltip', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"tooltip_text_design_tab.innerContent\",\n    defaultAttr: fd.tooltip_text_design_tab\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: {\n      button_one: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button #1 Tooltip Text', 'dsm-supreme-modules-pro-for-divi')\n      },\n      button_two: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button #2 Tooltip Text', 'dsm-supreme-modules-pro-for-divi')\n      }\n    },\n    tabUi: true,\n    showLabel: true\n  })), 'button_one' === tooltipTextDesignTab && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_one_tooltip_bg_color.innerContent\",\n    defaultAttr: fd.button_one_tooltip_bg_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"tooltip_one_font.decoration.font\",\n    defaultGroupAttr: buttons_module_default_render_attributes_namespaceObject.tooltip_one_font?.decoration?.font,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tooltip #1', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  })), 'button_two' === tooltipTextDesignTab && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_two_tooltip_bg_color.innerContent\",\n    defaultAttr: fd.button_two_tooltip_bg_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"tooltip_two_font.decoration.font\",\n    defaultGroupAttr: buttons_module_default_render_attributes_namespaceObject.tooltip_two_font?.decoration?.font,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tooltip #2', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ButtonGroupContainer, {\n    attrName: \"button_one\",\n    defaultGroupAttr: getButtonsButtonOneDecorationDefaultGroupAttr(defaultSettingsAttrs?.button_one?.decoration?.asMutable?.({\n      deep: true\n    })),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button One', 'dsm-supreme-modules-pro-for-divi'),\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button One', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      alignment: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ButtonGroupContainer, {\n    attrName: \"button_two\",\n    defaultGroupAttr: (_buttonDefaultRenderA = buttons_module_default_render_attributes_namespaceObject.button_two?.decoration) !== null && _buttonDefaultRenderA !== void 0 ? _buttonDefaultRenderA : {},\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Two', 'dsm-supreme-modules-pro-for-divi'),\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Two', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      alignment: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    defaultGroupAttr: decorationDefaults?.spacing\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    defaultGroupAttr: decorationDefaults?.border\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    defaultGroupAttr: decorationDefaults?.boxShadow\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, {\n    defaultGroupAttr: decorationDefaults?.filters\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, {\n    defaultGroupAttr: decorationDefaults?.transform\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"animation\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animation', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_one_hover_animation.innerContent\",\n    defaultAttr: fd.button_one_hover_animation,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Hover #1 Animation', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: animationOpt\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_one_icon_hover_animation.innerContent\",\n    defaultAttr: fd.button_one_icon_hover_animation,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Icon Hover #1 Animation', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: iconAnimationOpt\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_two_hover_animation.innerContent\",\n    defaultAttr: fd.button_two_hover_animation,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Hover #2 Animation', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: animationOpt\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_two_icon_hover_animation.innerContent\",\n    defaultAttr: fd.button_two_icon_hover_animation,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Icon Hover #2 Animation', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: iconAnimationOpt\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, {\n    grouped: false,\n    defaultGroupAttr: decorationDefaults?.animation\n  })));\n}\n/* harmony default export */ const buttons_settings_design = (buttons_settings_design_SettingsDesign);\n;// ./packages/module-library/buttons/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction buttons_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_button\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const buttons_settings_advanced = (buttons_settings_advanced_SettingsAdvanced);\n;// ./node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs\n/**\n * Custom positioning reference element.\n * @see https://floating-ui.com/docs/virtual-elements\n */\n\nconst sides = ['top', 'right', 'bottom', 'left'];\nconst alignments = ['start', 'end'];\nconst placements = /*#__PURE__*/sides.reduce((acc, side) => acc.concat(side, side + \"-\" + alignments[0], side + \"-\" + alignments[1]), []);\nconst min = Math.min;\nconst max = Math.max;\nconst round = Math.round;\nconst floor = Math.floor;\nconst createCoords = v => ({\n  x: v,\n  y: v\n});\nconst oppositeSideMap = {\n  left: 'right',\n  right: 'left',\n  bottom: 'top',\n  top: 'bottom'\n};\nfunction clamp(start, value, end) {\n  return max(start, min(value, end));\n}\nfunction evaluate(value, param) {\n  return typeof value === 'function' ? value(param) : value;\n}\nfunction getSide(placement) {\n  return placement.split('-')[0];\n}\nfunction getAlignment(placement) {\n  return placement.split('-')[1];\n}\nfunction getOppositeAxis(axis) {\n  return axis === 'x' ? 'y' : 'x';\n}\nfunction getAxisLength(axis) {\n  return axis === 'y' ? 'height' : 'width';\n}\nfunction getSideAxis(placement) {\n  const firstChar = placement[0];\n  return firstChar === 't' || firstChar === 'b' ? 'y' : 'x';\n}\nfunction getAlignmentAxis(placement) {\n  return getOppositeAxis(getSideAxis(placement));\n}\nfunction getAlignmentSides(placement, rects, rtl) {\n  if (rtl === void 0) {\n    rtl = false;\n  }\n  const alignment = getAlignment(placement);\n  const alignmentAxis = getAlignmentAxis(placement);\n  const length = getAxisLength(alignmentAxis);\n  let mainAlignmentSide = alignmentAxis === 'x' ? alignment === (rtl ? 'end' : 'start') ? 'right' : 'left' : alignment === 'start' ? 'bottom' : 'top';\n  if (rects.reference[length] > rects.floating[length]) {\n    mainAlignmentSide = getOppositePlacement(mainAlignmentSide);\n  }\n  return [mainAlignmentSide, getOppositePlacement(mainAlignmentSide)];\n}\nfunction getExpandedPlacements(placement) {\n  const oppositePlacement = getOppositePlacement(placement);\n  return [getOppositeAlignmentPlacement(placement), oppositePlacement, getOppositeAlignmentPlacement(oppositePlacement)];\n}\nfunction getOppositeAlignmentPlacement(placement) {\n  return placement.includes('start') ? placement.replace('start', 'end') : placement.replace('end', 'start');\n}\nconst lrPlacement = ['left', 'right'];\nconst rlPlacement = ['right', 'left'];\nconst tbPlacement = ['top', 'bottom'];\nconst btPlacement = ['bottom', 'top'];\nfunction getSideList(side, isStart, rtl) {\n  switch (side) {\n    case 'top':\n    case 'bottom':\n      if (rtl) return isStart ? rlPlacement : lrPlacement;\n      return isStart ? lrPlacement : rlPlacement;\n    case 'left':\n    case 'right':\n      return isStart ? tbPlacement : btPlacement;\n    default:\n      return [];\n  }\n}\nfunction getOppositeAxisPlacements(placement, flipAlignment, direction, rtl) {\n  const alignment = getAlignment(placement);\n  let list = getSideList(getSide(placement), direction === 'start', rtl);\n  if (alignment) {\n    list = list.map(side => side + \"-\" + alignment);\n    if (flipAlignment) {\n      list = list.concat(list.map(getOppositeAlignmentPlacement));\n    }\n  }\n  return list;\n}\nfunction getOppositePlacement(placement) {\n  const side = getSide(placement);\n  return oppositeSideMap[side] + placement.slice(side.length);\n}\nfunction expandPaddingObject(padding) {\n  return {\n    top: 0,\n    right: 0,\n    bottom: 0,\n    left: 0,\n    ...padding\n  };\n}\nfunction getPaddingObject(padding) {\n  return typeof padding !== 'number' ? expandPaddingObject(padding) : {\n    top: padding,\n    right: padding,\n    bottom: padding,\n    left: padding\n  };\n}\nfunction rectToClientRect(rect) {\n  const {\n    x,\n    y,\n    width,\n    height\n  } = rect;\n  return {\n    width,\n    height,\n    top: y,\n    left: x,\n    right: x + width,\n    bottom: y + height,\n    x,\n    y\n  };\n}\n\n\n\n;// ./node_modules/@floating-ui/core/dist/floating-ui.core.mjs\n\n\n\nfunction computeCoordsFromPlacement(_ref, placement, rtl) {\n  let {\n    reference,\n    floating\n  } = _ref;\n  const sideAxis = getSideAxis(placement);\n  const alignmentAxis = getAlignmentAxis(placement);\n  const alignLength = getAxisLength(alignmentAxis);\n  const side = getSide(placement);\n  const isVertical = sideAxis === 'y';\n  const commonX = reference.x + reference.width / 2 - floating.width / 2;\n  const commonY = reference.y + reference.height / 2 - floating.height / 2;\n  const commonAlign = reference[alignLength] / 2 - floating[alignLength] / 2;\n  let coords;\n  switch (side) {\n    case 'top':\n      coords = {\n        x: commonX,\n        y: reference.y - floating.height\n      };\n      break;\n    case 'bottom':\n      coords = {\n        x: commonX,\n        y: reference.y + reference.height\n      };\n      break;\n    case 'right':\n      coords = {\n        x: reference.x + reference.width,\n        y: commonY\n      };\n      break;\n    case 'left':\n      coords = {\n        x: reference.x - floating.width,\n        y: commonY\n      };\n      break;\n    default:\n      coords = {\n        x: reference.x,\n        y: reference.y\n      };\n  }\n  switch (getAlignment(placement)) {\n    case 'start':\n      coords[alignmentAxis] -= commonAlign * (rtl && isVertical ? -1 : 1);\n      break;\n    case 'end':\n      coords[alignmentAxis] += commonAlign * (rtl && isVertical ? -1 : 1);\n      break;\n  }\n  return coords;\n}\n\n/**\n * Resolves with an object of overflow side offsets that determine how much the\n * element is overflowing a given clipping boundary on each side.\n * - positive = overflowing the boundary by that number of pixels\n * - negative = how many pixels left before it will overflow\n * - 0 = lies flush with the boundary\n * @see https://floating-ui.com/docs/detectOverflow\n */\nasync function detectOverflow(state, options) {\n  var _await$platform$isEle;\n  if (options === void 0) {\n    options = {};\n  }\n  const {\n    x,\n    y,\n    platform,\n    rects,\n    elements,\n    strategy\n  } = state;\n  const {\n    boundary = 'clippingAncestors',\n    rootBoundary = 'viewport',\n    elementContext = 'floating',\n    altBoundary = false,\n    padding = 0\n  } = evaluate(options, state);\n  const paddingObject = getPaddingObject(padding);\n  const altContext = elementContext === 'floating' ? 'reference' : 'floating';\n  const element = elements[altBoundary ? altContext : elementContext];\n  const clippingClientRect = rectToClientRect(await platform.getClippingRect({\n    element: ((_await$platform$isEle = await (platform.isElement == null ? void 0 : platform.isElement(element))) != null ? _await$platform$isEle : true) ? element : element.contextElement || (await (platform.getDocumentElement == null ? void 0 : platform.getDocumentElement(elements.floating))),\n    boundary,\n    rootBoundary,\n    strategy\n  }));\n  const rect = elementContext === 'floating' ? {\n    x,\n    y,\n    width: rects.floating.width,\n    height: rects.floating.height\n  } : rects.reference;\n  const offsetParent = await (platform.getOffsetParent == null ? void 0 : platform.getOffsetParent(elements.floating));\n  const offsetScale = (await (platform.isElement == null ? void 0 : platform.isElement(offsetParent))) ? (await (platform.getScale == null ? void 0 : platform.getScale(offsetParent))) || {\n    x: 1,\n    y: 1\n  } : {\n    x: 1,\n    y: 1\n  };\n  const elementClientRect = rectToClientRect(platform.convertOffsetParentRelativeRectToViewportRelativeRect ? await platform.convertOffsetParentRelativeRectToViewportRelativeRect({\n    elements,\n    rect,\n    offsetParent,\n    strategy\n  }) : rect);\n  return {\n    top: (clippingClientRect.top - elementClientRect.top + paddingObject.top) / offsetScale.y,\n    bottom: (elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom) / offsetScale.y,\n    left: (clippingClientRect.left - elementClientRect.left + paddingObject.left) / offsetScale.x,\n    right: (elementClientRect.right - clippingClientRect.right + paddingObject.right) / offsetScale.x\n  };\n}\n\n// Maximum number of resets that can occur before bailing to avoid infinite reset loops.\nconst MAX_RESET_COUNT = 50;\n\n/**\n * Computes the `x` and `y` coordinates that will place the floating element\n * next to a given reference element.\n *\n * This export does not have any `platform` interface logic. You will need to\n * write one for the platform you are using Floating UI with.\n */\nconst computePosition = async (reference, floating, config) => {\n  const {\n    placement = 'bottom',\n    strategy = 'absolute',\n    middleware = [],\n    platform\n  } = config;\n  const platformWithDetectOverflow = platform.detectOverflow ? platform : {\n    ...platform,\n    detectOverflow\n  };\n  const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(floating));\n  let rects = await platform.getElementRects({\n    reference,\n    floating,\n    strategy\n  });\n  let {\n    x,\n    y\n  } = computeCoordsFromPlacement(rects, placement, rtl);\n  let statefulPlacement = placement;\n  let resetCount = 0;\n  const middlewareData = {};\n  for (let i = 0; i < middleware.length; i++) {\n    const currentMiddleware = middleware[i];\n    if (!currentMiddleware) {\n      continue;\n    }\n    const {\n      name,\n      fn\n    } = currentMiddleware;\n    const {\n      x: nextX,\n      y: nextY,\n      data,\n      reset\n    } = await fn({\n      x,\n      y,\n      initialPlacement: placement,\n      placement: statefulPlacement,\n      strategy,\n      middlewareData,\n      rects,\n      platform: platformWithDetectOverflow,\n      elements: {\n        reference,\n        floating\n      }\n    });\n    x = nextX != null ? nextX : x;\n    y = nextY != null ? nextY : y;\n    middlewareData[name] = {\n      ...middlewareData[name],\n      ...data\n    };\n    if (reset && resetCount < MAX_RESET_COUNT) {\n      resetCount++;\n      if (typeof reset === 'object') {\n        if (reset.placement) {\n          statefulPlacement = reset.placement;\n        }\n        if (reset.rects) {\n          rects = reset.rects === true ? await platform.getElementRects({\n            reference,\n            floating,\n            strategy\n          }) : reset.rects;\n        }\n        ({\n          x,\n          y\n        } = computeCoordsFromPlacement(rects, statefulPlacement, rtl));\n      }\n      i = -1;\n    }\n  }\n  return {\n    x,\n    y,\n    placement: statefulPlacement,\n    strategy,\n    middlewareData\n  };\n};\n\n/**\n * Provides data to position an inner element of the floating element so that it\n * appears centered to the reference element.\n * @see https://floating-ui.com/docs/arrow\n */\nconst arrow = options => ({\n  name: 'arrow',\n  options,\n  async fn(state) {\n    const {\n      x,\n      y,\n      placement,\n      rects,\n      platform,\n      elements,\n      middlewareData\n    } = state;\n    // Since `element` is required, we don't Partial<> the type.\n    const {\n      element,\n      padding = 0\n    } = evaluate(options, state) || {};\n    if (element == null) {\n      return {};\n    }\n    const paddingObject = getPaddingObject(padding);\n    const coords = {\n      x,\n      y\n    };\n    const axis = getAlignmentAxis(placement);\n    const length = getAxisLength(axis);\n    const arrowDimensions = await platform.getDimensions(element);\n    const isYAxis = axis === 'y';\n    const minProp = isYAxis ? 'top' : 'left';\n    const maxProp = isYAxis ? 'bottom' : 'right';\n    const clientProp = isYAxis ? 'clientHeight' : 'clientWidth';\n    const endDiff = rects.reference[length] + rects.reference[axis] - coords[axis] - rects.floating[length];\n    const startDiff = coords[axis] - rects.reference[axis];\n    const arrowOffsetParent = await (platform.getOffsetParent == null ? void 0 : platform.getOffsetParent(element));\n    let clientSize = arrowOffsetParent ? arrowOffsetParent[clientProp] : 0;\n\n    // DOM platform can return `window` as the `offsetParent`.\n    if (!clientSize || !(await (platform.isElement == null ? void 0 : platform.isElement(arrowOffsetParent)))) {\n      clientSize = elements.floating[clientProp] || rects.floating[length];\n    }\n    const centerToReference = endDiff / 2 - startDiff / 2;\n\n    // If the padding is large enough that it causes the arrow to no longer be\n    // centered, modify the padding so that it is centered.\n    const largestPossiblePadding = clientSize / 2 - arrowDimensions[length] / 2 - 1;\n    const minPadding = min(paddingObject[minProp], largestPossiblePadding);\n    const maxPadding = min(paddingObject[maxProp], largestPossiblePadding);\n\n    // Make sure the arrow doesn't overflow the floating element if the center\n    // point is outside the floating element's bounds.\n    const min$1 = minPadding;\n    const max = clientSize - arrowDimensions[length] - maxPadding;\n    const center = clientSize / 2 - arrowDimensions[length] / 2 + centerToReference;\n    const offset = clamp(min$1, center, max);\n\n    // If the reference is small enough that the arrow's padding causes it to\n    // to point to nothing for an aligned placement, adjust the offset of the\n    // floating element itself. To ensure `shift()` continues to take action,\n    // a single reset is performed when this is true.\n    const shouldAddOffset = !middlewareData.arrow && getAlignment(placement) != null && center !== offset && rects.reference[length] / 2 - (center < min$1 ? minPadding : maxPadding) - arrowDimensions[length] / 2 < 0;\n    const alignmentOffset = shouldAddOffset ? center < min$1 ? center - min$1 : center - max : 0;\n    return {\n      [axis]: coords[axis] + alignmentOffset,\n      data: {\n        [axis]: offset,\n        centerOffset: center - offset - alignmentOffset,\n        ...(shouldAddOffset && {\n          alignmentOffset\n        })\n      },\n      reset: shouldAddOffset\n    };\n  }\n});\n\nfunction getPlacementList(alignment, autoAlignment, allowedPlacements) {\n  const allowedPlacementsSortedByAlignment = alignment ? [...allowedPlacements.filter(placement => getAlignment(placement) === alignment), ...allowedPlacements.filter(placement => getAlignment(placement) !== alignment)] : allowedPlacements.filter(placement => getSide(placement) === placement);\n  return allowedPlacementsSortedByAlignment.filter(placement => {\n    if (alignment) {\n      return getAlignment(placement) === alignment || (autoAlignment ? getOppositeAlignmentPlacement(placement) !== placement : false);\n    }\n    return true;\n  });\n}\n/**\n * Optimizes the visibility of the floating element by choosing the placement\n * that has the most space available automatically, without needing to specify a\n * preferred placement. Alternative to `flip`.\n * @see https://floating-ui.com/docs/autoPlacement\n */\nconst autoPlacement = function (options) {\n  if (options === void 0) {\n    options = {};\n  }\n  return {\n    name: 'autoPlacement',\n    options,\n    async fn(state) {\n      var _middlewareData$autoP, _middlewareData$autoP2, _placementsThatFitOnE;\n      const {\n        rects,\n        middlewareData,\n        placement,\n        platform,\n        elements\n      } = state;\n      const {\n        crossAxis = false,\n        alignment,\n        allowedPlacements = placements,\n        autoAlignment = true,\n        ...detectOverflowOptions\n      } = evaluate(options, state);\n      const placements$1 = alignment !== undefined || allowedPlacements === placements ? getPlacementList(alignment || null, autoAlignment, allowedPlacements) : allowedPlacements;\n      const overflow = await platform.detectOverflow(state, detectOverflowOptions);\n      const currentIndex = ((_middlewareData$autoP = middlewareData.autoPlacement) == null ? void 0 : _middlewareData$autoP.index) || 0;\n      const currentPlacement = placements$1[currentIndex];\n      if (currentPlacement == null) {\n        return {};\n      }\n      const alignmentSides = getAlignmentSides(currentPlacement, rects, await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating)));\n\n      // Make `computeCoords` start from the right place.\n      if (placement !== currentPlacement) {\n        return {\n          reset: {\n            placement: placements$1[0]\n          }\n        };\n      }\n      const currentOverflows = [overflow[getSide(currentPlacement)], overflow[alignmentSides[0]], overflow[alignmentSides[1]]];\n      const allOverflows = [...(((_middlewareData$autoP2 = middlewareData.autoPlacement) == null ? void 0 : _middlewareData$autoP2.overflows) || []), {\n        placement: currentPlacement,\n        overflows: currentOverflows\n      }];\n      const nextPlacement = placements$1[currentIndex + 1];\n\n      // There are more placements to check.\n      if (nextPlacement) {\n        return {\n          data: {\n            index: currentIndex + 1,\n            overflows: allOverflows\n          },\n          reset: {\n            placement: nextPlacement\n          }\n        };\n      }\n      const placementsSortedByMostSpace = allOverflows.map(d => {\n        const alignment = getAlignment(d.placement);\n        return [d.placement, alignment && crossAxis ?\n        // Check along the mainAxis and main crossAxis side.\n        d.overflows.slice(0, 2).reduce((acc, v) => acc + v, 0) :\n        // Check only the mainAxis.\n        d.overflows[0], d.overflows];\n      }).sort((a, b) => a[1] - b[1]);\n      const placementsThatFitOnEachSide = placementsSortedByMostSpace.filter(d => d[2].slice(0,\n      // Aligned placements should not check their opposite crossAxis\n      // side.\n      getAlignment(d[0]) ? 2 : 3).every(v => v <= 0));\n      const resetPlacement = ((_placementsThatFitOnE = placementsThatFitOnEachSide[0]) == null ? void 0 : _placementsThatFitOnE[0]) || placementsSortedByMostSpace[0][0];\n      if (resetPlacement !== placement) {\n        return {\n          data: {\n            index: currentIndex + 1,\n            overflows: allOverflows\n          },\n          reset: {\n            placement: resetPlacement\n          }\n        };\n      }\n      return {};\n    }\n  };\n};\n\n/**\n * Optimizes the visibility of the floating element by flipping the `placement`\n * in order to keep it in view when the preferred placement(s) will overflow the\n * clipping boundary. Alternative to `autoPlacement`.\n * @see https://floating-ui.com/docs/flip\n */\nconst flip = function (options) {\n  if (options === void 0) {\n    options = {};\n  }\n  return {\n    name: 'flip',\n    options,\n    async fn(state) {\n      var _middlewareData$arrow, _middlewareData$flip;\n      const {\n        placement,\n        middlewareData,\n        rects,\n        initialPlacement,\n        platform,\n        elements\n      } = state;\n      const {\n        mainAxis: checkMainAxis = true,\n        crossAxis: checkCrossAxis = true,\n        fallbackPlacements: specifiedFallbackPlacements,\n        fallbackStrategy = 'bestFit',\n        fallbackAxisSideDirection = 'none',\n        flipAlignment = true,\n        ...detectOverflowOptions\n      } = evaluate(options, state);\n\n      // If a reset by the arrow was caused due to an alignment offset being\n      // added, we should skip any logic now since `flip()` has already done its\n      // work.\n      // https://github.com/floating-ui/floating-ui/issues/2549#issuecomment-1719601643\n      if ((_middlewareData$arrow = middlewareData.arrow) != null && _middlewareData$arrow.alignmentOffset) {\n        return {};\n      }\n      const side = getSide(placement);\n      const initialSideAxis = getSideAxis(initialPlacement);\n      const isBasePlacement = getSide(initialPlacement) === initialPlacement;\n      const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating));\n      const fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipAlignment ? [getOppositePlacement(initialPlacement)] : getExpandedPlacements(initialPlacement));\n      const hasFallbackAxisSideDirection = fallbackAxisSideDirection !== 'none';\n      if (!specifiedFallbackPlacements && hasFallbackAxisSideDirection) {\n        fallbackPlacements.push(...getOppositeAxisPlacements(initialPlacement, flipAlignment, fallbackAxisSideDirection, rtl));\n      }\n      const placements = [initialPlacement, ...fallbackPlacements];\n      const overflow = await platform.detectOverflow(state, detectOverflowOptions);\n      const overflows = [];\n      let overflowsData = ((_middlewareData$flip = middlewareData.flip) == null ? void 0 : _middlewareData$flip.overflows) || [];\n      if (checkMainAxis) {\n        overflows.push(overflow[side]);\n      }\n      if (checkCrossAxis) {\n        const sides = getAlignmentSides(placement, rects, rtl);\n        overflows.push(overflow[sides[0]], overflow[sides[1]]);\n      }\n      overflowsData = [...overflowsData, {\n        placement,\n        overflows\n      }];\n\n      // One or more sides is overflowing.\n      if (!overflows.every(side => side <= 0)) {\n        var _middlewareData$flip2, _overflowsData$filter;\n        const nextIndex = (((_middlewareData$flip2 = middlewareData.flip) == null ? void 0 : _middlewareData$flip2.index) || 0) + 1;\n        const nextPlacement = placements[nextIndex];\n        if (nextPlacement) {\n          const ignoreCrossAxisOverflow = checkCrossAxis === 'alignment' ? initialSideAxis !== getSideAxis(nextPlacement) : false;\n          if (!ignoreCrossAxisOverflow ||\n          // We leave the current main axis only if every placement on that axis\n          // overflows the main axis.\n          overflowsData.every(d => getSideAxis(d.placement) === initialSideAxis ? d.overflows[0] > 0 : true)) {\n            // Try next placement and re-run the lifecycle.\n            return {\n              data: {\n                index: nextIndex,\n                overflows: overflowsData\n              },\n              reset: {\n                placement: nextPlacement\n              }\n            };\n          }\n        }\n\n        // First, find the candidates that fit on the mainAxis side of overflow,\n        // then find the placement that fits the best on the main crossAxis side.\n        let resetPlacement = (_overflowsData$filter = overflowsData.filter(d => d.overflows[0] <= 0).sort((a, b) => a.overflows[1] - b.overflows[1])[0]) == null ? void 0 : _overflowsData$filter.placement;\n\n        // Otherwise fallback.\n        if (!resetPlacement) {\n          switch (fallbackStrategy) {\n            case 'bestFit':\n              {\n                var _overflowsData$filter2;\n                const placement = (_overflowsData$filter2 = overflowsData.filter(d => {\n                  if (hasFallbackAxisSideDirection) {\n                    const currentSideAxis = getSideAxis(d.placement);\n                    return currentSideAxis === initialSideAxis ||\n                    // Create a bias to the `y` side axis due to horizontal\n                    // reading directions favoring greater width.\n                    currentSideAxis === 'y';\n                  }\n                  return true;\n                }).map(d => [d.placement, d.overflows.filter(overflow => overflow > 0).reduce((acc, overflow) => acc + overflow, 0)]).sort((a, b) => a[1] - b[1])[0]) == null ? void 0 : _overflowsData$filter2[0];\n                if (placement) {\n                  resetPlacement = placement;\n                }\n                break;\n              }\n            case 'initialPlacement':\n              resetPlacement = initialPlacement;\n              break;\n          }\n        }\n        if (placement !== resetPlacement) {\n          return {\n            reset: {\n              placement: resetPlacement\n            }\n          };\n        }\n      }\n      return {};\n    }\n  };\n};\n\nfunction getSideOffsets(overflow, rect) {\n  return {\n    top: overflow.top - rect.height,\n    right: overflow.right - rect.width,\n    bottom: overflow.bottom - rect.height,\n    left: overflow.left - rect.width\n  };\n}\nfunction isAnySideFullyClipped(overflow) {\n  return sides.some(side => overflow[side] >= 0);\n}\n/**\n * Provides data to hide the floating element in applicable situations, such as\n * when it is not in the same clipping context as the reference element.\n * @see https://floating-ui.com/docs/hide\n */\nconst hide = function (options) {\n  if (options === void 0) {\n    options = {};\n  }\n  return {\n    name: 'hide',\n    options,\n    async fn(state) {\n      const {\n        rects,\n        platform\n      } = state;\n      const {\n        strategy = 'referenceHidden',\n        ...detectOverflowOptions\n      } = evaluate(options, state);\n      switch (strategy) {\n        case 'referenceHidden':\n          {\n            const overflow = await platform.detectOverflow(state, {\n              ...detectOverflowOptions,\n              elementContext: 'reference'\n            });\n            const offsets = getSideOffsets(overflow, rects.reference);\n            return {\n              data: {\n                referenceHiddenOffsets: offsets,\n                referenceHidden: isAnySideFullyClipped(offsets)\n              }\n            };\n          }\n        case 'escaped':\n          {\n            const overflow = await platform.detectOverflow(state, {\n              ...detectOverflowOptions,\n              altBoundary: true\n            });\n            const offsets = getSideOffsets(overflow, rects.floating);\n            return {\n              data: {\n                escapedOffsets: offsets,\n                escaped: isAnySideFullyClipped(offsets)\n              }\n            };\n          }\n        default:\n          {\n            return {};\n          }\n      }\n    }\n  };\n};\n\nfunction getBoundingRect(rects) {\n  const minX = min(...rects.map(rect => rect.left));\n  const minY = min(...rects.map(rect => rect.top));\n  const maxX = max(...rects.map(rect => rect.right));\n  const maxY = max(...rects.map(rect => rect.bottom));\n  return {\n    x: minX,\n    y: minY,\n    width: maxX - minX,\n    height: maxY - minY\n  };\n}\nfunction getRectsByLine(rects) {\n  const sortedRects = rects.slice().sort((a, b) => a.y - b.y);\n  const groups = [];\n  let prevRect = null;\n  for (let i = 0; i < sortedRects.length; i++) {\n    const rect = sortedRects[i];\n    if (!prevRect || rect.y - prevRect.y > prevRect.height / 2) {\n      groups.push([rect]);\n    } else {\n      groups[groups.length - 1].push(rect);\n    }\n    prevRect = rect;\n  }\n  return groups.map(rect => rectToClientRect(getBoundingRect(rect)));\n}\n/**\n * Provides improved positioning for inline reference elements that can span\n * over multiple lines, such as hyperlinks or range selections.\n * @see https://floating-ui.com/docs/inline\n */\nconst inline = function (options) {\n  if (options === void 0) {\n    options = {};\n  }\n  return {\n    name: 'inline',\n    options,\n    async fn(state) {\n      const {\n        placement,\n        elements,\n        rects,\n        platform,\n        strategy\n      } = state;\n      // A MouseEvent's client{X,Y} coords can be up to 2 pixels off a\n      // ClientRect's bounds, despite the event listener being triggered. A\n      // padding of 2 seems to handle this issue.\n      const {\n        padding = 2,\n        x,\n        y\n      } = evaluate(options, state);\n      const nativeClientRects = Array.from((await (platform.getClientRects == null ? void 0 : platform.getClientRects(elements.reference))) || []);\n      const clientRects = getRectsByLine(nativeClientRects);\n      const fallback = rectToClientRect(getBoundingRect(nativeClientRects));\n      const paddingObject = getPaddingObject(padding);\n      function getBoundingClientRect() {\n        // There are two rects and they are disjoined.\n        if (clientRects.length === 2 && clientRects[0].left > clientRects[1].right && x != null && y != null) {\n          // Find the first rect in which the point is fully inside.\n          return clientRects.find(rect => x > rect.left - paddingObject.left && x < rect.right + paddingObject.right && y > rect.top - paddingObject.top && y < rect.bottom + paddingObject.bottom) || fallback;\n        }\n\n        // There are 2 or more connected rects.\n        if (clientRects.length >= 2) {\n          if (getSideAxis(placement) === 'y') {\n            const firstRect = clientRects[0];\n            const lastRect = clientRects[clientRects.length - 1];\n            const isTop = getSide(placement) === 'top';\n            const top = firstRect.top;\n            const bottom = lastRect.bottom;\n            const left = isTop ? firstRect.left : lastRect.left;\n            const right = isTop ? firstRect.right : lastRect.right;\n            const width = right - left;\n            const height = bottom - top;\n            return {\n              top,\n              bottom,\n              left,\n              right,\n              width,\n              height,\n              x: left,\n              y: top\n            };\n          }\n          const isLeftSide = getSide(placement) === 'left';\n          const maxRight = max(...clientRects.map(rect => rect.right));\n          const minLeft = min(...clientRects.map(rect => rect.left));\n          const measureRects = clientRects.filter(rect => isLeftSide ? rect.left === minLeft : rect.right === maxRight);\n          const top = measureRects[0].top;\n          const bottom = measureRects[measureRects.length - 1].bottom;\n          const left = minLeft;\n          const right = maxRight;\n          const width = right - left;\n          const height = bottom - top;\n          return {\n            top,\n            bottom,\n            left,\n            right,\n            width,\n            height,\n            x: left,\n            y: top\n          };\n        }\n        return fallback;\n      }\n      const resetRects = await platform.getElementRects({\n        reference: {\n          getBoundingClientRect\n        },\n        floating: elements.floating,\n        strategy\n      });\n      if (rects.reference.x !== resetRects.reference.x || rects.reference.y !== resetRects.reference.y || rects.reference.width !== resetRects.reference.width || rects.reference.height !== resetRects.reference.height) {\n        return {\n          reset: {\n            rects: resetRects\n          }\n        };\n      }\n      return {};\n    }\n  };\n};\n\nconst originSides = /*#__PURE__*/new Set(['left', 'top']);\n\n// For type backwards-compatibility, the `OffsetOptions` type was also\n// Derivable.\n\nasync function convertValueToCoords(state, options) {\n  const {\n    placement,\n    platform,\n    elements\n  } = state;\n  const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating));\n  const side = getSide(placement);\n  const alignment = getAlignment(placement);\n  const isVertical = getSideAxis(placement) === 'y';\n  const mainAxisMulti = originSides.has(side) ? -1 : 1;\n  const crossAxisMulti = rtl && isVertical ? -1 : 1;\n  const rawValue = evaluate(options, state);\n\n  // eslint-disable-next-line prefer-const\n  let {\n    mainAxis,\n    crossAxis,\n    alignmentAxis\n  } = typeof rawValue === 'number' ? {\n    mainAxis: rawValue,\n    crossAxis: 0,\n    alignmentAxis: null\n  } : {\n    mainAxis: rawValue.mainAxis || 0,\n    crossAxis: rawValue.crossAxis || 0,\n    alignmentAxis: rawValue.alignmentAxis\n  };\n  if (alignment && typeof alignmentAxis === 'number') {\n    crossAxis = alignment === 'end' ? alignmentAxis * -1 : alignmentAxis;\n  }\n  return isVertical ? {\n    x: crossAxis * crossAxisMulti,\n    y: mainAxis * mainAxisMulti\n  } : {\n    x: mainAxis * mainAxisMulti,\n    y: crossAxis * crossAxisMulti\n  };\n}\n\n/**\n * Modifies the placement by translating the floating element along the\n * specified axes.\n * A number (shorthand for `mainAxis` or distance), or an axes configuration\n * object may be passed.\n * @see https://floating-ui.com/docs/offset\n */\nconst offset = function (options) {\n  if (options === void 0) {\n    options = 0;\n  }\n  return {\n    name: 'offset',\n    options,\n    async fn(state) {\n      var _middlewareData$offse, _middlewareData$arrow;\n      const {\n        x,\n        y,\n        placement,\n        middlewareData\n      } = state;\n      const diffCoords = await convertValueToCoords(state, options);\n\n      // If the placement is the same and the arrow caused an alignment offset\n      // then we don't need to change the positioning coordinates.\n      if (placement === ((_middlewareData$offse = middlewareData.offset) == null ? void 0 : _middlewareData$offse.placement) && (_middlewareData$arrow = middlewareData.arrow) != null && _middlewareData$arrow.alignmentOffset) {\n        return {};\n      }\n      return {\n        x: x + diffCoords.x,\n        y: y + diffCoords.y,\n        data: {\n          ...diffCoords,\n          placement\n        }\n      };\n    }\n  };\n};\n\n/**\n * Optimizes the visibility of the floating element by shifting it in order to\n * keep it in view when it will overflow the clipping boundary.\n * @see https://floating-ui.com/docs/shift\n */\nconst shift = function (options) {\n  if (options === void 0) {\n    options = {};\n  }\n  return {\n    name: 'shift',\n    options,\n    async fn(state) {\n      const {\n        x,\n        y,\n        placement,\n        platform\n      } = state;\n      const {\n        mainAxis: checkMainAxis = true,\n        crossAxis: checkCrossAxis = false,\n        limiter = {\n          fn: _ref => {\n            let {\n              x,\n              y\n            } = _ref;\n            return {\n              x,\n              y\n            };\n          }\n        },\n        ...detectOverflowOptions\n      } = evaluate(options, state);\n      const coords = {\n        x,\n        y\n      };\n      const overflow = await platform.detectOverflow(state, detectOverflowOptions);\n      const crossAxis = getSideAxis(getSide(placement));\n      const mainAxis = getOppositeAxis(crossAxis);\n      let mainAxisCoord = coords[mainAxis];\n      let crossAxisCoord = coords[crossAxis];\n      if (checkMainAxis) {\n        const minSide = mainAxis === 'y' ? 'top' : 'left';\n        const maxSide = mainAxis === 'y' ? 'bottom' : 'right';\n        const min = mainAxisCoord + overflow[minSide];\n        const max = mainAxisCoord - overflow[maxSide];\n        mainAxisCoord = clamp(min, mainAxisCoord, max);\n      }\n      if (checkCrossAxis) {\n        const minSide = crossAxis === 'y' ? 'top' : 'left';\n        const maxSide = crossAxis === 'y' ? 'bottom' : 'right';\n        const min = crossAxisCoord + overflow[minSide];\n        const max = crossAxisCoord - overflow[maxSide];\n        crossAxisCoord = clamp(min, crossAxisCoord, max);\n      }\n      const limitedCoords = limiter.fn({\n        ...state,\n        [mainAxis]: mainAxisCoord,\n        [crossAxis]: crossAxisCoord\n      });\n      return {\n        ...limitedCoords,\n        data: {\n          x: limitedCoords.x - x,\n          y: limitedCoords.y - y,\n          enabled: {\n            [mainAxis]: checkMainAxis,\n            [crossAxis]: checkCrossAxis\n          }\n        }\n      };\n    }\n  };\n};\n/**\n * Built-in `limiter` that will stop `shift()` at a certain point.\n */\nconst limitShift = function (options) {\n  if (options === void 0) {\n    options = {};\n  }\n  return {\n    options,\n    fn(state) {\n      const {\n        x,\n        y,\n        placement,\n        rects,\n        middlewareData\n      } = state;\n      const {\n        offset = 0,\n        mainAxis: checkMainAxis = true,\n        crossAxis: checkCrossAxis = true\n      } = evaluate(options, state);\n      const coords = {\n        x,\n        y\n      };\n      const crossAxis = getSideAxis(placement);\n      const mainAxis = getOppositeAxis(crossAxis);\n      let mainAxisCoord = coords[mainAxis];\n      let crossAxisCoord = coords[crossAxis];\n      const rawOffset = evaluate(offset, state);\n      const computedOffset = typeof rawOffset === 'number' ? {\n        mainAxis: rawOffset,\n        crossAxis: 0\n      } : {\n        mainAxis: 0,\n        crossAxis: 0,\n        ...rawOffset\n      };\n      if (checkMainAxis) {\n        const len = mainAxis === 'y' ? 'height' : 'width';\n        const limitMin = rects.reference[mainAxis] - rects.floating[len] + computedOffset.mainAxis;\n        const limitMax = rects.reference[mainAxis] + rects.reference[len] - computedOffset.mainAxis;\n        if (mainAxisCoord < limitMin) {\n          mainAxisCoord = limitMin;\n        } else if (mainAxisCoord > limitMax) {\n          mainAxisCoord = limitMax;\n        }\n      }\n      if (checkCrossAxis) {\n        var _middlewareData$offse, _middlewareData$offse2;\n        const len = mainAxis === 'y' ? 'width' : 'height';\n        const isOriginSide = originSides.has(getSide(placement));\n        const limitMin = rects.reference[crossAxis] - rects.floating[len] + (isOriginSide ? ((_middlewareData$offse = middlewareData.offset) == null ? void 0 : _middlewareData$offse[crossAxis]) || 0 : 0) + (isOriginSide ? 0 : computedOffset.crossAxis);\n        const limitMax = rects.reference[crossAxis] + rects.reference[len] + (isOriginSide ? 0 : ((_middlewareData$offse2 = middlewareData.offset) == null ? void 0 : _middlewareData$offse2[crossAxis]) || 0) - (isOriginSide ? computedOffset.crossAxis : 0);\n        if (crossAxisCoord < limitMin) {\n          crossAxisCoord = limitMin;\n        } else if (crossAxisCoord > limitMax) {\n          crossAxisCoord = limitMax;\n        }\n      }\n      return {\n        [mainAxis]: mainAxisCoord,\n        [crossAxis]: crossAxisCoord\n      };\n    }\n  };\n};\n\n/**\n * Provides data that allows you to change the size of the floating element —\n * for instance, prevent it from overflowing the clipping boundary or match the\n * width of the reference element.\n * @see https://floating-ui.com/docs/size\n */\nconst size = function (options) {\n  if (options === void 0) {\n    options = {};\n  }\n  return {\n    name: 'size',\n    options,\n    async fn(state) {\n      var _state$middlewareData, _state$middlewareData2;\n      const {\n        placement,\n        rects,\n        platform,\n        elements\n      } = state;\n      const {\n        apply = () => {},\n        ...detectOverflowOptions\n      } = evaluate(options, state);\n      const overflow = await platform.detectOverflow(state, detectOverflowOptions);\n      const side = getSide(placement);\n      const alignment = getAlignment(placement);\n      const isYAxis = getSideAxis(placement) === 'y';\n      const {\n        width,\n        height\n      } = rects.floating;\n      let heightSide;\n      let widthSide;\n      if (side === 'top' || side === 'bottom') {\n        heightSide = side;\n        widthSide = alignment === ((await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating))) ? 'start' : 'end') ? 'left' : 'right';\n      } else {\n        widthSide = side;\n        heightSide = alignment === 'end' ? 'top' : 'bottom';\n      }\n      const maximumClippingHeight = height - overflow.top - overflow.bottom;\n      const maximumClippingWidth = width - overflow.left - overflow.right;\n      const overflowAvailableHeight = min(height - overflow[heightSide], maximumClippingHeight);\n      const overflowAvailableWidth = min(width - overflow[widthSide], maximumClippingWidth);\n      const noShift = !state.middlewareData.shift;\n      let availableHeight = overflowAvailableHeight;\n      let availableWidth = overflowAvailableWidth;\n      if ((_state$middlewareData = state.middlewareData.shift) != null && _state$middlewareData.enabled.x) {\n        availableWidth = maximumClippingWidth;\n      }\n      if ((_state$middlewareData2 = state.middlewareData.shift) != null && _state$middlewareData2.enabled.y) {\n        availableHeight = maximumClippingHeight;\n      }\n      if (noShift && !alignment) {\n        const xMin = max(overflow.left, 0);\n        const xMax = max(overflow.right, 0);\n        const yMin = max(overflow.top, 0);\n        const yMax = max(overflow.bottom, 0);\n        if (isYAxis) {\n          availableWidth = width - 2 * (xMin !== 0 || xMax !== 0 ? xMin + xMax : max(overflow.left, overflow.right));\n        } else {\n          availableHeight = height - 2 * (yMin !== 0 || yMax !== 0 ? yMin + yMax : max(overflow.top, overflow.bottom));\n        }\n      }\n      await apply({\n        ...state,\n        availableWidth,\n        availableHeight\n      });\n      const nextDimensions = await platform.getDimensions(elements.floating);\n      if (width !== nextDimensions.width || height !== nextDimensions.height) {\n        return {\n          reset: {\n            rects: true\n          }\n        };\n      }\n      return {};\n    }\n  };\n};\n\n\n\n;// ./node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs\nfunction hasWindow() {\n  return typeof window !== 'undefined';\n}\nfunction getNodeName(node) {\n  if (isNode(node)) {\n    return (node.nodeName || '').toLowerCase();\n  }\n  // Mocked nodes in testing environments may not be instances of Node. By\n  // returning `#document` an infinite loop won't occur.\n  // https://github.com/floating-ui/floating-ui/issues/2317\n  return '#document';\n}\nfunction getWindow(node) {\n  var _node$ownerDocument;\n  return (node == null || (_node$ownerDocument = node.ownerDocument) == null ? void 0 : _node$ownerDocument.defaultView) || window;\n}\nfunction getDocumentElement(node) {\n  var _ref;\n  return (_ref = (isNode(node) ? node.ownerDocument : node.document) || window.document) == null ? void 0 : _ref.documentElement;\n}\nfunction isNode(value) {\n  if (!hasWindow()) {\n    return false;\n  }\n  return value instanceof Node || value instanceof getWindow(value).Node;\n}\nfunction isElement(value) {\n  if (!hasWindow()) {\n    return false;\n  }\n  return value instanceof Element || value instanceof getWindow(value).Element;\n}\nfunction isHTMLElement(value) {\n  if (!hasWindow()) {\n    return false;\n  }\n  return value instanceof HTMLElement || value instanceof getWindow(value).HTMLElement;\n}\nfunction isShadowRoot(value) {\n  if (!hasWindow() || typeof ShadowRoot === 'undefined') {\n    return false;\n  }\n  return value instanceof ShadowRoot || value instanceof getWindow(value).ShadowRoot;\n}\nfunction isOverflowElement(element) {\n  const {\n    overflow,\n    overflowX,\n    overflowY,\n    display\n  } = floating_ui_utils_dom_getComputedStyle(element);\n  return /auto|scroll|overlay|hidden|clip/.test(overflow + overflowY + overflowX) && display !== 'inline' && display !== 'contents';\n}\nfunction isTableElement(element) {\n  return /^(table|td|th)$/.test(getNodeName(element));\n}\nfunction isTopLayer(element) {\n  try {\n    if (element.matches(':popover-open')) {\n      return true;\n    }\n  } catch (_e) {\n    // no-op\n  }\n  try {\n    return element.matches(':modal');\n  } catch (_e) {\n    return false;\n  }\n}\nconst willChangeRe = /transform|translate|scale|rotate|perspective|filter/;\nconst containRe = /paint|layout|strict|content/;\nconst isNotNone = value => !!value && value !== 'none';\nlet isWebKitValue;\nfunction isContainingBlock(elementOrCss) {\n  const css = isElement(elementOrCss) ? floating_ui_utils_dom_getComputedStyle(elementOrCss) : elementOrCss;\n\n  // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n  // https://drafts.csswg.org/css-transforms-2/#individual-transforms\n  return isNotNone(css.transform) || isNotNone(css.translate) || isNotNone(css.scale) || isNotNone(css.rotate) || isNotNone(css.perspective) || !isWebKit() && (isNotNone(css.backdropFilter) || isNotNone(css.filter)) || willChangeRe.test(css.willChange || '') || containRe.test(css.contain || '');\n}\nfunction getContainingBlock(element) {\n  let currentNode = getParentNode(element);\n  while (isHTMLElement(currentNode) && !isLastTraversableNode(currentNode)) {\n    if (isContainingBlock(currentNode)) {\n      return currentNode;\n    } else if (isTopLayer(currentNode)) {\n      return null;\n    }\n    currentNode = getParentNode(currentNode);\n  }\n  return null;\n}\nfunction isWebKit() {\n  if (isWebKitValue == null) {\n    isWebKitValue = typeof CSS !== 'undefined' && CSS.supports && CSS.supports('-webkit-backdrop-filter', 'none');\n  }\n  return isWebKitValue;\n}\nfunction isLastTraversableNode(node) {\n  return /^(html|body|#document)$/.test(getNodeName(node));\n}\nfunction floating_ui_utils_dom_getComputedStyle(element) {\n  return getWindow(element).getComputedStyle(element);\n}\nfunction getNodeScroll(element) {\n  if (isElement(element)) {\n    return {\n      scrollLeft: element.scrollLeft,\n      scrollTop: element.scrollTop\n    };\n  }\n  return {\n    scrollLeft: element.scrollX,\n    scrollTop: element.scrollY\n  };\n}\nfunction getParentNode(node) {\n  if (getNodeName(node) === 'html') {\n    return node;\n  }\n  const result =\n  // Step into the shadow DOM of the parent of a slotted node.\n  node.assignedSlot ||\n  // DOM Element detected.\n  node.parentNode ||\n  // ShadowRoot detected.\n  isShadowRoot(node) && node.host ||\n  // Fallback.\n  getDocumentElement(node);\n  return isShadowRoot(result) ? result.host : result;\n}\nfunction getNearestOverflowAncestor(node) {\n  const parentNode = getParentNode(node);\n  if (isLastTraversableNode(parentNode)) {\n    return node.ownerDocument ? node.ownerDocument.body : node.body;\n  }\n  if (isHTMLElement(parentNode) && isOverflowElement(parentNode)) {\n    return parentNode;\n  }\n  return getNearestOverflowAncestor(parentNode);\n}\nfunction getOverflowAncestors(node, list, traverseIframes) {\n  var _node$ownerDocument2;\n  if (list === void 0) {\n    list = [];\n  }\n  if (traverseIframes === void 0) {\n    traverseIframes = true;\n  }\n  const scrollableAncestor = getNearestOverflowAncestor(node);\n  const isBody = scrollableAncestor === ((_node$ownerDocument2 = node.ownerDocument) == null ? void 0 : _node$ownerDocument2.body);\n  const win = getWindow(scrollableAncestor);\n  if (isBody) {\n    const frameElement = getFrameElement(win);\n    return list.concat(win, win.visualViewport || [], isOverflowElement(scrollableAncestor) ? scrollableAncestor : [], frameElement && traverseIframes ? getOverflowAncestors(frameElement) : []);\n  } else {\n    return list.concat(scrollableAncestor, getOverflowAncestors(scrollableAncestor, [], traverseIframes));\n  }\n}\nfunction getFrameElement(win) {\n  return win.parent && Object.getPrototypeOf(win.parent) ? win.frameElement : null;\n}\n\n\n\n;// ./node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs\n\n\n\n\n\nfunction getCssDimensions(element) {\n  const css = floating_ui_utils_dom_getComputedStyle(element);\n  // In testing environments, the `width` and `height` properties are empty\n  // strings for SVG elements, returning NaN. Fallback to `0` in this case.\n  let width = parseFloat(css.width) || 0;\n  let height = parseFloat(css.height) || 0;\n  const hasOffset = isHTMLElement(element);\n  const offsetWidth = hasOffset ? element.offsetWidth : width;\n  const offsetHeight = hasOffset ? element.offsetHeight : height;\n  const shouldFallback = round(width) !== offsetWidth || round(height) !== offsetHeight;\n  if (shouldFallback) {\n    width = offsetWidth;\n    height = offsetHeight;\n  }\n  return {\n    width,\n    height,\n    $: shouldFallback\n  };\n}\n\nfunction unwrapElement(element) {\n  return !isElement(element) ? element.contextElement : element;\n}\n\nfunction getScale(element) {\n  const domElement = unwrapElement(element);\n  if (!isHTMLElement(domElement)) {\n    return createCoords(1);\n  }\n  const rect = domElement.getBoundingClientRect();\n  const {\n    width,\n    height,\n    $\n  } = getCssDimensions(domElement);\n  let x = ($ ? round(rect.width) : rect.width) / width;\n  let y = ($ ? round(rect.height) : rect.height) / height;\n\n  // 0, NaN, or Infinity should always fallback to 1.\n\n  if (!x || !Number.isFinite(x)) {\n    x = 1;\n  }\n  if (!y || !Number.isFinite(y)) {\n    y = 1;\n  }\n  return {\n    x,\n    y\n  };\n}\n\nconst noOffsets = /*#__PURE__*/createCoords(0);\nfunction getVisualOffsets(element) {\n  const win = getWindow(element);\n  if (!isWebKit() || !win.visualViewport) {\n    return noOffsets;\n  }\n  return {\n    x: win.visualViewport.offsetLeft,\n    y: win.visualViewport.offsetTop\n  };\n}\nfunction shouldAddVisualOffsets(element, isFixed, floatingOffsetParent) {\n  if (isFixed === void 0) {\n    isFixed = false;\n  }\n  if (!floatingOffsetParent || isFixed && floatingOffsetParent !== getWindow(element)) {\n    return false;\n  }\n  return isFixed;\n}\n\nfunction getBoundingClientRect(element, includeScale, isFixedStrategy, offsetParent) {\n  if (includeScale === void 0) {\n    includeScale = false;\n  }\n  if (isFixedStrategy === void 0) {\n    isFixedStrategy = false;\n  }\n  const clientRect = element.getBoundingClientRect();\n  const domElement = unwrapElement(element);\n  let scale = createCoords(1);\n  if (includeScale) {\n    if (offsetParent) {\n      if (isElement(offsetParent)) {\n        scale = getScale(offsetParent);\n      }\n    } else {\n      scale = getScale(element);\n    }\n  }\n  const visualOffsets = shouldAddVisualOffsets(domElement, isFixedStrategy, offsetParent) ? getVisualOffsets(domElement) : createCoords(0);\n  let x = (clientRect.left + visualOffsets.x) / scale.x;\n  let y = (clientRect.top + visualOffsets.y) / scale.y;\n  let width = clientRect.width / scale.x;\n  let height = clientRect.height / scale.y;\n  if (domElement) {\n    const win = getWindow(domElement);\n    const offsetWin = offsetParent && isElement(offsetParent) ? getWindow(offsetParent) : offsetParent;\n    let currentWin = win;\n    let currentIFrame = getFrameElement(currentWin);\n    while (currentIFrame && offsetParent && offsetWin !== currentWin) {\n      const iframeScale = getScale(currentIFrame);\n      const iframeRect = currentIFrame.getBoundingClientRect();\n      const css = floating_ui_utils_dom_getComputedStyle(currentIFrame);\n      const left = iframeRect.left + (currentIFrame.clientLeft + parseFloat(css.paddingLeft)) * iframeScale.x;\n      const top = iframeRect.top + (currentIFrame.clientTop + parseFloat(css.paddingTop)) * iframeScale.y;\n      x *= iframeScale.x;\n      y *= iframeScale.y;\n      width *= iframeScale.x;\n      height *= iframeScale.y;\n      x += left;\n      y += top;\n      currentWin = getWindow(currentIFrame);\n      currentIFrame = getFrameElement(currentWin);\n    }\n  }\n  return rectToClientRect({\n    width,\n    height,\n    x,\n    y\n  });\n}\n\n// If <html> has a CSS width greater than the viewport, then this will be\n// incorrect for RTL.\nfunction getWindowScrollBarX(element, rect) {\n  const leftScroll = getNodeScroll(element).scrollLeft;\n  if (!rect) {\n    return getBoundingClientRect(getDocumentElement(element)).left + leftScroll;\n  }\n  return rect.left + leftScroll;\n}\n\nfunction getHTMLOffset(documentElement, scroll) {\n  const htmlRect = documentElement.getBoundingClientRect();\n  const x = htmlRect.left + scroll.scrollLeft - getWindowScrollBarX(documentElement, htmlRect);\n  const y = htmlRect.top + scroll.scrollTop;\n  return {\n    x,\n    y\n  };\n}\n\nfunction convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {\n  let {\n    elements,\n    rect,\n    offsetParent,\n    strategy\n  } = _ref;\n  const isFixed = strategy === 'fixed';\n  const documentElement = getDocumentElement(offsetParent);\n  const topLayer = elements ? isTopLayer(elements.floating) : false;\n  if (offsetParent === documentElement || topLayer && isFixed) {\n    return rect;\n  }\n  let scroll = {\n    scrollLeft: 0,\n    scrollTop: 0\n  };\n  let scale = createCoords(1);\n  const offsets = createCoords(0);\n  const isOffsetParentAnElement = isHTMLElement(offsetParent);\n  if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {\n    if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {\n      scroll = getNodeScroll(offsetParent);\n    }\n    if (isOffsetParentAnElement) {\n      const offsetRect = getBoundingClientRect(offsetParent);\n      scale = getScale(offsetParent);\n      offsets.x = offsetRect.x + offsetParent.clientLeft;\n      offsets.y = offsetRect.y + offsetParent.clientTop;\n    }\n  }\n  const htmlOffset = documentElement && !isOffsetParentAnElement && !isFixed ? getHTMLOffset(documentElement, scroll) : createCoords(0);\n  return {\n    width: rect.width * scale.x,\n    height: rect.height * scale.y,\n    x: rect.x * scale.x - scroll.scrollLeft * scale.x + offsets.x + htmlOffset.x,\n    y: rect.y * scale.y - scroll.scrollTop * scale.y + offsets.y + htmlOffset.y\n  };\n}\n\nfunction getClientRects(element) {\n  return Array.from(element.getClientRects());\n}\n\n// Gets the entire size of the scrollable document area, even extending outside\n// of the `<html>` and `<body>` rect bounds if horizontally scrollable.\nfunction getDocumentRect(element) {\n  const html = getDocumentElement(element);\n  const scroll = getNodeScroll(element);\n  const body = element.ownerDocument.body;\n  const width = max(html.scrollWidth, html.clientWidth, body.scrollWidth, body.clientWidth);\n  const height = max(html.scrollHeight, html.clientHeight, body.scrollHeight, body.clientHeight);\n  let x = -scroll.scrollLeft + getWindowScrollBarX(element);\n  const y = -scroll.scrollTop;\n  if (floating_ui_utils_dom_getComputedStyle(body).direction === 'rtl') {\n    x += max(html.clientWidth, body.clientWidth) - width;\n  }\n  return {\n    width,\n    height,\n    x,\n    y\n  };\n}\n\n// Safety check: ensure the scrollbar space is reasonable in case this\n// calculation is affected by unusual styles.\n// Most scrollbars leave 15-18px of space.\nconst SCROLLBAR_MAX = 25;\nfunction getViewportRect(element, strategy) {\n  const win = getWindow(element);\n  const html = getDocumentElement(element);\n  const visualViewport = win.visualViewport;\n  let width = html.clientWidth;\n  let height = html.clientHeight;\n  let x = 0;\n  let y = 0;\n  if (visualViewport) {\n    width = visualViewport.width;\n    height = visualViewport.height;\n    const visualViewportBased = isWebKit();\n    if (!visualViewportBased || visualViewportBased && strategy === 'fixed') {\n      x = visualViewport.offsetLeft;\n      y = visualViewport.offsetTop;\n    }\n  }\n  const windowScrollbarX = getWindowScrollBarX(html);\n  // <html> `overflow: hidden` + `scrollbar-gutter: stable` reduces the\n  // visual width of the <html> but this is not considered in the size\n  // of `html.clientWidth`.\n  if (windowScrollbarX <= 0) {\n    const doc = html.ownerDocument;\n    const body = doc.body;\n    const bodyStyles = getComputedStyle(body);\n    const bodyMarginInline = doc.compatMode === 'CSS1Compat' ? parseFloat(bodyStyles.marginLeft) + parseFloat(bodyStyles.marginRight) || 0 : 0;\n    const clippingStableScrollbarWidth = Math.abs(html.clientWidth - body.clientWidth - bodyMarginInline);\n    if (clippingStableScrollbarWidth <= SCROLLBAR_MAX) {\n      width -= clippingStableScrollbarWidth;\n    }\n  } else if (windowScrollbarX <= SCROLLBAR_MAX) {\n    // If the <body> scrollbar is on the left, the width needs to be extended\n    // by the scrollbar amount so there isn't extra space on the right.\n    width += windowScrollbarX;\n  }\n  return {\n    width,\n    height,\n    x,\n    y\n  };\n}\n\n// Returns the inner client rect, subtracting scrollbars if present.\nfunction getInnerBoundingClientRect(element, strategy) {\n  const clientRect = getBoundingClientRect(element, true, strategy === 'fixed');\n  const top = clientRect.top + element.clientTop;\n  const left = clientRect.left + element.clientLeft;\n  const scale = isHTMLElement(element) ? getScale(element) : createCoords(1);\n  const width = element.clientWidth * scale.x;\n  const height = element.clientHeight * scale.y;\n  const x = left * scale.x;\n  const y = top * scale.y;\n  return {\n    width,\n    height,\n    x,\n    y\n  };\n}\nfunction getClientRectFromClippingAncestor(element, clippingAncestor, strategy) {\n  let rect;\n  if (clippingAncestor === 'viewport') {\n    rect = getViewportRect(element, strategy);\n  } else if (clippingAncestor === 'document') {\n    rect = getDocumentRect(getDocumentElement(element));\n  } else if (isElement(clippingAncestor)) {\n    rect = getInnerBoundingClientRect(clippingAncestor, strategy);\n  } else {\n    const visualOffsets = getVisualOffsets(element);\n    rect = {\n      x: clippingAncestor.x - visualOffsets.x,\n      y: clippingAncestor.y - visualOffsets.y,\n      width: clippingAncestor.width,\n      height: clippingAncestor.height\n    };\n  }\n  return rectToClientRect(rect);\n}\nfunction hasFixedPositionAncestor(element, stopNode) {\n  const parentNode = getParentNode(element);\n  if (parentNode === stopNode || !isElement(parentNode) || isLastTraversableNode(parentNode)) {\n    return false;\n  }\n  return floating_ui_utils_dom_getComputedStyle(parentNode).position === 'fixed' || hasFixedPositionAncestor(parentNode, stopNode);\n}\n\n// A \"clipping ancestor\" is an `overflow` element with the characteristic of\n// clipping (or hiding) child elements. This returns all clipping ancestors\n// of the given element up the tree.\nfunction getClippingElementAncestors(element, cache) {\n  const cachedResult = cache.get(element);\n  if (cachedResult) {\n    return cachedResult;\n  }\n  let result = getOverflowAncestors(element, [], false).filter(el => isElement(el) && getNodeName(el) !== 'body');\n  let currentContainingBlockComputedStyle = null;\n  const elementIsFixed = floating_ui_utils_dom_getComputedStyle(element).position === 'fixed';\n  let currentNode = elementIsFixed ? getParentNode(element) : element;\n\n  // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n  while (isElement(currentNode) && !isLastTraversableNode(currentNode)) {\n    const computedStyle = floating_ui_utils_dom_getComputedStyle(currentNode);\n    const currentNodeIsContaining = isContainingBlock(currentNode);\n    if (!currentNodeIsContaining && computedStyle.position === 'fixed') {\n      currentContainingBlockComputedStyle = null;\n    }\n    const shouldDropCurrentNode = elementIsFixed ? !currentNodeIsContaining && !currentContainingBlockComputedStyle : !currentNodeIsContaining && computedStyle.position === 'static' && !!currentContainingBlockComputedStyle && (currentContainingBlockComputedStyle.position === 'absolute' || currentContainingBlockComputedStyle.position === 'fixed') || isOverflowElement(currentNode) && !currentNodeIsContaining && hasFixedPositionAncestor(element, currentNode);\n    if (shouldDropCurrentNode) {\n      // Drop non-containing blocks.\n      result = result.filter(ancestor => ancestor !== currentNode);\n    } else {\n      // Record last containing block for next iteration.\n      currentContainingBlockComputedStyle = computedStyle;\n    }\n    currentNode = getParentNode(currentNode);\n  }\n  cache.set(element, result);\n  return result;\n}\n\n// Gets the maximum area that the element is visible in due to any number of\n// clipping ancestors.\nfunction getClippingRect(_ref) {\n  let {\n    element,\n    boundary,\n    rootBoundary,\n    strategy\n  } = _ref;\n  const elementClippingAncestors = boundary === 'clippingAncestors' ? isTopLayer(element) ? [] : getClippingElementAncestors(element, this._c) : [].concat(boundary);\n  const clippingAncestors = [...elementClippingAncestors, rootBoundary];\n  const firstRect = getClientRectFromClippingAncestor(element, clippingAncestors[0], strategy);\n  let top = firstRect.top;\n  let right = firstRect.right;\n  let bottom = firstRect.bottom;\n  let left = firstRect.left;\n  for (let i = 1; i < clippingAncestors.length; i++) {\n    const rect = getClientRectFromClippingAncestor(element, clippingAncestors[i], strategy);\n    top = max(rect.top, top);\n    right = min(rect.right, right);\n    bottom = min(rect.bottom, bottom);\n    left = max(rect.left, left);\n  }\n  return {\n    width: right - left,\n    height: bottom - top,\n    x: left,\n    y: top\n  };\n}\n\nfunction getDimensions(element) {\n  const {\n    width,\n    height\n  } = getCssDimensions(element);\n  return {\n    width,\n    height\n  };\n}\n\nfunction getRectRelativeToOffsetParent(element, offsetParent, strategy) {\n  const isOffsetParentAnElement = isHTMLElement(offsetParent);\n  const documentElement = getDocumentElement(offsetParent);\n  const isFixed = strategy === 'fixed';\n  const rect = getBoundingClientRect(element, true, isFixed, offsetParent);\n  let scroll = {\n    scrollLeft: 0,\n    scrollTop: 0\n  };\n  const offsets = createCoords(0);\n\n  // If the <body> scrollbar appears on the left (e.g. RTL systems). Use\n  // Firefox with layout.scrollbar.side = 3 in about:config to test this.\n  function setLeftRTLScrollbarOffset() {\n    offsets.x = getWindowScrollBarX(documentElement);\n  }\n  if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {\n    if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {\n      scroll = getNodeScroll(offsetParent);\n    }\n    if (isOffsetParentAnElement) {\n      const offsetRect = getBoundingClientRect(offsetParent, true, isFixed, offsetParent);\n      offsets.x = offsetRect.x + offsetParent.clientLeft;\n      offsets.y = offsetRect.y + offsetParent.clientTop;\n    } else if (documentElement) {\n      setLeftRTLScrollbarOffset();\n    }\n  }\n  if (isFixed && !isOffsetParentAnElement && documentElement) {\n    setLeftRTLScrollbarOffset();\n  }\n  const htmlOffset = documentElement && !isOffsetParentAnElement && !isFixed ? getHTMLOffset(documentElement, scroll) : createCoords(0);\n  const x = rect.left + scroll.scrollLeft - offsets.x - htmlOffset.x;\n  const y = rect.top + scroll.scrollTop - offsets.y - htmlOffset.y;\n  return {\n    x,\n    y,\n    width: rect.width,\n    height: rect.height\n  };\n}\n\nfunction isStaticPositioned(element) {\n  return floating_ui_utils_dom_getComputedStyle(element).position === 'static';\n}\n\nfunction getTrueOffsetParent(element, polyfill) {\n  if (!isHTMLElement(element) || floating_ui_utils_dom_getComputedStyle(element).position === 'fixed') {\n    return null;\n  }\n  if (polyfill) {\n    return polyfill(element);\n  }\n  let rawOffsetParent = element.offsetParent;\n\n  // Firefox returns the <html> element as the offsetParent if it's non-static,\n  // while Chrome and Safari return the <body> element. The <body> element must\n  // be used to perform the correct calculations even if the <html> element is\n  // non-static.\n  if (getDocumentElement(element) === rawOffsetParent) {\n    rawOffsetParent = rawOffsetParent.ownerDocument.body;\n  }\n  return rawOffsetParent;\n}\n\n// Gets the closest ancestor positioned element. Handles some edge cases,\n// such as table ancestors and cross browser bugs.\nfunction getOffsetParent(element, polyfill) {\n  const win = getWindow(element);\n  if (isTopLayer(element)) {\n    return win;\n  }\n  if (!isHTMLElement(element)) {\n    let svgOffsetParent = getParentNode(element);\n    while (svgOffsetParent && !isLastTraversableNode(svgOffsetParent)) {\n      if (isElement(svgOffsetParent) && !isStaticPositioned(svgOffsetParent)) {\n        return svgOffsetParent;\n      }\n      svgOffsetParent = getParentNode(svgOffsetParent);\n    }\n    return win;\n  }\n  let offsetParent = getTrueOffsetParent(element, polyfill);\n  while (offsetParent && isTableElement(offsetParent) && isStaticPositioned(offsetParent)) {\n    offsetParent = getTrueOffsetParent(offsetParent, polyfill);\n  }\n  if (offsetParent && isLastTraversableNode(offsetParent) && isStaticPositioned(offsetParent) && !isContainingBlock(offsetParent)) {\n    return win;\n  }\n  return offsetParent || getContainingBlock(element) || win;\n}\n\nconst getElementRects = async function (data) {\n  const getOffsetParentFn = this.getOffsetParent || getOffsetParent;\n  const getDimensionsFn = this.getDimensions;\n  const floatingDimensions = await getDimensionsFn(data.floating);\n  return {\n    reference: getRectRelativeToOffsetParent(data.reference, await getOffsetParentFn(data.floating), data.strategy),\n    floating: {\n      x: 0,\n      y: 0,\n      width: floatingDimensions.width,\n      height: floatingDimensions.height\n    }\n  };\n};\n\nfunction isRTL(element) {\n  return floating_ui_utils_dom_getComputedStyle(element).direction === 'rtl';\n}\n\nconst platform = {\n  convertOffsetParentRelativeRectToViewportRelativeRect,\n  getDocumentElement: getDocumentElement,\n  getClippingRect,\n  getOffsetParent,\n  getElementRects,\n  getClientRects,\n  getDimensions,\n  getScale,\n  isElement: isElement,\n  isRTL\n};\n\nfunction rectsAreEqual(a, b) {\n  return a.x === b.x && a.y === b.y && a.width === b.width && a.height === b.height;\n}\n\n// https://samthor.au/2021/observing-dom/\nfunction observeMove(element, onMove) {\n  let io = null;\n  let timeoutId;\n  const root = getDocumentElement(element);\n  function cleanup() {\n    var _io;\n    clearTimeout(timeoutId);\n    (_io = io) == null || _io.disconnect();\n    io = null;\n  }\n  function refresh(skip, threshold) {\n    if (skip === void 0) {\n      skip = false;\n    }\n    if (threshold === void 0) {\n      threshold = 1;\n    }\n    cleanup();\n    const elementRectForRootMargin = element.getBoundingClientRect();\n    const {\n      left,\n      top,\n      width,\n      height\n    } = elementRectForRootMargin;\n    if (!skip) {\n      onMove();\n    }\n    if (!width || !height) {\n      return;\n    }\n    const insetTop = floor(top);\n    const insetRight = floor(root.clientWidth - (left + width));\n    const insetBottom = floor(root.clientHeight - (top + height));\n    const insetLeft = floor(left);\n    const rootMargin = -insetTop + \"px \" + -insetRight + \"px \" + -insetBottom + \"px \" + -insetLeft + \"px\";\n    const options = {\n      rootMargin,\n      threshold: max(0, min(1, threshold)) || 1\n    };\n    let isFirstUpdate = true;\n    function handleObserve(entries) {\n      const ratio = entries[0].intersectionRatio;\n      if (ratio !== threshold) {\n        if (!isFirstUpdate) {\n          return refresh();\n        }\n        if (!ratio) {\n          // If the reference is clipped, the ratio is 0. Throttle the refresh\n          // to prevent an infinite loop of updates.\n          timeoutId = setTimeout(() => {\n            refresh(false, 1e-7);\n          }, 1000);\n        } else {\n          refresh(false, ratio);\n        }\n      }\n      if (ratio === 1 && !rectsAreEqual(elementRectForRootMargin, element.getBoundingClientRect())) {\n        // It's possible that even though the ratio is reported as 1, the\n        // element is not actually fully within the IntersectionObserver's root\n        // area anymore. This can happen under performance constraints. This may\n        // be a bug in the browser's IntersectionObserver implementation. To\n        // work around this, we compare the element's bounding rect now with\n        // what it was at the time we created the IntersectionObserver. If they\n        // are not equal then the element moved, so we refresh.\n        refresh();\n      }\n      isFirstUpdate = false;\n    }\n\n    // Older browsers don't support a `document` as the root and will throw an\n    // error.\n    try {\n      io = new IntersectionObserver(handleObserve, {\n        ...options,\n        // Handle <iframe>s\n        root: root.ownerDocument\n      });\n    } catch (_e) {\n      io = new IntersectionObserver(handleObserve, options);\n    }\n    io.observe(element);\n  }\n  refresh(true);\n  return cleanup;\n}\n\n/**\n * Automatically updates the position of the floating element when necessary.\n * Should only be called when the floating element is mounted on the DOM or\n * visible on the screen.\n * @returns cleanup function that should be invoked when the floating element is\n * removed from the DOM or hidden from the screen.\n * @see https://floating-ui.com/docs/autoUpdate\n */\nfunction autoUpdate(reference, floating, update, options) {\n  if (options === void 0) {\n    options = {};\n  }\n  const {\n    ancestorScroll = true,\n    ancestorResize = true,\n    elementResize = typeof ResizeObserver === 'function',\n    layoutShift = typeof IntersectionObserver === 'function',\n    animationFrame = false\n  } = options;\n  const referenceEl = unwrapElement(reference);\n  const ancestors = ancestorScroll || ancestorResize ? [...(referenceEl ? getOverflowAncestors(referenceEl) : []), ...(floating ? getOverflowAncestors(floating) : [])] : [];\n  ancestors.forEach(ancestor => {\n    ancestorScroll && ancestor.addEventListener('scroll', update, {\n      passive: true\n    });\n    ancestorResize && ancestor.addEventListener('resize', update);\n  });\n  const cleanupIo = referenceEl && layoutShift ? observeMove(referenceEl, update) : null;\n  let reobserveFrame = -1;\n  let resizeObserver = null;\n  if (elementResize) {\n    resizeObserver = new ResizeObserver(_ref => {\n      let [firstEntry] = _ref;\n      if (firstEntry && firstEntry.target === referenceEl && resizeObserver && floating) {\n        // Prevent update loops when using the `size` middleware.\n        // https://github.com/floating-ui/floating-ui/issues/1740\n        resizeObserver.unobserve(floating);\n        cancelAnimationFrame(reobserveFrame);\n        reobserveFrame = requestAnimationFrame(() => {\n          var _resizeObserver;\n          (_resizeObserver = resizeObserver) == null || _resizeObserver.observe(floating);\n        });\n      }\n      update();\n    });\n    if (referenceEl && !animationFrame) {\n      resizeObserver.observe(referenceEl);\n    }\n    if (floating) {\n      resizeObserver.observe(floating);\n    }\n  }\n  let frameId;\n  let prevRefRect = animationFrame ? getBoundingClientRect(reference) : null;\n  if (animationFrame) {\n    frameLoop();\n  }\n  function frameLoop() {\n    const nextRefRect = getBoundingClientRect(reference);\n    if (prevRefRect && !rectsAreEqual(prevRefRect, nextRefRect)) {\n      update();\n    }\n    prevRefRect = nextRefRect;\n    frameId = requestAnimationFrame(frameLoop);\n  }\n  update();\n  return () => {\n    var _resizeObserver2;\n    ancestors.forEach(ancestor => {\n      ancestorScroll && ancestor.removeEventListener('scroll', update);\n      ancestorResize && ancestor.removeEventListener('resize', update);\n    });\n    cleanupIo == null || cleanupIo();\n    (_resizeObserver2 = resizeObserver) == null || _resizeObserver2.disconnect();\n    resizeObserver = null;\n    if (animationFrame) {\n      cancelAnimationFrame(frameId);\n    }\n  };\n}\n\n/**\n * Resolves with an object of overflow side offsets that determine how much the\n * element is overflowing a given clipping boundary on each side.\n * - positive = overflowing the boundary by that number of pixels\n * - negative = how many pixels left before it will overflow\n * - 0 = lies flush with the boundary\n * @see https://floating-ui.com/docs/detectOverflow\n */\nconst floating_ui_dom_detectOverflow = detectOverflow;\n\n/**\n * Modifies the placement by translating the floating element along the\n * specified axes.\n * A number (shorthand for `mainAxis` or distance), or an axes configuration\n * object may be passed.\n * @see https://floating-ui.com/docs/offset\n */\nconst floating_ui_dom_offset = offset;\n\n/**\n * Optimizes the visibility of the floating element by choosing the placement\n * that has the most space available automatically, without needing to specify a\n * preferred placement. Alternative to `flip`.\n * @see https://floating-ui.com/docs/autoPlacement\n */\nconst floating_ui_dom_autoPlacement = autoPlacement;\n\n/**\n * Optimizes the visibility of the floating element by shifting it in order to\n * keep it in view when it will overflow the clipping boundary.\n * @see https://floating-ui.com/docs/shift\n */\nconst floating_ui_dom_shift = shift;\n\n/**\n * Optimizes the visibility of the floating element by flipping the `placement`\n * in order to keep it in view when the preferred placement(s) will overflow the\n * clipping boundary. Alternative to `autoPlacement`.\n * @see https://floating-ui.com/docs/flip\n */\nconst floating_ui_dom_flip = flip;\n\n/**\n * Provides data that allows you to change the size of the floating element —\n * for instance, prevent it from overflowing the clipping boundary or match the\n * width of the reference element.\n * @see https://floating-ui.com/docs/size\n */\nconst floating_ui_dom_size = size;\n\n/**\n * Provides data to hide the floating element in applicable situations, such as\n * when it is not in the same clipping context as the reference element.\n * @see https://floating-ui.com/docs/hide\n */\nconst floating_ui_dom_hide = hide;\n\n/**\n * Provides data to position an inner element of the floating element so that it\n * appears centered to the reference element.\n * @see https://floating-ui.com/docs/arrow\n */\nconst floating_ui_dom_arrow = arrow;\n\n/**\n * Provides improved positioning for inline reference elements that can span\n * over multiple lines, such as hyperlinks or range selections.\n * @see https://floating-ui.com/docs/inline\n */\nconst floating_ui_dom_inline = inline;\n\n/**\n * Built-in `limiter` that will stop `shift()` at a certain point.\n */\nconst floating_ui_dom_limitShift = limitShift;\n\n/**\n * Computes the `x` and `y` coordinates that will place the floating element\n * next to a given reference element.\n */\nconst floating_ui_dom_computePosition = (reference, floating, options) => {\n  // This caches the expensive `getClippingElementAncestors` function so that\n  // multiple lifecycle resets re-use the same result. It only lives for a\n  // single call. If other functions become expensive, we can add them as well.\n  const cache = new Map();\n  const mergedOptions = {\n    platform,\n    ...options\n  };\n  const platformWithCache = {\n    ...mergedOptions.platform,\n    _c: cache\n  };\n  return computePosition(reference, floating, {\n    ...mergedOptions,\n    platform: platformWithCache\n  });\n};\n\n\n\n// EXTERNAL MODULE: ./node_modules/classnames/index.js\nvar classnames = __webpack_require__(\"./node_modules/classnames/index.js\");\n;// ./node_modules/react-tooltip/dist/react-tooltip.min.mjs\n/*\n* React Tooltip\n* {@link https://github.com/ReactTooltip/react-tooltip}\n* @copyright ReactTooltip Team\n* @license MIT\n*/\nconst h=\"react-tooltip-core-styles\",w=\"react-tooltip-base-styles\",b={core:!1,base:!1};function S({css:e,id:t=w,type:o=\"base\",ref:l}){var r,n;if(!e||\"undefined\"==typeof document||b[o])return;if(\"core\"===o&&\"undefined\"!=typeof process&&(null===(r=null===process||void 0===process?void 0:process.env)||void 0===r?void 0:r.REACT_TOOLTIP_DISABLE_CORE_STYLES))return;if(\"base\"!==o&&\"undefined\"!=typeof process&&(null===(n=null===process||void 0===process?void 0:process.env)||void 0===n?void 0:n.REACT_TOOLTIP_DISABLE_BASE_STYLES))return;\"core\"===o&&(t=h),l||(l={});const{insertAt:i}=l;if(document.getElementById(t))return;const c=document.head||document.getElementsByTagName(\"head\")[0],s=document.createElement(\"style\");s.id=t,s.type=\"text/css\",\"top\"===i&&c.firstChild?c.insertBefore(s,c.firstChild):c.appendChild(s),s.styleSheet?s.styleSheet.cssText=e:s.appendChild(document.createTextNode(e)),b[o]=!0}function g({type:e=\"base\",id:t=w}={}){if(!b[e])return;\"core\"===e&&(t=h);const o=document.getElementById(t);\"style\"===(null==o?void 0:o.tagName)?null==o||o.remove():console.warn(`[react-tooltip] Failed to remove 'style' element with id '${t}'. Call \\`injectStyle()\\` first`),b[e]=!1}const E=async({elementReference:e=null,tooltipReference:t=null,tooltipArrowReference:o=null,place:l=\"top\",offset:r=10,strategy:n=\"absolute\",middlewares:i=[floating_ui_dom_offset(Number(r)),floating_ui_dom_flip({fallbackAxisSideDirection:\"start\"}),floating_ui_dom_shift({padding:5})],border:c,arrowSize:s=8})=>{if(!e)return{tooltipStyles:{},tooltipArrowStyles:{},place:l};if(null===t)return{tooltipStyles:{},tooltipArrowStyles:{},place:l};const a=i;return o?(a.push(floating_ui_dom_arrow({element:o,padding:5})),floating_ui_dom_computePosition(e,t,{placement:l,strategy:n,middleware:a}).then((({x:e,y:t,placement:o,middlewareData:l})=>{var r,n;const i={left:`${e}px`,top:`${t}px`,border:c},{x:a,y:u}=null!==(r=l.arrow)&&void 0!==r?r:{x:0,y:0},d=null!==(n={top:\"bottom\",right:\"left\",bottom:\"top\",left:\"right\"}[o.split(\"-\")[0]])&&void 0!==n?n:\"bottom\",p=c&&{borderBottom:c,borderRight:c};let v=0;if(c){const e=`${c}`.match(/(\\d+)px/);v=(null==e?void 0:e[1])?Number(e[1]):1}return{tooltipStyles:i,tooltipArrowStyles:{left:null!=a?`${a}px`:\"\",top:null!=u?`${u}px`:\"\",right:\"\",bottom:\"\",...p,[d]:`-${s/2+v-1}px`},place:o}}))):floating_ui_dom_computePosition(e,t,{placement:\"bottom\",strategy:n,middleware:a}).then((({x:e,y:t,placement:o})=>({tooltipStyles:{left:`${e}px`,top:`${t}px`},tooltipArrowStyles:{},place:o})))},A=(e,t)=>!(\"CSS\"in window&&\"supports\"in window.CSS)||window.CSS.supports(e,t),_=(e,t,o)=>{let l=null;const r=function(...r){const n=()=>{l=null,o||e.apply(this,r)};o&&!l&&(e.apply(this,r),l=setTimeout(n,t)),o||(l&&clearTimeout(l),l=setTimeout(n,t))};return r.cancel=()=>{l&&(clearTimeout(l),l=null)},r},O=e=>null!==e&&!Array.isArray(e)&&\"object\"==typeof e,k=(e,t)=>{if(e===t)return!0;if(Array.isArray(e)&&Array.isArray(t))return e.length===t.length&&e.every(((e,o)=>k(e,t[o])));if(Array.isArray(e)!==Array.isArray(t))return!1;if(!O(e)||!O(t))return e===t;const o=Object.keys(e),l=Object.keys(t);return o.length===l.length&&o.every((o=>k(e[o],t[o])))},T=e=>{if(!(e instanceof HTMLElement||e instanceof SVGElement))return!1;const t=getComputedStyle(e);return[\"overflow\",\"overflow-x\",\"overflow-y\"].some((e=>{const o=t.getPropertyValue(e);return\"auto\"===o||\"scroll\"===o}))},L=e=>{if(!e)return null;let t=e.parentElement;for(;t;){if(T(t))return t;t=t.parentElement}return document.scrollingElement||document.documentElement},C=\"undefined\"!=typeof window?external_vendor_React_.useLayoutEffect:external_vendor_React_.useEffect,R=e=>{e.current&&(clearTimeout(e.current),e.current=null)},N=\"DEFAULT_TOOLTIP_ID\",x={anchorRefs:new Set,activeAnchor:{current:null},attach:()=>{},detach:()=>{},setActiveAnchor:()=>{}},$=(0,external_vendor_React_.createContext)({getTooltipData:()=>x}),I=({children:t})=>{const[o,l]=(0,external_vendor_React_.useState)({[N]:new Set}),[c,s]=(0,external_vendor_React_.useState)({[N]:{current:null}}),a=(e,...t)=>{l((o=>{var l;const r=null!==(l=o[e])&&void 0!==l?l:new Set;return t.forEach((e=>r.add(e))),{...o,[e]:new Set(r)}}))},u=(e,...t)=>{l((o=>{const l=o[e];return l?(t.forEach((e=>l.delete(e))),{...o}):o}))},d=(0,external_vendor_React_.useCallback)(((e=N)=>{var t,l;return{anchorRefs:null!==(t=o[e])&&void 0!==t?t:new Set,activeAnchor:null!==(l=c[e])&&void 0!==l?l:{current:null},attach:(...t)=>a(e,...t),detach:(...t)=>u(e,...t),setActiveAnchor:t=>((e,t)=>{s((o=>{var l;return(null===(l=o[e])||void 0===l?void 0:l.current)===t.current?o:{...o,[e]:t}}))})(e,t)}}),[o,c,a,u]),p=(0,external_vendor_React_.useMemo)((()=>({getTooltipData:d})),[d]);return external_vendor_React_.createElement($.Provider,{value:p},t)};function j(e=N){return (0,external_vendor_React_.useContext)($).getTooltipData(e)}const z=({tooltipId:t,children:l,className:r,place:n,content:i,html:c,variant:a,offset:u,wrapper:d,events:p,positionStrategy:v,delayShow:m,delayHide:f})=>{const{attach:h,detach:w}=j(t),b=(0,external_vendor_React_.useRef)(null);return (0,external_vendor_React_.useEffect)((()=>(h(b),()=>{w(b)})),[]),external_vendor_React_.createElement(\"span\",{ref:b,className:classnames(\"react-tooltip-wrapper\",r),\"data-tooltip-place\":n,\"data-tooltip-content\":i,\"data-tooltip-html\":c,\"data-tooltip-variant\":a,\"data-tooltip-offset\":u,\"data-tooltip-wrapper\":d,\"data-tooltip-events\":p,\"data-tooltip-position-strategy\":v,\"data-tooltip-delay-show\":m,\"data-tooltip-delay-hide\":f},l)};var B={tooltip:\"core-styles-module_tooltip__3vRRp\",fixed:\"core-styles-module_fixed__pcSol\",arrow:\"core-styles-module_arrow__cvMwQ\",content:\"core-styles-module_content__BRKdB\",noArrow:\"core-styles-module_noArrow__xock6\",clickable:\"core-styles-module_clickable__ZuTTB\",show:\"core-styles-module_show__Nt9eE\",closing:\"core-styles-module_closing__sGnxF\"},D={tooltip:\"styles-module_tooltip__mnnfp\",content:\"styles-module_content__ydYdI\",arrow:\"styles-module_arrow__K0L3T\",dark:\"styles-module_dark__xNqje\",light:\"styles-module_light__Z6W-X\",success:\"styles-module_success__A2AKt\",warning:\"styles-module_warning__SCK0X\",error:\"styles-module_error__JvumD\",info:\"styles-module_info__BWdHW\"};const q=({forwardRef:t,id:l,className:i,classNameArrow:c,variant:u=\"dark\",anchorId:d,anchorSelect:p,place:v=\"top\",offset:m=10,events:h=[\"hover\"],openOnClick:w=!1,positionStrategy:b=\"absolute\",middlewares:S,wrapper:g,delayShow:A=0,delayHide:O=0,float:T=!1,hidden:N=!1,noArrow:x=!1,clickable:$=!1,closeOnEsc:I=!1,closeOnScroll:z=!1,closeOnResize:q=!1,openEvents:H,closeEvents:M,globalCloseEvents:W,imperativeModeOnly:P,style:V,position:F,afterShow:K,afterHide:Y,disableTooltip:U,content:X,contentWrapperRef:G,isOpen:Z,defaultIsOpen:J=!1,setIsOpen:Q,previousActiveAnchor:ee,activeAnchor:te,setActiveAnchor:oe,border:le,opacity:re,arrowColor:ne,arrowSize:ie=8,role:ce=\"tooltip\"})=>{var se;const ae=(0,external_vendor_React_.useRef)(null),ue=(0,external_vendor_React_.useRef)(null),de=(0,external_vendor_React_.useRef)(null),pe=(0,external_vendor_React_.useRef)(null),ve=(0,external_vendor_React_.useRef)(null),[me,fe]=(0,external_vendor_React_.useState)({tooltipStyles:{},tooltipArrowStyles:{},place:v}),[ye,he]=(0,external_vendor_React_.useState)(!1),[we,be]=(0,external_vendor_React_.useState)(!1),[Se,ge]=(0,external_vendor_React_.useState)(null),Ee=(0,external_vendor_React_.useRef)(!1),Ae=(0,external_vendor_React_.useRef)(null),{anchorRefs:_e,setActiveAnchor:Oe}=j(l),ke=(0,external_vendor_React_.useRef)(!1),[Te,Le]=(0,external_vendor_React_.useState)([]),Ce=(0,external_vendor_React_.useRef)(!1),Re=w||h.includes(\"click\"),Ne=Re||(null==H?void 0:H.click)||(null==H?void 0:H.dblclick)||(null==H?void 0:H.mousedown),xe=H?{...H}:{mouseover:!0,focus:!0,mouseenter:!1,click:!1,dblclick:!1,mousedown:!1};!H&&Re&&Object.assign(xe,{mouseenter:!1,focus:!1,mouseover:!1,click:!0});const $e=M?{...M}:{mouseout:!0,blur:!0,mouseleave:!1,click:!1,dblclick:!1,mouseup:!1};!M&&Re&&Object.assign($e,{mouseleave:!1,blur:!1,mouseout:!1});const Ie=W?{...W}:{escape:I||!1,scroll:z||!1,resize:q||!1,clickOutsideAnchor:Ne||!1};P&&(Object.assign(xe,{mouseover:!1,focus:!1,mouseenter:!1,click:!1,dblclick:!1,mousedown:!1}),Object.assign($e,{mouseout:!1,blur:!1,mouseleave:!1,click:!1,dblclick:!1,mouseup:!1}),Object.assign(Ie,{escape:!1,scroll:!1,resize:!1,clickOutsideAnchor:!1})),C((()=>(Ce.current=!0,()=>{Ce.current=!1})),[]);const je=e=>{Ce.current&&(e&&be(!0),setTimeout((()=>{Ce.current&&(null==Q||Q(e),void 0===Z&&he(e))}),10))};(0,external_vendor_React_.useEffect)((()=>{if(l){if(ye){t(ee);const o=e(te),r=[...new Set([...o,l])].filter(Boolean).join(\" \");null==te||te.setAttribute(\"aria-describedby\",r)}else t(te);return()=>{t(te),t(ee)}}function e(e){var t;return(null===(t=null==e?void 0:e.getAttribute(\"aria-describedby\"))||void 0===t?void 0:t.split(\" \"))||[]}function t(t){const o=e(t).filter((e=>e!==l));o.length?null==t||t.setAttribute(\"aria-describedby\",o.join(\" \")):null==t||t.removeAttribute(\"aria-describedby\")}}),[te,ye,l,ee]),(0,external_vendor_React_.useEffect)((()=>{if(void 0===Z)return()=>null;Z&&be(!0);const e=setTimeout((()=>{he(Z)}),10);return()=>{clearTimeout(e)}}),[Z]),(0,external_vendor_React_.useEffect)((()=>{if(ye!==Ee.current)if(R(ve),Ee.current=ye,ye)null==K||K();else{const e=(e=>{const t=e.match(/^([\\d.]+)(ms|s)$/);if(!t)return 0;const[,o,l]=t;return Number(o)*(\"ms\"===l?1:1e3)})(getComputedStyle(document.body).getPropertyValue(\"--rt-transition-show-delay\"));ve.current=setTimeout((()=>{be(!1),ge(null),null==Y||Y()}),e+25)}}),[ye]);const ze=e=>{fe((t=>k(t,e)?t:e))},Be=(e=A)=>{R(de),we?je(!0):de.current=setTimeout((()=>{je(!0)}),e)},De=(e=O)=>{R(pe),pe.current=setTimeout((()=>{ke.current||je(!1)}),e)},qe=e=>{var t;if(!e)return;const o=null!==(t=e.currentTarget)&&void 0!==t?t:e.target;if(!(null==o?void 0:o.isConnected))return oe(null),void Oe({current:null});A?Be():je(!0),oe(o),Oe({current:o}),R(pe)},He=()=>{$?De(O||100):O?De():je(!1),R(de)},Me=({x:e,y:t})=>{var o;const l={getBoundingClientRect:()=>({x:e,y:t,width:0,height:0,top:t,left:e,right:e,bottom:t})};E({place:null!==(o=null==Se?void 0:Se.place)&&void 0!==o?o:v,offset:m,elementReference:l,tooltipReference:ae.current,tooltipArrowReference:ue.current,strategy:b,middlewares:S,border:le,arrowSize:ie}).then((e=>{ze(e)}))},We=e=>{if(!e)return;const t=e,o={x:t.clientX,y:t.clientY};Me(o),Ae.current=o},Pe=e=>{var t;if(!ye)return;const o=e.target;if(!o.isConnected)return;if(null===(t=ae.current)||void 0===t?void 0:t.contains(o))return;[document.querySelector(`[id='${d}']`),...Te].some((e=>null==e?void 0:e.contains(o)))||(je(!1),R(de))},Ve=_(qe,50,!0),Fe=_(He,50,!0),Ke=e=>{Fe.cancel(),Ve(e)},Ye=()=>{Ve.cancel(),Fe()},Ue=(0,external_vendor_React_.useCallback)((()=>{var e,t;const o=null!==(e=null==Se?void 0:Se.position)&&void 0!==e?e:F;o?Me(o):T?Ae.current&&Me(Ae.current):(null==te?void 0:te.isConnected)&&E({place:null!==(t=null==Se?void 0:Se.place)&&void 0!==t?t:v,offset:m,elementReference:te,tooltipReference:ae.current,tooltipArrowReference:ue.current,strategy:b,middlewares:S,border:le,arrowSize:ie}).then((e=>{Ce.current&&ze(e)}))}),[ye,te,X,V,v,null==Se?void 0:Se.place,m,b,F,null==Se?void 0:Se.position,T,ie]);(0,external_vendor_React_.useEffect)((()=>{var e,t;const o=new Set(_e);Te.forEach((e=>{(null==U?void 0:U(e))||o.add({current:e})}));const l=document.querySelector(`[id='${d}']`);l&&!(null==U?void 0:U(l))&&o.add({current:l});const r=()=>{je(!1)},n=L(te),i=L(ae.current);Ie.scroll&&(window.addEventListener(\"scroll\",r),null==n||n.addEventListener(\"scroll\",r),null==i||i.addEventListener(\"scroll\",r));let c=null;Ie.resize?window.addEventListener(\"resize\",r):te&&ae.current&&(c=autoUpdate(te,ae.current,Ue,{ancestorResize:!0,elementResize:!0,layoutShift:!0}));const s=e=>{\"Escape\"===e.key&&je(!1)};Ie.escape&&window.addEventListener(\"keydown\",s),Ie.clickOutsideAnchor&&window.addEventListener(\"click\",Pe);const a=[],u=e=>Boolean((null==e?void 0:e.target)&&(null==te?void 0:te.contains(e.target))),p=e=>{ye&&u(e)||qe(e)},v=e=>{ye&&u(e)&&He()},m=[\"mouseover\",\"mouseout\",\"mouseenter\",\"mouseleave\",\"focus\",\"blur\"],y=[\"click\",\"dblclick\",\"mousedown\",\"mouseup\"];Object.entries(xe).forEach((([e,t])=>{t&&(m.includes(e)?a.push({event:e,listener:Ke}):y.includes(e)&&a.push({event:e,listener:p}))})),Object.entries($e).forEach((([e,t])=>{t&&(m.includes(e)?a.push({event:e,listener:Ye}):y.includes(e)&&a.push({event:e,listener:v}))})),T&&a.push({event:\"pointermove\",listener:We});const h=()=>{ke.current=!0},w=()=>{ke.current=!1,He()},b=$&&($e.mouseout||$e.mouseleave);return b&&(null===(e=ae.current)||void 0===e||e.addEventListener(\"mouseover\",h),null===(t=ae.current)||void 0===t||t.addEventListener(\"mouseout\",w)),a.forEach((({event:e,listener:t})=>{o.forEach((o=>{var l;null===(l=o.current)||void 0===l||l.addEventListener(e,t)}))})),()=>{var e,t;Ie.scroll&&(window.removeEventListener(\"scroll\",r),null==n||n.removeEventListener(\"scroll\",r),null==i||i.removeEventListener(\"scroll\",r)),Ie.resize?window.removeEventListener(\"resize\",r):null==c||c(),Ie.clickOutsideAnchor&&window.removeEventListener(\"click\",Pe),Ie.escape&&window.removeEventListener(\"keydown\",s),b&&(null===(e=ae.current)||void 0===e||e.removeEventListener(\"mouseover\",h),null===(t=ae.current)||void 0===t||t.removeEventListener(\"mouseout\",w)),a.forEach((({event:e,listener:t})=>{o.forEach((o=>{var l;null===(l=o.current)||void 0===l||l.removeEventListener(e,t)}))}))}}),[te,Ue,we,_e,Te,H,M,W,Re,A,O]),(0,external_vendor_React_.useEffect)((()=>{var e,t;let o=null!==(t=null!==(e=null==Se?void 0:Se.anchorSelect)&&void 0!==e?e:p)&&void 0!==t?t:\"\";!o&&l&&(o=`[data-tooltip-id='${l.replace(/'/g,\"\\\\'\")}']`);const r=new MutationObserver((e=>{const t=[],r=[];e.forEach((e=>{if(\"attributes\"===e.type&&\"data-tooltip-id\"===e.attributeName){e.target.getAttribute(\"data-tooltip-id\")===l?t.push(e.target):e.oldValue===l&&r.push(e.target)}if(\"childList\"===e.type){if(te){const t=[...e.removedNodes].filter((e=>1===e.nodeType));if(o)try{r.push(...t.filter((e=>e.matches(o)))),r.push(...t.flatMap((e=>[...e.querySelectorAll(o)])))}catch(e){}t.some((e=>{var t;return!!(null===(t=null==e?void 0:e.contains)||void 0===t?void 0:t.call(e,te))&&(be(!1),je(!1),oe(null),R(de),R(pe),!0)}))}if(o)try{const l=[...e.addedNodes].filter((e=>1===e.nodeType));t.push(...l.filter((e=>e.matches(o)))),t.push(...l.flatMap((e=>[...e.querySelectorAll(o)])))}catch(e){}}})),(t.length||r.length)&&Le((e=>[...e.filter((e=>!r.includes(e))),...t]))}));return r.observe(document.body,{childList:!0,subtree:!0,attributes:!0,attributeFilter:[\"data-tooltip-id\"],attributeOldValue:!0}),()=>{r.disconnect()}}),[l,p,null==Se?void 0:Se.anchorSelect,te]),(0,external_vendor_React_.useEffect)((()=>{Ue()}),[Ue]),(0,external_vendor_React_.useEffect)((()=>{if(!(null==G?void 0:G.current))return()=>null;const e=new ResizeObserver((()=>{setTimeout((()=>Ue()))}));return e.observe(G.current),()=>{e.disconnect()}}),[X,null==G?void 0:G.current]),(0,external_vendor_React_.useEffect)((()=>{var e;const t=document.querySelector(`[id='${d}']`),o=[...Te,t];te&&o.includes(te)||oe(null!==(e=Te[0])&&void 0!==e?e:t)}),[d,Te,te]),(0,external_vendor_React_.useEffect)((()=>(J&&je(!0),()=>{R(de),R(pe)})),[]),(0,external_vendor_React_.useEffect)((()=>{var e;let t=null!==(e=null==Se?void 0:Se.anchorSelect)&&void 0!==e?e:p;if(!t&&l&&(t=`[data-tooltip-id='${l.replace(/'/g,\"\\\\'\")}']`),t)try{const e=Array.from(document.querySelectorAll(t));Le(e)}catch(e){Le([])}}),[l,p,null==Se?void 0:Se.anchorSelect]),(0,external_vendor_React_.useEffect)((()=>{de.current&&(R(de),Be(A))}),[A]);const Xe=null!==(se=null==Se?void 0:Se.content)&&void 0!==se?se:X,Ge=ye&&Object.keys(me.tooltipStyles).length>0;return (0,external_vendor_React_.useImperativeHandle)(t,(()=>({open:e=>{if(null==e?void 0:e.anchorSelect)try{document.querySelector(e.anchorSelect)}catch(t){return void console.warn(`[react-tooltip] \"${e.anchorSelect}\" is not a valid CSS selector`)}ge(null!=e?e:null),(null==e?void 0:e.delay)?Be(e.delay):je(!0)},close:e=>{(null==e?void 0:e.delay)?De(e.delay):je(!1)},activeAnchor:te,place:me.place,isOpen:Boolean(we&&!N&&Xe&&Ge)}))),we&&!N&&Xe?external_vendor_React_.createElement(g,{id:l,role:ce,className:classnames(\"react-tooltip\",B.tooltip,D.tooltip,D[u],i,`react-tooltip__place-${me.place}`,B[Ge?\"show\":\"closing\"],Ge?\"react-tooltip__show\":\"react-tooltip__closing\",\"fixed\"===b&&B.fixed,$&&B.clickable),onTransitionEnd:e=>{R(ve),ye||\"opacity\"!==e.propertyName||(be(!1),ge(null),null==Y||Y())},style:{...V,...me.tooltipStyles,opacity:void 0!==re&&Ge?re:void 0},ref:ae},external_vendor_React_.createElement(g,{className:classnames(\"react-tooltip-content-wrapper\",B.content,D.content)},Xe),external_vendor_React_.createElement(g,{className:classnames(\"react-tooltip-arrow\",B.arrow,D.arrow,c,x&&B.noArrow),style:{...me.tooltipArrowStyles,background:ne?`linear-gradient(to right bottom, transparent 50%, ${ne} 50%)`:void 0,\"--rt-arrow-size\":`${ie}px`},ref:ue})):null},H=({content:t})=>external_vendor_React_.createElement(\"span\",{dangerouslySetInnerHTML:{__html:t}}),M=external_vendor_React_.forwardRef((({id:t,anchorId:l,anchorSelect:n,content:i,html:c,render:a,className:u,classNameArrow:d,variant:p=\"dark\",place:v=\"top\",offset:m=10,wrapper:f=\"div\",children:h=null,events:w=[\"hover\"],openOnClick:b=!1,positionStrategy:S=\"absolute\",middlewares:g,delayShow:E=0,delayHide:_=0,float:O=!1,hidden:k=!1,noArrow:T=!1,clickable:L=!1,closeOnEsc:C=!1,closeOnScroll:R=!1,closeOnResize:N=!1,openEvents:x,closeEvents:$,globalCloseEvents:I,imperativeModeOnly:z=!1,style:B,position:D,isOpen:M,defaultIsOpen:W=!1,disableStyleInjection:P=!1,border:V,opacity:F,arrowColor:K,arrowSize:Y,setIsOpen:U,afterShow:X,afterHide:G,disableTooltip:Z,role:J=\"tooltip\"},Q)=>{const[ee,te]=(0,external_vendor_React_.useState)(i),[oe,le]=(0,external_vendor_React_.useState)(c),[re,ne]=(0,external_vendor_React_.useState)(v),[ie,ce]=(0,external_vendor_React_.useState)(p),[se,ae]=(0,external_vendor_React_.useState)(m),[ue,de]=(0,external_vendor_React_.useState)(E),[pe,ve]=(0,external_vendor_React_.useState)(_),[me,fe]=(0,external_vendor_React_.useState)(O),[ye,he]=(0,external_vendor_React_.useState)(k),[we,be]=(0,external_vendor_React_.useState)(f),[Se,ge]=(0,external_vendor_React_.useState)(w),[Ee,Ae]=(0,external_vendor_React_.useState)(S),[_e,Oe]=(0,external_vendor_React_.useState)(null),[ke,Te]=(0,external_vendor_React_.useState)(null),Le=(0,external_vendor_React_.useRef)(null),Ce=(0,external_vendor_React_.useRef)(P),{anchorRefs:Re,activeAnchor:Ne}=j(t),xe=e=>null==e?void 0:e.getAttributeNames().reduce(((t,o)=>{var l;if(o.startsWith(\"data-tooltip-\")){t[o.replace(/^data-tooltip-/,\"\")]=null!==(l=null==e?void 0:e.getAttribute(o))&&void 0!==l?l:null}return t}),{}),$e=e=>{const t={place:e=>{var t;ne(null!==(t=e)&&void 0!==t?t:v)},content:e=>{te(null!=e?e:i)},html:e=>{le(null!=e?e:c)},variant:e=>{var t;ce(null!==(t=e)&&void 0!==t?t:p)},offset:e=>{ae(null===e?m:Number(e))},wrapper:e=>{var t;be(null!==(t=e)&&void 0!==t?t:f)},events:e=>{const t=null==e?void 0:e.split(\" \");ge(null!=t?t:w)},\"position-strategy\":e=>{var t;Ae(null!==(t=e)&&void 0!==t?t:S)},\"delay-show\":e=>{de(null===e?E:Number(e))},\"delay-hide\":e=>{ve(null===e?_:Number(e))},float:e=>{fe(null===e?O:\"true\"===e)},hidden:e=>{he(null===e?k:\"true\"===e)},\"class-name\":e=>{Oe(e)}};Object.values(t).forEach((e=>e(null))),Object.entries(e).forEach((([e,o])=>{var l;null===(l=t[e])||void 0===l||l.call(t,o)}))};(0,external_vendor_React_.useEffect)((()=>{te(i)}),[i]),(0,external_vendor_React_.useEffect)((()=>{le(c)}),[c]),(0,external_vendor_React_.useEffect)((()=>{ne(v)}),[v]),(0,external_vendor_React_.useEffect)((()=>{ce(p)}),[p]),(0,external_vendor_React_.useEffect)((()=>{ae(m)}),[m]),(0,external_vendor_React_.useEffect)((()=>{de(E)}),[E]),(0,external_vendor_React_.useEffect)((()=>{ve(_)}),[_]),(0,external_vendor_React_.useEffect)((()=>{fe(O)}),[O]),(0,external_vendor_React_.useEffect)((()=>{he(k)}),[k]),(0,external_vendor_React_.useEffect)((()=>{Ae(S)}),[S]),(0,external_vendor_React_.useEffect)((()=>{Ce.current!==P&&console.warn(\"[react-tooltip] Do not change `disableStyleInjection` dynamically.\")}),[P]),(0,external_vendor_React_.useEffect)((()=>{\"undefined\"!=typeof window&&window.dispatchEvent(new CustomEvent(\"react-tooltip-inject-styles\",{detail:{disableCore:\"core\"===P,disableBase:P}}))}),[]),(0,external_vendor_React_.useEffect)((()=>{var e;const o=new Set(Re);let r=n;if(!r&&t&&(r=`[data-tooltip-id='${t.replace(/'/g,\"\\\\'\")}']`),r)try{document.querySelectorAll(r).forEach((e=>{o.add({current:e})}))}catch(e){console.warn(`[react-tooltip] \"${r}\" is not a valid CSS selector`)}const i=document.querySelector(`[id='${l}']`);if(i&&o.add({current:i}),!o.size)return()=>null;const c=null!==(e=null!=ke?ke:i)&&void 0!==e?e:Ne.current,s=new MutationObserver((e=>{e.forEach((e=>{var t;if(!c||\"attributes\"!==e.type||!(null===(t=e.attributeName)||void 0===t?void 0:t.startsWith(\"data-tooltip-\")))return;const o=xe(c);$e(o)}))})),a={attributes:!0,childList:!1,subtree:!1};if(c){const e=xe(c);$e(e),s.observe(c,a)}return()=>{s.disconnect()}}),[Re,Ne,ke,l,n]),(0,external_vendor_React_.useEffect)((()=>{(null==B?void 0:B.border)&&console.warn(\"[react-tooltip] Do not set `style.border`. Use `border` prop instead.\"),V&&!A(\"border\",`${V}`)&&console.warn(`[react-tooltip] \"${V}\" is not a valid \\`border\\`.`),(null==B?void 0:B.opacity)&&console.warn(\"[react-tooltip] Do not set `style.opacity`. Use `opacity` prop instead.\"),F&&!A(\"opacity\",`${F}`)&&console.warn(`[react-tooltip] \"${F}\" is not a valid \\`opacity\\`.`)}),[]);let Ie=h;const je=(0,external_vendor_React_.useRef)(null);if(a){const t=a({content:(null==ke?void 0:ke.getAttribute(\"data-tooltip-content\"))||ee||null,activeAnchor:ke});Ie=t?external_vendor_React_.createElement(\"div\",{ref:je,className:\"react-tooltip-content-wrapper\"},t):null}else ee&&(Ie=ee);oe&&(Ie=external_vendor_React_.createElement(H,{content:oe}));const ze={forwardRef:Q,id:t,anchorId:l,anchorSelect:n,className:classnames(u,_e),classNameArrow:d,content:Ie,contentWrapperRef:je,place:re,variant:ie,offset:se,wrapper:we,events:Se,openOnClick:b,positionStrategy:Ee,middlewares:g,delayShow:ue,delayHide:pe,float:me,hidden:ye,noArrow:T,clickable:L,closeOnEsc:C,closeOnScroll:R,closeOnResize:N,openEvents:x,closeEvents:$,globalCloseEvents:I,imperativeModeOnly:z,style:B,position:D,isOpen:M,defaultIsOpen:W,border:V,opacity:F,arrowColor:K,arrowSize:Y,setIsOpen:U,afterShow:X,afterHide:G,disableTooltip:Z,activeAnchor:ke,previousActiveAnchor:Le.current,setActiveAnchor:e=>{Te((t=>((null==e?void 0:e.isSameNode(t))||(Le.current=t),e)))},role:J};return external_vendor_React_.createElement(q,{...ze})}));\"undefined\"!=typeof window&&window.addEventListener(\"react-tooltip-inject-styles\",(e=>{e.detail.disableCore||S({css:`:root{--rt-color-white:#fff;--rt-color-dark:#222;--rt-color-success:#8dc572;--rt-color-error:#be6464;--rt-color-warning:#f0ad4e;--rt-color-info:#337ab7;--rt-opacity:0.9;--rt-transition-show-delay:0.15s;--rt-transition-closing-delay:0.15s;--rt-arrow-size:8px}.core-styles-module_tooltip__3vRRp{position:absolute;top:0;left:0;pointer-events:none;opacity:0;will-change:opacity}.core-styles-module_fixed__pcSol{position:fixed}.core-styles-module_arrow__cvMwQ{position:absolute;background:inherit;z-index:-1;-webkit-backface-visibility:hidden;backface-visibility:hidden}.core-styles-module_content__BRKdB{position:relative;z-index:1}.core-styles-module_noArrow__xock6{display:none}.core-styles-module_clickable__ZuTTB{pointer-events:auto}.core-styles-module_show__Nt9eE{opacity:var(--rt-opacity);transition:opacity var(--rt-transition-show-delay)ease-out}.core-styles-module_closing__sGnxF{opacity:0;transition:opacity var(--rt-transition-closing-delay)ease-in}`,type:\"core\"}),e.detail.disableBase||S({css:`\n.styles-module_tooltip__mnnfp{border-radius:3px;font-size:90%;width:max-content}.styles-module_content__ydYdI{background:inherit;border-radius:inherit;padding:8px 16px}.styles-module_arrow__K0L3T{width:var(--rt-arrow-size);height:var(--rt-arrow-size)}[class*='react-tooltip__place-top']>.styles-module_arrow__K0L3T{transform:rotate(45deg)}[class*='react-tooltip__place-right']>.styles-module_arrow__K0L3T{transform:rotate(135deg)}[class*='react-tooltip__place-bottom']>.styles-module_arrow__K0L3T{transform:rotate(225deg)}[class*='react-tooltip__place-left']>.styles-module_arrow__K0L3T{transform:rotate(315deg)}.styles-module_dark__xNqje{background:var(--rt-color-dark);color:var(--rt-color-white)}.styles-module_light__Z6W-X{background-color:var(--rt-color-white);color:var(--rt-color-dark)}.styles-module_success__A2AKt{background-color:var(--rt-color-success);color:var(--rt-color-white)}.styles-module_warning__SCK0X{background-color:var(--rt-color-warning);color:var(--rt-color-white)}.styles-module_error__JvumD{background-color:var(--rt-color-error);color:var(--rt-color-white)}.styles-module_info__BWdHW{background-color:var(--rt-color-info);color:var(--rt-color-white)}`,type:\"base\"})}));\n\n;// ./node_modules/react-tooltip/dist/react-tooltip.min.css\n// extracted by mini-css-extract-plugin\n\n;// ./packages/module-library/buttons/buttons-group-layout.js\n\n\n/** @typedef {import('@divi/types').ModuleAttrs} ModuleAttrs */\n\nconst DEFAULT_BUTTON_GROUP_GAP = '20px';\nconst FLEX_ALIGN_MAP = {\n  left: 'flex-start',\n  center: 'center',\n  right: 'flex-end'\n};\n\n/**\n * Whether a toggle innerContent value is on.\n *\n * @param {*} value Raw toggle value.\n * @return {boolean}\n */\nconst isTruthyToggle = value => {\n  if (value === true || value === 1 || value === '1') {\n    return true;\n  }\n  return value === 'on';\n};\n\n/**\n * Read responsive innerContent scalar with desktop fallback.\n *\n * @param {ModuleAttrs|Record<string, unknown>|null|undefined} attrs    Module attrs.\n * @param {string}                                               attrName Attribute key.\n * @param {string|undefined}                                     breakpoint Style pass breakpoint.\n * @return {string|number|boolean|undefined}\n */\nconst resolveButtonsGroupAttrByMode = (attrs, attrName, breakpoint) => {\n  const inner = attrs?.[attrName]?.innerContent;\n  if (inner == null || typeof inner !== 'object') {\n    return undefined;\n  }\n  const bp = typeof breakpoint === 'string' && breakpoint !== '' ? breakpoint : 'desktop';\n  const fromBp = inner[bp]?.value;\n  if (fromBp !== undefined && fromBp !== null && fromBp !== '') {\n    return fromBp;\n  }\n  const desktop = inner.desktop?.value;\n  if (desktop !== undefined && desktop !== null && desktop !== '') {\n    return desktop;\n  }\n  return undefined;\n};\n\n/**\n * Normalize range gap value to a CSS length.\n *\n * @param {*} raw Raw gap value.\n * @return {string}\n */\nconst normalizeButtonGroupGapValue = raw => {\n  if (raw == null || raw === '') {\n    return DEFAULT_BUTTON_GROUP_GAP;\n  }\n  if (typeof raw === 'number') {\n    return `${raw}px`;\n  }\n  if (typeof raw === 'object' && raw !== null && 'value' in raw) {\n    return normalizeButtonGroupGapValue(raw.value);\n  }\n  const trimmed = String(raw).trim();\n  if ('' === trimmed) {\n    return DEFAULT_BUTTON_GROUP_GAP;\n  }\n  if (/^\\d+$/.test(trimmed)) {\n    return `${trimmed}px`;\n  }\n  return trimmed;\n};\n\n/**\n * Map button alignment to flex justify/align value.\n *\n * @param {string} align Alignment slug.\n * @return {string}\n */\nconst mapButtonAlignmentToFlex = align => {\n  var _FLEX_ALIGN_MAP$align;\n  if (typeof align !== 'string' || '' === align) {\n    return FLEX_ALIGN_MAP.left;\n  }\n  return (_FLEX_ALIGN_MAP$align = FLEX_ALIGN_MAP[align]) !== null && _FLEX_ALIGN_MAP$align !== void 0 ? _FLEX_ALIGN_MAP$align : FLEX_ALIGN_MAP.left;\n};\n\n/**\n * Whether buttons are stacked at the current style breakpoint.\n *\n * @param {ModuleAttrs|Record<string, unknown>|null|undefined} attrs      Module attrs.\n * @param {string|undefined}                                     breakpoint Style pass breakpoint.\n * @return {boolean}\n */\nconst isButtonsGroupStacked = (attrs, breakpoint) => isTruthyToggle(resolveButtonsGroupAttrByMode(attrs, 'stack_buttons', breakpoint));\n\n/**\n * Whether stacked buttons should stretch full width at the current breakpoint.\n *\n * @param {ModuleAttrs|Record<string, unknown>|null|undefined} attrs      Module attrs.\n * @param {string|undefined}                                     breakpoint Style pass breakpoint.\n * @return {boolean}\n */\nconst isButtonsGroupFullwidth = (attrs, breakpoint) => isButtonsGroupStacked(attrs, breakpoint) && isTruthyToggle(resolveButtonsGroupAttrByMode(attrs, 'fullwidth_buttons_on_mobile', breakpoint));\n\n/**\n * Build wrapper flex layout declarations for `.et_pb_button_module_wrappers`.\n *\n * @param {ModuleAttrs|Record<string, unknown>|null|undefined} attrs Module attrs.\n * @return {(params: { breakpoint?: string, attrValue?: * }) => string} CommonStyle callback.\n */\nconst buildButtonsGroupLayoutDeclaration = attrs => params => {\n  var _resolveButtonsGroupA;\n  const breakpoint = params?.breakpoint;\n  const gap = normalizeButtonGroupGapValue(resolveButtonsGroupAttrByMode(attrs, 'button_group_gap', breakpoint));\n  const stacked = isButtonsGroupStacked(attrs, breakpoint);\n  const fullwidth = isButtonsGroupFullwidth(attrs, breakpoint);\n  const alignment = mapButtonAlignmentToFlex(String((_resolveButtonsGroupA = resolveButtonsGroupAttrByMode(attrs, 'button_alignment', breakpoint)) !== null && _resolveButtonsGroupA !== void 0 ? _resolveButtonsGroupA : 'left'));\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      display: true,\n      'flex-wrap': true,\n      gap: true,\n      'flex-direction': true,\n      'justify-content': true,\n      'align-items': true\n    }\n  });\n  declarations.add('display', 'flex');\n  declarations.add('flex-wrap', 'wrap');\n  declarations.add('gap', gap);\n  if (stacked) {\n    declarations.add('flex-direction', 'column');\n    declarations.add('align-items', fullwidth ? 'stretch' : alignment);\n  } else {\n    declarations.add('flex-direction', 'row');\n    declarations.add('justify-content', alignment);\n    declarations.add('align-items', 'center');\n  }\n  return declarations.value;\n};\n\n/**\n * Full-width child buttons when stacked + fullwidth toggle is on.\n *\n * @param {ModuleAttrs|Record<string, unknown>|null|undefined} attrs Module attrs.\n * @return {(params: { breakpoint?: string }) => string} CommonStyle callback.\n */\nconst buildButtonsGroupFullwidthDeclaration = attrs => params => {\n  if (!isButtonsGroupFullwidth(attrs, params?.breakpoint)) {\n    return '';\n  }\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      width: true,\n      'max-width': true,\n      display: true\n    }\n  });\n  declarations.add('width', '100%');\n  declarations.add('max-width', '100%');\n  declarations.add('display', 'block');\n  return declarations.value;\n};\n;// ./packages/module-library/buttons/module-styles.js\n\n\n\n\nconst BUTTONS_GROUP_FULLWIDTH_CHILD_SELECTOR = '> a.et_pb_button, > .dsm_button_one, > .dsm_button_two';\n\n/**\n * React function component for rendering module style.\n */\nconst buttons_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  const buttonOneTooltipPlacement = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_one_tooltip_placement?.innerContent);\n  const buttonTwoTooltipPlacement = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_two_tooltip_placement?.innerContent);\n  const buttonsGroupLayoutCss = buildButtonsGroupLayoutDeclaration(attrs);\n  const buttonsGroupFullwidthCss = buildButtonsGroupFullwidthDeclaration(attrs);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextStyle, {\n    selector: orderClass,\n    attr: attrs?.module?.advanced?.text\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'separator_text'\n  }), elements.style({\n    attrName: 'button_one'\n  }), elements.style({\n    attrName: 'button_two'\n  }), elements.style({\n    attrName: 'tooltip_one_font'\n  }), elements.style({\n    attrName: 'tooltip_two_font'\n  }), elements.style({\n    attrName: 'button_one_tooltip_bg_color'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-button-separator-text`,\n    attr: attrs?.separator_gap?.innerContent,\n    property: \"margin-left\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-button-separator-text`,\n    attr: attrs?.separator_gap?.innerContent,\n    property: \"margin-right\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et_pb_button_module_wrappers`,\n    attr: attrs?.button_alignment?.innerContent,\n    declarationFunction: buttonsGroupLayoutCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et_pb_button_module_wrappers`,\n    attr: attrs?.button_group_gap?.innerContent,\n    declarationFunction: buttonsGroupLayoutCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et_pb_button_module_wrappers`,\n    attr: attrs?.stack_buttons?.innerContent,\n    declarationFunction: buttonsGroupLayoutCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et_pb_button_module_wrappers ${BUTTONS_GROUP_FULLWIDTH_CHILD_SELECTOR}`,\n    attr: attrs?.fullwidth_buttons_on_mobile?.innerContent,\n    declarationFunction: buttonsGroupFullwidthCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et_pb_button_module_wrappers ${BUTTONS_GROUP_FULLWIDTH_CHILD_SELECTOR}`,\n    attr: attrs?.stack_buttons?.innerContent,\n    declarationFunction: buttonsGroupFullwidthCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_button_one.dsm-tooltip[data-dsm-tooltip]::after`,\n    attr: attrs?.button_one_tooltip_bg_color?.innerContent,\n    property: \"background\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_button_two.dsm-tooltip[data-dsm-tooltip]::after`,\n    attr: attrs?.button_two_tooltip_bg_color?.innerContent,\n    property: \"background-color\"\n  }), 'top' === buttonOneTooltipPlacement && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_button_one.dsm-tooltip[data-dsm-tooltip]:before`,\n    attr: attrs?.button_one_tooltip_bg_color?.innerContent,\n    property: \"border-top-color\"\n  }), 'bottom' === buttonOneTooltipPlacement && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_button_one.dsm-tooltip[data-dsm-tooltip]:before`,\n    attr: attrs?.button_one_tooltip_bg_color?.innerContent,\n    property: \"border-bottom-color\"\n  }), 'left' === buttonOneTooltipPlacement && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_button_one.dsm-tooltip[data-dsm-tooltip]:before`,\n    attr: attrs?.button_one_tooltip_bg_color?.innerContent,\n    property: \"border-left-color\"\n  }), 'right' === buttonOneTooltipPlacement && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_button_one.dsm-tooltip[data-dsm-tooltip]:before`,\n    attr: attrs?.button_one_tooltip_bg_color?.innerContent,\n    property: \"border-right-color\"\n  }), 'top' === buttonTwoTooltipPlacement && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_button_two.dsm-tooltip[data-dsm-tooltip]:before`,\n    attr: attrs?.button_two_tooltip_bg_color?.innerContent,\n    property: \"border-top-color\"\n  }), 'bottom' === buttonTwoTooltipPlacement && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_button_two.dsm-tooltip[data-dsm-tooltip]:before`,\n    attr: attrs?.button_two_tooltip_bg_color?.innerContent,\n    property: \"border-bottom-color\"\n  }), 'left' === buttonTwoTooltipPlacement && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_button_two.dsm-tooltip[data-dsm-tooltip]:before`,\n    attr: attrs?.button_two_tooltip_bg_color?.innerContent,\n    property: \"border-left-color\"\n  }), 'right' === buttonTwoTooltipPlacement && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_button_two.dsm-tooltip[data-dsm-tooltip]:before`,\n    attr: attrs?.button_two_tooltip_bg_color?.innerContent,\n    property: \"border-right-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm-lightbox-button-one .mfp-close`,\n    attr: attrs?.button_one_lightbox_close_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm-lightbox-button-one .mfp-content`,\n    attr: attrs?.button_one_lightbox_max_width?.innerContent,\n    property: \"width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm-lightbox-button-two .mfp-close`,\n    attr: attrs?.button_two_lightbox_close_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm-lightbox-button-two .mfp-content`,\n    attr: attrs?.button_two_lightbox_max_width?.innerContent,\n    property: \"width\"\n  }));\n};\n;// ./packages/module-library/shared/dsm-button-text-render-props.js\n/**\n * Visual Builder props for button label `elements.render()`.\n * Divi custom button icon CSS expects an inline span, not the default div wrapper.\n *\n * @param {string} attrName Module attribute name for button text.\n * @return {{ attrName: string, tagName: 'span' }} Render props for elements.render().\n */\nfunction getDsmButtonTextRenderProps(attrName) {\n  return {\n    attrName,\n    tagName: 'span'\n  };\n}\n;// ./packages/module-library/buttons/edit.js\n\n\n\n\n\n// Divi package dependencies.\n\n\n\n\n// Custom dependencies.\n\n\n\n\n/**\n * Upload innerContent values are `{ src, id }`; Magnific Popup requires a string URL.\n *\n * @param {*} raw Value from `getAttrByMode( *.innerContent )`.\n * @return {string}\n */\nfunction getUploadSrcString(raw) {\n  if (raw == null || raw === '') {\n    return '';\n  }\n  if (typeof raw === 'object' && raw !== null && 'src' in raw) {\n    const s = raw.src;\n    return typeof s === 'string' ? s : '';\n  }\n  return typeof raw === 'string' ? raw : '';\n}\n\n/**\n * D4 parity: module Text → Text Color on `.et_pb_button` (theme border / contrast).\n * Mirrors `Buttons::get_text_background_layout_classes` (desktop + optional tablet/phone).\n *\n * @param {Object|undefined} moduleAttrs     attrs.module\n * @param {Object|undefined} moduleDefaults  From module-default-render-attributes (VB may omit text).\n * @return {string}\n */\nfunction getTextBackgroundLayoutClasses(moduleAttrs, moduleDefaults) {\n  var _moduleDefaults$advan, _moduleAttrs$advanced, _mergedAdvancedText$t, _textGroup$desktop$va;\n  const mergedAdvancedText = {\n    ...((_moduleDefaults$advan = moduleDefaults?.advanced?.text) !== null && _moduleDefaults$advan !== void 0 ? _moduleDefaults$advan : {}),\n    ...((_moduleAttrs$advanced = moduleAttrs?.advanced?.text) !== null && _moduleAttrs$advanced !== void 0 ? _moduleAttrs$advanced : {})\n  };\n  const textGroup = (_mergedAdvancedText$t = mergedAdvancedText.text) !== null && _mergedAdvancedText$t !== void 0 ? _mergedAdvancedText$t : {};\n  let desktop = (_textGroup$desktop$va = textGroup?.desktop?.value?.color) !== null && _textGroup$desktop$va !== void 0 ? _textGroup$desktop$va : 'light';\n  if (desktop !== 'light' && desktop !== 'dark') {\n    desktop = 'light';\n  }\n  const parts = [`et_pb_bg_layout_${desktop}`];\n  ['tablet', 'phone'].forEach(bp => {\n    const c = textGroup?.[bp]?.value?.color;\n    if (c === 'light' || c === 'dark') {\n      parts.push(`et_pb_bg_layout_${c}_${bp}`);\n    }\n  });\n  return parts.join(' ');\n}\n\n/**\n * React function component for registering module script data.\n */\nconst buttons_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction buttons_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements,\n  ...restProps\n}) {\n  var _processFontIcon, _processFontIcon2;\n  const {} = attrs;\n  const buttonOneImagePopup = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_one_image_popup?.innerContent);\n  const buttonTwoImagePopup = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_two_image_popup?.innerContent);\n  const buttonOneImageUrl = getUploadSrcString((0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_one_image_src?.innerContent));\n  const buttonTwoImageUrl = getUploadSrcString((0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_two_image_src?.innerContent));\n  const buttonOneVideoPopup = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_one_video_popup?.innerContent);\n  const buttonTwoVideoPopup = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_two_video_popup?.innerContent);\n  const buttonOneIcon = (_processFontIcon = (0,external_divi_iconLibrary_namespaceObject.processFontIcon)(attrs?.button_one?.decoration?.button?.desktop?.value?.icon?.settings)) !== null && _processFontIcon !== void 0 ? _processFontIcon : '';\n  const buttonTwoIcon = (_processFontIcon2 = (0,external_divi_iconLibrary_namespaceObject.processFontIcon)(attrs?.button_two?.decoration?.button?.desktop?.value?.icon?.settings)) !== null && _processFontIcon2 !== void 0 ? _processFontIcon2 : '';\n  (0,external_vendor_React_.useEffect)(() => {\n    jQuery(function ($) {\n      const uniqueClass = `dsm_button_${id}`;\n      const $scope = $('.et_pb_button_module_wrappers').filter(function () {\n        return $(this).attr('data-dsm-buttons-module-id') === String(id);\n      });\n      if ('on' === buttonOneImagePopup && 'off' === buttonOneVideoPopup && buttonOneImageUrl) {\n        $scope.find('a.et_pb_button_one.dsm-image-lightbox').magnificPopup({\n          type: 'image',\n          removalDelay: 500,\n          mainClass: 'mfp-fade',\n          items: {\n            src: buttonOneImageUrl\n          },\n          callbacks: {\n            open: function () {\n              this.container.addClass(uniqueClass + ' dsm-lightbox-button-one');\n            }\n          }\n        });\n      }\n      if ('on' === buttonTwoImagePopup && 'off' === buttonTwoVideoPopup && buttonTwoImageUrl) {\n        $scope.find('a.et_pb_button_two.dsm-image-lightbox').magnificPopup({\n          type: 'image',\n          removalDelay: 500,\n          mainClass: 'mfp-fade',\n          items: {\n            src: buttonTwoImageUrl\n          },\n          callbacks: {\n            open: function () {\n              this.container.addClass(uniqueClass + ' dsm-lightbox-button-two');\n            }\n          }\n        });\n      }\n      if ('on' === buttonOneVideoPopup) {\n        $scope.find('a.et_pb_button_one.dsm-video-lightbox').magnificPopup({\n          type: 'iframe',\n          removalDelay: 500,\n          iframe: {\n            markup: '<div class=\"mfp-iframe-scaler dsm-video-popup\">' + '<div class=\"mfp-close\"></div>' + '<iframe class=\"mfp-iframe\" frameborder=\"0\" allowfullscreen allow=\"autoplay\"></iframe>' + '</div>',\n            patterns: {\n              youtube: {\n                index: 'youtube.com/',\n                id: 'v=',\n                src: '//www.youtube.com/embed/%id%?autoplay=1&rel=0'\n              },\n              youtu_be: {\n                index: 'youtu.be',\n                id: '/',\n                src: '//www.youtube.com/embed/%id%?autoplay=1&rel=0'\n              },\n              vimeo: {\n                index: 'vimeo.com/',\n                id: '/',\n                src: '//player.vimeo.com/video/%id%?autoplay=1'\n              },\n              dailymotion: {\n                index: 'dailymotion.com',\n                id: function (url) {\n                  var m = url.match(/^.+dailymotion.com\\/(video|hub)\\/([^_]+)[^#]*(#video=([^_&]+))?/);\n                  if (m !== null) {\n                    if (m[4] !== undefined) {\n                      return m[4];\n                    }\n                    return m[2];\n                  }\n                  return null;\n                },\n                src: 'https://www.dailymotion.com/embed/video/%id%'\n              }\n            },\n            srcAction: 'iframe_src'\n          },\n          mainClass: 'dsm-video-popup-wrap mfp-fade',\n          callbacks: {\n            open: function () {\n              this.container.addClass(uniqueClass + ' dsm-lightbox-button-one');\n            }\n          }\n        });\n      }\n      if ('on' === buttonTwoVideoPopup) {\n        $scope.find('a.et_pb_button_two.dsm-video-lightbox').magnificPopup({\n          type: 'iframe',\n          removalDelay: 500,\n          iframe: {\n            markup: '<div class=\"mfp-iframe-scaler dsm-video-popup\">' + '<div class=\"mfp-close\"></div>' + '<iframe class=\"mfp-iframe\" frameborder=\"0\" allowfullscreen allow=\"autoplay\"></iframe>' + '</div>',\n            patterns: {\n              youtube: {\n                index: 'youtube.com/',\n                id: 'v=',\n                src: '//www.youtube.com/embed/%id%?autoplay=1&rel=0'\n              },\n              youtu_be: {\n                index: 'youtu.be',\n                id: '/',\n                src: '//www.youtube.com/embed/%id%?autoplay=1&rel=0'\n              },\n              vimeo: {\n                index: 'vimeo.com/',\n                id: '/',\n                src: '//player.vimeo.com/video/%id%?autoplay=1'\n              },\n              dailymotion: {\n                index: 'dailymotion.com',\n                id: function (url) {\n                  var m = url.match(/^.+dailymotion.com\\/(video|hub)\\/([^_]+)[^#]*(#video=([^_&]+))?/);\n                  if (m !== null) {\n                    if (m[4] !== undefined) {\n                      return m[4];\n                    }\n                    return m[2];\n                  }\n                  return null;\n                },\n                src: 'https://www.dailymotion.com/embed/video/%id%'\n              }\n            },\n            srcAction: 'iframe_src'\n          },\n          mainClass: 'dsm-video-popup-wrap mfp-fade',\n          callbacks: {\n            open: function () {\n              this.container.addClass(uniqueClass + ' dsm-lightbox-button-two');\n            }\n          }\n        });\n      }\n    });\n  }, [buttonOneImagePopup, buttonTwoImagePopup, buttonOneImageUrl, buttonTwoImageUrl, buttonOneVideoPopup, buttonTwoVideoPopup, id]);\n  const separatorTextAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.separator_text?.innerContent);\n  const buttonTextOneAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_one_text?.innerContent);\n  const buttonTextTwoAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_two_text?.innerContent);\n  const buttonOneHoverAnimationAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_one_hover_animation?.innerContent);\n  const buttonTwoHoverAnimationAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_two_hover_animation?.innerContent);\n  const removeSeparatorAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.remove_separator_text_on_mobile?.innerContent);\n  const buttonOneUseTooltipAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_one_tooltip?.innerContent);\n  const buttonOneTooltipHoverAnimationAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_one_hover_animation?.innerContent);\n  const buttonOneTooltipContentAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_one_tooltip_content?.innerContent);\n  const buttonOneTooltipSizeAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_one_tooltip_size?.innerContent);\n  const buttonOneTooltipPlacementAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_one_tooltip_placement?.innerContent);\n  const buttonOneIconHoverAnimation = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_one_icon_hover_animation?.innerContent);\n  const buttonTwoIconHoverAnimation = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_two_icon_hover_animation?.innerContent);\n  const isButtonOneTooltip = 'on' === buttonOneUseTooltipAttr ? 'dsm-tooltip ' : '';\n  const isButtonOneTooltipAnimation = 'on' === buttonOneUseTooltipAttr ? `dsm-tooltip-${buttonOneTooltipHoverAnimationAttr}` : '';\n  const buttonTwoUseTooltipAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_two_tooltip?.innerContent);\n  const buttonTwoTooltipHoverAnimationAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_two_hover_animation?.innerContent);\n  const buttonTwoTooltipContentAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_two_tooltip_content?.innerContent);\n  const buttonTwoTooltipSizeAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_two_tooltip_size?.innerContent);\n  const buttonTwoTooltipPlacementAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_two_tooltip_placement?.innerContent);\n  const buttonOneVideoUrl = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_one_url?.innerContent);\n  const buttonTwoVideoUrl = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_two_url?.innerContent);\n  const isButtonTwoTooltip = 'on' === buttonTwoUseTooltipAttr ? 'dsm-tooltip ' : '';\n  const isButtonTwoTooltipAnimation = 'on' === buttonTwoUseTooltipAttr ? `dsm-tooltip-${buttonTwoTooltipHoverAnimationAttr}` : '';\n  const buttonOnevideoUrl = 'on' === buttonOneVideoPopup ? buttonOneVideoUrl : '';\n  const buttonTwovideoUrl = 'on' === buttonTwoVideoPopup ? buttonTwoVideoUrl : '';\n  const bgLayoutClasses = getTextBackgroundLayoutClasses(attrs?.module, buttons_module_default_render_attributes_namespaceObject.module);\n  const orderButtonClass = id ? `dsm_button_${id}` : '';\n  const buttonOneWithTooltip = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: `dsm_button_one ${isButtonOneTooltip} ${isButtonOneTooltipAnimation}`,\n    \"data-dsm-tooltip\": buttonOneTooltipContentAttr,\n    \"data-dsm-tooltip-placement\": buttonOneTooltipPlacementAttr,\n    \"data-dsm-tooltip-size\": buttonOneTooltipSizeAttr,\n    \"data-icon\": buttonOneIcon\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n    href: `${buttonOnevideoUrl}`,\n    className: `et_pb_button et_pb_button_one ${orderButtonClass} ${bgLayoutClasses} ${'on' === buttonOneImagePopup ? 'dsm-image-lightbox' : ''} \n\t\t\t\t${'on' === buttonOneVideoPopup ? 'dsm-video-lightbox' : ''}\n\t\t\t\t${buttonOneHoverAnimationAttr} ${buttonOneIconHoverAnimation}`,\n    \"data-order-class\": orderButtonClass\n  }, elements.render(getDsmButtonTextRenderProps('button_one_text'))));\n  const buttonOneAnchorOnly = /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n    href: `${buttonOnevideoUrl}`,\n    className: `et_pb_button et_pb_button_one ${orderButtonClass} ${bgLayoutClasses} ${'on' === buttonOneImagePopup ? 'dsm-image-lightbox' : ''} \n\t\t\t\t${'on' === buttonOneVideoPopup ? 'dsm-video-lightbox' : ''}\n\t\t\t\t${buttonOneHoverAnimationAttr} ${buttonOneIconHoverAnimation}`,\n    \"data-order-class\": orderButtonClass,\n    \"data-icon\": buttonOneIcon\n  }, elements.render(getDsmButtonTextRenderProps('button_one_text')));\n  const buttonOneMarkup = 'on' === buttonOneUseTooltipAttr ? buttonOneWithTooltip : buttonOneAnchorOnly;\n  const buttonTwoWithTooltip = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: `dsm_button_two ${isButtonTwoTooltip} ${isButtonTwoTooltipAnimation}`,\n    \"data-dsm-tooltip\": buttonTwoTooltipContentAttr,\n    \"data-dsm-tooltip-placement\": buttonTwoTooltipPlacementAttr,\n    \"data-dsm-tooltip-size\": buttonTwoTooltipSizeAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n    href: `${buttonTwovideoUrl}`,\n    className: `et_pb_button et_pb_button_two ${orderButtonClass} ${bgLayoutClasses} ${'on' === buttonTwoImagePopup ? 'dsm-image-lightbox' : ''} \n\t\t\t\t${'on' === buttonTwoVideoPopup ? 'dsm-video-lightbox' : ''}\n\t\t\t\t${buttonTwoHoverAnimationAttr} ${buttonTwoIconHoverAnimation}`,\n    \"data-order-class\": orderButtonClass,\n    \"data-icon\": buttonTwoIcon\n  }, elements.render(getDsmButtonTextRenderProps('button_two_text'))));\n  const buttonTwoAnchorOnly = /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n    href: `${buttonTwovideoUrl}`,\n    className: `et_pb_button et_pb_button_two ${orderButtonClass} ${bgLayoutClasses} ${'on' === buttonTwoImagePopup ? 'dsm-image-lightbox' : ''} \n\t\t\t\t${'on' === buttonTwoVideoPopup ? 'dsm-video-lightbox' : ''}\n\t\t\t\t${buttonTwoHoverAnimationAttr} ${buttonTwoIconHoverAnimation}`,\n    \"data-order-class\": orderButtonClass,\n    \"data-icon\": buttonTwoIcon\n  }, elements.render(getDsmButtonTextRenderProps('button_two_text')));\n  const buttonTwoMarkup = 'on' === buttonTwoUseTooltipAttr ? buttonTwoWithTooltip : buttonTwoAnchorOnly;\n  const separatorText = /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm-button-separator-text\"\n  }, elements.render({\n    attrName: 'separator_text'\n  }));\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: buttons_edit_ModuleScriptData,\n    stylesComponent: buttons_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n      params.classnamesInstance.add(bgLayoutClasses, true);\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), elements.styleComponents({\n    attrName: 'separator_text'\n  }), elements.styleComponents({\n    attrName: 'button_one'\n  }), elements.styleComponents({\n    attrName: 'button_two'\n  }), elements.styleComponents({\n    attrName: 'tooltip_one_font'\n  }), elements.styleComponents({\n    attrName: 'tooltip_two_font'\n  }), elements.styleComponents({\n    attrName: 'button_one_tooltip_bg_color'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"et_pb_button_module_wrappers\",\n    \"data-dsm-buttons-module-id\": id,\n    key: [bgLayoutClasses, orderButtonClass, buttonOneImagePopup, buttonTwoImagePopup, buttonOneImageUrl, buttonTwoImageUrl, buttonOneVideoPopup, buttonTwoVideoPopup, buttonOneUseTooltipAttr].join(',')\n  }, !(0,lodash.isEmpty)(buttonTextOneAttr) && buttonOneMarkup, !(0,lodash.isEmpty)(separatorTextAttr) && separatorText, !(0,lodash.isEmpty)(buttonTextTwoAttr) && buttonTwoMarkup));\n}\n/* harmony default export */ const buttons_edit = (buttons_edit_Edit);\n;// ./packages/module-library/buttons/conversion-outline.js\nconst buttons_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    display_conditions: 'module.decoration.conditions',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    margin_padding: 'module.decoration.spacing',\n    text: 'module.advanced.text',\n    text_shadow: {\n      default: 'module.advanced.text.textShadow'\n    },\n    fonts: {\n      separator_text: 'separator_text.decoration.font',\n      tooltip_one: 'tooltip_one_font.decoration.font',\n      tooltip_two: 'tooltip_two_font.decoration.font'\n    },\n    button: {\n      button_one: 'button_one',\n      button_two: 'button_two'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    main_element: 'css.*.mainElement',\n    free_form: 'css.*.freeForm',\n    button_1: 'css.*.button1',\n    button_2: 'css.*.button2'\n  },\n  module: {\n    button_one_text: 'button_one_text.innerContent.*',\n    button_one_url_type: 'button_one_url_type.innerContent.*',\n    button_one_email_address: 'button_one_email_address.innerContent.*',\n    button_one_email_cc: 'button_one_email_cc.innerContent.*',\n    button_one_email_bcc: 'button_one_email_bcc.innerContent.*',\n    button_one_email_subject: 'button_one_email_subject.innerContent.*',\n    button_one_email_msg: 'button_one_email_msg.innerContent.*',\n    button_one_phone_number: 'button_one_phone_number.innerContent.*',\n    button_one_sms_number: 'button_one_sms_number.innerContent.*',\n    button_one_sms_body_text: 'button_one_sms_body_text.innerContent.*',\n    button_one_fb_messenger: 'button_one_fb_messenger.innerContent.*',\n    button_one_skype: 'button_one_skype.innerContent.*',\n    button_one_skype_action_type: 'button_one_skype_action_type.innerContent.*',\n    button_one_whatsapp_number: 'button_one_whatsapp_number.innerContent.*',\n    button_one_whatsapp_msg: 'button_one_whatsapp_msg.innerContent.*',\n    button_one_telegram: 'button_one_telegram.innerContent.*',\n    button_one_telegram_msg: 'button_one_telegram_msg.innerContent.*',\n    button_one_url: 'button_one_url.innerContent.*',\n    button_one_url_new_window: 'button_one_url_new_window.innerContent.*',\n    button_one_download_file: 'button_one_download_file.innerContent.*',\n    button_one_image_popup: 'button_one_image_popup.innerContent.*',\n    button_one_image_src: 'button_one_image_src.innerContent.*',\n    button_one_lightbox_close_color: 'button_one_lightbox_close_color.innerContent.*',\n    button_one_lightbox_max_width: 'button_one_lightbox_max_width.innerContent.*',\n    button_one_video_popup: 'button_one_video_popup.innerContent.*',\n    button_one_tooltip: 'button_one_tooltip.innerContent.*',\n    button_one_tooltip_content: 'button_one_tooltip_content.innerContent.*',\n    button_one_tooltip_arrow: 'button_one_tooltip_arrow.innerContent.*',\n    button_one_tooltip_size: 'button_one_tooltip_size.innerContent.*',\n    button_one_tooltip_placement: 'button_one_tooltip_placement.innerContent.*',\n    button_one_tooltip_animation: 'button_one_tooltip_animation.innerContent.*',\n    button_one_tooltip_bg_color: 'button_one_tooltip_bg_color.innerContent.*',\n    button_two_text: 'button_two_text.innerContent.*',\n    button_two_url_type: 'button_two_url_type.innerContent.*',\n    button_two_email_address: 'button_two_email_address.innerContent.*',\n    button_two_email_cc: 'button_two_email_cc.innerContent.*',\n    button_two_email_bcc: 'button_two_email_bcc.innerContent.*',\n    button_two_email_subject: 'button_two_email_subject.innerContent.*',\n    button_two_email_msg: 'button_two_email_msg.innerContent.*',\n    button_two_phone_number: 'button_two_phone_number.innerContent.*',\n    button_two_sms_number: 'button_two_sms_number.innerContent.*',\n    button_two_sms_body_text: 'button_two_sms_body_text.innerContent.*',\n    button_two_fb_messenger: 'button_two_fb_messenger.innerContent.*',\n    button_two_skype: 'button_two_skype.innerContent.*',\n    button_two_skype_action_type: 'button_two_skype_action_type.innerContent.*',\n    button_two_whatsapp_number: 'button_two_whatsapp_number.innerContent.*',\n    button_two_whatsapp_msg: 'button_two_whatsapp_msg.innerContent.*',\n    button_two_telegram: 'button_two_telegram.innerContent.*',\n    button_two_telegram_msg: 'button_two_telegram_msg.innerContent.*',\n    button_two_url: 'button_two_url.innerContent.*',\n    button_two_url_new_window: 'button_two_url_new_window.innerContent.*',\n    button_two_download_file: 'button_two_download_file.innerContent.*',\n    button_two_image_popup: 'button_two_image_popup.innerContent.*',\n    button_two_image_src: 'button_two_image_src.innerContent.*',\n    button_two_lightbox_close_color: 'button_two_lightbox_close_color.innerContent.*',\n    button_two_lightbox_max_width: 'button_two_lightbox_max_width.innerContent.*',\n    button_two_video_popup: 'button_two_video_popup.innerContent.*',\n    button_two_tooltip: 'button_two_tooltip.innerContent.*',\n    button_two_tooltip_content: 'button_two_tooltip_content.innerContent.*',\n    button_two_tooltip_arrow: 'button_two_tooltip_arrow.innerContent.*',\n    button_two_tooltip_size: 'button_two_tooltip_size.innerContent.*',\n    button_two_tooltip_placement: 'button_two_tooltip_placement.innerContent.*',\n    button_two_tooltip_animation: 'button_two_tooltip_animation.innerContent.*',\n    button_two_tooltip_bg_color: 'button_two_tooltip_bg_color.innerContent.*',\n    button_links_content_tab: 'button_links_content_tab.innerContent.*',\n    lightbox_button_design_tab: 'lightbox_button_design_tab.innerContent.*',\n    tooltip_text_design_tab: 'tooltip_text_design_tab.innerContent.*',\n    button_alignment: 'button_alignment.innerContent.*',\n    button_group_gap: 'button_group_gap.innerContent.*',\n    stack_buttons: 'stack_buttons.innerContent.*',\n    fullwidth_buttons_on_mobile: 'fullwidth_buttons_on_mobile.innerContent.*',\n    separator_text: 'separator_text.innerContent.*',\n    fullwidth_separator_text_on_mobile: 'fullwidth_separator_text_on_mobile.innerContent.*',\n    remove_separator_text_on_mobile: 'remove_separator_text_on_mobile.innerContent.*',\n    separator_gap: 'separator_gap.innerContent.*',\n    button_one_hover_animation: 'button_one_hover_animation.innerContent.*',\n    button_one_icon_hover_animation: 'button_one_icon_hover_animation.innerContent.*',\n    button_two_hover_animation: 'button_two_hover_animation.innerContent.*',\n    button_two_icon_hover_animation: 'button_two_icon_hover_animation.innerContent.*',\n    button_one_id: 'button_one.decoration.attributes.*',\n    button_one_css: 'button_one.decoration.attributes.*',\n    button_two_id: 'button_two.decoration.attributes.*',\n    button_two_css: 'button_two.decoration.attributes.*',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes',\n    button_one_id: 'dsm_convert_module_id_to_decoration_attributes',\n    button_one_css: 'dsm_convert_module_class_to_decoration_attributes',\n    button_two_id: 'dsm_convert_module_id_to_decoration_attributes',\n    button_two_css: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/buttons/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmButton', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/button': {\n      name: 'divi-supreme/button',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 3.484375 12.25 C 3.035156 12.25 2.667969 11.882812 2.667969 11.433594 C 2.667969 10.984375 3.035156 10.617188 3.484375 10.617188 C 3.933594 10.617188 4.300781 10.984375 4.300781 11.433594 C 4.300781 11.882812 3.933594 12.25 3.484375 12.25 Z M 3.484375 11.066406 C 3.28125 11.066406 3.117188 11.230469 3.117188 11.433594 C 3.117188 11.632812 3.28125 11.800781 3.484375 11.800781 C 3.683594 11.800781 3.847656 11.632812 3.847656 11.433594 C 3.847656 11.230469 3.683594 11.066406 3.484375 11.066406 Z M 3.484375 11.066406 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.058594 6.464844 C 10.308594 6.464844 9.691406 5.851562 9.691406 5.097656 C 9.691406 4.347656 10.308594 3.734375 11.058594 3.734375 C 11.808594 3.734375 12.425781 4.347656 12.425781 5.097656 C 12.425781 5.851562 11.816406 6.464844 11.058594 6.464844 Z M 11.058594 4.1875 C 10.554688 4.1875 10.148438 4.597656 10.148438 5.097656 C 10.148438 5.601562 10.554688 6.011719 11.058594 6.011719 C 11.558594 6.011719 11.96875 5.601562 11.96875 5.097656 C 11.972656 4.597656 11.566406 4.1875 11.058594 4.1875 Z M 11.058594 4.1875 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.839844 9.941406 L 4.214844 9.941406 C 3.691406 9.941406 3.257812 9.511719 3.257812 8.984375 L 3.257812 8.152344 C 3.257812 7.625 3.691406 7.191406 4.214844 7.191406 L 12.84375 7.191406 C 13.371094 7.191406 13.804688 7.625 13.804688 8.152344 L 13.804688 8.984375 C 13.796875 9.515625 13.371094 9.941406 12.839844 9.941406 Z M 4.214844 7.652344 C 3.9375 7.652344 3.714844 7.878906 3.714844 8.15625 L 3.714844 8.992188 C 3.714844 9.269531 3.9375 9.492188 4.214844 9.492188 L 12.84375 9.492188 C 13.121094 9.492188 13.347656 9.269531 13.347656 8.992188 L 13.347656 8.15625 C 13.347656 7.878906 13.121094 7.652344 12.84375 7.652344 Z M 4.214844 7.652344 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/buttons/index.js\nvar _buttonDefaultRenderA;\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\n\nconst buttonsModule = {\n  metadata: buttons_module_namespaceObject,\n  conversionOutline: buttons_conversion_outline_conversionOutline,\n  renderers: {\n    edit: buttons_edit,\n    styles: buttons_module_styles_ModuleStyles\n  },\n  defaultAttrs: {\n    ...buttons_module_default_render_attributes_namespaceObject\n  },\n  settings: {\n    content: buttons_settings_content,\n    design: buttons_settings_design,\n    advanced: buttons_settings_advanced\n  },\n  placeholderContent: {\n    ...buttons_module_default_render_attributes_namespaceObject,\n    module: {\n      ...buttons_module_default_render_attributes_namespaceObject.module,\n      decoration: (_buttonDefaultRenderA = buttons_module_default_render_attributes_namespaceObject.module?.decoration) !== null && _buttonDefaultRenderA !== void 0 ? _buttonDefaultRenderA : {}\n    }\n  }\n};\n/* harmony default export */ const buttons = (buttonsModule);\n;// ./packages/module-library/business-hours-child/module.json\nconst business_hours_child_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/business-hours-child\",\"d4Shortcode\":\"dsm_business_hours_child\",\"title\":\"Supreme Business Hours\",\"titles\":\"Supreme Business Hours\",\"category\":\"child-module\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"time\":{\"type\":\"object\",\"selector\":\"{{selector}}.et_pb_module .dsm_business_hours_item_wrapper .dsm-business-hours-time\",\"attributes\":{\"class\":\"dsm-business-hours-time\"},\"tagName\":\"span\",\"inlineEditor\":\"plainText\",\"elementType\":\"headingLink\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-business-hours-time\",\"hover\":\"{{selector}}:hover .dsm-business-hours-time\"}}}}},\"title\":{\"type\":\"object\",\"selector\":\"{{selector}}.et_pb_module .dsm_business_hours_item_wrapper .dsm-business-hours-day\",\"attributes\":{\"class\":\"dsm-business-hours-day\"},\"tagName\":\"span\",\"inlineEditor\":\"plainText\",\"elementType\":\"headingLink\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-business-hours-day\",\"hover\":\"{{selector}}:hover .dsm-business-hours-day\"}}}}},\"text\":{\"type\":\"object\",\"selector\":\"{{selector}}.et_pb_module .dsm_business_hours_item_wrapper .dsm-business-hours-header\",\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/business-hours-child/module-default-render-attributes.json\nconst business_hours_child_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"title\":{\"innerContent\":{\"desktop\":{\"value\":{\"text\":\"Monday\"}}}},\"time\":{\"innerContent\":{\"desktop\":{\"value\":{\"text\":\"9:00 AM - 6:00 PM\"}}}}}');\n;// ./packages/module-library/business-hours-child/business-hours-child-vb-default-attrs.js\n/**\n * Visual Builder `defaultAttr` map from `module-default-render-attributes.json`.\n *\n * @package DiviSupreme\n */\n\n\nconst skip = new Set(['module']);\nconst businessHoursChildFieldDefaultInnerContent = Object.fromEntries(Object.entries(business_hours_child_module_default_render_attributes_namespaceObject).filter(([key, attr]) => !skip.has(key) && attr && attr.innerContent).map(([key, attr]) => [key, attr.innerContent]));\n\n/** @type {typeof businessHoursChildFieldDefaultInnerContent} */\nconst businessHoursChildFd = businessHoursChildFieldDefaultInnerContent;\n;// ./packages/module-library/business-hours-child/settings-content.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\nfunction business_hours_child_settings_content_SettingsContent({\n  defaultSettingsAttrs\n}) {\n  var _defaultSettingsAttrs;\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"time.innerContent\",\n    subName: \"text\",\n    defaultAttr: businessHoursChildFd.time,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Time', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text entered here will appear as the time.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"title.innerContent\",\n    subName: \"text\",\n    defaultAttr: businessHoursChildFd.title,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Day', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text entered here will appear as the day label.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: (_defaultSettingsAttrs = defaultSettingsAttrs?.module?.meta?.adminLabel) !== null && _defaultSettingsAttrs !== void 0 ? _defaultSettingsAttrs : {\n      desktop: {\n        value: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Supreme Business Hours', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }));\n}\n/* harmony default export */ const business_hours_child_settings_content = (business_hours_child_settings_content_SettingsContent);\n;// ./packages/module-library/business-hours-child/settings-design.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\nfunction business_hours_child_settings_design_SettingsDesign() {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"text.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"time.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Time Text', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Time', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"title.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Day Text', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Day', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null));\n}\n/* harmony default export */ const business_hours_child_settings_design = (business_hours_child_settings_design_SettingsDesign);\n;// ./packages/module-library/business-hours-child/settings-advanced.js\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\nfunction business_hours_child_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_business_hours_child\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const business_hours_child_settings_advanced = (business_hours_child_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/business-hours-child/module-styles.js\n\n\n\n\n/**\n * React function component for rendering module style.\n */\nconst business_hours_child_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'text'\n  }), elements.style({\n    attrName: 'time'\n  }), elements.style({\n    attrName: 'title'\n  }));\n};\n;// ./packages/module-library/business-hours-child/edit.js\n\n\n// Divi package dependencies.\n\n\n\n// Custom dependencies.\n\n\n\n/**\n * React function component for registering module script data.\n */\n\nconst business_hours_child_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction business_hours_child_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: business_hours_child_edit_ModuleScriptData,\n    stylesComponent: business_hours_child_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_business_hours_item_wrapper\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-business-hours-header\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-business-hours-day\"\n  }, elements.render({\n    attrName: 'title'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-business-hours-separator\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-business-hours-time\"\n  }, elements.render({\n    attrName: 'time'\n  })))));\n}\n/* harmony default export */ const business_hours_child_edit = (business_hours_child_edit_Edit);\n;// ./packages/module-library/business-hours-child/conversion-outline.js\nconst business_hours_child_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow'\n    },\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    display_conditions: 'module.decoration.conditions',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    text_shadow: {\n      default: 'module.advanced.text.textShadow'\n    },\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    fonts: {\n      header: 'title.decoration.font',\n      time: 'time.decoration.font',\n      text: 'text.decoration.font'\n    },\n    margin_padding: 'module.decoration.spacing',\n    link_options: 'module.advanced.link',\n    height: 'module.decoration.sizing',\n    max_width: 'module.decoration.sizing',\n    text: 'module.advanced.text'\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    title: 'title.innerContent.*.text',\n    time: 'time.innerContent.*.text',\n    // Divi expects `.*` so values land under breakpoints (see core slide / blurb child outlines).\n    admin_title: 'module.meta.adminLabel.*',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/business-hours-child/index.js\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\n/**\n * Card `title` pattern: `headingLink` + `innerContent.*.value.text` + `subName=\"text\"` in settings.\n * `defaultAttrs` + `placeholderContent` only — see MODULE_OPTIONS_AUDIT.md.\n */\nconst business_hours_child_defaultAttrs = business_hours_child_module_default_render_attributes_namespaceObject;\nconst businessHourChildModule = {\n  metadata: business_hours_child_module_namespaceObject,\n  parentsName: ['dsm/business-hours'],\n  settings: {\n    content: business_hours_child_settings_content,\n    design: business_hours_child_settings_design,\n    advanced: business_hours_child_settings_advanced\n  },\n  renderers: {\n    edit: business_hours_child_edit,\n    styles: business_hours_child_module_styles_ModuleStyles\n  },\n  defaultAttrs: business_hours_child_defaultAttrs,\n  placeholderContent: {\n    ...business_hours_child_module_default_render_attributes_namespaceObject,\n    module: {\n      decoration: {},\n      ...business_hours_child_module_default_render_attributes_namespaceObject.module\n    }\n  },\n  conversionOutline: business_hours_child_conversion_outline_conversionOutline\n};\n/* harmony default export */ const business_hours_child = (businessHourChildModule);\n;// ./packages/module-library/business-hours/module.json\nconst business_hours_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/business-hours\",\"d4Shortcode\":\"dsm_business_hours\",\"title\":\"Supreme Business Hours\",\"titles\":\"Supreme Business Hours\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/business-hours\",\"childModuleName\":\"dsm/business-hours-child\",\"childModuleTitle\":\"Supreme Business Hours\",\"childModuleTitleAttribute\":\"title\",\"childrenName\":[\"dsm/business-hours-child\"],\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"time\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-business-hours-time\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"title\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-business-hours-day\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"text\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_business_hours_item_wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"separator_style\":{\"type\":\"object\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"separator_weight\":{\"type\":\"object\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"separator_color\":{\"type\":\"object\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"separator_gap\":{\"type\":\"object\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"divider_style\":{\"type\":\"object\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"divider_weight\":{\"type\":\"object\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"divider_color\":{\"type\":\"object\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"background_striped\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"background_striped_odd_row_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"background_striped_even_row_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"content_orientation\":{\"type\":\"object\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_item\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_business_hours_item_wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"spacing\":{\"selector\":\"{{selector}} .dsm_business_hours_item_wrapper\"}}}}}');\n;// ./packages/module-library/business-hours/module-default-render-attributes.json\nconst business_hours_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"module\":{\"meta\":{\"adminLabel\":{\"desktop\":{\"value\":\"Supreme Business Hours\"}}}},\"separator_style\":{\"innerContent\":{\"desktop\":{\"value\":\"none\"}}},\"separator_weight\":{\"innerContent\":{\"desktop\":{\"value\":\"2px\"}}},\"separator_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#333\"}}},\"separator_gap\":{\"innerContent\":{\"desktop\":{\"value\":\"10px\"}}},\"divider_style\":{\"innerContent\":{\"desktop\":{\"value\":\"none\"}}},\"divider_weight\":{\"innerContent\":{\"desktop\":{\"value\":\"1px\"}}},\"divider_color\":{\"innerContent\":{\"desktop\":{\"value\":\"rgba(0,0,0,0.12)\"}}},\"background_striped\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"background_striped_odd_row_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#f9f9f9\"}}},\"background_striped_even_row_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#fff\"}}},\"content_orientation\":{\"innerContent\":{\"desktop\":{\"value\":\"center\"}}}}');\n;// ./packages/module-library/business-hours/conversion-outline.js\nconst business_hours_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    item_padding: 'dsm_item.decoration.spacing',\n    module: 'module.advanced.htmlAttributes',\n    borders: {\n      default: 'module.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    display_conditions: 'module.decoration.conditions',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    height: 'module.decoration.sizing',\n    link_options: 'module.advanced.link',\n    margin_padding: 'module.decoration.spacing',\n    max_width: 'module.decoration.sizing',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    text: 'module.advanced.text',\n    text_shadow: {\n      default: 'module.advanced.text.textShadow'\n    },\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    fonts: {\n      header: 'title.decoration.font',\n      time: 'time.decoration.font',\n      text: 'text.decoration.font'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    separator_style: 'separator_style.innerContent.*',\n    separator_weight: 'separator_weight.innerContent.*',\n    separator_color: 'separator_color.innerContent.*',\n    separator_gap: 'separator_gap.innerContent.*',\n    divider_style: 'divider_style.innerContent.*',\n    divider_weight: 'divider_weight.innerContent.*',\n    divider_color: 'divider_color.innerContent.*',\n    background_striped: 'background_striped.innerContent.*',\n    background_striped_odd_row_color: 'background_striped_odd_row_color.innerContent.*',\n    background_striped_even_row_color: 'background_striped_even_row_color.innerContent.*',\n    content_orientation: 'content_orientation.innerContent.*',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/business-hours/business-hours-vb-default-attrs.js\n/**\n * Visual Builder `defaultAttr` map from `module-default-render-attributes.json`.\n *\n * @package DiviSupreme\n */\n\n\nconst business_hours_vb_default_attrs_skip = new Set(['module']);\nconst businessHoursFieldDefaultInnerContent = Object.fromEntries(Object.entries(business_hours_module_default_render_attributes_namespaceObject).filter(([key, attr]) => !business_hours_vb_default_attrs_skip.has(key) && attr && attr.innerContent).map(([key, attr]) => [key, attr.innerContent]));\n\n/** @type {typeof businessHoursFieldDefaultInnerContent} */\nconst businessHoursFd = businessHoursFieldDefaultInnerContent;\n;// ./packages/module-library/shared/draggable-child-list/draggable-list-utils.js\n/**\n * Plain-text row titles for Divi DraggableChildModuleListContainer.\n *\n * Divi DraggableListItem calls `useDynamicData` only when the title contains\n * `$variable(`. Strip dynamic tokens so itemTitleCallback stays safe (React #300).\n *\n * @package DiviSupreme\n */\n\n/**\n * @param {unknown} title    Raw title or headingLink leaf.\n * @param {string}  fallback Fallback when empty or dynamic.\n * @return {string}\n */\nfunction plainDraggableListTitle(title, fallback = '') {\n  if (title == null) {\n    return fallback;\n  }\n  if (typeof title === 'object') {\n    if (typeof title.text === 'string') {\n      return plainDraggableListTitle(title.text, fallback);\n    }\n    return fallback;\n  }\n  if (typeof title !== 'string') {\n    return fallback;\n  }\n  const trimmed = title.trim();\n  if (!trimmed || trimmed.includes('$variable(')) {\n    return fallback;\n  }\n  return trimmed;\n}\n\n/**\n * Plain list label from `innerContent.desktop.value` (string or `{ text }`).\n *\n * @param {unknown} titleValue Title leaf from child attrs.\n * @return {string}\n */\nfunction listTextFromTitleValue(titleValue) {\n  if (titleValue == null) {\n    return '';\n  }\n  if (typeof titleValue === 'string') {\n    return plainDraggableListTitle(titleValue, '');\n  }\n  if (typeof titleValue === 'object' && typeof titleValue.text === 'string') {\n    return plainDraggableListTitle(titleValue.text, '');\n  }\n  return '';\n}\n;// ./packages/module-library/shared/draggable-child-list/create-child-item-title-callback.js\n\n\n\n/**\n * @param {unknown}                         attrs Child block attrs.\n * @param {string[]|readonly string[]} path Path segments.\n * @return {unknown}\n */\nfunction readAttrsPath(attrs, path) {\n  if (attrs == null) {\n    return undefined;\n  }\n  try {\n    if (typeof attrs.getIn === 'function') {\n      return attrs.getIn(path);\n    }\n    return (0,lodash.get)(attrs, path);\n  } catch {\n    return undefined;\n  }\n}\n\n/**\n * @typedef {Object} ChildItemTitleCallbackOptions\n * @property {string|null} titleAttrKey     Child content attr key, or null for admin-only rows.\n * @property {string}        defaultLabel     Always returned when admin/title are empty.\n * @property {'adminFirst'|'titleFirst'} [priority='adminFirst'] Matches native accordion vs counter.\n * @property {readonly string[]} [skipAdminLabels] Treat these admin values as unset (legacy defaults).\n */\n\n/**\n * Factory for stable child list row titles (native Divi accordion pattern).\n *\n * Always returns a plain string — never `undefined` — and strips `$variable(` tokens.\n *\n * @param {ChildItemTitleCallbackOptions} options Callback options.\n * @return {(childAttrs: Record<string, unknown>) => string}\n */\nfunction createChildItemTitleCallback(options) {\n  const {\n    titleAttrKey = null,\n    defaultLabel,\n    priority = 'adminFirst',\n    skipAdminLabels = []\n  } = options;\n  const skipAdminSet = new Set(skipAdminLabels);\n  return function childItemTitleCallback(childAttrs) {\n    let label = defaultLabel;\n    try {\n      if (childAttrs == null) {\n        return label;\n      }\n      const adminRaw = readAttrsPath(childAttrs, ['module', 'meta', 'adminLabel', 'desktop', 'value']);\n      let adminLabel = typeof adminRaw === 'string' ? adminRaw.trim() : '';\n      if (adminLabel && skipAdminSet.has(adminLabel)) {\n        adminLabel = '';\n      }\n      let titlePlain = '';\n      if (titleAttrKey) {\n        const titleValue = readAttrsPath(childAttrs, [titleAttrKey, 'innerContent', 'desktop', 'value']);\n        titlePlain = listTextFromTitleValue(titleValue);\n      }\n      if (priority === 'titleFirst') {\n        if (titlePlain) {\n          label = titlePlain;\n        } else if (adminLabel) {\n          label = plainDraggableListTitle(adminLabel, defaultLabel) || defaultLabel;\n        }\n      } else if (adminLabel) {\n        label = plainDraggableListTitle(adminLabel, defaultLabel) || defaultLabel;\n      } else if (titlePlain) {\n        label = titlePlain;\n      }\n    } catch {\n      return defaultLabel;\n    }\n    return label;\n  };\n}\n;// ./packages/module-library/shared/draggable-child-list/sanitized-draggable-list-container.js\nfunction sanitized_draggable_list_container_extends() {\n  return sanitized_draggable_list_container_extends = Object.assign ? Object.assign.bind() : function (n) {\n    for (var e = 1; e < arguments.length; e++) {\n      var t = arguments[e];\n      for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n    }\n    return n;\n  }, sanitized_draggable_list_container_extends.apply(null, arguments);\n}\n\n\n\n\n/**\n * @param {string} fallbackTitle Row title when value is empty or dynamic.\n * @return {React.ComponentType}\n */\nfunction createSanitizedDraggableListContainer(fallbackTitle) {\n  /**\n   * Strips `$variable(` from row titles before Divi DraggableListItem renders them.\n   *\n   * @param {Object} props Props cloned from DraggableChildModuleListContainer.\n   * @return {React.ReactElement}\n   */\n  function SanitizedDraggableListContainer(props) {\n    const {\n      value,\n      ...rest\n    } = props;\n    const safeValue = Array.isArray(value) ? value.map(item => ({\n      ...item,\n      title: plainDraggableListTitle(item?.title, fallbackTitle)\n    })) : value;\n    return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.DraggableListContainer, sanitized_draggable_list_container_extends({}, rest, {\n      value: safeValue\n    }));\n  }\n  SanitizedDraggableListContainer.displayName = 'SanitizedDraggableListContainer';\n  return SanitizedDraggableListContainer;\n}\n;// ./packages/module-library/shared/draggable-child-list/child-draggable-list-config.js\n\n\n\n\n/**\n * Per-child-module draggable list wiring (title attr + fallback label).\n *\n * @typedef {Object} ChildDraggableListConfig\n * @property {string|null} titleAttrKey\n * @property {() => string} defaultLabel\n * @property {'adminFirst'|'titleFirst'} [priority]\n * @property {readonly string[]} [skipAdminLabels]\n */\n\n/** @type {Record<string, ChildDraggableListConfig>} */\nconst CHILD_DRAGGABLE_LIST_CONFIG = {\n  'dsm/faq-child': {\n    titleAttrKey: 'dsm_title',\n    defaultLabel: () => (0,external_window_vendor_wp_i18n_namespaceObject.__)('Supreme Faq Child', 'dsm-supreme-modules-pro-for-divi')\n  },\n  'dsm/stacking-card-child': {\n    titleAttrKey: 'dsm_title',\n    defaultLabel: () => (0,external_window_vendor_wp_i18n_namespaceObject.__)('Supreme Stacking Card Child', 'dsm-supreme-modules-pro-for-divi')\n  },\n  'dsm/social-share-buttons-child': {\n    titleAttrKey: null,\n    defaultLabel: () => (0,external_window_vendor_wp_i18n_namespaceObject.__)('Supreme Social Share Buttons Child', 'dsm-supreme-modules-pro-for-divi')\n  },\n  'dsm/price-list-child': {\n    titleAttrKey: 'title',\n    defaultLabel: () => (0,external_window_vendor_wp_i18n_namespaceObject.__)('Supreme Price List', 'dsm-supreme-modules-pro-for-divi')\n  },\n  'dsm/image-hotspots-child': {\n    titleAttrKey: 'hotspot_text',\n    defaultLabel: () => (0,external_window_vendor_wp_i18n_namespaceObject.__)('Supreme Hotspot Item', 'dsm-supreme-modules-pro-for-divi')\n  },\n  'dsm/image-accordion-child': {\n    titleAttrKey: 'image_accordion_title',\n    defaultLabel: () => (0,external_window_vendor_wp_i18n_namespaceObject.__)('Supreme Image Accordion', 'dsm-supreme-modules-pro-for-divi')\n  },\n  'dsm/icon-list-child': {\n    titleAttrKey: 'text',\n    defaultLabel: () => (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon List Item', 'dsm-supreme-modules-pro-for-divi'),\n    skipAdminLabels: ['Supreme Icon List', 'Icon List Item']\n  },\n  'dsm/floating-multi-images-child': {\n    titleAttrKey: null,\n    defaultLabel: () => (0,external_window_vendor_wp_i18n_namespaceObject.__)('Floating Multi Image', 'dsm-supreme-modules-pro-for-divi'),\n    skipAdminLabels: ['Floating Multi Image']\n  },\n  'dsm/content-timeline-child': {\n    titleAttrKey: 'dsm_title',\n    defaultLabel: () => (0,external_window_vendor_wp_i18n_namespaceObject.__)('Supreme Content Timeline Child', 'dsm-supreme-modules-pro-for-divi')\n  },\n  'dsm/circle-info-child': {\n    titleAttrKey: 'dsm_circle_info_title',\n    defaultLabel: () => (0,external_window_vendor_wp_i18n_namespaceObject.__)('Supreme Circle Info Child', 'dsm-supreme-modules-pro-for-divi'),\n    skipAdminLabels: ['Supreme Circle Info Child']\n  },\n  'dsm/card-carousel-child': {\n    titleAttrKey: 'title',\n    defaultLabel: () => (0,external_window_vendor_wp_i18n_namespaceObject.__)('Card Item', 'dsm-supreme-modules-pro-for-divi')\n  },\n  'dsm/business-hours-child': {\n    titleAttrKey: 'title',\n    defaultLabel: () => (0,external_window_vendor_wp_i18n_namespaceObject.__)('Supreme Business Hours', 'dsm-supreme-modules-pro-for-divi'),\n    skipAdminLabels: ['Supreme Business Hours']\n  },\n  'dsm/advanced-tabs-child': {\n    titleAttrKey: 'dsm_title',\n    defaultLabel: () => (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tab Title', 'dsm-supreme-modules-pro-for-divi'),\n    skipAdminLabels: ['Tab Title', 'Supreme Advanced Tabs Child']\n  }\n};\n\n/**\n * @param {string} childModuleName e.g. `dsm/faq-child`.\n * @return {{ itemTitleCallback: (childAttrs: Record<string, unknown>) => string, SanitizedList: React.ComponentType }|null}\n */\nfunction getChildDraggableListHelpers(childModuleName) {\n  var _config$priority, _config$skipAdminLabe;\n  const config = CHILD_DRAGGABLE_LIST_CONFIG[childModuleName];\n  if (!config) {\n    return null;\n  }\n  const defaultLabel = config.defaultLabel();\n  const itemTitleCallback = createChildItemTitleCallback({\n    titleAttrKey: config.titleAttrKey,\n    defaultLabel,\n    priority: (_config$priority = config.priority) !== null && _config$priority !== void 0 ? _config$priority : 'adminFirst',\n    skipAdminLabels: (_config$skipAdminLabe = config.skipAdminLabels) !== null && _config$skipAdminLabe !== void 0 ? _config$skipAdminLabe : []\n  });\n  const SanitizedList = createSanitizedDraggableListContainer(defaultLabel);\n  return {\n    itemTitleCallback,\n    SanitizedList\n  };\n}\n\n/**\n * Build parent `callbacks.content` map entry for a child module.\n *\n * @param {string} childModuleName e.g. `dsm/faq-child`.\n * @return {{ itemTitleCallback: (childAttrs: Record<string, unknown>) => string }|null}\n */\nfunction getChildDraggableListCallbackEntry(childModuleName) {\n  const helpers = getChildDraggableListHelpers(childModuleName);\n  if (!helpers) {\n    return null;\n  }\n  return {\n    itemTitleCallback: helpers.itemTitleCallback\n  };\n}\n\n/**\n * Parent module `callbacks` map for one or more draggable child modules.\n *\n * @param {string[]} childModuleNames Registered child module names.\n * @return {{ content: Record<string, { itemTitleCallback: Function }> }|undefined}\n */\nfunction buildChildDraggableListCallbacks(childModuleNames) {\n  /** @type {Record<string, { itemTitleCallback: Function }>} */\n  const content = {};\n  childModuleNames.forEach(childModuleName => {\n    const entry = getChildDraggableListCallbackEntry(childModuleName);\n    if (entry) {\n      content[childModuleName] = entry;\n    }\n  });\n  if (!Object.keys(content).length) {\n    return undefined;\n  }\n  return {\n    content\n  };\n}\n;// ./packages/module-library/shared/draggable-child-list/child-draggable-module-list.js\n\n\n\n\n/**\n * Parent Content tab child list with stable row titles (React #300 safe).\n *\n * @param {Object} props\n * @param {string} props.childModuleName Registered child module name.\n * @param {string} props.addTitle        Add-row button label.\n * @return {React.ReactElement}\n */\nfunction ChildDraggableModuleList({\n  childModuleName,\n  addTitle\n}) {\n  const helpers = getChildDraggableListHelpers(childModuleName);\n  if (!helpers) {\n    return null;\n  }\n  const {\n    itemTitleCallback,\n    SanitizedList\n  } = helpers;\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.DraggableChildModuleListContainer, {\n    childModuleName: childModuleName,\n    itemTitleCallback: itemTitleCallback,\n    addTitle: addTitle\n  }, /*#__PURE__*/external_vendor_React_default().createElement(SanitizedList, null));\n}\n;// ./packages/module-library/business-hours/settings-content.js\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\n\n\n\n\n\n/**\n * Read nested module attrs from plain objects or Immutable (`getIn`) maps (Divi store).\n *\n * @param {unknown}                                  attrs Block attrs from edit-post.\n * @param {string[]|readonly string[]} path          Path segments (e.g. `title`, `innerContent`).\n * @return {unknown}\n */\nfunction settings_content_readAttrsPath(attrs, path) {\n  if (attrs == null) {\n    return undefined;\n  }\n  try {\n    if (typeof attrs.getIn === 'function') {\n      return attrs.getIn(path);\n    }\n    return (0,lodash.get)(attrs, path);\n  } catch {\n    return undefined;\n  }\n}\n\n/**\n * `getAttrByMode` throws on missing/invalid innerContent during transient updates (e.g. adding a child row).\n *\n * @param {unknown} innerContent InnerContent subtree.\n * @param {string}  fallback    Fallback scalar when unset or on error.\n * @return {string}\n */\nfunction safeGetAttrByMode(innerContent, fallback = '') {\n  if (innerContent == null || typeof innerContent !== 'object') {\n    return fallback;\n  }\n  try {\n    const v = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(innerContent);\n    if (v === undefined || v === null) {\n      return fallback;\n    }\n    return v;\n  } catch {\n    return fallback;\n  }\n}\nfunction business_hours_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  var _defaultSettingsAttrs;\n  const useStripedAttr = safeGetAttrByMode(settings_content_readAttrsPath(attrs, ['background_striped', 'innerContent']), 'on');\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(ChildDraggableModuleList, {\n    childModuleName: \"dsm/business-hours-child\",\n    addTitle: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Add New Item', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"background\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"background_striped.innerContent\",\n    defaultAttr: businessHoursFd.background_striped,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Striped Background', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Alternating background colors for odd and even rows.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"background_striped_odd_row_color.innerContent\",\n    defaultAttr: businessHoursFd.background_striped_odd_row_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Striped Odd Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background for odd-numbered rows when striped mode is on.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useStripedAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"background_striped_even_row_color.innerContent\",\n    defaultAttr: businessHoursFd.background_striped_even_row_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Striped Even Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background for even-numbered rows when striped mode is on.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useStripedAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, {\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: (_defaultSettingsAttrs = defaultSettingsAttrs?.module?.meta?.adminLabel) !== null && _defaultSettingsAttrs !== void 0 ? _defaultSettingsAttrs : business_hours_module_default_render_attributes_namespaceObject?.module?.meta?.adminLabel\n  }));\n}\n/* harmony default export */ const business_hours_settings_content = (business_hours_settings_content_SettingsContent);\n;// ./packages/module-library/business-hours/settings-design.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\n\nfunction settings_design_readAttrsPath(attrs, path) {\n  if (attrs == null) {\n    return undefined;\n  }\n  try {\n    if (typeof attrs.getIn === 'function') {\n      return attrs.getIn(path);\n    }\n    return (0,lodash.get)(attrs, path);\n  } catch {\n    return undefined;\n  }\n}\nfunction settings_design_safeGetAttrByMode(innerContent, fallback = '') {\n  if (innerContent == null || typeof innerContent !== 'object') {\n    return fallback;\n  }\n  try {\n    const v = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(innerContent);\n    if (v === undefined || v === null) {\n      return fallback;\n    }\n    return v;\n  } catch {\n    return fallback;\n  }\n}\nfunction business_hours_settings_design_SettingsDesign({\n  attrs\n}) {\n  const dividerStyleAttr = settings_design_safeGetAttrByMode(settings_design_readAttrsPath(attrs, ['divider_style', 'innerContent']), 'none');\n  const separatorStyleAttr = settings_design_safeGetAttrByMode(settings_design_readAttrsPath(attrs, ['separator_style', 'innerContent']), 'none');\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"text.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"title.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Day Text', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Day', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"time.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Time Text', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Time', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"content-orientation\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Vertical Alignment', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"content_orientation.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Vertical Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Vertical alignment of day and time within each row.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      'flex-start': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'flex-end': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"separator\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Separator', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"separator_style.innerContent\",\n    defaultAttr: businessHoursFd.separator_style,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Style', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      none: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('none', 'dsm-supreme-modules-pro-for-divi')\n      },\n      solid: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Solid', 'dsm-supreme-modules-pro-for-divi')\n      },\n      dashed: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Dashed', 'dsm-supreme-modules-pro-for-divi')\n      },\n      dotted: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Dotted', 'dsm-supreme-modules-pro-for-divi')\n      },\n      double: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Double', 'dsm-supreme-modules-pro-for-divi')\n      },\n      groove: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Groove', 'dsm-supreme-modules-pro-for-divi')\n      },\n      ridge: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Ridge', 'dsm-supreme-modules-pro-for-divi')\n      },\n      inset: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inset', 'dsm-supreme-modules-pro-for-divi')\n      },\n      outset: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Outset', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"separator_weight.innerContent\",\n    defaultAttr: businessHoursFd.separator_weight,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Weight', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    visible: 'none' !== separatorStyleAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 10,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"separator_color.innerContent\",\n    defaultAttr: businessHoursFd.separator_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    visible: 'none' !== separatorStyleAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"separator_gap.innerContent\",\n    defaultAttr: businessHoursFd.separator_gap,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Gap Spacing', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    visible: 'none' !== separatorStyleAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 40,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"Divider\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Divider', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"divider_style.innerContent\",\n    defaultAttr: businessHoursFd.divider_style,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Style', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      none: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('none', 'dsm-supreme-modules-pro-for-divi')\n      },\n      solid: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Solid', 'dsm-supreme-modules-pro-for-divi')\n      },\n      dashed: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Dashed', 'dsm-supreme-modules-pro-for-divi')\n      },\n      dotted: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Dotted', 'dsm-supreme-modules-pro-for-divi')\n      },\n      double: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Double', 'dsm-supreme-modules-pro-for-divi')\n      },\n      groove: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Groove', 'dsm-supreme-modules-pro-for-divi')\n      },\n      ridge: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Ridge', 'dsm-supreme-modules-pro-for-divi')\n      },\n      inset: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inset', 'dsm-supreme-modules-pro-for-divi')\n      },\n      outset: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Outset', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"divider_weight.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Weight', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    visible: 'none' !== dividerStyleAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 10,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"divider_color.innerContent\",\n    defaultAttr: businessHoursFd.divider_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    visible: 'none' !== dividerStyleAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"spacing\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Spacing', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Item ', 'dsm-supreme-modules-pro-for-divi'),\n    attrName: \"dsm_item.decoration.spacing\",\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const business_hours_settings_design = (business_hours_settings_design_SettingsDesign);\n;// ./packages/module-library/business-hours/settings-advanced.js\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\nfunction business_hours_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_business_hours\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const business_hours_settings_advanced = (business_hours_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/business-hours/module-styles.js\n\n\n\n\n/**\n * `getAttrByMode` can throw when `innerContent` is briefly invalid during toggles.\n *\n * @param {unknown}  innerContent InnerContent subtree.\n * @param {string}     fallback    Value when unset or on error.\n * @return {string}\n */\nfunction module_styles_safeGetAttrByMode(innerContent, fallback = 'on') {\n  if (innerContent == null || typeof innerContent !== 'object') {\n    return fallback;\n  }\n  try {\n    const v = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(innerContent);\n    if (v === undefined || v === null) {\n      return fallback;\n    }\n    return v;\n  } catch {\n    return fallback;\n  }\n}\n\n/**\n * React function component for rendering module style.\n */\nconst business_hours_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  const backgroundStripedOn = 'on' === module_styles_safeGetAttrByMode(attrs?.background_striped?.innerContent, 'on');\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'text'\n  }), elements.style({\n    attrName: 'time'\n  }), elements.style({\n    attrName: 'title'\n  }), elements.style({\n    attrName: 'separator_style'\n  }), elements.style({\n    attrName: 'separator_weight'\n  }), elements.style({\n    attrName: 'separator_color'\n  }), elements.style({\n    attrName: 'separator_gap'\n  }), elements.style({\n    attrName: 'divider_style'\n  }), elements.style({\n    attrName: 'divider_weight'\n  }), elements.style({\n    attrName: 'divider_color'\n  }), elements.style({\n    attrName: 'dsm_item'\n  }), elements.style({\n    attrName: 'background_striped_odd_row_color'\n  }), elements.style({\n    attrName: 'background_striped_even_row_color'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-business-hours-separator`,\n    attr: attrs?.separator_style?.innerContent,\n    property: \"border-bottom-style\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-business-hours-separator`,\n    attr: attrs?.separator_weight?.innerContent,\n    property: \"border-bottom-width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-business-hours-separator`,\n    attr: attrs?.separator_color?.innerContent,\n    property: \"border-bottom-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-business-hours-separator`,\n    attr: attrs?.separator_gap?.innerContent,\n    property: \"margin-left\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-business-hours-separator`,\n    attr: attrs?.separator_gap?.innerContent,\n    property: \"margin-right\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_business_hours_child`,\n    attr: attrs?.divider_style?.innerContent,\n    property: \"border-bottom-style\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_business_hours_child`,\n    attr: attrs?.divider_weight?.innerContent,\n    property: \"border-bottom-width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_business_hours_child`,\n    attr: attrs?.divider_color?.innerContent,\n    property: \"border-bottom-color\"\n  }), backgroundStripedOn && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_business_hours_child:nth-child(odd)`,\n    attr: attrs?.background_striped_odd_row_color?.innerContent,\n    property: \"background-color\"\n  }), backgroundStripedOn && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_business_hours_child:nth-child(even)`,\n    attr: attrs?.background_striped_even_row_color?.innerContent,\n    property: \"background-color\"\n  }));\n};\n;// ./packages/module-library/business-hours/edit.js\n\n\n// Divi package dependencies.\n\n\n\n// Custom dependencies.\n\n\n\n/**\n * React function component for registering module script data.\n */\nconst business_hours_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction business_hours_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements,\n  childrenIds\n}) {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: business_hours_edit_ModuleScriptData,\n    stylesComponent: business_hours_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ChildModulesContainer, {\n    ids: childrenIds\n  }));\n}\n/* harmony default export */ const business_hours_edit = (business_hours_edit_Edit);\n;// ./packages/module-library/shared/parent-child-default-template.js\n/**\n * Divi 5 default child seeding for parent modules.\n *\n * Native parent modules (e.g. `divi/icon-list`) declare a `template` array on\n * `registerModule`. Each entry is `[ childModuleName, attrs ]`. Divi inserts\n * those child blocks **only when the parent is newly added** in the Visual Builder —\n * not on load/save of existing layouts or migration.\n *\n * ## Adopting in a new parent/child module\n *\n * 1. Ensure the **child** exports sensible `placeholderContent` (and `defaultAttrs`\n *    where used) for fields that should appear on insert.\n * 2. In the **parent** `index.js`:\n *\n *    ```js\n *    import { buildParentDefaultChildTemplate } from '../shared/parent-child-default-template';\n *\n *    const MY_CHILD = 'dsm/my-child';\n *\n *    export default {\n *      childrenName: [ MY_CHILD ],\n *      template: buildParentDefaultChildTemplate( MY_CHILD, 3 ),\n *      // …\n *    };\n *    ```\n * 3. Optional per-item overrides — pass an **array** as the 3rd argument (one attrs\n *    object per child). Empty `{}` rows merge with the child `placeholderContent`.\n * 4. Rebuild `divi-5` (`npm run build`). No PHP changes required.\n *\n * Reference rollout: `dsm/icon-list` (3× `{}`), FAQ (3× titled questions), etc.\n *\n * @package DiviSupreme\n */\n\n/**\n * @param {string} childModuleName Registered child slug, e.g. `dsm/icon-list-child`.\n * @param {number} [count=1] Number of starter children (native Icon List uses 3).\n * @param {Record<string, unknown>|Array<Record<string, unknown>>} [childAttrs={}]\n *   Attrs merged into each template row. Pass an array for per-item overrides.\n * @returns {Array<[string, Record<string, unknown>]>}\n */\nfunction buildParentDefaultChildTemplate(childModuleName, count = 1, childAttrs = {}) {\n  /** @type {Array<[string, Record<string, unknown>]>} */\n  const template = [];\n  for (let index = 0; index < count; index++) {\n    let attrs = {};\n    if (Array.isArray(childAttrs)) {\n      var _childAttrs$index;\n      attrs = (_childAttrs$index = childAttrs[index]) !== null && _childAttrs$index !== void 0 ? _childAttrs$index : {};\n    } else if (childAttrs && typeof childAttrs === 'object') {\n      attrs = childAttrs;\n    }\n    template.push([childModuleName, attrs]);\n  }\n  return template;\n}\n;// ./packages/module-library/business-hours/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmBusinessHours', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/business-hours': {\n      name: 'divi-supreme/business-hours',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        d: \"M 2.707031 4.761719 C 2.277344 4.761719 1.925781 4.410156 1.925781 3.980469 C 1.925781 3.550781 2.277344 3.199219 2.707031 3.199219 C 3.140625 3.199219 3.488281 3.550781 3.488281 3.980469 C 3.488281 4.410156 3.144531 4.761719 2.707031 4.761719 Z M 2.707031 3.636719 C 2.515625 3.636719 2.355469 3.792969 2.355469 3.988281 C 2.355469 4.179688 2.515625 4.339844 2.707031 4.339844 C 2.902344 4.339844 3.058594 4.179688 3.058594 3.988281 C 3.058594 3.792969 2.902344 3.636719 2.707031 3.636719 Z M 2.707031 3.636719\",\n        fill: \"#5C1DB0\"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        d: \"M 13.359375 10.011719 C 12.929688 10.011719 12.578125 9.660156 12.578125 9.230469 C 12.578125 8.800781 12.929688 8.449219 13.359375 8.449219 C 13.789062 8.449219 14.140625 8.800781 14.140625 9.230469 C 14.144531 9.660156 13.792969 10.011719 13.359375 10.011719 Z M 13.359375 8.878906 C 13.164062 8.878906 13.007812 9.039062 13.007812 9.230469 C 13.007812 9.421875 13.164062 9.574219 13.359375 9.574219 C 13.550781 9.574219 13.710938 9.417969 13.710938 9.222656 C 13.710938 9.03125 13.550781 8.878906 13.359375 8.878906 Z M 13.359375 8.878906\",\n        fill: \"#5C1DB0\"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        d: \"M 10.898438 12.554688 L 2.664062 12.554688 C 2.082031 12.554688 1.601562 12.078125 1.601562 11.488281 L 1.601562 6.179688 C 1.601562 5.59375 2.074219 5.113281 2.664062 5.113281 L 10.898438 5.113281 C 11.480469 5.113281 11.960938 5.589844 11.960938 6.179688 L 11.960938 11.488281 C 11.960938 12.078125 11.484375 12.554688 10.898438 12.554688 Z M 2.664062 5.550781 C 2.320312 5.550781 2.035156 5.832031 2.035156 6.179688 L 2.035156 11.488281 C 2.035156 11.835938 2.320312 12.117188 2.664062 12.117188 L 10.898438 12.117188 C 11.242188 12.117188 11.527344 11.835938 11.527344 11.488281 L 11.527344 6.179688 C 11.527344 5.832031 11.242188 5.550781 10.898438 5.550781 Z M 2.664062 5.550781\",\n        fill: \"#5C1DB0\"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        d: \"M 9.28125 5.335938 L 8.847656 5.335938 L 8.847656 4.460938 C 8.847656 4.316406 8.726562 4.195312 8.582031 4.195312 L 4.980469 4.195312 C 4.832031 4.195312 4.714844 4.316406 4.714844 4.460938 L 4.714844 5.328125 L 4.277344 5.328125 L 4.277344 4.460938 C 4.277344 4.078125 4.589844 3.761719 4.980469 3.761719 L 8.585938 3.761719 C 8.972656 3.761719 9.289062 4.070312 9.289062 4.460938 L 9.289062 5.335938 Z M 9.28125 5.335938\",\n        fill: \"#5C1DB0\"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        d: \"M 6.78125 11.292969 C 5.425781 11.292969 4.324219 10.1875 4.324219 8.832031 C 4.324219 7.480469 5.425781 6.375 6.78125 6.375 C 8.132812 6.375 9.238281 7.480469 9.238281 8.832031 C 9.238281 10.1875 8.132812 11.292969 6.78125 11.292969 Z M 6.78125 6.8125 C 5.664062 6.8125 4.757812 7.71875 4.757812 8.832031 C 4.757812 9.949219 5.664062 10.855469 6.78125 10.855469 C 7.894531 10.855469 8.800781 9.949219 8.800781 8.832031 C 8.800781 7.71875 7.894531 6.8125 6.78125 6.8125 Z M 6.78125 6.8125\",\n        fill: \"#5C1DB0\"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        d: \"M 7.976562 9.445312 L 6.226562 9.445312 L 6.226562 7.65625 L 6.660156 7.65625 L 6.660156 9.007812 L 7.976562 9.007812 Z M 7.976562 9.445312\",\n        fill: \"#5C1DB0\"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/business-hours/index.js\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\n\n\nconst BUSINESS_HOURS_CHILD = 'dsm/business-hours-child';\nconst businessHoursDefaultChildTemplate = buildParentDefaultChildTemplate(BUSINESS_HOURS_CHILD, 5, ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday'].map(day => ({\n  title: {\n    innerContent: {\n      desktop: {\n        value: {\n          text: day\n        }\n      }\n    }\n  },\n  time: {\n    innerContent: {\n      desktop: {\n        value: {\n          text: '9:00 AM - 6:00 PM'\n        }\n      }\n    }\n  }\n})));\n\n/**\n * Same pattern as `dsm/card` and `dsm/animated-gradient-text`:\n * `defaultAttrs` from JSON + `placeholderContent` (merge module.decoration with defaults).\n * Do not duplicate the same defaults in `module.json` `attributes.*.default` — see MODULE_OPTIONS_AUDIT.md.\n */\nconst business_hours_defaultAttrs = business_hours_module_default_render_attributes_namespaceObject;\nconst businessHoursModule = {\n  metadata: business_hours_module_namespaceObject,\n  conversionOutline: business_hours_conversion_outline_conversionOutline,\n  renderers: {\n    edit: business_hours_edit,\n    styles: business_hours_module_styles_ModuleStyles\n  },\n  settings: {\n    content: business_hours_settings_content,\n    design: business_hours_settings_design,\n    advanced: business_hours_settings_advanced\n  },\n  childrenName: [BUSINESS_HOURS_CHILD],\n  template: businessHoursDefaultChildTemplate,\n  callbacks: buildChildDraggableListCallbacks([BUSINESS_HOURS_CHILD]),\n  defaultAttrs: business_hours_defaultAttrs,\n  placeholderContent: {\n    ...business_hours_module_default_render_attributes_namespaceObject,\n    module: {\n      decoration: {},\n      ...business_hours_module_default_render_attributes_namespaceObject.module\n    }\n  }\n};\n/* harmony default export */ const business_hours = (businessHoursModule);\n;// ./packages/module-library/card/module.json\nconst card_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/card\",\"d4Shortcode\":\"dsm_card\",\"title\":\"Supreme Card\",\"titles\":\"Supreme Card\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/card\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"default\":{\"advanced\":{\"text\":{\"text\":{\"desktop\":{\"value\":{\"color\":\"light\"}}}}}},\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"title\":{\"type\":\"object\",\"selector\":\"{{selector}} .et_pb_module_header\",\"attributes\":{\"class\":\"dsm_card_title et_pb_module_header\"},\"tagName\":\"h4\",\"inlineEditor\":\"plainText\",\"elementType\":\"headingLink\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm_card_title\",\"hover\":\"{{selector}}:hover .dsm_card_title\"}}}}},\"subtitle\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_card_subtitle\",\"inlineEditor\":\"plainText\",\"elementType\":\"headingLink\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm_card_subtitle\",\"hover\":\"{{selector}}:hover .dsm_card_subtitle\"}}}}},\"layout\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_width\":{\"type\":\"object\",\"inlineEditor\":\"rangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"layout_inline_image_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"layout_inline_order\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"content_horizontal_alignment\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"content_equal_height\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"equal_height_image_height\":{\"type\":\"object\",\"inlineEditor\":\"rangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image\":{\"type\":\"object\",\"elementType\":\"image\",\"inlineEditor\":\"UploadContainer\",\"childrenSanitizer\":\"et_core_esc_previously\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}}},\"image_as_background\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_background_height\":{\"type\":\"object\",\"inlineEditor\":\"rangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_background_size\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_background_position\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_background_repeat\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_background_animation\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_background_animation_speed\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_content_icon\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"font_icon\":{\"type\":\"object\",\"inlineEditor\":\"IconPicker\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContianer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_circle\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"circle_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContianer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_circle_border\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"circle_border_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContianer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_icon_font_size\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"icon_content_font_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"contentIconStyle\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_card_icon .et-pb-icon\",\"childrenSanitizer\":\"et_core_esc_previously\",\"default\":{\"decoration\":{\"spacing\":{\"desktop\":{\"value\":{\"margin\":{\"bottom\":\"30px\"}}}}}},\"settings\":{\"decoration\":{\"background\":{},\"spacing\":{},\"boxShadow\":{},\"border\":{}}},\"styleProps\":{\"background\":{\"selector\":\"{{selector}} .dsm_card_icon .et-pb-icon\",\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm_card_icon .et-pb-icon\",\"hover\":\"{{selector}}{{:hover}} .dsm_card_icon .et-pb-icon\"}}},\"spacing\":{\"selector\":\"{{selector}} .dsm_card_icon .et-pb-icon\",\"important\":true},\"border\":{\"selector\":\"{{selector}} .dsm_card_icon .et-pb-icon\",\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm_card_icon .et-pb-icon\",\"hover\":\"{{selector}}{{:hover}} .dsm_card_icon .et-pb-icon\"}},\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm_card_icon .et-pb-icon\",\"useOverlay\":true}}},\"image_alignment\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"stretch_image\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_overlay\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"overlay_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContianer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_icon\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"icon_font_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"overlay_icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContianer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"hover_icon\":{\"type\":\"object\",\"inlineEditor\":\"IconPicker\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"overlay_on_hover\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"badge_text\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"selector\":\"{{selector}} .dsm_card_badge_text\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_badge_icon\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"badge_font_icon\":{\"type\":\"object\",\"inlineEditor\":\"IconPicker\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"badge_icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContianer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"badge_icon_font_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"badge_position\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"badge_custom_position\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"badge_left_position\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"badge_top_position\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"badge_background_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContianer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"badge_padding\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContianer\",\"selector\":\"{{selector}} .dsm_card_badge_text\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"badge_url\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContianer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"badge_url_new_window\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"alt\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"content\":{\"type\":\"object\",\"inlineEditor\":\"RichTextContainer\",\"selector\":\"{{selector}} .dsm_card_description\",\"elementType\":\"content\",\"attributes\":{\"class\":\"dsm_card_description\"},\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm_card_description\",\"hover\":\"{{selector}}:hover .dsm_card_description\"}}}}},\"content_padding\":{\"type\":\"object\",\"inlineEditor\":\"\",\"selector\":\"{{selector}} .dsm_card_wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"spacing\":{\"selector\":\"{{selector}} .dsm_card_wrapper\",\"important\":true}}},\"button\":{\"type\":\"object\",\"selector\":\"{{selector}}.et_pb_module .et_pb_button_module_wrapper .et_pb_button\",\"default\":{\"decoration\":{\"button\":{\"desktop\":{\"value\":{\"enable\":\"off\",\"icon\":{\"enable\":\"on\",\"onHover\":\"on\"}}}},\"border\":{\"desktop\":{\"value\":{\"styles\":{\"all\":{\"color\":\"\"}}}}},\"font\":{\"font\":{\"desktop\":{\"value\":{\"color\":\"\"}}}}}},\"elementType\":\"button\",\"styleProps\":{\"font\":{\"important\":{\"font\":{\"desktop\":{\"value\":{\"color\":true,\"font-size\":true,\"letter-spacing\":true}}}}},\"spacing\":{\"important\":true},\"alignment\":{\"selector\":\"{{selector}} .et_pb_button_module_wrapper\"},\"sizing\":{\"selector\":\"{{selector}} .et_pb_button_module_wrapper\",\"propertySelectors\":{\"desktop\":{\"value\":{\"margin-left\":\"{{selector}} .et_pb_button_module_wrapper\",\"margin-right\":\"{{selector}} .et_pb_button_module_wrapper\"}},\"tablet\":{\"value\":{\"margin-left\":\"{{selector}} .et_pb_button_module_wrapper\",\"margin-right\":\"{{selector}} .et_pb_button_module_wrapper\"}},\"phone\":{\"value\":{\"margin-left\":\"{{selector}} .et_pb_button_module_wrapper\",\"margin-right\":\"{{selector}} .et_pb_button_module_wrapper\"}}}},\"button\":{\"propertySelectors\":{\"desktop\":{\"value\":{\"text-align\":\"{{selector}} .et_pb_button_module_wrapper\"}},\"tablet\":{\"value\":{\"text-align\":\"{{selector}} .et_pb_button_module_wrapper\"}},\"phone\":{\"value\":{\"text-align\":\"{{selector}} .et_pb_button_module_wrapper\"}}}}}},\"button_text\":{\"type\":\"object\",\"tagName\":\"span\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_url\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_url_new_window\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"badgeStyle\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_card_badge_text\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm_card_badge_text\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm_card_badge_text\",\"useOverlay\":true}}},\"imageStyle\":{\"type\":\"object\",\"selector\":\"{{selector}} figure.dsm_card_image_wrapper .dsm_card_image_background, {{selector}} figure.dsm_card_image_wrapper img.dsm_card_img\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} figure.dsm_card_image_wrapper .dsm_card_image_background, {{selector}} figure.dsm_card_image_wrapper img.dsm_card_img\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} figure.dsm_card_image_wrapper .dsm_card_image_background, {{selector}} figure.dsm_card_image_wrapper img.dsm_card_img\",\"useOverlay\":true}}}}}');\n;// ./packages/module-library/card/module-default-render-attributes.json\nconst card_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"alt\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_text\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_url\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button_url_new_window\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"badge_background_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#ffffff\"}}},\"badge_custom_position\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"badge_icon_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#2EA3F2\"}}},\"badge_icon_font_size\":{\"innerContent\":{\"desktop\":{\"value\":\"16px\"}}},\"badge_left_position\":{\"innerContent\":{\"desktop\":{\"value\":\"1rem\"}}},\"badge_position\":{\"innerContent\":{\"desktop\":{\"value\":\"top_right\"}}},\"badge_text\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"badge_top_position\":{\"innerContent\":{\"desktop\":{\"value\":\"1rem\"}}},\"badge_url\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"badge_url_new_window\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"circle_border_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#333333\"}}},\"circle_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#f4f4f4\"}}},\"content\":{\"innerContent\":{\"desktop\":{\"value\":{\"text\":\"\"}}}},\"content_equal_height\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"equal_height_image_height\":{\"innerContent\":{\"desktop\":{\"value\":\"240px\"}}},\"contentIconStyle\":{\"decoration\":{\"spacing\":{\"desktop\":{\"value\":{\"margin\":{\"bottom\":\"30px\"}}}}}},\"content_horizontal_alignment\":{\"innerContent\":{\"desktop\":{\"value\":\"center\"}}},\"icon_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#2EA3F2\"}}},\"icon_content_font_size\":{\"innerContent\":{\"desktop\":{\"value\":\"96px\"}}},\"icon_font_size\":{\"innerContent\":{\"desktop\":{\"value\":\"32px\"}}},\"image_alignment\":{\"innerContent\":{\"desktop\":{\"value\":\"left\"}}},\"stretch_image\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"image_as_background\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"image_background_animation\":{\"innerContent\":{\"desktop\":{\"value\":\"none\"}}},\"image_background_animation_speed\":{\"innerContent\":{\"desktop\":{\"value\":\"300ms\"}}},\"image_background_height\":{\"innerContent\":{\"desktop\":{\"value\":\"240px\"}}},\"image_background_position\":{\"innerContent\":{\"desktop\":{\"value\":\"center\"}}},\"image_background_repeat\":{\"innerContent\":{\"desktop\":{\"value\":\"no-repeat\"}}},\"image_background_size\":{\"innerContent\":{\"desktop\":{\"value\":\"cover\"}}},\"image_width\":{\"innerContent\":{\"desktop\":{\"value\":\"100%\"}}},\"layout\":{\"innerContent\":{\"desktop\":{\"value\":\"stacked\"}}},\"layout_inline_image_width\":{\"innerContent\":{\"desktop\":{\"value\":\"50%\"}}},\"layout_inline_order\":{\"innerContent\":{\"desktop\":{\"value\":\"left\"}}},\"overlay_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#2EA3F2\"}}},\"overlay_icon_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#FFFFFF\"}}},\"overlay_on_hover\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"subtitle\":{\"innerContent\":{\"desktop\":{\"value\":{\"text\":\"\"}}}},\"title\":{\"innerContent\":{\"desktop\":{\"value\":{\"text\":\"\"}}}},\"use_badge_icon\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"use_circle\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"use_circle_border\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"use_content_icon\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"use_icon\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"use_icon_font_size\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"use_overlay\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}}}');\n;// ./packages/module-library/card/placeholder-src.js\n/**\n * Default grey SVG for new Card inserts / VB upload `defaultAttr` only.\n * Matches PHP `Card::PLACEHOLDER_IMAGE_SRC`.\n *\n * @package DiviSupreme\n */\n\nconst CARD_PLACEHOLDER_IMAGE_SRC = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTA4MCIgaGVpZ2h0PSI1NDAiIHZpZXdCb3g9IjAgMCAxMDgwIDU0MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPHBhdGggZmlsbD0iI0VCRUJFQiIgZD0iTTAgMGgxMDgwdjU0MEgweiIvPgogICAgICAgIDxwYXRoIGQ9Ik00NDUuNjQ5IDU0MGgtOTguOTk1TDE0NC42NDkgMzM3Ljk5NSAwIDQ4Mi42NDR2LTk4Ljk5NWwxMTYuMzY1LTExNi4zNjVjMTUuNjItMTUuNjIgNDAuOTQ3LTE1LjYyIDU2LjU2OCAwTDQ0NS42NSA1NDB6IiBmaWxsLW9wYWNpdHk9Ii4xIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgICAgICA8Y2lyY2xlIGZpbGwtb3BhY2l0eT0iLjA1IiBmaWxsPSIjMDAwIiBjeD0iMzMxIiBjeT0iMTQ4IiByPSI3MCIvPgogICAgICAgIDxwYXRoIGQ9Ik0xMDgwIDM3OXYxMTMuMTM3TDcyOC4xNjIgMTQwLjMgMzI4LjQ2MiA1NDBIMjE1LjMyNEw2OTkuODc4IDU1LjQ0NmMxNS42Mi0xNS42MiA0MC45NDgtMTUuNjIgNTYuNTY4IDBMMTA4MCAzNzl6IiBmaWxsLW9wYWNpdHk9Ii4yIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgIDwvZz4KPC9zdmc+Cg==';\n\n/**\n * @param {string} src Resolved image URL or data URI.\n * @return {boolean}\n */\nfunction isCardPlaceholderImageSrc(src) {\n  return typeof src === 'string' && src !== '' && src === CARD_PLACEHOLDER_IMAGE_SRC;\n}\n;// ./packages/module-library/card/card-image-as-background.js\n\n\n/**\n * Read first non-empty innerContent value across breakpoints (no getAttrByMode — VB-safe).\n *\n * @param {Object|undefined} innerContent Attribute innerContent object.\n * @return {*|null}\n */\nfunction readInnerContentFirstValue(innerContent) {\n  if (!innerContent || typeof innerContent !== 'object') {\n    return null;\n  }\n  for (const bp of ['desktop', 'tablet', 'phone']) {\n    const v = innerContent[bp]?.value;\n    if (v !== undefined && v !== null && v !== '') {\n      return v;\n    }\n  }\n  return null;\n}\n\n/**\n * String URL for `<img src>` / CSS `background-image`.\n * Handles: string; leaf `{ src }`, `{ url }`, `{ id }` (id cannot resolve in JS — empty);\n * nested `{ value: … }`; full `innerContent` `{ desktop: { value }, … }` (CommonStyle may pass this).\n *\n * @param {*} raw Value from image field or style `attrValue`.\n * @param {number} depth Recursion guard.\n * @return {string}\n */\nfunction resolveCardImageUrl(raw, depth = 0) {\n  if (depth > 8 || raw == null || raw === '') {\n    return '';\n  }\n  if ('string' === typeof raw) {\n    return isCardPlaceholderImageSrc(raw) ? '' : raw;\n  }\n  if ('object' !== typeof raw || null === raw || Array.isArray(raw)) {\n    return '';\n  }\n  if (typeof raw.src === 'string' && raw.src !== '') {\n    return isCardPlaceholderImageSrc(raw.src) ? '' : raw.src;\n  }\n  if (typeof raw.url === 'string' && raw.url !== '') {\n    return isCardPlaceholderImageSrc(raw.url) ? '' : raw.url;\n  }\n  if (Object.prototype.hasOwnProperty.call(raw, 'value')) {\n    const nested = resolveCardImageUrl(raw.value, depth + 1);\n    if (nested !== '') {\n      return nested;\n    }\n  }\n  for (const bp of ['desktop', 'tablet', 'phone']) {\n    if (!Object.prototype.hasOwnProperty.call(raw, bp) || typeof raw[bp] !== 'object' || null === raw[bp]) {\n      continue;\n    }\n    const nested = resolveCardImageUrl(raw[bp].value, depth + 1);\n    if (nested !== '') {\n      return nested;\n    }\n  }\n  return '';\n}\n\n/**\n * Resolve image URL for VB preview (includes grey placeholder from `placeholderContent`).\n *\n * @param {*} raw Value from image field or style `attrValue`.\n * @param {number} depth Recursion guard.\n * @return {string}\n */\nfunction resolveCardImagePreviewUrl(raw, depth = 0) {\n  if (depth > 8 || raw == null || raw === '') {\n    return '';\n  }\n  if ('string' === typeof raw) {\n    return raw;\n  }\n  if ('object' !== typeof raw || null === raw || Array.isArray(raw)) {\n    return '';\n  }\n  if (typeof raw.src === 'string' && raw.src !== '') {\n    return raw.src;\n  }\n  if (typeof raw.url === 'string' && raw.url !== '') {\n    return raw.url;\n  }\n  if (Object.prototype.hasOwnProperty.call(raw, 'value')) {\n    const nested = resolveCardImagePreviewUrl(raw.value, depth + 1);\n    if (nested !== '') {\n      return nested;\n    }\n  }\n  for (const bp of ['desktop', 'tablet', 'phone']) {\n    if (!Object.prototype.hasOwnProperty.call(raw, bp) || typeof raw[bp] !== 'object' || null === raw[bp]) {\n      continue;\n    }\n    const nested = resolveCardImagePreviewUrl(raw[bp].value, depth + 1);\n    if (nested !== '') {\n      return nested;\n    }\n  }\n  return '';\n}\n\n/**\n * Stored image field value including placeholder (for VB preview only).\n *\n * @param {Object|undefined} attrs Module attrs.\n * @return {*|null}\n */\nfunction getCardImageStoredRaw(attrs) {\n  if (!attrs || typeof attrs !== 'object') {\n    return null;\n  }\n  const inner = attrs.image?.innerContent;\n  if (!inner || typeof inner !== 'object') {\n    return null;\n  }\n  for (const bp of ['desktop', 'tablet', 'phone']) {\n    const raw = inner[bp]?.value;\n    if (raw == null || raw === '') {\n      continue;\n    }\n    if ('string' === typeof raw && raw.length > 0) {\n      return raw;\n    }\n    if ('object' === typeof raw && (raw.src || raw.url || raw.id)) {\n      return raw;\n    }\n  }\n  return null;\n}\n\n/**\n * Whether an upload leaf value is an intentional clear (removed image).\n *\n * @param {unknown} value Upload `innerContent.*.value`.\n * @return {boolean}\n */\nfunction isUploadValueExplicitlyEmpty(value) {\n  if (value === '' || value === null) {\n    return true;\n  }\n  if ('object' !== typeof value || null === value || Array.isArray(value)) {\n    return false;\n  }\n  const hasAttachmentId = Object.prototype.hasOwnProperty.call(value, 'id') && value.id !== undefined && value.id !== null && value.id !== '' && value.id !== 0;\n  if (hasAttachmentId) {\n    return false;\n  }\n  const src = value.src;\n  const url = value.url;\n  if (typeof src === 'string' && src !== '') {\n    return false;\n  }\n  if (typeof url === 'string' && url !== '') {\n    return false;\n  }\n  if (Object.prototype.hasOwnProperty.call(value, 'src') || Object.prototype.hasOwnProperty.call(value, 'url')) {\n    return true;\n  }\n  return 0 === Object.keys(value).length;\n}\n\n/**\n * True when the user cleared the upload (empty string stored), not merely unset.\n *\n * @param {Object|undefined} attrs Module attrs.\n * @return {boolean}\n */\nfunction isCardImageExplicitlyEmpty(attrs) {\n  const inner = attrs?.image?.innerContent;\n  if (!inner || typeof inner !== 'object') {\n    return false;\n  }\n  return ['desktop', 'tablet', 'phone'].some(bp => {\n    if (!Object.prototype.hasOwnProperty.call(inner, bp)) {\n      return false;\n    }\n    const leaf = inner[bp];\n    if (!leaf || typeof leaf !== 'object') {\n      return false;\n    }\n    if (!Object.prototype.hasOwnProperty.call(leaf, 'value')) {\n      return false;\n    }\n    const value = leaf.value;\n    return isUploadValueExplicitlyEmpty(value);\n  });\n}\n\n/**\n * Image field never saved / no breakpoint value (fresh insert before first save).\n *\n * @param {Object|undefined} attrs Module attrs.\n * @return {boolean}\n */\nfunction isCardImageUnset(attrs) {\n  const inner = attrs?.image?.innerContent;\n  if (!inner || typeof inner !== 'object') {\n    return true;\n  }\n  return !['desktop', 'tablet', 'phone'].some(bp => {\n    const value = inner[bp]?.value;\n    return value !== undefined && value !== null && value !== '' && !isUploadValueExplicitlyEmpty(value);\n  });\n}\n\n/**\n * VB preview URL: user image, insert placeholder, or nothing when cleared.\n *\n * @param {Object|undefined} attrs Module attrs.\n * @return {string}\n */\nfunction resolveCardImagePreviewForAttrs(attrs) {\n  if (isCardImageExplicitlyEmpty(attrs)) {\n    return '';\n  }\n  const userRaw = getCardImageAttrRaw(attrs);\n  if (userRaw !== null) {\n    const url = resolveCardImageUrl(userRaw);\n    if (url !== '') {\n      return url;\n    }\n  }\n  const storedRaw = getCardImageStoredRaw(attrs);\n  if (storedRaw !== null) {\n    const previewUrl = resolveCardImagePreviewUrl(storedRaw);\n    if (previewUrl !== '') {\n      return previewUrl;\n    }\n  }\n  if (isCardImageUnset(attrs)) {\n    return CARD_PLACEHOLDER_IMAGE_SRC;\n  }\n  return '';\n}\n\n/**\n * Whether VB should render image markup / background styles (user image or insert placeholder).\n *\n * @param {Object|undefined} attrs Module attrs.\n * @return {boolean}\n */\nfunction cardModuleHasPreviewImage(attrs) {\n  return resolveCardImagePreviewForAttrs(attrs) !== '';\n}\n\n/**\n * Raw image field value (string or media object), or null. Matches Card.php breakpoint scan.\n *\n * @param {Object|undefined} attrs Module attrs.\n * @return {*|null}\n */\nfunction getCardImageAttrRaw(attrs) {\n  if (!attrs || typeof attrs !== 'object') {\n    return null;\n  }\n  const inner = attrs.image?.innerContent;\n  if (!inner || typeof inner !== 'object') {\n    return null;\n  }\n  for (const bp of ['desktop', 'tablet', 'phone']) {\n    const raw = inner[bp]?.value;\n    if (raw == null || raw === '') {\n      continue;\n    }\n    if ('string' === typeof raw && raw.length > 0) {\n      return isCardPlaceholderImageSrc(raw) ? null : raw;\n    }\n    if ('object' === typeof raw && (raw.src || raw.url || raw.id)) {\n      const src = resolveCardImageUrl(raw);\n      if ('' === src || isCardPlaceholderImageSrc(src)) {\n        continue;\n      }\n      return raw;\n    }\n  }\n  return null;\n}\n\n/**\n * Whether the module has a user-selected image (excludes VB insert placeholder).\n *\n * @param {Object|undefined} attrs Module attrs.\n * @return {boolean}\n */\nfunction cardModuleHasImage(attrs) {\n  return null !== getCardImageAttrRaw(attrs);\n}\n\n/**\n * Supreme Card — resolve \"image as background\" toggle when attrs were omitted or normalized.\n *\n * @param {Object|undefined} innerContent image_as_background.innerContent from module attrs.\n * @return {string} 'on' | 'off'\n */\nfunction getCardImageAsBackgroundMode(innerContent) {\n  const raw = readInnerContentFirstValue(innerContent);\n  if (raw === null || raw === undefined || raw === '') {\n    return 'on';\n  }\n  if (raw === true || raw === 1 || raw === '1') {\n    return 'on';\n  }\n  if (raw === false || raw === 0 || raw === '0') {\n    return 'off';\n  }\n  if (typeof raw === 'string') {\n    const s = raw.toLowerCase();\n    if (s === 'off') {\n      return 'off';\n    }\n  }\n  return 'on';\n}\n;// ./packages/module-library/card/card-vb-default-attrs.js\n/**\n * Visual Builder `defaultAttr` map: each value is an `innerContent` object\n * (`{ desktop: { value } }`), derived from `module-default-render-attributes.json`.\n *\n * @package DiviSupreme\n */\n\n\n\n/** `SpacingGroup` for Icon — decoration path, not `innerContent`. */\nconst cardContentIconStyleSpacingDefault = card_module_default_render_attributes_namespaceObject.contentIconStyle.decoration.spacing;\nconst cardFieldDefaultInnerContent = Object.fromEntries(Object.entries(card_module_default_render_attributes_namespaceObject).map(([key, attr]) => [key, attr.innerContent]));\n\n/** @deprecated Use {@link cardFieldDefaultInnerContent} — alias for earlier background-only experiments */\nconst cardBackgroundFieldsVbDefaultAttr = cardFieldDefaultInnerContent;\n\n/** Canonical stored default is empty; tutorial copy lives in `placeholderContent` / new inserts only. */\nconst cardRichTextVbDefaultAttr = {\n  desktop: {\n    value: {\n      text: ''\n    }\n  }\n};\n\n/**\n * D5 upload shape for `image.innerContent` (`FieldContainer` uses `subName=\"src\"`).\n *\n * @package DiviSupreme\n */\n\n\n\n\n/** Leaf upload object — matches scroll-image / UploadContainer `{ src }` value. */\nconst cardImagePlaceholderUploadValue = {\n  src: CARD_PLACEHOLDER_IMAGE_SRC\n};\n\n/** `defaultAttr` for Content → Image upload field. */\nconst cardImageUploadVbDefaultAttr = {\n  desktop: {\n    value: cardImagePlaceholderUploadValue\n  }\n};\n\n/** `defaultAttrs.image` / `placeholderContent.image` for new Card modules. */\nconst cardImagePlaceholderAttr = {\n  innerContent: cardImageUploadVbDefaultAttr\n};\n;// ./packages/module-library/card/settings-content.js\n\n// Wordpress dependencies.\n\n// Divi package dependencies.\n\n\n\n\n\n\nfunction card_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  const useImageAsBackground = getCardImageAsBackgroundMode(attrs?.image_as_background?.innerContent);\n  const useIcon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_content_icon?.innerContent);\n  const fd = cardFieldDefaultInnerContent;\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"title.innerContent\",\n    subName: \"text\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text entered here will appear as title.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: fd.title,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"subtitle.innerContent\",\n    subName: \"text\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Sub Title', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text entered here will appear as subtitle.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: fd.subtitle,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"content.innerContent\",\n    subName: \"text\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content entered here will appear inside the module.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: cardRichTextVbDefaultAttr,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RichTextContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"image_badge\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image & Badge', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image.innerContent\",\n    subName: \"src\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Upload an image to display at the top of your Cards.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: cardImageUploadVbDefaultAttr,\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      preset: 'content',\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_as_background.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Image as Background', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose to have a custom height for your image wrapper.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: fd.image_as_background\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), 'on' === useImageAsBackground ? /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_background_height.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Height', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Adjust the height of the image.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: fd.image_background_height\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 800,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_background_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Image Size', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: fd.image_background_size\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      cover: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Cover', 'dsm-supreme-modules-pro-for-divi')\n      },\n      contain: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fit', 'dsm-supreme-modules-pro-for-divi')\n      },\n      initial: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Actual Size', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_background_position.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Image Position', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: fd.image_background_position\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      top_left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      top: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top', 'dsm-supreme-modules-pro-for-divi')\n      },\n      top_right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center_left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center_right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom_left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom_right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Right', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_background_repeat.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Image Repeat', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: fd.image_background_repeat\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      'no-repeat': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('No Repeat', 'dsm-supreme-modules-pro-for-divi')\n      },\n      repeat: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Repeat', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'repeat-x': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Repeat X (horizontal)', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'repeat-y': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Repeat Y (vertical)', 'dsm-supreme-modules-pro-for-divi')\n      },\n      space: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Space', 'dsm-supreme-modules-pro-for-divi')\n      },\n      round: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Round', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_background_animation.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Image Animation', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    defaultAttr: fd.image_background_animation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      none: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('None', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zoom_in: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom In', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zoom_out: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom Out', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zoom_in_n_rotate: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom In & Rotate', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zoom_out_n_rotate: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom Out & Rotate', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_background_animation_speed.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animation Speed (in ms)', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: fd.image_background_animation_speed\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 300,\n    max: 3000,\n    defaultUnit: 'ms',\n    allowedUnits: ['ms']\n  }))) : null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"badge_text.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Badge Text', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: fd.badge_text,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      preset: 'content',\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"icon\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_content_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Icon', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose whether icon set below should be used.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: fd.use_content_icon\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"font_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Choose an icon to display with your blurb.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useIcon\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"link\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Link', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"badge_url.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Badge Link URL', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'url'\n      },\n      sticky: false\n    },\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If you would like your badge to be a link, input your destination URL here. No link will be created if this field is left blank.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: fd.badge_url\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"badge_url_new_window.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Badge Link Target', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose whether or not your link opens in a new window', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: fd.badge_url_new_window\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      off: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The Same Window', 'dsm-supreme-modules-pro-for-divi')\n      },\n      on: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The New Tab', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, {\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"button\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_text.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Text', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    },\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Input your desired button text, or leave blank for no button.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: fd.button_text\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_url.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button URL', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'url'\n      },\n      sticky: false\n    },\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Input URL for your button.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: fd.button_url\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_url_new_window.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Url Opens', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Choose whether your link opens in a new window or not', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: fd.button_url_new_window\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      off: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The Same Window', 'dsm-supreme-modules-pro-for-divi')\n      },\n      on: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The New Tab', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const card_settings_content = (card_settings_content_SettingsContent);\n;// ./packages/module-library/card/settings-design.js\n\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\nfunction card_settings_design_SettingsDesign({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  var _defaultSettingsAttrs;\n  const badgeCustomPosition = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.badge_custom_position?.innerContent);\n  const useCircle = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_circle?.innerContent);\n  const showCircleBorder = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_circle_border?.innerContent);\n  const useFontSize = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_icon_font_size?.innerContent);\n  // Omitted `layout` in stored JSON equals schema default `stacked` (migration / save strips defaults).\n  const layout = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.layout?.innerContent) || 'stacked';\n  const contentEqualHeight = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.content_equal_height?.innerContent);\n  const useOverlay = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_overlay?.innerContent);\n  const useIcon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_icon?.innerContent);\n  const useContentIcon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_content_icon?.innerContent);\n  const hasButtonText = !(0,lodash.isEmpty)((0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_text?.innerContent));\n  const imageAsBackground = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.image_as_background?.innerContent) || 'on';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"layout_alignment\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Layout & Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    preset: \"content\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"layout.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Layout', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', ''),\n    defaultAttr: cardFieldDefaultInnerContent.layout\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      stacked: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Stacked', 'dsm-supreme-modules-pro-for-divi')\n      },\n      inline: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inline', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"content_equal_height.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Equal Height', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If you use the row equalize height option, then enable this to see equal height for this module.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'stacked' === layout,\n    defaultAttr: cardFieldDefaultInnerContent.content_equal_height\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"equal_height_image_height.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Height', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Adjust the height of the image when Using Equal Height (stacked layout).', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'stacked' === layout && 'on' === contentEqualHeight,\n    defaultAttr: cardFieldDefaultInnerContent.equal_height_image_height\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 800,\n    defaultUnit: \"px\",\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"layout_inline_image_width.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Width', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If you use the row equalize height option, then enable this to see equal height for this module.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'inline' === layout,\n    defaultAttr: cardFieldDefaultInnerContent.layout_inline_image_width\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 70,\n    defaultUnit: '%'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"layout_inline_order.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Order Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If you use the row equalize height option, then enable this to see equal height for this module.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'inline' === layout,\n    defaultAttr: cardFieldDefaultInnerContent.layout_inline_order\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"content_horizontal_alignment.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Horizontal Content Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If you use the row equalize height option, then enable this to see equal height for this module.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'inline' === layout,\n    defaultAttr: cardFieldDefaultInnerContent.content_horizontal_alignment\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      'flex-start': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'flex-end': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"image\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_width.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Width', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Adjust the width of the image.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: cardFieldDefaultInnerContent.image_width\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: '%'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_alignment.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    },\n    defaultAttr: cardFieldDefaultInnerContent.image_alignment\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"stretch_image.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Stretch Image', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Stretch the inline image to full width of the card image area. Only applies when Cover Image is off.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'off' === imageAsBackground,\n    defaultAttr: cardFieldDefaultInnerContent.stretch_image\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_overlay.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Overlay', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If enabled, an overlay color and icon will be displayed when a visitors hovers over the image', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: cardFieldDefaultInnerContent.use_overlay\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"overlay_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If enabled, an overlay color and icon will be displayed when a visitors hovers over the image', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useOverlay,\n    defaultAttr: cardFieldDefaultInnerContent.overlay_color\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Icon', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If enabled, an overlay color and icon will be displayed when a visitors hovers over the image', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useOverlay,\n    defaultAttr: cardFieldDefaultInnerContent.use_icon\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"icon_font_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Font Size', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If enabled, an overlay color and icon will be displayed when a visitors hovers over the image', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useOverlay && 'on' === useIcon,\n    defaultAttr: cardFieldDefaultInnerContent.icon_font_size\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 120,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"overlay_icon_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay Icon Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If enabled, an overlay color and icon will be displayed when a visitors hovers over the image', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useOverlay && 'on' === useIcon,\n    defaultAttr: cardFieldDefaultInnerContent.overlay_icon_color\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"hover_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Picker', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If enabled, an overlay color and icon will be displayed when a visitors hovers over the image', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useOverlay && 'on' === useIcon\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"overlay_on_hover.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Overlay On Hover', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If enabled, an overlay color and icon will be displayed when a visitors hovers over the image', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useOverlay,\n    defaultAttr: cardFieldDefaultInnerContent.overlay_on_hover\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"imageStyle.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"imageStyle.decoration.boxShadow\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"badge\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Badge', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"badge_position.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Position', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose position of the badge.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    visible: 'off' === badgeCustomPosition,\n    defaultAttr: cardFieldDefaultInnerContent.badge_position\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      top_left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      top_center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      top_right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center_left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center_right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom_left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom_center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom_right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Right', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"badge_custom_position.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Custom Position', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose to have a custom position for your badge.', 'dsm-supreme-modules-pro-for-divi')\n    // features={ {\n    // \tpreset: 'content',\n    // } }\n    ,\n\n    defaultAttr: cardFieldDefaultInnerContent.badge_custom_position\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"badge_left_position.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left Position', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Adjust the Left position.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === badgeCustomPosition,\n    defaultAttr: cardFieldDefaultInnerContent.badge_left_position\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 30,\n    step: 0.1,\n    defaultUnit: 'rem'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"badge_top_position.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top Position', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Adjust the Top position.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === badgeCustomPosition,\n    defaultAttr: cardFieldDefaultInnerContent.badge_top_position\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 30,\n    step: 0.1,\n    defaultUnit: 'rem'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"badge_background_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom background color for your badge.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: cardFieldDefaultInnerContent.badge_background_color\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"badge_padding.decoration.spacing\",\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"badge_text.decoration.font\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Badge', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"badgeStyle.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"badgeStyle.decoration.boxShadow\",\n    grouped: false\n  })), 'on' === useContentIcon && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"icon\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"icon_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose to have a custom position for your badge.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: cardFieldDefaultInnerContent.icon_color\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_icon_font_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Icon Font Size', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose to have a custom position for your badge.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: cardFieldDefaultInnerContent.use_icon_font_size\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"icon_content_font_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Font Size', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose to have a custom position for your badge.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useFontSize,\n    defaultAttr: cardFieldDefaultInnerContent.icon_content_font_size\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 120,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, {\n    attrName: \"contentIconStyle.decoration.background\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"contentIconStyle.decoration.border\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_circle.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Circle Icon', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose to have a custom position for your badge.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: cardFieldDefaultInnerContent.use_circle\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"circle_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Circle Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose to have a custom position for your badge.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useCircle,\n    defaultAttr: cardFieldDefaultInnerContent.circle_color\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_circle_border.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Circle Border', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose to have a custom position for your badge.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useCircle,\n    defaultAttr: cardFieldDefaultInnerContent.use_circle_border\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"circle_border_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Circle Border Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose to have a custom position for your badge.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === showCircleBorder && 'on' === useCircle,\n    defaultAttr: cardFieldDefaultInnerContent.circle_border_color\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"contentIconStyle.decoration.spacing\",\n    defaultAttr: cardContentIconStyleSpacingDefault,\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"contentIconStyle.decoration.boxShadow\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"title.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title Text', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: true\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"subtitle.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Subhead Text', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Subhead', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"content.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Body Text', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Body', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), hasButtonText && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ButtonGroupContainer, {\n    attrName: \"button\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi'),\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi'),\n    defaultGroupAttr: (_defaultSettingsAttrs = defaultSettingsAttrs?.button?.decoration?.asMutable({\n      deep: true\n    })) !== null && _defaultSettingsAttrs !== void 0 ? _defaultSettingsAttrs : {}\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"spacing\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Spacing', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"content_padding.decoration.spacing\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const card_settings_design = (card_settings_design_SettingsDesign);\n;// ./packages/module-library/card/settings-advanced.js\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\nfunction card_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_card\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const card_settings_advanced = (card_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/shared/dsm-button-icon-data-attrs.js\n\n\n/**\n * `data-icon` / `data-icon-tablet` / `data-icon-phone` on the button (matches core ButtonModule).\n *\n * @param {unknown} attrs Module attrs.\n * @return {Record<string, string>}\n */\nfunction getDsmButtonIconDataAttrs(attrs) {\n  const button = attrs && typeof attrs === 'object' && 'button' in attrs ? attrs.button : null;\n  const dec = button && typeof button === 'object' && button.decoration && typeof button.decoration === 'object' ? button.decoration.button : null;\n  if (!dec || typeof dec !== 'object') {\n    return {};\n  }\n  const iconEnableDesktop = button?.decoration?.button?.desktop?.value?.icon?.enable;\n  const isIconEnabled = 'off' !== (iconEnableDesktop !== null && iconEnableDesktop !== void 0 ? iconEnableDesktop : 'on');\n  const out = {};\n\n  /**\n   * @param {string} bp Breakpoint key.\n   * @return {string}\n   */\n  const breakpointToDataAttr = bp => {\n    if ('desktop' === bp) {\n      return 'data-icon';\n    }\n    return 'data-icon-' + bp.replace(/([A-Z])/g, ch => '-' + ch).toLowerCase();\n  };\n  Object.keys(dec).forEach(bp => {\n    const bv = dec[bp];\n    const iconBranch = bv?.value?.icon;\n    let settings = iconBranch?.settings;\n    if (typeof settings === 'string' && settings.trim() !== '') {\n      settings = {\n        unicode: settings\n      };\n    }\n    if (!isIconEnabled || !settings) {\n      return;\n    }\n    const processed = (0,external_divi_iconLibrary_namespaceObject.processFontIcon)(settings);\n    if (null == processed || '' === processed) {\n      return;\n    }\n    out[breakpointToDataAttr(bp)] = processed;\n  });\n  return out;\n}\n;// ./packages/module-library/shared/dsm-button-align.js\n\nconst ALIGNMENT_VALUES = ['left', 'center', 'right'];\n\n/**\n * Map `*.decoration.button` alignment to innerContent for responsive CommonStyle.\n *\n * @param {Record<string, unknown>|undefined} buttonDec Plain `decoration.button` subtree.\n * @return {Record<string, unknown>|undefined} `{ innerContent: { desktop|tablet|phone: { value } } }`.\n */\nconst dsmButtonDecorationAlignmentAsInnerContent = buttonDec => {\n  if (!buttonDec || 'object' !== typeof buttonDec) {\n    return undefined;\n  }\n  const innerContent = {};\n  for (const bp of ['desktop', 'tablet', 'phone']) {\n    var _valObj$textAlign;\n    const branch = buttonDec[bp];\n    if (!branch || 'object' !== typeof branch) {\n      continue;\n    }\n    const valObj = branch.value;\n    const raw = valObj && 'object' === typeof valObj ? (_valObj$textAlign = valObj.textAlign) !== null && _valObj$textAlign !== void 0 ? _valObj$textAlign : valObj.alignment : undefined;\n    if ('string' !== typeof raw) {\n      continue;\n    }\n    const normalized = raw.trim().toLowerCase();\n    if (ALIGNMENT_VALUES.includes(normalized)) {\n      innerContent[bp] = {\n        value: normalized\n      };\n    }\n  }\n  return Object.keys(innerContent).length > 0 ? {\n    innerContent\n  } : undefined;\n};\n\n/**\n * Wrapper alignment: text-align (inline-block button) + margin auto (fit-content wrapper).\n *\n * @param {{ attrValue?: string }} attr CommonStyle params.\n * @return {string}\n */\nconst dsmButtonWrapperAlignDeclaration = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'text-align': true\n    }\n  });\n  if ('left' === attrValue) {\n    declarations.add('text-align', 'left');\n    declarations.add('margin-left', '0');\n    declarations.add('margin-right', 'auto');\n  }\n  if ('center' === attrValue) {\n    declarations.add('text-align', 'center');\n    declarations.add('margin-left', 'auto');\n    declarations.add('margin-right', 'auto');\n  }\n  if ('right' === attrValue) {\n    declarations.add('text-align', 'right');\n    declarations.add('margin-left', 'auto');\n    declarations.add('margin-right', '0');\n  }\n  return declarations.value;\n};\n;// ./packages/module-library/card/module-styles.js\n\n\n\n\n\n\n\n\n/**\n * Effective layout at a breakpoint (inherits like Divi responsive).\n *\n * @param {Record<string, unknown>} attrs Module attrs.\n * @param {'desktop'|'tablet'|'phone'} breakpoint Breakpoint.\n * @return {'stacked'|'inline'} Resolved layout.\n */\nconst getCardResolvedLayout = (attrs, breakpoint) => {\n  var _attrs$layout$innerCo;\n  const inner = (_attrs$layout$innerCo = attrs?.layout?.innerContent) !== null && _attrs$layout$innerCo !== void 0 ? _attrs$layout$innerCo : {};\n  let desktop = typeof inner.desktop?.value === 'string' ? inner.desktop.value.trim() : '';\n  if (!desktop) {\n    desktop = 'stacked';\n  }\n  if ('desktop' === breakpoint) {\n    return desktop;\n  }\n  const tablet = typeof inner.tablet?.value === 'string' ? inner.tablet.value.trim() : '';\n  if ('tablet' === breakpoint) {\n    return tablet || desktop;\n  }\n  const phone = typeof inner.phone?.value === 'string' ? inner.phone.value.trim() : '';\n  if (phone) {\n    return phone;\n  }\n  if (tablet) {\n    return tablet;\n  }\n  return desktop;\n};\n\n/**\n * Selector for inline image column width (matches Card.php).\n *\n * @param {Record<string, unknown>} attrs Module attrs.\n * @param {string} orderClass Order class.\n * @param {'desktop'|'tablet'|'phone'} breakpoint Breakpoint.\n * @return {string} Empty when stacked at breakpoint.\n */\nconst getCardInlineImageWrapperSelector = (attrs, orderClass, breakpoint) => {\n  var _attrs$layout$innerCo2;\n  if ('inline' !== getCardResolvedLayout(attrs, breakpoint)) {\n    return '';\n  }\n  const inner = (_attrs$layout$innerCo2 = attrs?.layout?.innerContent) !== null && _attrs$layout$innerCo2 !== void 0 ? _attrs$layout$innerCo2 : {};\n  const tabletRaw = typeof inner.tablet?.value === 'string' ? inner.tablet.value.trim() : '';\n  const phoneRaw = typeof inner.phone?.value === 'string' ? inner.phone.value.trim() : '';\n  if ('desktop' === breakpoint) {\n    return `${orderClass}.dsm_card_layout_inline .dsm_card_image_wrapper`;\n  }\n  if ('tablet' === breakpoint) {\n    return tabletRaw !== '' ? `${orderClass}.dsm_card_tablet_layout_inline .dsm_card_image_wrapper` : `${orderClass}.dsm_card_layout_inline .dsm_card_image_wrapper`;\n  }\n  if (phoneRaw !== '') {\n    return `${orderClass}.dsm_card_phone_layout_inline .dsm_card_image_wrapper`;\n  }\n  if (tabletRaw !== '') {\n    return `${orderClass}.dsm_card_tablet_layout_inline .dsm_card_image_wrapper`;\n  }\n  return `${orderClass}.dsm_card_layout_inline .dsm_card_image_wrapper`;\n};\n\n/**\n * Module root + inner for align-items when inline (D4 parity). VB markup has no .et_pb_module_inner — include .dsm_card_image_animation.\n *\n * @param {Record<string, unknown>} attrs Module attrs.\n * @param {string} orderClass Order class.\n * @param {'desktop'|'tablet'|'phone'} breakpoint Breakpoint.\n * @return {string}\n */\nconst getCardInlineAlignItemsSelector = (attrs, orderClass, breakpoint) => {\n  const img = getCardInlineImageWrapperSelector(attrs, orderClass, breakpoint);\n  if (!img) {\n    return '';\n  }\n  const root = img.replace(' .dsm_card_image_wrapper', '');\n  // FE: figure + wrapper live inside .et_pb_module_inner (Card.php). VB edit.js has no inner —\n  // the flex row is .dsm_card_image_animation under the module root; include it for builder parity.\n  return `${root}, ${root} .et_pb_module_inner, ${orderClass} .dsm_card_image_animation`;\n};\n\n/** Non-matching selector when a breakpoint has no inline layout (VB style emission). */\nconst noopCardSelector = orderClass => `${orderClass}.dsm_card_never_selector`;\nconst buildImageBgStyleDeclaration = attrs => () => {\n  const url = resolveCardImagePreviewForAttrs(attrs);\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'background-image': true\n    }\n  });\n  if ('string' !== typeof url || '' === url) {\n    return declarations.value;\n  }\n  const safe = String(url).replace(/\\\\/g, '\\\\\\\\').replace(/\"/g, '\\\\\"');\n  declarations.add('background-image', `url(\"${safe}\")`);\n  declarations.add('width', '100%');\n  declarations.add('height', `100%`);\n  return declarations.value;\n};\nconst image_bg_position_declaration = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'background-position': true\n    }\n  });\n  declarations.add('background-position', String(attrValue !== null && attrValue !== void 0 ? attrValue : '').replace(/_/g, ' '));\n  return declarations.value;\n};\nconst image_bg_repeat_declaration = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'background-repeat': true\n    }\n  });\n  declarations.add('background-repeat', String(attrValue !== null && attrValue !== void 0 ? attrValue : '').replace(/_/g, '-'));\n  return declarations.value;\n};\nconst isCardAnimSpeedEmptyOrZero = raw => {\n  if (null == raw || '' === raw) {\n    return true;\n  }\n  if ('number' === typeof raw && 0 === raw) {\n    return true;\n  }\n  if ('string' === typeof raw) {\n    const t = raw.trim().toLowerCase();\n    return ['0', '0px', '0ms', '0.0', '0.0px', '0.0ms'].includes(t);\n  }\n  return false;\n};\nconst image_bg_animation_declaration = attr => {\n  var _attrValue$value;\n  const {\n    attrValue\n  } = attr;\n  const raw = 'string' === typeof attrValue ? attrValue : (_attrValue$value = attrValue?.value) !== null && _attrValue$value !== void 0 ? _attrValue$value : '';\n  const speed = isCardAnimSpeedEmptyOrZero(raw) ? '300ms' : String(raw);\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      transition: true\n    }\n  });\n  declarations.add('transition', `all ${speed} ease`);\n  return declarations.value;\n};\nconst card_module_styles_iconFontCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'font-family': true\n    }\n  });\n  addNativeIconFontFamily(declarations, attrValue);\n  return declarations.value;\n};\nconst hoverFontCss = buildLegacyPseudoIconFontCss;\nconst imageOrderAlignmentFunc = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      order: true\n    }\n  });\n  const orderAligmentValue = 'left' === attrValue ? '0' : '1';\n  declarations.add('order', orderAligmentValue);\n  return declarations.value;\n};\nconst resolveSimpleColorCss = raw => {\n  if ('string' === typeof raw && '' !== raw.trim()) {\n    return raw.trim();\n  }\n  if (raw && 'object' === typeof raw) {\n    if ('string' === typeof raw.hex && '' !== raw.hex.trim()) {\n      return raw.hex.trim();\n    }\n    if ('string' === typeof raw.rgba && '' !== raw.rgba.trim()) {\n      return raw.rgba.trim();\n    }\n  }\n  return '';\n};\nconst iconBorderStyleFunc = attr => {\n  let resolved = resolveSimpleColorCss(attr?.attrValue);\n  if ('' === resolved) {\n    resolved = '#333333';\n  }\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      borderColor: true\n    }\n  });\n  declarations.add('border-style', 'solid');\n  declarations.add('border-width', '2px');\n  declarations.add('border-color', resolved);\n  return declarations.value;\n};\nconst contentIconCircleShapeDeclaration = attr => {\n  var _attr$important;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: (_attr$important = attr?.important) !== null && _attr$important !== void 0 ? _attr$important : {}\n  });\n  declarations.add('border-radius', '50%');\n  declarations.add('display', 'inline-flex');\n  declarations.add('align-items', 'center');\n  declarations.add('justify-content', 'center');\n  declarations.add('padding', '0.35em');\n  declarations.add('line-height', '1');\n  declarations.add('box-sizing', 'border-box');\n  declarations.add('vertical-align', 'middle');\n  declarations.add('aspect-ratio', '1');\n  return declarations.value;\n};\nconst contentIconCircleFillDeclaration = attr => {\n  var _attr$important2;\n  let color = resolveSimpleColorCss(attr?.attrValue);\n  if ('' === color) {\n    color = '#f4f4f4';\n  }\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: (_attr$important2 = attr?.important) !== null && _attr$important2 !== void 0 ? _attr$important2 : {}\n  });\n  declarations.add('background-color', color);\n  return declarations.value;\n};\nconst imageWidthStyleFunc = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      flex: true\n    }\n  });\n  declarations.add('flex', `0 0 ${attrValue}`);\n  return declarations.value;\n};\nconst contentHorizontalAlignmentFunc = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'align-items': true\n    }\n  });\n  if ('flex-start' === attrValue) {\n    declarations.add('align-items', `flex-start`);\n  }\n  if ('center' === attrValue) {\n    declarations.add('align-items', `center`);\n  }\n  if ('flex-end' === attrValue) {\n    declarations.add('align-items', `flex-end`);\n  }\n  return declarations.value;\n};\nconst imageAlignmentFunc = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'justify-content': true\n    }\n  });\n  declarations.add('display', 'flex');\n  if ('left' === attrValue) {\n    declarations.add('justify-content', `flex-start`);\n  }\n  if ('center' === attrValue) {\n    declarations.add('justify-content', `center`);\n  }\n  if ('right' === attrValue) {\n    declarations.add('justify-content', `flex-end`);\n  }\n  return declarations.value;\n};\n\n/**\n * D4 parity: height for text area beside fixed image strip in equal-columns rows.\n *\n * @param {Record<string, unknown>} attr Payload with attrValue string.\n * @return {string}\n */\nconst equalHeightContentWrapperCalcDeclaration = attr => {\n  var _attr$attrValue;\n  const raw = (_attr$attrValue = attr?.attrValue) !== null && _attr$attrValue !== void 0 ? _attr$attrValue : '';\n  const h = 'string' === typeof raw ? raw.trim() : '';\n  if ('' === h) {\n    return '';\n  }\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string'\n  });\n  declarations.add('height', `calc(100% - ${h})`);\n  return declarations.value;\n};\nconst card_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  var _attrs$use_circle$inn;\n  const badgeCustomPosition = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.badge_custom_position?.innerContent);\n  const useCircleBorder = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_circle_border?.innerContent);\n  const useIconFontSize = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_icon_font_size?.innerContent);\n  const useCircle = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_circle?.innerContent);\n  const useIcon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_icon?.innerContent);\n  const useImageAsBackground = getCardImageAsBackgroundMode(attrs?.image_as_background?.innerContent);\n  const contentEqualHeight = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.content_equal_height?.innerContent);\n  const useEqualHeightLayout = 'on' === contentEqualHeight;\n  const showImageBackgroundStyles = 'on' === useImageAsBackground && cardModuleHasPreviewImage(attrs);\n  const applyImageWrapperHeightFromBg = showImageBackgroundStyles && !useEqualHeightLayout;\n  const imageBgStyleDeclaration = buildImageBgStyleDeclaration(attrs);\n  const noop = noopCardSelector(orderClass);\n  const cardInlineImageWidthSelectors = {\n    desktop: {\n      value: getCardInlineImageWrapperSelector(attrs, orderClass, 'desktop') || noop\n    },\n    tablet: {\n      value: getCardInlineImageWrapperSelector(attrs, orderClass, 'tablet') || noop\n    },\n    phone: {\n      value: getCardInlineImageWrapperSelector(attrs, orderClass, 'phone') || noop\n    }\n  };\n  const cardInlineAlignSelectors = {\n    desktop: {\n      value: getCardInlineAlignItemsSelector(attrs, orderClass, 'desktop') || noop\n    },\n    tablet: {\n      value: getCardInlineAlignItemsSelector(attrs, orderClass, 'tablet') || noop\n    },\n    phone: {\n      value: getCardInlineAlignItemsSelector(attrs, orderClass, 'phone') || noop\n    }\n  };\n  const cardContentJustifySelector = `${orderClass} .et_pb_module_inner .dsm_card_wrapper, ${orderClass} .dsm_card_wrapper`;\n  const cardContentJustifySelectors = {\n    desktop: {\n      value: cardContentJustifySelector\n    },\n    tablet: {\n      value: cardContentJustifySelector\n    },\n    phone: {\n      value: cardContentJustifySelector\n    }\n  };\n  const buttonAlignAttr = dsmButtonDecorationAlignmentAsInnerContent(attrs?.button?.decoration?.button);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextStyle, {\n    selector: orderClass,\n    attr: attrs?.module?.advanced?.text\n  }), elements.style({\n    attrName: 'badge_text'\n  }), elements.style({\n    attrName: 'badge_padding'\n  }), elements.style({\n    attrName: 'content_padding'\n  }), elements.style({\n    attrName: 'badgeStyle'\n  }), elements.style({\n    attrName: 'imageStyle'\n  }), elements.style({\n    attrName: 'title'\n  }), elements.style({\n    attrName: 'subtitle'\n  }), elements.style({\n    attrName: 'content'\n  }), elements.style({\n    attrName: 'button'\n  }), buttonAlignAttr ? /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et_pb_button_module_wrapper`,\n    attr: buttonAlignAttr,\n    declarationFunction: dsmButtonWrapperAlignDeclaration\n  }) : null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_card_icon .et-pb-icon`,\n    attr: attrs?.font_icon?.innerContent,\n    declarationFunction: card_module_styles_iconFontCss\n  }), 'on' === useIcon && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et_overlay::before`,\n    attr: attrs?.hover_icon?.innerContent,\n    declarationFunction: hoverFontCss\n  }), showImageBackgroundStyles ? /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_card_image_background`,\n    attr: attrs?.image?.innerContent,\n    declarationFunction: imageBgStyleDeclaration\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_card_image_background`,\n    attr: attrs?.image_background_position?.innerContent,\n    declarationFunction: image_bg_position_declaration\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_card_image_background`,\n    attr: attrs?.image_background_repeat?.innerContent,\n    declarationFunction: image_bg_repeat_declaration\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_card_image_background`,\n    attr: attrs?.image_background_animation_speed?.innerContent,\n    declarationFunction: image_bg_animation_declaration\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_card_image_background`,\n    attr: attrs?.image_background_size?.innerContent,\n    property: \"background-size\"\n  })) : null, useEqualHeightLayout ? /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_card_image_wrapper`,\n    attr: attrs?.equal_height_image_height?.innerContent,\n    property: \"height\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.et_pb_equal_columns ${orderClass} .dsm_card_wrapper`,\n    attr: attrs?.equal_height_image_height?.innerContent,\n    declarationFunction: equalHeightContentWrapperCalcDeclaration\n  })) : null, applyImageWrapperHeightFromBg && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_card_image_wrapper`,\n    attr: attrs?.image_background_height?.innerContent,\n    property: \"height\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_card_image_wrapper .dsm_card_img, ${orderClass} .dsm_card_image_wrapper .et_overlay`,\n    attr: attrs?.image_width?.innerContent,\n    property: \"max-width\"\n  }), 'on' === badgeCustomPosition && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_card_badge_text`,\n    attr: attrs?.badge_left_position?.innerContent,\n    property: \"left\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_card_badge_text`,\n    attr: attrs?.badge_top_position?.innerContent,\n    property: \"top\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_card_badge_text`,\n    attr: attrs?.badge_background_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_card_image_wrapper`,\n    attr: attrs?.layout_inline_order?.innerContent,\n    declarationFunction: imageOrderAlignmentFunc\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_card_icon .et-pb-icon`,\n    attr: attrs?.icon_color?.innerContent,\n    property: \"color\"\n  }), 'on' === useCircle && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_card_icon .et-pb-icon`,\n    attr: (_attrs$use_circle$inn = attrs?.use_circle?.innerContent) !== null && _attrs$use_circle$inn !== void 0 ? _attrs$use_circle$inn : {\n      desktop: {\n        value: 'on'\n      }\n    },\n    declarationFunction: contentIconCircleShapeDeclaration\n  }), 'on' === useCircle && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_card_icon .et-pb-icon`,\n    attr: attrs?.circle_color?.innerContent,\n    declarationFunction: contentIconCircleFillDeclaration\n  }), 'on' === useCircleBorder && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_card_icon .et-pb-icon`,\n    attr: attrs?.circle_border_color?.innerContent,\n    declarationFunction: iconBorderStyleFunc\n  }), 'on' === useIconFontSize && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_card_icon .et-pb-icon`,\n    attr: attrs?.icon_content_font_size?.innerContent,\n    property: \"font-size\"\n  }), elements.style({\n    attrName: 'contentIconStyle'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_card_wrapper`,\n    selectors: cardContentJustifySelectors,\n    orderClass: orderClass,\n    attr: attrs?.content_horizontal_alignment?.innerContent,\n    property: \"justify-content\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: noop,\n    selectors: cardInlineAlignSelectors,\n    orderClass: orderClass,\n    attr: attrs?.content_horizontal_alignment?.innerContent,\n    declarationFunction: params => {\n      const bp = params?.breakpoint || 'desktop';\n      if ('inline' !== getCardResolvedLayout(attrs, bp)) {\n        return '';\n      }\n      return contentHorizontalAlignmentFunc(params);\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: noop,\n    selectors: cardInlineImageWidthSelectors,\n    orderClass: orderClass,\n    attr: attrs?.layout_inline_image_width?.innerContent,\n    declarationFunction: params => {\n      const bp = params?.breakpoint || 'desktop';\n      if ('inline' !== getCardResolvedLayout(attrs, bp)) {\n        return '';\n      }\n      return imageWidthStyleFunc(params);\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_card_image_wrapper`,\n    attr: attrs?.image_alignment?.innerContent,\n    declarationFunction: imageAlignmentFunc\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et_overlay::before`,\n    attr: attrs?.icon_font_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et_overlay`,\n    attr: attrs?.overlay_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et_overlay::before`,\n    attr: attrs?.overlay_icon_color?.innerContent,\n    property: \"color\"\n  }));\n};\n;// ./packages/module-library/card/edit.js\nfunction card_edit_extends() {\n  return card_edit_extends = Object.assign ? Object.assign.bind() : function (n) {\n    for (var e = 1; e < arguments.length; e++) {\n      var t = arguments[e];\n      for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n    }\n    return n;\n  }, card_edit_extends.apply(null, arguments);\n}\n\n\n\n// Divi package dependencies.\n\n\n\n\n// Custom dependencies.\n\n\n\n\n\n\n\n\n/**\n * React function component for registering module script data.\n */\nconst card_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction card_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  const image = getCardImageStoredRaw(attrs);\n  const hasCardImage = cardModuleHasPreviewImage(attrs);\n  const image_as_background = getCardImageAsBackgroundMode(attrs?.image_as_background?.innerContent);\n  const badge_text = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.badge_text?.innerContent);\n  const subtitleRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.subtitle?.innerContent);\n  const subtitle = subtitleRaw && 'object' === typeof subtitleRaw && null !== subtitleRaw && 'text' in subtitleRaw ? subtitleRaw.text : subtitleRaw;\n  const content = attrs?.content?.innerContent?.desktop?.value?.text;\n  const textColor = attrs?.module?.advanced?.text?.text?.desktop?.value?.color;\n  const button_text = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_text?.innerContent);\n  const button_url = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_url?.innerContent);\n  const button_url_new_window = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_url_new_window?.innerContent);\n  const use_icon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_content_icon?.innerContent);\n  const fontIconAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.font_icon?.innerContent);\n  const badge_position = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.badge_position?.innerContent) || 'top_right';\n  const badgeCustomPosition = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.badge_custom_position?.innerContent);\n  const badge_url = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.badge_url?.innerContent);\n  const badge_url_new_window = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.badge_url_new_window?.innerContent);\n\n  // Omitted `layout` in stored JSON equals default `stacked` (must match settings-design visibility).\n  const layout = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.layout?.innerContent) || 'stacked';\n  const layoutTablet = attrs?.layout?.innerContent?.tablet?.value;\n  const layoutPhone = attrs?.layout?.innerContent?.phone?.value;\n  const image_background_animation = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.image_background_animation?.innerContent) || 'none';\n  const stretch_image = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.stretch_image?.innerContent);\n  const useOverlay = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_overlay?.innerContent);\n  const overlayOnHover = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.overlay_on_hover?.innerContent);\n  const isOverlayMarkup = 'on' === useOverlay ? /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"et_overlay\"\n  }) : '';\n  const isImageBackground = 'on' === image_as_background && hasCardImage ? /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_card_image_background dsm_card_img\"\n  }) : null;\n  const isImage = 'off' === image_as_background && hasCardImage ? /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: image\n  }, resolvedImage => {\n    let src = resolveCardImagePreviewUrl(resolvedImage);\n    if (!src) {\n      src = resolveCardImagePreviewForAttrs(attrs);\n    }\n    return 'string' === typeof src && '' !== src ? /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n      src: src,\n      className: 'on' === stretch_image ? 'dsm_card_img dsm_card_image_stretch' : 'dsm_card_img',\n      alt: \"\"\n    }) : null;\n  }) : null;\n  const isSubtitle = !(0,lodash.isEmpty)(subtitle) ? /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_card_subtitle\"\n  }, elements.render({\n    attrName: 'subtitle'\n  })) : null;\n  const isContent = !(0,lodash.isEmpty)(content) ? /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: content\n  }, resolvedContent => /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_card_description\",\n    dangerouslySetInnerHTML: {\n      __html: 'string' === typeof resolvedContent ? resolvedContent : ''\n    }\n  })) : null;\n  const hasBadgeLink = typeof badge_url === 'string' && '' !== badge_url.trim();\n  const isBadgeText = !(0,lodash.isEmpty)(badge_text) ? hasBadgeLink ? /*#__PURE__*/external_vendor_React_default().createElement(\"a\", card_edit_extends({\n    className: \"dsm_card_badge_text\",\n    href: badge_url.trim()\n  }, 'on' === badge_url_new_window ? {\n    target: '_blank'\n  } : {}), elements.render({\n    attrName: 'badge_text'\n  })) : /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_card_badge_text\"\n  }, elements.render({\n    attrName: 'badge_text'\n  })) : null;\n  const buttonIconDataAttrs = getDsmButtonIconDataAttrs(attrs);\n  const hasButtonIcon = Object.keys(buttonIconDataAttrs).length > 0;\n  const buttonTextColor = textColor || 'dark';\n  const ButtonMarkup = !(0,lodash.isEmpty)(button_text) && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"et_pb_button_module_wrapper\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"a\", card_edit_extends({\n    className: hasButtonIcon ? `et_pb_button et_pb_bg_layout_${buttonTextColor} et_pb_custom_button_icon` : `et_pb_button et_pb_bg_layout_${buttonTextColor}`,\n    href: 'string' === typeof button_url && '' !== button_url.trim() ? button_url.trim() : undefined,\n    target: 'on' === button_url_new_window ? '_blank' : undefined\n  }, buttonIconDataAttrs), elements.render(getDsmButtonTextRenderProps('button_text'))));\n  const iconMarkup = 'on' === use_icon && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_card_icon\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm_card_icon_wrap\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(ModuleIconHost, {\n    icon: fontIconAttr,\n    nativeRender: \"inline\"\n  })));\n  const isBadgePosition = 'on' !== badgeCustomPosition ? `dsm_card_badge_${badge_position}` : '';\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: card_edit_ModuleScriptData,\n    stylesComponent: card_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat, _attrs$module$advance;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: {\n          ...((_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}),\n          link: (_attrs$module$advance = attrs?.module?.advanced?.link) !== null && _attrs$module$advance !== void 0 ? _attrs$module$advance : {}\n        }\n      }));\n      params.classnamesInstance.add(`dsm_card_layout_${layout}`);\n      if (layoutTablet && 'string' === typeof layoutTablet && '' !== layoutTablet.trim()) {\n        params.classnamesInstance.add(`dsm_card_tablet_layout_${layoutTablet.trim()}`);\n      }\n      if (layoutPhone && 'string' === typeof layoutPhone && '' !== layoutPhone.trim()) {\n        params.classnamesInstance.add(`dsm_card_phone_layout_${layoutPhone.trim()}`);\n      }\n      if ('on' === image_as_background) {\n        params.classnamesInstance.add('dsm_card_image_as_background');\n      }\n      params.classnamesInstance.add(`et_pb_bg_layout_${textColor}`);\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: `dsm_card_image_animation dsm_card_image_animation_${image_background_animation} dsm_card_layout_${layout} dsm-card-overlay-${overlayOnHover}`\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"figure\", {\n    className: `dsm_card_image_wrapper ${isBadgePosition}`\n  }, isImageBackground, isImage, isBadgeText, isOverlayMarkup), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"et_pb_module dsm_card_wrapper\"\n  }, iconMarkup, elements.render({\n    attrName: 'title'\n  }), isSubtitle, isContent, ButtonMarkup)));\n}\n/* harmony default export */ const card_edit = (card_edit_Edit);\n;// ./packages/module-library/card/conversion-outline.js\nconst card_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border',\n      badge: 'badgeStyle.decoration.border',\n      image: 'imageStyle.decoration.border',\n      icon: 'contentIconStyle.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow',\n      image: 'imageStyle.decoration.boxShadow',\n      badge: 'badgeStyle.decoration.boxShadow'\n    },\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    display_conditions: 'module.decoration.conditions',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    text_shadow: {\n      default: 'module.advanced.text.textShadow'\n    },\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    text: 'module.advanced.text',\n    fonts: {\n      header: 'title.decoration.font',\n      badge: 'badge_text.decoration.font',\n      body: 'content.decoration.font',\n      subhead: 'subtitle.decoration.font'\n    },\n    margin_padding: 'module.decoration.spacing',\n    link_options: 'module.advanced.link',\n    height: 'module.decoration.sizing',\n    max_width: 'module.decoration.sizing',\n    button: {\n      button: 'button'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    title: 'title.innerContent.*.text',\n    subtitle: 'subtitle.innerContent.*',\n    layout: 'layout.innerContent.*',\n    image_width: 'image_width.innerContent.*',\n    layout_inline_image_width: 'layout_inline_image_width.innerContent.*',\n    layout_inline_order: 'layout_inline_order.innerContent.*',\n    content_horizontal_alignment: 'content_horizontal_alignment.innerContent.*',\n    content_equal_height: 'content_equal_height.innerContent.*',\n    equal_height_image_height: 'equal_height_image_height.innerContent.*',\n    image: 'image.innerContent.*',\n    image_as_background: 'image_as_background.innerContent.*',\n    image_background_height: 'image_background_height.innerContent.*',\n    image_background_size: 'image_background_size.innerContent.*',\n    image_background_position: 'image_background_position.innerContent.*',\n    image_background_repeat: 'image_background_repeat.innerContent.*',\n    image_background_animation: 'image_background_animation.innerContent.*',\n    image_background_animation_speed: 'image_background_animation_speed.innerContent.*',\n    use_content_icon: 'use_content_icon.innerContent.*',\n    font_icon: 'font_icon.innerContent.*',\n    icon_color: 'icon_color.innerContent.*',\n    use_circle: 'use_circle.innerContent.*',\n    circle_color: 'circle_color.innerContent.*',\n    use_circle_border: 'use_circle_border.innerContent.*',\n    circle_border_color: 'circle_border_color.innerContent.*',\n    use_icon_font_size: 'use_icon_font_size.innerContent.*',\n    icon_content_font_size: 'icon_content_font_size.innerContent.*',\n    image_alignment: 'image_alignment.innerContent.*',\n    stretch_image: 'stretch_image.innerContent.*',\n    use_overlay: 'use_overlay.innerContent.*',\n    overlay_color: 'overlay_color.innerContent.*',\n    use_icon: 'use_icon.innerContent.*',\n    icon_font_size: 'icon_font_size.innerContent.*',\n    overlay_icon_color: 'overlay_icon_color.innerContent.*',\n    hover_icon: 'hover_icon.innerContent.*',\n    overlay_on_hover: 'overlay_on_hover.innerContent.*',\n    badge_text: 'badge_text.innerContent.*',\n    use_badge_icon: 'use_badge_icon.innerContent.*',\n    badge_font_icon: 'badge_font_icon.innerContent.*',\n    badge_icon_color: 'badge_icon_color.innerContent.*',\n    badge_icon_font_size: 'badge_icon_font_size.innerContent.*',\n    badge_position: 'badge_position.innerContent.*',\n    badge_custom_position: 'badge_custom_position.innerContent.*',\n    badge_left_position: 'badge_left_position.innerContent.*',\n    badge_top_position: 'badge_top_position.innerContent.*',\n    badge_background_color: 'badge_background_color.innerContent.*',\n    badge_padding: 'badge_padding.decoration.spacing.*.padding',\n    badge_url: 'badge_url.innerContent.*',\n    badge_url_new_window: 'badge_url_new_window.innerContent.*',\n    alt: 'alt.innerContent.*',\n    content: 'content.innerContent.*.text',\n    content_padding: 'content_padding.decoration.spacing.*.padding',\n    contentIconStyle: 'contentIconStyle.decoration.spacing',\n    button_text: 'button_text.innerContent.*',\n    button_url: 'button_url.innerContent.*',\n    button_url_new_window: 'button_url_new_window.innerContent.*',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    badge_padding: 'convertSpacing',\n    content_padding: 'convertSpacing',\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/card/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmCard', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/card': {\n      name: 'divi-supreme/card',\n      viewBox: '0 0 30 30',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.320312 12.539062 C 11.855469 12.539062 11.476562 12.15625 11.476562 11.691406 C 11.476562 11.226562 11.855469 10.84375 12.320312 10.84375 C 12.789062 10.84375 13.167969 11.226562 13.167969 11.691406 C 13.167969 12.15625 12.789062 12.539062 12.320312 12.539062 Z M 12.320312 11.3125 C 12.113281 11.3125 11.941406 11.484375 11.941406 11.691406 C 11.941406 11.898438 12.113281 12.070312 12.320312 12.070312 C 12.53125 12.070312 12.703125 11.898438 12.703125 11.691406 C 12.703125 11.476562 12.53125 11.3125 12.320312 11.3125 Z M 12.320312 11.3125 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 3.511719 3.828125 C 3.046875 3.828125 2.667969 3.445312 2.667969 2.980469 C 2.667969 2.515625 3.046875 2.132812 3.511719 2.132812 C 3.980469 2.132812 4.359375 2.515625 4.359375 2.980469 C 4.359375 3.445312 3.980469 3.828125 3.511719 3.828125 Z M 3.511719 2.597656 C 3.304688 2.597656 3.132812 2.769531 3.132812 2.980469 C 3.132812 3.1875 3.304688 3.359375 3.511719 3.359375 C 3.722656 3.359375 3.894531 3.1875 3.894531 2.980469 C 3.886719 2.769531 3.722656 2.597656 3.511719 2.597656 Z M 3.511719 2.597656 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 9.921875 14.367188 L 4.292969 14.367188 C 3.734375 14.367188 3.277344 13.914062 3.277344 13.355469 C 3.277344 12.796875 3.734375 12.339844 4.292969 12.339844 L 9.921875 12.339844 C 10.480469 12.339844 10.933594 12.796875 10.933594 13.355469 C 10.933594 13.914062 10.480469 14.367188 9.921875 14.367188 Z M 4.292969 12.808594 C 3.992188 12.808594 3.746094 13.054688 3.746094 13.355469 C 3.746094 13.65625 3.992188 13.898438 4.292969 13.898438 L 9.921875 13.898438 C 10.222656 13.898438 10.46875 13.65625 10.46875 13.355469 C 10.46875 13.054688 10.222656 12.808594 9.921875 12.808594 Z M 4.292969 12.808594 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 7.109375 5.777344 C 6.582031 5.777344 6.152344 6.207031 6.152344 6.734375 C 6.152344 7.261719 6.582031 7.691406 7.109375 7.691406 C 7.636719 7.691406 8.066406 7.261719 8.066406 6.734375 C 8.058594 6.199219 7.636719 5.777344 7.109375 5.777344 Z M 7.109375 7.214844 C 6.84375 7.214844 6.625 6.992188 6.625 6.726562 C 6.625 6.457031 6.84375 6.242188 7.109375 6.242188 C 7.371094 6.242188 7.59375 6.457031 7.59375 6.726562 C 7.59375 6.992188 7.371094 7.214844 7.109375 7.214844 Z M 7.109375 7.214844 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 10.695312 6.457031 L 10.46875 6.335938 L 10.46875 9.699219 C 10.46875 10.398438 9.898438 10.96875 9.199219 10.96875 L 5.015625 10.96875 C 4.316406 10.96875 3.75 10.398438 3.75 9.699219 L 3.75 5.511719 C 3.75 4.8125 4.316406 4.25 5.015625 4.25 L 9.199219 4.25 C 9.359375 4.25 9.511719 4.28125 9.652344 4.335938 L 9.863281 3.914062 C 9.660156 3.828125 9.433594 3.785156 9.199219 3.785156 L 5.015625 3.785156 C 4.058594 3.785156 3.277344 4.5625 3.277344 5.519531 L 3.277344 9.703125 C 3.277344 10.660156 4.058594 11.445312 5.015625 11.445312 L 9.199219 11.445312 C 10.15625 11.445312 10.933594 10.667969 10.933594 9.703125 L 10.933594 6.316406 Z M 10.695312 6.457031 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 10.695312 6.457031 L 10.46875 6.597656 L 6.695312 8.90625 L 5.917969 7.777344 L 3.746094 9.003906 L 3.273438 9.269531 L 3.273438 9.691406 C 3.273438 10.648438 4.050781 11.433594 5.007812 11.433594 L 9.191406 11.433594 C 10.148438 11.433594 10.929688 10.65625 10.929688 9.691406 L 10.929688 6.304688 Z M 10.464844 9.699219 C 10.464844 10.398438 9.890625 10.96875 9.191406 10.96875 L 5.015625 10.96875 C 4.316406 10.96875 3.75 10.398438 3.75 9.699219 L 3.75 9.542969 L 5.78125 8.390625 L 6.566406 9.539062 L 10.476562 7.144531 L 10.476562 9.699219 Z M 10.464844 9.699219 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 10.9375 6.3125 L 10.9375 6.585938 L 10.699219 6.457031 Z M 10.9375 6.3125 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 9.175781 6.972656 C 9.101562 6.972656 9.035156 6.949219 8.972656 6.90625 C 8.867188 6.832031 8.8125 6.699219 8.835938 6.574219 L 9.003906 5.59375 L 8.285156 4.894531 C 8.191406 4.800781 8.15625 4.667969 8.199219 4.542969 C 8.242188 4.421875 8.347656 4.328125 8.476562 4.3125 L 9.460938 4.171875 L 9.90625 3.273438 C 9.960938 3.15625 10.078125 3.085938 10.210938 3.085938 C 10.339844 3.085938 10.457031 3.15625 10.519531 3.273438 L 10.960938 4.171875 L 11.949219 4.3125 C 12.078125 4.328125 12.179688 4.414062 12.222656 4.542969 C 12.265625 4.667969 12.230469 4.800781 12.136719 4.894531 L 11.417969 5.59375 L 11.589844 6.574219 C 11.617188 6.703125 11.5625 6.832031 11.457031 6.90625 C 11.351562 6.980469 11.210938 6.992188 11.101562 6.929688 L 10.21875 6.464844 L 9.335938 6.929688 C 9.285156 6.960938 9.230469 6.972656 9.175781 6.972656 Z M 8.804688 4.742188 L 9.511719 5.429688 L 9.347656 6.398438 L 10.21875 5.9375 L 11.089844 6.398438 L 10.917969 5.429688 L 11.621094 4.742188 L 10.652344 4.597656 L 10.21875 3.714844 L 9.78125 4.597656 Z M 11.878906 4.785156 C 11.878906 4.785156 11.886719 4.785156 11.878906 4.785156 Z M 11.878906 4.785156 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/card/index.js\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\n\nconst cardDefaultAttrs = {\n  ...card_module_default_render_attributes_namespaceObject,\n  image: cardImagePlaceholderAttr\n};\nconst cardModule = {\n  metadata: card_module_namespaceObject,\n  conversionOutline: card_conversion_outline_conversionOutline,\n  renderers: {\n    edit: card_edit,\n    styles: card_module_styles_ModuleStyles\n  },\n  defaultAttrs: cardDefaultAttrs,\n  settings: {\n    content: card_settings_content,\n    design: card_settings_design,\n    advanced: card_settings_advanced\n  },\n  placeholderContent: {\n    ...cardDefaultAttrs,\n    module: {\n      decoration: {}\n    },\n    title: {\n      innerContent: {\n        desktop: {\n          value: {\n            text: 'Your Title Goes Here'\n          }\n        }\n      }\n    },\n    content: {\n      innerContent: {\n        desktop: {\n          value: {\n            text: 'Your content goes here. Edit or remove this text inline or in the module Content settings. You can also style every aspect of this content in the module Design settings and even apply custom CSS to this text in the module Advanced settings.'\n          }\n        }\n      }\n    },\n    button_text: {\n      innerContent: {\n        desktop: {\n          value: 'Button'\n        }\n      }\n    }\n  }\n};\n/* harmony default export */ const card = (cardModule);\n;// ./packages/module-library/content-toggle/module.json\nconst content_toggle_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/content-toggle\",\"d4Shortcode\":\"dsm_content_toggle\",\"title\":\"Supreme Content Toggle\",\"titles\":\"Supreme Content Toggle\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/content-toggle\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"heading_one\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"selector\":\"{{selector}} .dsm-toggle-head-one, {{selector}} .dsm-toggle-head-one h1, {{selector}} .dsm-toggle-head-one h2, {{selector}} .dsm-toggle-head-one h3, {{selector}} .dsm-toggle-head-one h4, {{selector}} .dsm-toggle-head-one h5\",\"default\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"headingLevel\":\"h5\"}}}}},\"innerContent\":{\"desktop\":{\"value\":{\"text\":\"Heading One\"}}}},\"elementType\":\"headingLink\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"content_type_one\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"content\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"custom_content_one\":{\"type\":\"object\",\"inlineEditor\":\"RichTextContainer\",\"selector\":\"{{selector}} .dsm-content-toggle-front\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"shortcode_content_one\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"heading_two\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"selector\":\"{{selector}} .dsm-toggle-head-two, {{selector}} .dsm-toggle-head-two h1, {{selector}} .dsm-toggle-head-two h2, {{selector}} .dsm-toggle-head-two h3, {{selector}} .dsm-toggle-head-two h4, {{selector}} .dsm-toggle-head-two h5, {{selector}} .dsm-toggle-head-two h6\",\"default\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"headingLevel\":\"h5\"}}}}},\"innerContent\":{\"desktop\":{\"value\":{\"text\":\"Heading Two\"}}}},\"elementType\":\"headingLink\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"content_type_two\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"content\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"custom_content_two\":{\"type\":\"object\",\"inlineEditor\":\"RichTextContainer\",\"selector\":\"{{selector}} .dsm-content-toggle-back\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"shortcode_content_two\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"active_switcher\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"switcher_one\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"switcher_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"alignment\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"switcher_bg_primary\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"switcher_bg_secondary\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"switcher_inner_bg\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"content_bg_one\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"content_bg_two\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"content_padding_one\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-content-toggle-front\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"content_spacing_top_one\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"content_fullwidth_one\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"content_padding_two\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-content-toggle-back\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"content_spacing_top_two\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"content_fullwidth_two\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"library_id_one\":{\"type\":\"object\",\"inlineEditor\":\"\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"library_id_two\":{\"type\":\"object\",\"inlineEditor\":\"\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"contentOneStyle\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-content-toggle-front\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-content-toggle-front\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-content-toggle-front\",\"useOverlay\":true}}},\"contentTwoStyle\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-content-toggle-back\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-content-toggle-back\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-content-toggle-back\",\"useOverlay\":true}}}}}');\n;// ./packages/components/post-type-control/index.js\n\n\n\n\n/**\n *\n * @param {{\n *     attrName: string;\n *     label: string;\n * }} props\n * @returns\n */\nfunction PostTypeControl(props) {\n  const getProcessedPostTypeOptions = () => {\n    const postTypes = (0,lodash.get)(window, 'diviSupreme5.postTypes', []);\n    const processedPostTypes = {};\n    postTypes.forEach(postType => {\n      processedPostTypes[postType.name] = {\n        label: postType.label\n      };\n    });\n    return processedPostTypes;\n  };\n  const postTypes = getProcessedPostTypeOptions();\n  return /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: props.attrName,\n    label: props.label\n  }, /*#__PURE__*/React.createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: postTypes\n  }));\n}\n/* harmony default export */ const post_type_control = (PostTypeControl);\n;// external \"window.wp.apiFetch\"\nconst external_window_wp_apiFetch_namespaceObject = window.wp.apiFetch;\nvar external_window_wp_apiFetch_default = /*#__PURE__*/__webpack_require__.n(external_window_wp_apiFetch_namespaceObject);\n;// ./node_modules/@wordpress/url/build-module/safe-decode-uri-component.js\n/**\n * Safely decodes a URI component with `decodeURIComponent`. Returns the URI component unmodified if\n * `decodeURIComponent` throws an error.\n *\n * @param {string} uriComponent URI component to decode.\n *\n * @return {string} Decoded URI component if possible.\n */\nfunction safeDecodeURIComponent(uriComponent) {\n  try {\n    return decodeURIComponent(uriComponent);\n  } catch (uriComponentError) {\n    return uriComponent;\n  }\n}\n//# sourceMappingURL=safe-decode-uri-component.js.map\n;// ./node_modules/@wordpress/url/build-module/get-query-string.js\n/**\n * Returns the query string part of the URL.\n *\n * @param {string} url The full URL.\n *\n * @example\n * ```js\n * const queryString = getQueryString( 'http://localhost:8080/this/is/a/test?query=true#fragment' ); // 'query=true'\n * ```\n *\n * @return {string|void} The query string part of the URL.\n */\nfunction getQueryString(url) {\n  let query;\n  try {\n    query = new URL(url, 'http://example.com').search.substring(1);\n  } catch (error) {}\n  if (query) {\n    return query;\n  }\n}\n//# sourceMappingURL=get-query-string.js.map\n;// ./node_modules/@wordpress/url/build-module/get-query-args.js\n/**\n * Internal dependencies\n */\n\n\n\n/** @typedef {import('./get-query-arg').QueryArgParsed} QueryArgParsed */\n\n/**\n * @typedef {Record<string,QueryArgParsed>} QueryArgs\n */\n\n/**\n * Sets a value in object deeply by a given array of path segments. Mutates the\n * object reference.\n *\n * @param {Record<string,*>} object Object in which to assign.\n * @param {string[]}         path   Path segment at which to set value.\n * @param {*}                value  Value to set.\n */\nfunction setPath(object, path, value) {\n  const length = path.length;\n  const lastIndex = length - 1;\n  for (let i = 0; i < length; i++) {\n    let key = path[i];\n    if (!key && Array.isArray(object)) {\n      // If key is empty string and next value is array, derive key from\n      // the current length of the array.\n      key = object.length.toString();\n    }\n    key = ['__proto__', 'constructor', 'prototype'].includes(key) ? key.toUpperCase() : key;\n\n    // If the next key in the path is numeric (or empty string), it will be\n    // created as an array. Otherwise, it will be created as an object.\n    const isNextKeyArrayIndex = !isNaN(Number(path[i + 1]));\n    object[key] = i === lastIndex ?\n    // If at end of path, assign the intended value.\n    value :\n    // Otherwise, advance to the next object in the path, creating\n    // it if it does not yet exist.\n    object[key] || (isNextKeyArrayIndex ? [] : {});\n    if (Array.isArray(object[key]) && !isNextKeyArrayIndex) {\n      // If we current key is non-numeric, but the next value is an\n      // array, coerce the value to an object.\n      object[key] = {\n        ...object[key]\n      };\n    }\n\n    // Update working reference object to the next in the path.\n    object = object[key];\n  }\n}\n\n/**\n * Returns an object of query arguments of the given URL. If the given URL is\n * invalid or has no querystring, an empty object is returned.\n *\n * @param {string} url URL.\n *\n * @example\n * ```js\n * const foo = getQueryArgs( 'https://wordpress.org?foo=bar&bar=baz' );\n * // { \"foo\": \"bar\", \"bar\": \"baz\" }\n * ```\n *\n * @return {QueryArgs} Query args object.\n */\nfunction getQueryArgs(url) {\n  return (getQueryString(url) || ''\n  // Normalize space encoding, accounting for PHP URL encoding\n  // corresponding to `application/x-www-form-urlencoded`.\n  //\n  // See: https://tools.ietf.org/html/rfc1866#section-8.2.1\n  ).replace(/\\+/g, '%20').split('&').reduce((accumulator, keyValue) => {\n    const [key, value = ''] = keyValue.split('=')\n    // Filtering avoids decoding as `undefined` for value, where\n    // default is restored in destructuring assignment.\n    .filter(Boolean).map(safeDecodeURIComponent);\n    if (key) {\n      const segments = key.replace(/\\]/g, '').split('[');\n      setPath(accumulator, segments, value);\n    }\n    return accumulator;\n  }, Object.create(null));\n}\n//# sourceMappingURL=get-query-args.js.map\n;// ./node_modules/@wordpress/url/build-module/build-query-string.js\n/**\n * Generates URL-encoded query string using input query data.\n *\n * It is intended to behave equivalent as PHP's `http_build_query`, configured\n * with encoding type PHP_QUERY_RFC3986 (spaces as `%20`).\n *\n * @example\n * ```js\n * const queryString = buildQueryString( {\n *    simple: 'is ok',\n *    arrays: [ 'are', 'fine', 'too' ],\n *    objects: {\n *       evenNested: {\n *          ok: 'yes',\n *       },\n *    },\n * } );\n * // \"simple=is%20ok&arrays%5B0%5D=are&arrays%5B1%5D=fine&arrays%5B2%5D=too&objects%5BevenNested%5D%5Bok%5D=yes\"\n * ```\n *\n * @param {Record<string,*>} data Data to encode.\n *\n * @return {string} Query string.\n */\nfunction buildQueryString(data) {\n  let string = '';\n  const stack = Object.entries(data);\n  let pair;\n  while (pair = stack.shift()) {\n    let [key, value] = pair;\n\n    // Support building deeply nested data, from array or object values.\n    const hasNestedData = Array.isArray(value) || value && value.constructor === Object;\n    if (hasNestedData) {\n      // Push array or object values onto the stack as composed of their\n      // original key and nested index or key, retaining order by a\n      // combination of Array#reverse and Array#unshift onto the stack.\n      const valuePairs = Object.entries(value).reverse();\n      for (const [member, memberValue] of valuePairs) {\n        stack.unshift([`${key}[${member}]`, memberValue]);\n      }\n    } else if (value !== undefined) {\n      // Null is treated as special case, equivalent to empty string.\n      if (value === null) {\n        value = '';\n      }\n      string += '&' + [key, value].map(encodeURIComponent).join('=');\n    }\n  }\n\n  // Loop will concatenate with leading `&`, but it's only expected for all\n  // but the first query parameter. This strips the leading `&`, while still\n  // accounting for the case that the string may in-fact be empty.\n  return string.substr(1);\n}\n//# sourceMappingURL=build-query-string.js.map\n;// ./node_modules/@wordpress/url/build-module/add-query-args.js\n/**\n * Internal dependencies\n */\n\n\n\n/**\n * Appends arguments as querystring to the provided URL. If the URL already\n * includes query arguments, the arguments are merged with (and take precedent\n * over) the existing set.\n *\n * @param {string} [url=''] URL to which arguments should be appended. If omitted,\n *                          only the resulting querystring is returned.\n * @param {Object} [args]   Query arguments to apply to URL.\n *\n * @example\n * ```js\n * const newURL = addQueryArgs( 'https://google.com', { q: 'test' } ); // https://google.com/?q=test\n * ```\n *\n * @return {string} URL with arguments applied.\n */\nfunction addQueryArgs(url = '', args) {\n  // If no arguments are to be appended, return original URL.\n  if (!args || !Object.keys(args).length) {\n    return url;\n  }\n  let baseUrl = url;\n\n  // Determine whether URL already had query arguments.\n  const queryStringIndex = url.indexOf('?');\n  if (queryStringIndex !== -1) {\n    // Merge into existing query arguments.\n    args = Object.assign(getQueryArgs(url), args);\n\n    // Change working base URL to omit previous query arguments.\n    baseUrl = baseUrl.substr(0, queryStringIndex);\n  }\n  return baseUrl + '?' + buildQueryString(args);\n}\n//# sourceMappingURL=add-query-args.js.map\n;// ./packages/hooks/use-posts.js\n\n\n\n\n/**\n * Resolve post type slug to WP REST collection path (e.g. post → posts, page → pages).\n * If the type is not in the map from PHP, it has no REST route (avoid 404).\n *\n * @param {string} slug Post type slug from module attrs.\n * @return {string|null} REST path segment after /wp/v2/ or null when unavailable.\n */\nfunction resolveRestCollectionPath(slug) {\n  if (!slug || typeof slug !== 'string') {\n    return null;\n  }\n  const map = typeof window !== 'undefined' && window.diviSupreme5 && window.diviSupreme5.postTypeRestBases ? window.diviSupreme5.postTypeRestBases : null;\n  if (!map || typeof map !== 'object') {\n    if ('post' === slug) {\n      return 'posts';\n    }\n    if ('page' === slug) {\n      return 'pages';\n    }\n    return slug;\n  }\n  if (Object.prototype.hasOwnProperty.call(map, slug)) {\n    return map[slug];\n  }\n  return null;\n}\n\n/**\n * A custom hook used to obtain posts from rest API.\n *\n * @param {string}               postTypeSlug Registered post type slug (e.g. post, page, showcase).\n * @param {Object}               queryParams  Query args for `/wp/v2/{restBase}`.\n * @param {Object|Array|undefined} refetchWhenChanged Optional value serialized with JSON.stringify; when it changes, refetch even if `queryParams` string matches (e.g. VB attr reads that do not alter `postsQuery`).\n */\nfunction usePosts(postTypeSlug = 'page', queryParams = {}, refetchWhenChanged = undefined) {\n  const refetchKey = refetchWhenChanged === undefined ? '' : JSON.stringify(refetchWhenChanged);\n  const [loading, setLoading] = (0,external_window_vendor_wp_element_namespaceObject.useState)(false);\n  const [error, setError] = (0,external_window_vendor_wp_element_namespaceObject.useState)(false);\n  const [posts, setPosts] = (0,external_window_vendor_wp_element_namespaceObject.useState)([]);\n  (0,external_window_vendor_wp_element_namespaceObject.useEffect)(() => {\n    const restPath = resolveRestCollectionPath(postTypeSlug);\n    if (null === restPath) {\n      setPosts([]);\n      setError(false);\n      setLoading(false);\n      return;\n    }\n    let cancelled = false;\n    const fetchPosts = async () => {\n      try {\n        setError(false);\n        setLoading(true);\n\n        // WP REST `exclude` / `include` / `categories` / `tags` work reliably as comma-separated lists;\n        // raw arrays in query strings can break collection parsing in some contexts (e.g. VB iframe).\n        const params = {\n          ...queryParams\n        };\n        if (params.per_page !== undefined && params.per_page !== null && params.per_page !== '') {\n          const pp = parseInt(String(params.per_page), 10);\n          params.per_page = Number.isFinite(pp) && pp > 0 ? Math.min(pp, 100) : 10;\n        }\n        if (params.offset !== undefined && params.offset !== null && params.offset !== '') {\n          const off = parseInt(String(params.offset), 10);\n          params.offset = Number.isFinite(off) && off >= 0 ? off : 0;\n        }\n        if (Array.isArray(params.exclude) && params.exclude.length) {\n          params.exclude = params.exclude.map(id => parseInt(id, 10)).filter(id => id > 0).join(',');\n        }\n        if (Array.isArray(params.include) && params.include.length) {\n          params.include = params.include.map(id => parseInt(id, 10)).filter(id => id > 0).join(',');\n        }\n        if (Array.isArray(params.categories)) {\n          if (params.categories.length) {\n            params.categories = params.categories.map(id => parseInt(id, 10)).filter(id => id > 0).join(',');\n          } else {\n            delete params.categories;\n          }\n        }\n        if (Array.isArray(params.tags)) {\n          if (params.tags.length) {\n            params.tags = params.tags.map(id => parseInt(id, 10)).filter(id => id > 0).join(',');\n          } else {\n            delete params.tags;\n          }\n        }\n        const fetchedPosts = await external_window_wp_apiFetch_default()({\n          path: addQueryArgs('/wp/v2/' + restPath, params)\n        });\n        if (!cancelled) {\n          setPosts(Array.isArray(fetchedPosts) ? fetchedPosts : []);\n        }\n      } catch (err) {\n        if (!cancelled) {\n          console.error(err);\n          setError(true);\n        }\n      } finally {\n        if (!cancelled) {\n          setLoading(false);\n        }\n      }\n    };\n    fetchPosts();\n    return () => {\n      cancelled = true;\n    };\n  }, [postTypeSlug, JSON.stringify(queryParams), refetchKey]);\n  return {\n    posts,\n    error,\n    loading\n  };\n}\n/* harmony default export */ const use_posts = (usePosts);\n;// ./packages/utils/get-post-type.js\n\n\n/**\n * Provides the requested post type.\n *\n * @param {string} postType Post type.\n *\n * @return {{\n *      label: string;\n *      name: string;\n *      taxonomies: Array<{ label: string; name: string; }>\n * } | undefined}\n */\nfunction getPostType(postType) {\n  const postTypes = (0,lodash.get)(window, 'diviSupreme5.postTypes', []);\n  return postTypes.find(currentPostType => currentPostType.name === postType);\n}\n/* harmony default export */ const get_post_type = (getPostType);\n;// ./packages/utils/taxonomy-rest.js\n/**\n * REST collection path (and posts/pages `tax_filter` param) for a taxonomy slug.\n *\n * WordPress uses `categories` for the `category` taxonomy, `tags` for `post_tag`, etc.\n *\n * @param {string} taxonomyName Registered taxonomy slug (e.g. from term_ids `taxonomy:id`).\n * @return {string}\n */\nfunction getTaxonomyRestBase(taxonomyName) {\n  if (!taxonomyName || typeof taxonomyName !== 'string') {\n    return taxonomyName;\n  }\n  const map = typeof window !== 'undefined' && window.diviSupreme5?.taxonomyRestBases ? window.diviSupreme5.taxonomyRestBases : null;\n  if (map && typeof map === 'object' && map[taxonomyName]) {\n    return map[taxonomyName];\n  }\n  if ('category' === taxonomyName) {\n    return 'categories';\n  }\n  if ('post_tag' === taxonomyName) {\n    return 'tags';\n  }\n  // Core registers `post_format` with rest_base `formats` (not `post_format`).\n  if ('post_format' === taxonomyName) {\n    return 'formats';\n  }\n  return taxonomyName;\n}\n;// ./packages/utils/index.js\n\n\n;// ./packages/hooks/use-taxonomies.js\n\n\n\n\n/**\n * A custom hook used to obtain all taxonomies from rest API.\n *\n * @param {string} taxonomy Post type.\n *\n * @return {{\n * \tloading: boolean;\n *  error: boolean;\n *  terms: Array<{\n * \t\tcount: number;\n * \t\tdescription: string;\n * \t\tlink: string;\n * \t\tid: number;\n * \t\tmeta: Array<any>;\n * \t\tname: string;\n * \t\tparent: number;\n * \t\tslug: string;\n * \t\ttaxonomy: string;\n * \t\t_links: Record<any, any>;\n * \t}>;\n * }}\n */\nfunction useTaxonomies(taxonomy = 'categories') {\n  const [loading, setLoading] = (0,external_window_vendor_wp_element_namespaceObject.useState)(false);\n  const [error, setError] = (0,external_window_vendor_wp_element_namespaceObject.useState)(false);\n  const [terms, setTerms] = (0,external_window_vendor_wp_element_namespaceObject.useState)([]);\n  const fetchPosts = async () => {\n    try {\n      setError(false);\n      setLoading(true);\n      const restSegment = getTaxonomyRestBase(taxonomy);\n      const fetchedTerms = await external_window_wp_apiFetch_default()({\n        path: `/wp/v2/${restSegment}?per_page=-1`\n      });\n      setTerms(Array.isArray(fetchedTerms) ? fetchedTerms : []);\n    } catch (error) {\n      console.error(error);\n      setError(true);\n    } finally {\n      setLoading(false);\n    }\n  };\n  (0,external_window_vendor_wp_element_namespaceObject.useEffect)(() => {\n    fetchPosts();\n  }, [taxonomy]);\n  return {\n    terms,\n    error,\n    loading\n  };\n}\n/* harmony default export */ const use_taxonomies = (useTaxonomies);\n;// ./packages/hooks/use-media.js\n\n\n\n\n/**\n * Core `/wp/v2/media` collection params allow only lowercase `asc` | `desc` (see WP_REST_Posts_Controller).\n * Builder attrs often store `ASC` / `DESC` or values with stray whitespace — both trigger `rest_invalid_param`.\n *\n * @param {unknown} raw Order from module attrs or callers.\n * @return {'asc'|'desc'}\n */\nfunction normalizeWpRestCollectionOrder(raw) {\n  if (raw === undefined || raw === null) {\n    return 'asc';\n  }\n  const normalized = typeof raw === 'string' ? raw.trim().toLowerCase() : String(raw).trim().toLowerCase();\n  return normalized === 'desc' ? 'desc' : 'asc';\n}\n\n/**\n * A custom hook used to obtain media from rest API.\n *\n * @param {Object}   options\n * @param {number[]} options.include      Attachment IDs to include.\n * @param {boolean}  [options.enabled=true] When false, skips the request and returns empty media (use for “no gallery IDs” gallery UIs).\n * @param {string}   [options.context='view'] REST `context` (`edit` exposes `caption.raw` / `description.raw`, matching PHP `post_excerpt` / `post_content`).\n */\nfunction useMedia({\n  include,\n  order: orderRaw = 'asc',\n  orderby = 'include',\n  perPage = 10,\n  category = [],\n  enabled = true,\n  context = 'view'\n}) {\n  const order = normalizeWpRestCollectionOrder(orderRaw);\n  const [loading, setLoading] = (0,external_window_vendor_wp_element_namespaceObject.useState)(() => enabled !== false);\n  const [error, setError] = (0,external_window_vendor_wp_element_namespaceObject.useState)(false);\n  const [media, setMedia] = (0,external_window_vendor_wp_element_namespaceObject.useState)([]);\n  const fetchPosts = async () => {\n    try {\n      setError(false);\n      setLoading(true);\n      const hasInclude = Array.isArray(include) && include.length > 0;\n      // Core REST: `orderby=include` requires a non-empty `include` param. Category-only\n      // queries (dynamic gallery) must use another orderby (e.g. date).\n      const effectiveOrderby = 'include' === orderby && !hasInclude ? 'date' : orderby;\n      const queryArgs = {\n        order: order,\n        orderby: effectiveOrderby,\n        per_page: hasInclude ? Math.min(include.length, 100) : perPage\n      };\n      if (context && context !== 'view') {\n        queryArgs.context = context;\n      }\n      if (hasInclude) {\n        queryArgs.include = include;\n      } else {\n        queryArgs['dsm-attachment-category'] = category;\n      }\n      const proxy = addQueryArgs('/wp/v2/media', queryArgs);\n      const fetchedMedia = await external_window_wp_apiFetch_default()({\n        path: proxy\n      });\n      setMedia(fetchedMedia);\n    } catch (error) {\n      console.error(error);\n      setError(true);\n    } finally {\n      setLoading(false);\n    }\n  };\n  (0,external_window_vendor_wp_element_namespaceObject.useEffect)(() => {\n    if (enabled === false) {\n      setMedia([]);\n      setError(false);\n      setLoading(false);\n      return;\n    }\n    fetchPosts();\n  }, [enabled, JSON.stringify(include), order, orderby, perPage, JSON.stringify(category), context]);\n  return {\n    media,\n    error,\n    loading\n  };\n}\n/* harmony default export */ const use_media = (useMedia);\n;// ./packages/hooks/use-library-layouts.js\n\n\n\n/**\n * A custom hook used to obtain posts from rest API.\n */\nfunction useLibraryLayouts() {\n  const [loading, setLoading] = (0,external_window_vendor_wp_element_namespaceObject.useState)(false);\n  const [error, setError] = (0,external_window_vendor_wp_element_namespaceObject.useState)(false);\n  const [posts, setPosts] = (0,external_window_vendor_wp_element_namespaceObject.useState)([]);\n  const fetchPosts = async () => {\n    try {\n      setError(false);\n      setLoading(true);\n      const fetchedPosts = await external_window_wp_apiFetch_default()({\n        path: '/divi/v1/divi-library',\n        method: 'POST',\n        headers: {\n          'X-ET-Nonce': diviSupreme5.nonces.library\n        },\n        data: {\n          type: 'page,layout'\n        }\n      });\n      setPosts(fetchedPosts);\n    } catch (error) {\n      console.error(error);\n      setError(true);\n    } finally {\n      setLoading(false);\n    }\n  };\n  (0,external_window_vendor_wp_element_namespaceObject.useEffect)(() => {\n    fetchPosts();\n  }, []);\n  return {\n    layouts: posts,\n    error,\n    loading\n  };\n}\n/* harmony default export */ const use_library_layouts = (useLibraryLayouts);\n;// ./packages/hooks/use-library-layout-item.js\n\n\n\n/**\n * A custom hook used to obtain posts from rest API.\n *\n * @param {number|string} id Layout id.\n *\n * @return {{\n *    loading: boolean;\n *    error: boolean;\n *    result: {\n *          ID: number;\n *          applicability: string;\n *          categories: number[];\n *          content: string;\n *          is_global: string;\n *          layout_type: string;\n *          layouts_type: string;\n *          module_type: string;\n *          row_layout: string;\n *          title: string;\n *    } | null;\n * }}\n */\nfunction useLibraryLayoutsItem(id) {\n  const [loading, setLoading] = (0,external_window_vendor_wp_element_namespaceObject.useState)(false);\n  const [error, setError] = (0,external_window_vendor_wp_element_namespaceObject.useState)(false);\n  const [result, setResult] = (0,external_window_vendor_wp_element_namespaceObject.useState)(null);\n  const processedID = typeof id === 'string' ? Number(id) : id;\n  const fetchResult = async () => {\n    try {\n      setError(false);\n      setLoading(true);\n      const result = await external_window_wp_apiFetch_default()({\n        path: '/divi/v1/divi-library/item',\n        method: 'POST',\n        headers: {\n          'X-ET-Nonce': diviSupreme5.nonces.item\n        },\n        data: {\n          id: processedID,\n          contentType: 'processed'\n        }\n      });\n      setResult(result);\n    } catch (error) {\n      console.error(error);\n      setError(true);\n    } finally {\n      setLoading(false);\n    }\n  };\n  (0,external_window_vendor_wp_element_namespaceObject.useEffect)(() => {\n    fetchResult();\n  }, []);\n  return {\n    result,\n    error,\n    loading\n  };\n}\n/* harmony default export */ const use_library_layout_item = (useLibraryLayoutsItem);\n;// ./packages/hooks/use-media-category.js\n\n\n\n\n/**\n * WP REST term collections default to `per_page=10` when omitted — too few for attachment-category pickers.\n *\n * @type {number}\n */\nconst TERMS_PER_PAGE = 100;\n\n/**\n * Guard against misconfigured loops (unlikely unless thousands of terms).\n *\n * @type {number}\n */\nconst MAX_TERM_PAGES = 100;\n\n/**\n * Fetch every attachment category term via `/wp/v2/dsm-attachment-category`, paging until exhausted.\n *\n * @param {Record<string, unknown>} queryArgsBase Passed through each request (`include`, etc.).\n * @return {Promise<Array<{ id: number, name: string }>>}\n */\nasync function fetchAllDsmAttachmentCategories(queryArgsBase) {\n  const merged = [];\n  let page = 1;\n  let totalPages = 1;\n  do {\n    const path = addQueryArgs('/wp/v2/dsm-attachment-category', {\n      ...queryArgsBase,\n      per_page: TERMS_PER_PAGE,\n      page,\n      orderby: 'name',\n      order: 'asc',\n      hide_empty: false\n    });\n    const response = await external_window_wp_apiFetch_default()({\n      path,\n      parse: false\n    });\n    const batch = await response.json();\n    if (!Array.isArray(batch)) {\n      const msg = batch && typeof batch === 'object' && 'message' in batch ? String(batch.message) : 'Unexpected attachment category response';\n      throw new Error(msg);\n    }\n    merged.push(...batch);\n    const rawPages = response.headers?.get('x-wp-totalpages');\n    totalPages = parseInt(rawPages || '1', 10);\n    if (!Number.isFinite(totalPages) || totalPages < 1) {\n      totalPages = 1;\n    }\n    page++;\n    if (page > MAX_TERM_PAGES) {\n      break;\n    }\n  } while (page <= totalPages);\n  return merged;\n}\n\n/**\n * Custom hook to fetch and manage media categories.\n *\n * @param {Object}   options          Optional configuration for the hook.\n * @param {number[]} [options.include] Limit results to these term IDs (REST `include`).\n * @return {Object} categories, isLoading, error.\n */\nconst useMediaCategory = (options = {\n  include: []\n}) => {\n  const includeIds = Array.isArray(options.include) ? options.include.map(Number).filter(n => !Number.isNaN(n)) : [];\n  const includeKey = JSON.stringify(includeIds);\n  const [categories, setCategories] = (0,external_vendor_React_.useState)([]);\n  const [isLoading, setIsLoading] = (0,external_vendor_React_.useState)(true);\n  const [error, setError] = (0,external_vendor_React_.useState)(null);\n  (0,external_vendor_React_.useEffect)(() => {\n    let cancelled = false;\n    const fetchCategories = async () => {\n      try {\n        setIsLoading(true);\n        setError(null);\n        const queryArgsBase = includeIds.length > 0 ? {\n          include: includeIds\n        } : {};\n        const rows = await fetchAllDsmAttachmentCategories(queryArgsBase);\n        if (!cancelled) {\n          setCategories(rows);\n        }\n      } catch (err) {\n        if (!cancelled) {\n          // eslint-disable-next-line no-console\n          console.error('DSM attachment categories:', err);\n          setError(err && typeof err === 'object' && 'message' in err ? String(err.message) : String(err));\n          setCategories([]);\n        }\n      } finally {\n        if (!cancelled) {\n          setIsLoading(false);\n        }\n      }\n    };\n    fetchCategories();\n    return () => {\n      cancelled = true;\n    };\n  }, [includeKey]);\n  return {\n    categories,\n    isLoading,\n    error\n  };\n};\n/* harmony default export */ const use_media_category = (useMediaCategory);\n;// external [\"divi\",\"data\"]\nconst external_divi_data_namespaceObject = divi.data;\n;// ./packages/hooks/use-order-index.js\n\n\n/**\n * Provides the order index of the module.\n *\n * @param {string} id - Parent module ID.\n * @param {string} childId - Child module ID.\n * @returns {number}\n */\nfunction useOrderIndex(id, childId) {\n  return (0,external_divi_data_namespaceObject.useSelect)(select => {\n    var _ref, _parentModule$childre;\n    const childModule = select('divi/edit-post').getModule(childId);\n    if (typeof childModule?.orderIndex === 'number') {\n      return childModule.orderIndex;\n    }\n    if (typeof childModule?.props?.orderIndex === 'number') {\n      return childModule.props.orderIndex;\n    }\n    const parentModule = select('divi/edit-post').getModule(id);\n    const childrenIds = (_ref = (_parentModule$childre = parentModule?.childrenIds) !== null && _parentModule$childre !== void 0 ? _parentModule$childre : parentModule?.children) !== null && _ref !== void 0 ? _ref : [];\n    if (!Array.isArray(childrenIds)) {\n      return 0;\n    }\n    const loopIndex = childrenIds.findIndex(currId => currId === childId);\n    return loopIndex >= 0 ? loopIndex : 0;\n  }, [id, childId]);\n}\n;// ./packages/hooks/use-menu.js\n\n\n\nfunction useMenu() {\n  const [loading, setLoading] = (0,external_window_vendor_wp_element_namespaceObject.useState)(false);\n  const [error, setError] = (0,external_window_vendor_wp_element_namespaceObject.useState)(false);\n  const [menu, setMenu] = (0,external_window_vendor_wp_element_namespaceObject.useState)([]);\n  const fetchMenu = async () => {\n    try {\n      setError(false);\n      setLoading(true);\n      const fetchedMenu = await external_window_wp_apiFetch_default()({\n        path: '/divi/v1/module-data/menu/terms'\n      });\n      setMenu(fetchedMenu);\n    } catch (error) {\n      console.error(error);\n      setError(true);\n    } finally {\n      setLoading(false);\n    }\n  };\n  (0,external_window_vendor_wp_element_namespaceObject.useEffect)(() => {\n    fetchMenu();\n  }, []);\n  return {\n    menu,\n    error,\n    loading\n  };\n}\n/* harmony default export */ const use_menu = (useMenu);\n;// ./packages/hooks/index.js\n\n\n\n\n\n\n\n\n;// ./packages/components/taxonomy-control/index.js\n/**\n * WordPress Dependencies\n */\n\n\n\n/**\n * Divi Dependencies.\n */\n\n\n\n/**\n * Divi Supreme Dependencies.\n */\n\n\n/**\n * Renders a taxononmy term picker control in a SelectContainer field based on the post type.\n *\n * @param {{\n *   attrName: string;\n * \t label: string;\n *   type: string;\n * }} props\n */\nfunction TaxonomyControl(props) {\n  const {\n    terms,\n    loading,\n    error\n  } = use_taxonomies(props.type);\n  const hasTerms = !(0,lodash.isEmpty)(terms);\n  if (loading) {\n    return false;\n  }\n  if (error) {\n    return /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.FieldContainer, {\n      label: props.label,\n      attrName: props.attrName\n    }, \"(\", /*#__PURE__*/React.createElement(\"p\", null, (0,external_window_vendor_wp_i18n_namespaceObject.__)('Something went wrong.', 'dsm-supreme-modules-pro-for-divi')), \")\");\n  }\n  return /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.FieldContainer, {\n    label: props.label,\n    attrName: props.attrName\n  }, !hasTerms ? /*#__PURE__*/React.createElement(\"p\", null, (0,external_window_vendor_wp_i18n_namespaceObject.__)('No result found.', 'dsm-supreme-modules-pro-for-divi')) : /*#__PURE__*/React.createElement(external_divi_fieldLibrary_namespaceObject.Checkboxes, {\n    options: terms.map(term => {\n      return {\n        value: props.type + ':' + term.id,\n        label: term.name\n      };\n    })\n  }));\n}\n/* harmony default export */ const taxonomy_control = (TaxonomyControl);\n;// ./packages/components/library-layout-options.js\n/**\n * Divi Library (`et_pb_layout`) select options for Visual Builder (parity with D4 `dsm_load_library`).\n *\n * @package DiviSupreme\n */\n\n\n\n/** @type {Record<string, { label: string }>|null} */\nlet dsmCachedLibraryLayoutSelectOptions = null;\n\n/** @type {unknown} */\nlet dsmCachedLibraryLayoutsRef = null;\n\n/**\n * @return {Record<string, string>}\n */\nfunction dsmLibraryLayoutsFromLocalize() {\n  return typeof diviSupreme5 !== 'undefined' && diviSupreme5.libraryLayouts && typeof diviSupreme5.libraryLayouts === 'object' ? diviSupreme5.libraryLayouts : {};\n}\n\n/**\n * @param {Record<string, string>} list\n * @return {Record<string, { label: string }>}\n */\nfunction dsmBuildLibraryLayoutSelectOptions(list) {\n  const options = {};\n  Object.entries(list).forEach(([id, label]) => {\n    options[id] = {\n      label: String(label)\n    };\n  });\n  if (!options.none) {\n    options.none = {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('-- Select Library --', 'dsm-supreme-modules-pro-for-divi')\n    };\n  }\n  return options;\n}\n\n/**\n * Stable options map for Divi Library layout selects (builder session cache).\n *\n * @return {Record<string, { label: string }>}\n */\nfunction getLibraryLayoutSelectOptions() {\n  const list = dsmLibraryLayoutsFromLocalize();\n  if (dsmCachedLibraryLayoutSelectOptions && dsmCachedLibraryLayoutsRef === list) {\n    return dsmCachedLibraryLayoutSelectOptions;\n  }\n  dsmCachedLibraryLayoutsRef = list;\n  dsmCachedLibraryLayoutSelectOptions = dsmBuildLibraryLayoutSelectOptions(list);\n  return dsmCachedLibraryLayoutSelectOptions;\n}\n;// ./packages/components/divi-layout-control/index.js\n/**\n * Divi Dependencies.\n */\n\n\n\n/**\n * Divi Supreme Dependencies.\n */\n\n\n/**\n * Library layout picker — options from PHP ({@see DsmLibraryLayoutSelectOptions}), D4 parity.\n *\n * @param {{\n *     label: string;\n *     attrName: string;\n * }} props\n * @returns {import('react').JSX.Element}\n */\nfunction DiviLayoutControl(props) {\n  const layoutOptions = getLibraryLayoutSelectOptions();\n  return /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.FieldContainer, {\n    label: props.label,\n    attrName: props.attrName\n  }, /*#__PURE__*/React.createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: layoutOptions\n  }));\n}\n/* harmony default export */ const divi_layout_control = (DiviLayoutControl);\n;// external [\"divi\",\"uiLibrary\"]\nconst external_divi_uiLibrary_namespaceObject = divi.uiLibrary;\n;// ./packages/components/library-layout-renderer/index.js\n/**\n * Visual Builder preview for a Divi Library layout: HTML + module CSS.\n *\n * Uses `POST /dsm/v1/library-layout-preview` (WordPress REST nonce). Divi's `module-render` only returns\n * unstyled HTML because it never runs {@see ET\\Builder\\FrontEnd\\Module\\Style} collection.\n */\n\n\n\n\nconst DSM_PREVIEW_ANIMATION_TAG = '__dsmLibraryPreviewLayoutId';\n\n/**\n * Divi 5 library/list endpoints use `X-ET-Nonce`. Supreme preview uses core REST + `X-WP-Nonce`.\n *\n * @return {{ library?: string, item?: string, module_render?: string, wp_rest?: string }|null}\n */\nfunction getDiviSupremeRestNonces() {\n  if (typeof window === 'undefined') {\n    return null;\n  }\n  const root = window.diviSupreme5;\n  if (!root || !root.nonces || typeof root.nonces !== 'object') {\n    return null;\n  }\n  return root.nonces;\n}\nfunction getWordPressRestNonce() {\n  var _getDiviSupremeRestNo;\n  if (typeof window !== 'undefined' && window.wpApiSettings?.nonce) {\n    return window.wpApiSettings.nonce;\n  }\n  return (_getDiviSupremeRestNo = getDiviSupremeRestNonces()?.wp_rest) !== null && _getDiviSupremeRestNo !== void 0 ? _getDiviSupremeRestNo : '';\n}\n\n/**\n * Divi scroll motion reads `diviElementScrollData` and rebuilds via {@see scriptLibraryStoresScroll}.\n *\n * @param {Window} w\n * @return {object|null}\n */\nfunction getDiviScrollStore(w) {\n  const from = win => {\n    var _scrollMod$default;\n    const scrollMod = win.divi?.scriptLibrary?.scriptLibraryStoresScroll;\n    const store = (_scrollMod$default = scrollMod?.default) !== null && _scrollMod$default !== void 0 ? _scrollMod$default : scrollMod;\n    if (store && typeof store.onBuilderSettingsChange === 'function') {\n      return store;\n    }\n    return null;\n  };\n  try {\n    return from(w) || (w.top && w.top !== w ? from(w.top) : null);\n  } catch (err) {\n    return from(w);\n  }\n}\n\n/**\n * Windows that may hold `diviElementScrollData` / `diviBreakpointData` for the scroll store (iframe + top in VB).\n *\n * @param {Window} w\n * @return {Window[]}\n */\nfunction getDiviScriptGlobalsTargetWindows(w) {\n  const out = [];\n  const seen = new Set();\n  const add = win => {\n    if (!win || seen.has(win)) {\n      return;\n    }\n    seen.add(win);\n    out.push(win);\n  };\n  add(w);\n  try {\n    if (w.top && w.top !== w && w.top.divi && w.top.divi.scriptLibrary) {\n      add(w.top);\n    }\n  } catch (err) {\n    // Cross-origin parent; ignore.\n  }\n  return out;\n}\n\n/**\n * Builder panels often scroll inside overflow:auto ancestors; motion/waypoints need those to fire scroll.\n *\n * @param {HTMLElement|null} rootEl\n */\nfunction dsmTriggerScrollableAncestors(rootEl) {\n  if (!rootEl || typeof window.jQuery !== 'function') {\n    return;\n  }\n  const $ = window.jQuery;\n  let n = rootEl.parentElement;\n  const seen = new Set();\n  while (n && n !== document.body) {\n    const st = window.getComputedStyle(n);\n    if (/(auto|scroll)/.test(st.overflowY) || /(auto|scroll)/.test(st.overflow)) {\n      if (!seen.has(n)) {\n        seen.add(n);\n        $(n).trigger('scroll');\n      }\n    }\n    n = n.parentElement;\n  }\n}\n\n/**\n * @param {{ id?: string|number }} props\n * @return {import('react').JSX.Element}\n */\nfunction LibraryLayoutRenderer({\n  id\n}) {\n  const rootRef = (0,external_vendor_React_.useRef)(null);\n  const [state, setState] = (0,external_vendor_React_.useState)({\n    status: 'idle',\n    html: '',\n    css: '',\n    message: '',\n    previewScrollData: null,\n    previewAnimationData: null,\n    previewBreakpointData: null\n  });\n  const numericId = parseInt(String(id !== null && id !== void 0 ? id : ''), 10);\n  (0,external_vendor_React_.useEffect)(() => {\n    let cancelled = false;\n    if (!numericId || Number.isNaN(numericId)) {\n      setState({\n        status: 'empty',\n        html: '',\n        css: '',\n        message: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Choose a Divi Library layout to preview it here.', 'dsm-supreme-modules-pro-for-divi'),\n        previewScrollData: null,\n        previewAnimationData: null,\n        previewBreakpointData: null\n      });\n      return undefined;\n    }\n    const wpNonce = getWordPressRestNonce();\n    if (!wpNonce) {\n      setState({\n        status: 'error',\n        html: '',\n        css: '',\n        message: (0,external_window_vendor_wp_i18n_namespaceObject.__)('REST authentication is unavailable. Reload the Visual Builder.', 'dsm-supreme-modules-pro-for-divi'),\n        previewScrollData: null,\n        previewAnimationData: null,\n        previewBreakpointData: null\n      });\n      return undefined;\n    }\n    setState({\n      status: 'loading',\n      html: '',\n      css: '',\n      message: '',\n      previewScrollData: null,\n      previewAnimationData: null,\n      previewBreakpointData: null\n    });\n    (async () => {\n      try {\n        var _data$renderedHTML, _data$previewCss;\n        const data = await external_window_wp_apiFetch_default()({\n          path: '/dsm/v1/library-layout-preview',\n          method: 'POST',\n          headers: {\n            'X-WP-Nonce': wpNonce\n          },\n          data: {\n            layoutId: numericId\n          }\n        });\n        if (cancelled) {\n          return;\n        }\n        const html = (_data$renderedHTML = data?.renderedHTML) !== null && _data$renderedHTML !== void 0 ? _data$renderedHTML : '';\n        const css = (_data$previewCss = data?.previewCss) !== null && _data$previewCss !== void 0 ? _data$previewCss : '';\n        const previewScrollData = data?.previewScrollData && typeof data.previewScrollData === 'object' ? data.previewScrollData : null;\n        const previewAnimationData = Array.isArray(data?.previewAnimationData) ? data.previewAnimationData : null;\n        const previewBreakpointData = data?.previewBreakpointData && typeof data.previewBreakpointData === 'object' && !Array.isArray(data.previewBreakpointData) ? data.previewBreakpointData : null;\n        setState({\n          status: 'success',\n          html: typeof html === 'string' ? html : '',\n          css: typeof css === 'string' ? css : '',\n          message: '',\n          previewScrollData,\n          previewAnimationData,\n          previewBreakpointData\n        });\n      } catch (err) {\n        if (cancelled) {\n          return;\n        }\n        const message = err?.message || (0,external_window_vendor_wp_i18n_namespaceObject.__)('Could not load the library preview.', 'dsm-supreme-modules-pro-for-divi');\n        setState({\n          status: 'error',\n          html: '',\n          css: '',\n          message,\n          previewScrollData: null,\n          previewAnimationData: null,\n          previewBreakpointData: null\n        });\n      }\n    })();\n    return () => {\n      cancelled = true;\n    };\n  }, [numericId]);\n  (0,external_vendor_React_.useLayoutEffect)(() => {\n    if (state.status !== 'success') {\n      return undefined;\n    }\n    const w = window;\n    const scriptTargets = getDiviScriptGlobalsTargetWindows(w);\n    const scrollKeys = state.previewScrollData && typeof state.previewScrollData === 'object' && !Array.isArray(state.previewScrollData) ? Object.keys(state.previewScrollData) : [];\n    const scrollPrevByWin = new Map();\n    for (const targetWin of scriptTargets) {\n      if (scrollKeys.length > 0) {\n        const prevRaw = targetWin.diviElementScrollData;\n        scrollPrevByWin.set(targetWin, prevRaw && typeof prevRaw === 'object' && !Array.isArray(prevRaw) ? {\n          ...prevRaw\n        } : {});\n        const prev = scrollPrevByWin.get(targetWin);\n        targetWin.diviElementScrollData = {\n          ...prev,\n          ...state.previewScrollData\n        };\n      }\n    }\n    const bpPrevByWin = new Map();\n    const bpPayload = state.previewBreakpointData;\n    if (bpPayload && typeof bpPayload === 'object' && Object.keys(bpPayload).length > 0) {\n      for (const targetWin of scriptTargets) {\n        bpPrevByWin.set(targetWin, targetWin.diviBreakpointData && typeof targetWin.diviBreakpointData === 'object' ? {\n          ...targetWin.diviBreakpointData\n        } : undefined);\n        targetWin.diviBreakpointData = {\n          ...(targetWin.diviBreakpointData && typeof targetWin.diviBreakpointData === 'object' ? targetWin.diviBreakpointData : {}),\n          ...bpPayload\n        };\n      }\n    }\n    const animChunk = state.previewAnimationData;\n    const hadAnimationGlobal = Array.isArray(w.diviElementAnimationData);\n    const prevAnimationSnapshot = hadAnimationGlobal ? [...w.diviElementAnimationData] : null;\n    if (animChunk && animChunk.length > 0) {\n      const tagged = animChunk.map(row => row && typeof row === 'object' ? {\n        ...row,\n        [DSM_PREVIEW_ANIMATION_TAG]: numericId\n      } : row);\n      w.diviElementAnimationData = [...(Array.isArray(w.diviElementAnimationData) ? w.diviElementAnimationData : []), ...tagged];\n    }\n    const kickPreviewEffects = () => {\n      const scrollStore = getDiviScrollStore(w);\n      scrollStore?.onBuilderSettingsChange(undefined, true);\n      if (typeof w.et_process_animation_data === 'function') {\n        w.et_process_animation_data(true);\n      }\n      for (const targetWin of scriptTargets) {\n        targetWin.jQuery?.(targetWin).trigger('resize');\n      }\n      const emitMotion = win => {\n        const motion = win.divi?.scriptLibrary?.scriptLibraryMotionEffects;\n        if (motion && typeof motion.emit === 'function') {\n          motion.emit('settings_change');\n        }\n      };\n      emitMotion(w);\n      try {\n        if (w.top && w.top !== w) {\n          emitMotion(w.top);\n        }\n      } catch (err) {\n        // Cross-origin.\n      }\n      const rootEl = rootRef.current || document.querySelector(`.dsm-library-layout-renderer[data-dsm-library-preview=\"${numericId}\"]`);\n      dsmTriggerScrollableAncestors(rootEl);\n    };\n    requestAnimationFrame(kickPreviewEffects);\n    const t1 = setTimeout(kickPreviewEffects, 50);\n    const t2 = setTimeout(kickPreviewEffects, 300);\n    const t3 = setTimeout(kickPreviewEffects, 700);\n    return () => {\n      clearTimeout(t1);\n      clearTimeout(t2);\n      clearTimeout(t3);\n      for (const targetWin of scriptTargets) {\n        if (scrollKeys.length > 0) {\n          const curRaw = targetWin.diviElementScrollData;\n          const cur = curRaw && typeof curRaw === 'object' && !Array.isArray(curRaw) ? {\n            ...curRaw\n          } : {};\n          scrollKeys.forEach(k => {\n            delete cur[k];\n          });\n          targetWin.diviElementScrollData = Object.keys(cur).length > 0 ? cur : {};\n        }\n        if (bpPrevByWin.has(targetWin)) {\n          const prevBp = bpPrevByWin.get(targetWin);\n          if (prevBp === undefined) {\n            try {\n              delete targetWin.diviBreakpointData;\n            } catch (err) {\n              targetWin.diviBreakpointData = {};\n            }\n          } else {\n            targetWin.diviBreakpointData = prevBp;\n          }\n        }\n      }\n      if (hadAnimationGlobal && prevAnimationSnapshot) {\n        w.diviElementAnimationData = prevAnimationSnapshot;\n      } else if (animChunk && animChunk.length > 0) {\n        const next = (Array.isArray(w.diviElementAnimationData) ? w.diviElementAnimationData : []).filter(row => row?.[DSM_PREVIEW_ANIMATION_TAG] !== numericId);\n        if (next.length > 0) {\n          w.diviElementAnimationData = next;\n        } else {\n          delete w.diviElementAnimationData;\n        }\n      }\n      requestAnimationFrame(kickPreviewEffects);\n    };\n  }, [state.status, state.html, state.previewScrollData, state.previewAnimationData, state.previewBreakpointData, numericId]);\n  if (state.status === 'loading' || state.status === 'idle') {\n    return /*#__PURE__*/React.createElement(\"div\", {\n      className: \"dsm-library-layout-renderer__loading\",\n      role: \"status\",\n      \"aria-live\": \"polite\",\n      \"aria-busy\": \"true\"\n    }, /*#__PURE__*/React.createElement(external_divi_uiLibrary_namespaceObject.Loading, null), /*#__PURE__*/React.createElement(\"span\", {\n      className: \"screen-reader-text\"\n    }, (0,external_window_vendor_wp_i18n_namespaceObject.__)('Loading library layout…', 'dsm-supreme-modules-pro-for-divi')));\n  }\n  if (state.status === 'empty' || state.status === 'error') {\n    return /*#__PURE__*/React.createElement(\"p\", {\n      className: \"dsm-library-layout-renderer__notice\"\n    }, state.message);\n  }\n  return /*#__PURE__*/React.createElement(external_vendor_React_.Fragment, null, state.css ? /*#__PURE__*/React.createElement(\"style\", {\n    className: \"dsm-library-layout-preview-css\",\n    dangerouslySetInnerHTML: {\n      __html: state.css\n    }\n  }) : null, /*#__PURE__*/React.createElement(\"div\", {\n    ref: rootRef,\n    className: \"dsm-library-layout-renderer\",\n    \"data-dsm-library-preview\": String(numericId),\n    dangerouslySetInnerHTML: {\n      __html: state.html\n    }\n  }));\n}\n/* harmony default export */ const library_layout_renderer = (LibraryLayoutRenderer);\n;// ./packages/components/divi-shortcode-content-renderer/index.js\n/**\n * Visual Builder preview for module \"shortcode\" content fields that embed `[divi_shortcode id=\"…\"]`.\n *\n * When the field contains Divi Supreme library shortcodes, renders via {@see LibraryLayoutRenderer}\n * (same REST path as Content Type → Library). Other shortcodes show a builder notice.\n */\n\n\n\nconst DIVI_SHORTCODE_ID_PATTERN = /\\[divi_shortcode\\b[^\\]]*\\bid\\s*=\\s*[\"']?(\\d+)[\"']?/gi;\n\n/**\n * Parse layout post IDs from `[divi_shortcode id=\"…\"]` in a shortcode field value.\n *\n * @param {string} shortcodeText Raw shortcode field.\n * @return {number[]} Unique positive IDs in document order.\n */\nfunction parseDiviShortcodeLayoutIds(shortcodeText) {\n  if (typeof shortcodeText !== 'string' || '' === shortcodeText.trim()) {\n    return [];\n  }\n  const ids = [];\n  let match;\n  DIVI_SHORTCODE_ID_PATTERN.lastIndex = 0;\n  while ((match = DIVI_SHORTCODE_ID_PATTERN.exec(shortcodeText)) !== null) {\n    const id = parseInt(match[1], 10);\n    if (id > 0 && !ids.includes(id)) {\n      ids.push(id);\n    }\n  }\n  return ids;\n}\n\n/**\n * @param {object} props\n * @param {string} [props.shortcode]     Shortcode field value.\n * @param {string} [props.previewKey]    Optional key prefix for nested LibraryLayoutRenderer instances.\n * @param {boolean} [props.showFallbackNotice=true] Show notice when no `divi_shortcode` tag is found.\n */\nconst DiviShortcodeContentRenderer = ({\n  shortcode = '',\n  previewKey = 'dsm-divi-shortcode',\n  showFallbackNotice = true\n}) => {\n  const layoutIds = parseDiviShortcodeLayoutIds(shortcode);\n  if (layoutIds.length > 0) {\n    return /*#__PURE__*/React.createElement(external_vendor_React_.Fragment, null, layoutIds.map(layoutId => /*#__PURE__*/React.createElement(library_layout_renderer, {\n      key: `${previewKey}-${layoutId}`,\n      id: layoutId\n    })));\n  }\n  if (!showFallbackNotice) {\n    return null;\n  }\n  return /*#__PURE__*/React.createElement(\"p\", null, (0,external_window_vendor_wp_i18n_namespaceObject.__)('Note: Shortcode will not be rendered in Divi Visual Builder due to some restriction. However, this will be display on the frontend without any issue.', 'dsm-supreme-modules-pro-for-divi'), shortcode ? /*#__PURE__*/React.createElement(React.Fragment, null, ' ', (0,external_window_vendor_wp_i18n_namespaceObject.__)(\"You're using the shortcode:\", 'dsm-supreme-modules-pro-for-divi'), ' ', /*#__PURE__*/React.createElement(\"code\", null, shortcode)) : null);\n};\n/* harmony default export */ const divi_shortcode_content_renderer = (DiviShortcodeContentRenderer);\n;// ./packages/components/group-container/index.js\n\n\n\n/**\n * Wrapper component for Group.\n *\n * @param {Object} props - The props for the Group component.\n * @param {string} props.name - The name of the group.\n * @param {string} props.title - The title of the group.\n * @param {string} props.id - The id of the group.\n * @param {boolean} props.defaultOpened - Whether the group is opened.\n * @param {ReactNode} props.children - The children of the group.\n */\nfunction GroupContainer(props) {\n  const [opened, setOpened] = (0,external_vendor_React_.useState)(props.defaultOpened);\n  return /*#__PURE__*/React.createElement(external_divi_modal_namespaceObject.Group, {\n    opened: opened,\n    title: props.title,\n    id: props.id,\n    presetGroupData: {},\n    onTitleClick: () => setOpened(opened => !opened)\n  }, props.children);\n}\n/* harmony default export */ const group_container = (GroupContainer);\n;// ./packages/components/box-shadow-group/index.js\nfunction box_shadow_group_extends() {\n  return box_shadow_group_extends = Object.assign ? Object.assign.bind() : function (n) {\n    for (var e = 1; e < arguments.length; e++) {\n      var t = arguments[e];\n      for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n    }\n    return n;\n  }, box_shadow_group_extends.apply(null, arguments);\n}\n\n\n\n\n// Box Shadow Style Options (you may need to import or define these)\nconst boxShadowStyleOptions = {\n  none: {\n    name: 'none',\n    label: 'None',\n    icon: 'divi/animation-none'\n  },\n  preset1: {\n    name: 'preset1',\n    label: 'Preset 1',\n    className: 'et-vb-box-shadow-preset et-vb-box-shadow-preset--1'\n  },\n  preset2: {\n    name: 'preset2',\n    label: 'Preset 2',\n    className: 'et-vb-box-shadow-preset et-vb-box-shadow-preset--2'\n  },\n  preset3: {\n    name: 'preset3',\n    label: 'Preset 3',\n    className: 'et-vb-box-shadow-preset et-vb-box-shadow-preset--3'\n  },\n  preset4: {\n    name: 'preset4',\n    label: 'Preset 4',\n    className: 'et-vb-box-shadow-preset et-vb-box-shadow-preset--4'\n  },\n  preset5: {\n    name: 'preset5',\n    label: 'Preset 5',\n    className: 'et-vb-box-shadow-preset et-vb-box-shadow-preset--5'\n  },\n  preset6: {\n    name: 'preset6',\n    label: 'Preset 6',\n    className: 'et-vb-box-shadow-preset et-vb-box-shadow-preset--6'\n  },\n  preset7: {\n    name: 'preset7',\n    label: 'Preset 7',\n    className: 'et-vb-box-shadow-preset et-vb-box-shadow-preset--7'\n  }\n};\nconst positionOptions = {\n  outer: {\n    name: 'outer',\n    label: 'Outer Shadow'\n  },\n  inner: {\n    name: 'inner',\n    label: 'Inner Shadow'\n  }\n};\n\n/** Full cleared shadow matching popup / decoration defaults — used for preset row reset and group-wide clear. */\nconst DEFAULT_BOX_SHADOW_CLEARED = Object.freeze({\n  style: 'none',\n  position: 'outer',\n  horizontal: '0px',\n  vertical: '0px',\n  blur: '0px',\n  spread: '0px',\n  color: '#000000'\n});\n\n/**\n * @param {string}                           fieldWrapperId\n * @param {string|undefined}                 responsiveBreakpoint\n * @param {((id: string) => () => import('react').ReactElement)|undefined} renderResponsiveFieldButtons\n * @return {Record<string, unknown>}\n */\nconst boxShadowResponsiveWrapperProps = (fieldWrapperId, responsiveBreakpoint, renderResponsiveFieldButtons) => {\n  if (!responsiveBreakpoint || !renderResponsiveFieldButtons) {\n    return {};\n  }\n  return {\n    id: fieldWrapperId,\n    responsiveBreakpoint,\n    additionalButtons: renderResponsiveFieldButtons(fieldWrapperId)\n  };\n};\nconst BoxShadowGroup = ({\n  value,\n  onChange,\n  responsiveBreakpoint,\n  renderResponsiveFieldButtons\n}) => {\n  const currentValue = value || {};\n  const isNoneStyle = currentValue.style === 'none' || !currentValue.style;\n  const updateValue = (field, newValue) => {\n    onChange({\n      ...value,\n      ...currentValue,\n      [field]: newValue\n    });\n  };\n  return /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"custom-box-shadow-group\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.FieldWrapper, box_shadow_group_extends({\n    label: \"Box Shadow Style\",\n    description: \"Pick a box shadow style to enable box shadow for this element.\",\n    enableReset: true,\n    onReset: () => onChange({\n      ...value,\n      ...currentValue,\n      ...DEFAULT_BOX_SHADOW_CLEARED\n    })\n  }, boxShadowResponsiveWrapperProps('dsm-popup-box-shadow-style', responsiveBreakpoint, renderResponsiveFieldButtons)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    name: \"box_shadow_style\",\n    value: currentValue.style || 'none',\n    onChange: ({\n      event\n    }) => {\n      const newStyle = event.target.dataset.name;\n\n      // Handle preset changes - you might want to apply preset values here\n      if (newStyle !== 'none') {\n        // Apply preset values based on selected style\n        const presetValues = getPresetValues(newStyle);\n        onChange({\n          ...value,\n          style: newStyle,\n          ...presetValues\n        });\n      } else {\n        updateValue('style', newStyle);\n      }\n    },\n    options: boxShadowStyleOptions,\n    showLabel: false,\n    justified: true,\n    column: 4\n  })), !isNoneStyle && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.FieldWrapper, box_shadow_group_extends({\n    label: \"Box Shadow Horizontal Position\",\n    description: \"Shadow's horizontal distance from the element. A negative value places the shadow to the left of the element.\",\n    enableReset: true,\n    onReset: () => updateValue('horizontal', '0px')\n  }, boxShadowResponsiveWrapperProps('dsm-popup-box-shadow-horizontal', responsiveBreakpoint, renderResponsiveFieldButtons)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    name: \"box_shadow_horizontal\",\n    value: currentValue.horizontal || '0px',\n    onChange: params => updateValue('horizontal', params.inputValue),\n    min: -80,\n    max: 80,\n    step: 1,\n    defaultUnit: \"px\",\n    allowedUnits: ['px', 'em', 'rem', 'vh', 'vw']\n  })), !isNoneStyle && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.FieldWrapper, box_shadow_group_extends({\n    label: \"Box Shadow Vertical Position\",\n    description: \"Shadow's vertical distance from the element. A negative value places the shadow above the element.\",\n    enableReset: true,\n    onReset: () => updateValue('vertical', '0px')\n  }, boxShadowResponsiveWrapperProps('dsm-popup-box-shadow-vertical', responsiveBreakpoint, renderResponsiveFieldButtons)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    name: \"box_shadow_vertical\",\n    value: currentValue.vertical || '0px',\n    onChange: params => updateValue('vertical', params.inputValue),\n    min: -80,\n    max: 80,\n    step: 1,\n    defaultUnit: \"px\",\n    allowedUnits: ['px', 'em', 'rem', 'vh', 'vw']\n  })), !isNoneStyle && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.FieldWrapper, box_shadow_group_extends({\n    label: \"Box Shadow Blur Strength\",\n    description: \"The higher the value, the bigger the blur, the shadow becomes wider and lighter.\",\n    enableReset: true,\n    onReset: () => updateValue('blur', '0px')\n  }, boxShadowResponsiveWrapperProps('dsm-popup-box-shadow-blur', responsiveBreakpoint, renderResponsiveFieldButtons)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    name: \"box_shadow_blur\",\n    value: currentValue.blur || '0px',\n    onChange: params => updateValue('blur', params.inputValue),\n    min: 0,\n    max: 80,\n    step: 1,\n    defaultUnit: \"px\",\n    allowedUnits: ['px', 'em', 'rem', 'vh', 'vw']\n  })), !isNoneStyle && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.FieldWrapper, box_shadow_group_extends({\n    label: \"Box Shadow Spread Strength\",\n    description: \"Increasing the spread strength will increase the density of the box shadow.\",\n    enableReset: true,\n    onReset: () => updateValue('spread', '0px')\n  }, boxShadowResponsiveWrapperProps('dsm-popup-box-shadow-spread', responsiveBreakpoint, renderResponsiveFieldButtons)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    name: \"box_shadow_spread\",\n    value: currentValue.spread || '0px',\n    onChange: params => updateValue('spread', params.inputValue),\n    min: -80,\n    max: 80,\n    step: 1,\n    defaultUnit: \"px\",\n    allowedUnits: ['px', 'em', 'rem', 'vh', 'vw']\n  })), !isNoneStyle && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.FieldWrapper, box_shadow_group_extends({\n    label: \"Shadow Color\",\n    description: \"The color of the shadow.\",\n    enableReset: true,\n    onReset: () => updateValue('color', '#000000')\n  }, boxShadowResponsiveWrapperProps('dsm-popup-box-shadow-color', responsiveBreakpoint, renderResponsiveFieldButtons)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, {\n    name: \"box_shadow_color\",\n    value: currentValue.color || 'rgba(0,0,0,0.3)',\n    onChange: params => updateValue('color', params.inputValue)\n  })), !isNoneStyle && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.FieldWrapper, box_shadow_group_extends({\n    label: \"Box Shadow Position\",\n    description: \"Choose whether the shadow appears outside or inside your module.\",\n    enableReset: true,\n    onReset: () => updateValue('position', 'outer')\n  }, boxShadowResponsiveWrapperProps('dsm-popup-box-shadow-position', responsiveBreakpoint, renderResponsiveFieldButtons)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    name: \"box_shadow_position\",\n    value: currentValue.position || 'outer',\n    onChange: params => updateValue('position', params.inputValue),\n    options: positionOptions\n  })));\n};\n\n// Helper function to get preset values\nconst getPresetValues = presetName => {\n  const presets = {\n    preset1: {\n      horizontal: '0px',\n      vertical: '2px',\n      blur: '18px',\n      spread: '0px',\n      position: 'outer'\n    },\n    preset2: {\n      horizontal: '6px',\n      vertical: '6px',\n      blur: '18px',\n      spread: '0px',\n      position: 'outer'\n    },\n    preset3: {\n      horizontal: '0px',\n      vertical: '12px',\n      blur: '18px',\n      spread: '-6px',\n      position: 'outer'\n    },\n    preset4: {\n      horizontal: '10px',\n      vertical: '10px',\n      blur: '0px',\n      spread: '0px',\n      position: 'outer'\n    },\n    preset5: {\n      horizontal: '0px',\n      vertical: '6px',\n      blur: '0px',\n      spread: '10px',\n      position: 'outer'\n    },\n    preset6: {\n      horizontal: '0px',\n      vertical: '0px',\n      blur: '18px',\n      spread: '0px',\n      position: 'inner'\n    },\n    preset7: {\n      horizontal: '10px',\n      vertical: '10px',\n      blur: '0px',\n      spread: '0px',\n      position: 'inner'\n    }\n  };\n  return presets[presetName] || {};\n};\n/* harmony default export */ const box_shadow_group = (BoxShadowGroup);\n;// ./packages/components/border-group/index.js\nfunction border_group_extends() {\n  return border_group_extends = Object.assign ? Object.assign.bind() : function (n) {\n    for (var e = 1; e < arguments.length; e++) {\n      var t = arguments[e];\n      for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n    }\n    return n;\n  }, border_group_extends.apply(null, arguments);\n}\n\n\n\nconst borderStyleSideOptions = {\n  all: {\n    name: 'all',\n    label: 'All Sides',\n    icon: 'divi/border-all'\n  },\n  top: {\n    name: 'top',\n    label: 'Top',\n    icon: 'divi/border-top'\n  },\n  right: {\n    name: 'right',\n    label: 'Right',\n    icon: 'divi/border-right'\n  },\n  bottom: {\n    name: 'bottom',\n    label: 'Bottom',\n    icon: 'divi/border-bottom'\n  },\n  left: {\n    name: 'left',\n    label: 'Left',\n    icon: 'divi/border-left'\n  }\n};\nconst borderStyleOptions = {\n  solid: {\n    name: 'solid',\n    label: 'Solid'\n  },\n  dashed: {\n    name: 'dashed',\n    label: 'Dashed'\n  },\n  dotted: {\n    name: 'dotted',\n    label: 'Dotted'\n  },\n  double: {\n    name: 'double',\n    label: 'Double'\n  },\n  groove: {\n    name: 'groove',\n    label: 'Groove'\n  },\n  ridge: {\n    name: 'ridge',\n    label: 'Ridge'\n  },\n  outset: {\n    name: 'outset',\n    label: 'Outset'\n  },\n  inset: {\n    name: 'inset',\n    label: 'Inset'\n  },\n  none: {\n    name: 'none',\n    label: 'None'\n  }\n};\nconst DEFAULT_BORDER_RADIUS_CORNERS = Object.freeze({\n  topLeft: '0px',\n  topRight: '0px',\n  bottomLeft: '0px',\n  bottomRight: '0px'\n});\n\n/** Default style when resetting a side (matches Popup.php popup_border `style`). */\nconst DEFAULT_BORDER_SIDE_STYLE_RESET = 'solid';\nconst DEFAULT_BORDER_SIDE = Object.freeze({\n  width: '0px',\n  color: '#000000',\n  style: 'solid'\n});\n\n/**\n * @param {Record<string, unknown>|undefined|null} border\n * @param {string}                                side\n * @return {Record<string, string>}\n */\nconst getBorderSideStyles = (border, side) => {\n  if (!border || typeof border !== 'object') {\n    return {\n      ...DEFAULT_BORDER_SIDE\n    };\n  }\n  const styles = border.styles;\n  if (styles && typeof styles === 'object') {\n    const sideStyles = styles[side];\n    if (sideStyles && typeof sideStyles === 'object') {\n      return {\n        width: typeof sideStyles.width === 'string' ? sideStyles.width : DEFAULT_BORDER_SIDE.width,\n        color: typeof sideStyles.color === 'string' ? sideStyles.color : DEFAULT_BORDER_SIDE.color,\n        style: typeof sideStyles.style === 'string' ? sideStyles.style : DEFAULT_BORDER_SIDE.style\n      };\n    }\n    const allStyles = styles.all;\n    if (allStyles && typeof allStyles === 'object') {\n      return {\n        width: typeof allStyles.width === 'string' ? allStyles.width : DEFAULT_BORDER_SIDE.width,\n        color: typeof allStyles.color === 'string' ? allStyles.color : DEFAULT_BORDER_SIDE.color,\n        style: typeof allStyles.style === 'string' ? allStyles.style : DEFAULT_BORDER_SIDE.style\n      };\n    }\n  }\n  if ('all' === side && (typeof border.width === 'string' || typeof border.color === 'string' || typeof border.style === 'string')) {\n    return {\n      width: typeof border.width === 'string' ? border.width : DEFAULT_BORDER_SIDE.width,\n      color: typeof border.color === 'string' ? border.color : DEFAULT_BORDER_SIDE.color,\n      style: typeof border.style === 'string' ? border.style : DEFAULT_BORDER_SIDE.style\n    };\n  }\n  return {\n    ...DEFAULT_BORDER_SIDE\n  };\n};\n\n/**\n * Raw stored overrides on one border side (no schema fill-in).\n *\n * @param {unknown} rawLeaf\n * @param {string}  side\n * @return {Record<string, string>}\n */\nconst getStoredBorderSideOverrides = (rawLeaf, side) => {\n  if (!rawLeaf || typeof rawLeaf !== 'object') {\n    return {};\n  }\n  const styles = rawLeaf.styles;\n  if (styles && typeof styles === 'object') {\n    var _styles$side;\n    const sideRaw = (_styles$side = styles[side]) !== null && _styles$side !== void 0 ? _styles$side : 'all' !== side ? styles.all : undefined;\n    if (!sideRaw || typeof sideRaw !== 'object') {\n      return {};\n    }\n\n    /** @type {Record<string, string>} */\n    const overrides = {};\n    for (const prop of ['width', 'color', 'style']) {\n      if (typeof sideRaw[prop] === 'string') {\n        overrides[prop] = sideRaw[prop];\n      }\n    }\n    return overrides;\n  }\n  if ('all' !== side) {\n    return {};\n  }\n\n  /** @type {Record<string, string>} */\n  const flatOverrides = {};\n  for (const prop of ['width', 'color', 'style']) {\n    if (typeof rawLeaf[prop] === 'string') {\n      flatOverrides[prop] = rawLeaf[prop];\n    }\n  }\n  return flatOverrides;\n};\n\n/**\n * @param {string} value\n * @return {string}\n */\nconst normalizeBorderCssColor = value => {\n  if (typeof value !== 'string') {\n    return '';\n  }\n  const trimmed = value.trim().toLowerCase();\n  if ('' === trimmed) {\n    return '';\n  }\n  if (trimmed.startsWith('#')) {\n    return trimmed.length === 4 ? `#${trimmed[1]}${trimmed[1]}${trimmed[2]}${trimmed[2]}${trimmed[3]}${trimmed[3]}` : trimmed;\n  }\n  const rgbMatch = trimmed.match(/^rgba?\\(\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)/);\n  if (rgbMatch) {\n    const toHex = (/** @type {string} */n) => parseInt(n, 10).toString(16).padStart(2, '0');\n    return `#${toHex(rgbMatch[1])}${toHex(rgbMatch[2])}${toHex(rgbMatch[3])}`;\n  }\n  return trimmed;\n};\nconst BORDER_STYLE_SIDES = ['all', 'top', 'right', 'bottom', 'left'];\nconst BORDER_STYLE_PROPS = ['width', 'color', 'style'];\n\n/**\n * @param {Record<string, unknown>|undefined|null} border\n * @return {Record<string, unknown>}\n */\nconst cloneBorderBase = border => {\n  if (!border || typeof border !== 'object') {\n    return {\n      styles: {\n        all: {\n          ...DEFAULT_BORDER_SIDE\n        }\n      },\n      radius: {}\n    };\n  }\n  return JSON.parse(JSON.stringify(border));\n};\n\n/**\n * Optional responsive toolbar props for popup modal fields (native Divi parity).\n *\n * @param {string}                           fieldWrapperId\n * @param {string|undefined}                 responsiveBreakpoint\n * @param {((id: string) => () => import('react').ReactElement)|undefined} renderResponsiveFieldButtons\n * @return {Record<string, unknown>}\n */\nconst borderResponsiveWrapperProps = (fieldWrapperId, responsiveBreakpoint, renderResponsiveFieldButtons) => {\n  if (!responsiveBreakpoint || !renderResponsiveFieldButtons) {\n    return {};\n  }\n  return {\n    id: fieldWrapperId,\n    responsiveBreakpoint,\n    additionalButtons: renderResponsiveFieldButtons(fieldWrapperId)\n  };\n};\nconst BorderGroup = ({\n  value,\n  defaultValue,\n  cascadeValue = null,\n  storedBorderLeaf = null,\n  borderExplicitValue = null,\n  isStylePropExplicit,\n  isRadiusExplicit,\n  hasExplicitOverride = false,\n  onChange,\n  onStylePropChange,\n  onStylePropReset,\n  responsiveBreakpoint,\n  renderResponsiveFieldButtons\n}) => {\n  var _inheritedSide$width, _inheritedSide$color, _inheritedSide$style, _inheritedValue$radiu, _inheritedValue$radiu2, _inheritedValue$radiu3, _inheritedValue$radiu4, _inheritedValue$radiu5, _inheritedValue$radiu6, _inheritedValue$radiu7;\n  const [activeTab, setActiveTab] = (0,external_vendor_React_.useState)('all');\n  const lastEmittedWidthRef = (0,external_vendor_React_.useRef)({});\n  const currentValue = value || {};\n  const inheritedValue = defaultValue || {};\n  const resolvedValue = cascadeValue || inheritedValue;\n  const explicitSource = borderExplicitValue || currentValue;\n  const isPropExplicit = (side, prop) => {\n    if (typeof isStylePropExplicit === 'function') {\n      return isStylePropExplicit(side, prop);\n    }\n    return hasExplicitOverride;\n  };\n  const hasExplicitOnSide = side => ['width', 'color', 'style'].some(prop => isPropExplicit(side, prop));\n  const radiusIsExplicit = typeof isRadiusExplicit === 'function' ? isRadiusExplicit() : hasExplicitOverride;\n  const getSaveBase = () => {\n    const cascade = cloneBorderBase(resolvedValue);\n    const styles = {\n      ...(cascade.styles || {})\n    };\n    for (const sideKey of BORDER_STYLE_SIDES) {\n      const cascadeSide = getBorderSideStyles(cascade, sideKey);\n      const storedOverrides = getStoredBorderSideOverrides(storedBorderLeaf, sideKey);\n      const explicitSide = getBorderSideStyles(explicitSource, sideKey);\n\n      /** @type {Record<string, string>} */\n      const mergedSide = {\n        ...cascadeSide,\n        ...storedOverrides\n      };\n      for (const prop of BORDER_STYLE_PROPS) {\n        if (isPropExplicit(sideKey, prop)) {\n          mergedSide[prop] = explicitSide[prop];\n        }\n      }\n      styles[sideKey] = mergedSide;\n    }\n    return {\n      ...cascade,\n      styles\n    };\n  };\n\n  /**\n   * Full side styles for persistence (resolved cascade + stored + explicit + edit).\n   *\n   * @param {string} side\n   * @param {string} property\n   * @param {string} newValue\n   * @return {Record<string, string>}\n   */\n  const buildMergedSideForSave = (side, property, newValue) => {\n    const baseSide = getBorderSideStyles(getSaveBase(), side);\n    return {\n      ...baseSide,\n      [property]: newValue\n    };\n  };\n  const inheritedSide = getBorderSideStyles(inheritedValue, activeTab);\n  const explicitSide = getBorderSideStyles(explicitSource, activeTab);\n  const widthIsExplicit = isPropExplicit(activeTab, 'width');\n  const widthValue = widthIsExplicit && typeof explicitSide.width === 'string' ? explicitSide.width : '';\n  const widthPlaceholder = (_inheritedSide$width = inheritedSide.width) !== null && _inheritedSide$width !== void 0 ? _inheritedSide$width : '0px';\n  const colorIsExplicit = isPropExplicit(activeTab, 'color');\n  const colorValue = colorIsExplicit ? explicitSide.color : undefined;\n  const colorDefaultValue = (_inheritedSide$color = inheritedSide.color) !== null && _inheritedSide$color !== void 0 ? _inheritedSide$color : '#000000';\n  const styleIsExplicit = isPropExplicit(activeTab, 'style');\n  const styleValue = styleIsExplicit ? explicitSide.style : undefined;\n  const styleDefaultValue = (_inheritedSide$style = inheritedSide.style) !== null && _inheritedSide$style !== void 0 ? _inheritedSide$style : 'solid';\n  const radiusValue = radiusIsExplicit ? explicitSource.radius || {\n    topLeft: '',\n    topRight: '',\n    bottomLeft: '',\n    bottomRight: '',\n    sync: (_inheritedValue$radiu = inheritedValue.radius?.sync) !== null && _inheritedValue$radiu !== void 0 ? _inheritedValue$radiu : 'off'\n  } : {\n    topLeft: '',\n    topRight: '',\n    bottomLeft: '',\n    bottomRight: '',\n    sync: (_inheritedValue$radiu2 = inheritedValue.radius?.sync) !== null && _inheritedValue$radiu2 !== void 0 ? _inheritedValue$radiu2 : 'off'\n  };\n  const radiusDefaultValue = {\n    topLeft: (_inheritedValue$radiu3 = inheritedValue.radius?.topLeft) !== null && _inheritedValue$radiu3 !== void 0 ? _inheritedValue$radiu3 : '0px',\n    topRight: (_inheritedValue$radiu4 = inheritedValue.radius?.topRight) !== null && _inheritedValue$radiu4 !== void 0 ? _inheritedValue$radiu4 : '0px',\n    bottomLeft: (_inheritedValue$radiu5 = inheritedValue.radius?.bottomLeft) !== null && _inheritedValue$radiu5 !== void 0 ? _inheritedValue$radiu5 : '0px',\n    bottomRight: (_inheritedValue$radiu6 = inheritedValue.radius?.bottomRight) !== null && _inheritedValue$radiu6 !== void 0 ? _inheritedValue$radiu6 : '0px',\n    sync: (_inheritedValue$radiu7 = inheritedValue.radius?.sync) !== null && _inheritedValue$radiu7 !== void 0 ? _inheritedValue$radiu7 : 'off'\n  };\n  const persistStyleValue = (side, property, newValue) => {\n    if (typeof onStylePropChange === 'function') {\n      onStylePropChange(side, property, newValue);\n    } else {\n      const base = getSaveBase();\n      const styles = {\n        ...(base.styles || {})\n      };\n      styles[side] = buildMergedSideForSave(side, property, newValue);\n      onChange({\n        ...base,\n        styles\n      });\n    }\n    if ('width' === property && '' !== newValue) {\n      lastEmittedWidthRef.current[side] = newValue;\n    }\n  };\n  const resetStyleValue = (side, property) => {\n    if (typeof onStylePropReset === 'function') {\n      onStylePropReset(side, property);\n      return;\n    }\n    const cascadeSide = getBorderSideStyles(resolvedValue, side);\n    persistStyleValue(side, property, cascadeSide[property]);\n  };\n  const shouldIgnoreWidthRangeChange = (side, inputValue) => {\n    if ('' !== inputValue && '0px' !== inputValue) {\n      return false;\n    }\n    const storedWidth = getStoredBorderSideOverrides(storedBorderLeaf, side).width;\n    if (typeof storedWidth === 'string' && '' !== storedWidth && '0px' !== storedWidth && inputValue !== storedWidth) {\n      return true;\n    }\n    const lastEmitted = lastEmittedWidthRef.current[side];\n    if (typeof lastEmitted === 'string' && '' !== lastEmitted && '0px' !== lastEmitted && inputValue !== lastEmitted) {\n      return true;\n    }\n    if (widthIsExplicit && typeof widthValue === 'string' && '' !== widthValue && '0px' !== widthValue && inputValue !== widthValue) {\n      return true;\n    }\n    return false;\n  };\n  (0,external_vendor_React_.useEffect)(() => {\n    if (widthIsExplicit && widthValue) {\n      lastEmittedWidthRef.current[activeTab] = widthValue;\n    }\n  }, [widthIsExplicit, widthValue, activeTab]);\n  const shouldIgnoreColorPickerChange = inputValue => {\n    if (typeof inputValue !== 'string' || '' === inputValue.trim()) {\n      return true;\n    }\n    const normalizedInput = normalizeBorderCssColor(inputValue);\n    if (colorIsExplicit) {\n      return normalizedInput === normalizeBorderCssColor(colorValue);\n    }\n    return normalizedInput === normalizeBorderCssColor(colorDefaultValue);\n  };\n  const resetRadius = () => {\n    var _base$radius$sync;\n    const base = getSaveBase();\n    onChange({\n      ...base,\n      radius: {\n        ...DEFAULT_BORDER_RADIUS_CORNERS,\n        sync: (_base$radius$sync = base.radius?.sync) !== null && _base$radius$sync !== void 0 ? _base$radius$sync : 'off'\n      }\n    });\n  };\n  return /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"custom-border-group\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.FieldWrapper, border_group_extends({\n    label: \"Border Radius\",\n    description: \"Add rounded corners to your border.\",\n    enableReset: true,\n    onReset: resetRadius\n  }, borderResponsiveWrapperProps('dsm-popup-border-radius', responsiveBreakpoint, renderResponsiveFieldButtons)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.BorderRadiusContainer, {\n    name: \"border_radius\",\n    value: radiusValue,\n    defaultValue: radiusDefaultValue,\n    onChange: params => {\n      const input = params.inputValue;\n      const base = getSaveBase();\n      if (input.sync === 'on') {\n        onChange({\n          ...base,\n          radius: {\n            sync: input.sync,\n            topLeft: input.value,\n            topRight: input.value,\n            bottomRight: input.value,\n            bottomLeft: input.value\n          }\n        });\n      } else {\n        onChange({\n          ...base,\n          radius: {\n            ...(base.radius || {}),\n            sync: input.sync,\n            [input.side]: input.value\n          }\n        });\n      }\n    },\n    allowedUnits: ['px', 'em', 'rem', '%']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.FieldWrapper, border_group_extends({\n    label: \"Border Styles\",\n    description: \"You can add borders to any element, customize their appearance and assign unique styles to each edge.\"\n  }, borderResponsiveWrapperProps('dsm-popup-border-styles-tab', responsiveBreakpoint, renderResponsiveFieldButtons)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    name: \"border_style_side_tab\",\n    value: activeTab,\n    onChange: params => {\n      const value = params.event.target.dataset.name;\n      setActiveTab(value);\n    },\n    options: borderStyleSideOptions,\n    showLabel: false,\n    tabUi: true\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.FieldWrapper, border_group_extends({\n    label: `Border Width${activeTab !== 'all' ? ` (${activeTab})` : ''}`,\n    description: \"Set the width of the border.\",\n    enableReset: true,\n    onReset: () => resetStyleValue(activeTab, 'width')\n  }, borderResponsiveWrapperProps('dsm-popup-border-width', responsiveBreakpoint, renderResponsiveFieldButtons)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    name: `border_width_${activeTab}`,\n    value: widthValue,\n    defaultValue: \"\",\n    placeholder: widthValue ? '' : widthPlaceholder,\n    allowEmpty: true,\n    onChange: params => {\n      const inputValue = params.inputValue;\n      if (shouldIgnoreWidthRangeChange(activeTab, inputValue)) {\n        return;\n      }\n      persistStyleValue(activeTab, 'width', '' === inputValue ? '0px' : inputValue);\n    },\n    min: 0,\n    max: 50,\n    step: 1,\n    defaultUnit: \"px\",\n    allowedUnits: ['px', 'em', 'rem']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.FieldWrapper, border_group_extends({\n    label: `Border Color${activeTab !== 'all' ? ` (${activeTab})` : ''}`,\n    description: \"Set the color of the border.\",\n    enableReset: true,\n    onReset: () => resetStyleValue(activeTab, 'color')\n  }, borderResponsiveWrapperProps('dsm-popup-border-color', responsiveBreakpoint, renderResponsiveFieldButtons)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, {\n    name: `border_color_${activeTab}`,\n    value: colorValue,\n    defaultValue: colorIsExplicit ? undefined : colorDefaultValue,\n    showPlaceholderOnEmpty: true,\n    onChange: params => {\n      if (shouldIgnoreColorPickerChange(params.inputValue)) {\n        return;\n      }\n      persistStyleValue(activeTab, 'color', params.inputValue);\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.FieldWrapper, border_group_extends({\n    label: `Border Style${activeTab !== 'all' ? ` (${activeTab})` : ''}`,\n    description: \"Set the style of the border.\",\n    enableReset: true,\n    onReset: () => resetStyleValue(activeTab, 'style')\n  }, borderResponsiveWrapperProps('dsm-popup-border-style', responsiveBreakpoint, renderResponsiveFieldButtons)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    name: `border_style_${activeTab}`,\n    value: styleValue,\n    defaultValue: styleIsExplicit ? undefined : styleDefaultValue,\n    onChange: params => persistStyleValue(activeTab, 'style', params.inputValue),\n    options: borderStyleOptions\n  })));\n};\n/* harmony default export */ const border_group = (BorderGroup);\n;// ./packages/components/with-dynamic-values/index.js\nfunction with_dynamic_values_extends() {\n  return with_dynamic_values_extends = Object.assign ? Object.assign.bind() : function (n) {\n    for (var e = 1; e < arguments.length; e++) {\n      var t = arguments[e];\n      for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n    }\n    return n;\n  }, with_dynamic_values_extends.apply(null, arguments);\n}\n\n\n\n/**\n * Normalizes one dynamic prop definition into a common shape.\n *\n * Supported definition formats:\n * 1) \"title\" -> resolves `props.title`, injects back into `title`.\n * 2) { propName: 'title', sourceProp: 'headingText' }\n * 3) { propName: 'title', sourcePath: 'child.props.title' }\n * 4) { propName: 'title', getValue: ( props ) => props.child?.title }\n *\n * Optional:\n * - defaultValue: used when computed value is `undefined`.\n *\n * @param {string|Object} definition Dynamic prop definition.\n * @returns {Object} Normalized definition.\n */\nfunction getValueByPath(source, path) {\n  if ('string' !== typeof path || path.length === 0) {\n    return undefined;\n  }\n  return path.split('.').reduce((acc, key) => acc == null ? undefined : acc?.[key], source);\n}\nfunction normalizeDefinition(definition) {\n  if ('string' === typeof definition) {\n    return {\n      propName: definition,\n      getValue: props => props?.[definition],\n      defaultValue: undefined\n    };\n  }\n  const propName = definition?.propName;\n  let getter;\n  if ('function' === typeof definition?.getValue) {\n    getter = definition.getValue;\n  } else if ('string' === typeof definition?.sourcePath) {\n    getter = props => getValueByPath(props, definition.sourcePath);\n  } else {\n    var _definition$sourcePro;\n    const sourceProp = (_definition$sourcePro = definition?.sourceProp) !== null && _definition$sourcePro !== void 0 ? _definition$sourcePro : propName;\n    getter = props => props?.[sourceProp];\n  }\n  return {\n    propName,\n    getValue: getter,\n    defaultValue: definition?.defaultValue\n  };\n}\n\n/**\n * Single dynamic-value resolver layer.\n *\n * This isolates the hook call in one component so `WithDynamicValues` can\n * compose multiple resolvers without placing hooks inside loops.\n *\n * @param {Object} props Component props.\n * @param {*} props.value Source value to resolve.\n * @param {Function} props.children Render callback with resolution payload.\n * @returns {React.ReactNode} Rendered children.\n */\nfunction DynamicValueResolver({\n  value,\n  children\n}) {\n  const {\n    resolvedValue,\n    isDynamic,\n    isLoading\n  } = (0,external_divi_dynamicData_namespaceObject.useDynamicData)(value);\n  return children({\n    resolvedValue,\n    isDynamic,\n    isLoading\n  });\n}\n\n/**\n * Higher-order component that resolves selected props via Divi dynamic data.\n *\n * API:\n * `WithDynamicValues( Component, dynamicPropDefinitions )`\n *\n * @param {React.ComponentType} WrappedComponent Component to wrap.\n * @param {Array<string|Object>} dynamicPropDefinitions Props that should be resolved.\n * @returns {React.ComponentType} Wrapped component with resolved dynamic props.\n */\nfunction WithDynamicValues(WrappedComponent, dynamicPropDefinitions = []) {\n  const normalizedDefinitions = dynamicPropDefinitions.map(normalizeDefinition).filter(definition => 'string' === typeof definition?.propName && definition.propName.length > 0 && 'function' === typeof definition.getValue);\n  function WithDynamicValuesComponent(props) {\n    const renderNextResolver = (index, resolvedProps, dynamicValuesMeta) => {\n      if (index >= normalizedDefinitions.length) {\n        return /*#__PURE__*/external_vendor_React_default().createElement(WrappedComponent, with_dynamic_values_extends({}, props, resolvedProps, {\n          dynamicValuesMeta: dynamicValuesMeta\n        }));\n      }\n      const definition = normalizedDefinitions[index];\n      const sourceValue = definition.getValue(props);\n      const originalValue = undefined === sourceValue ? definition.defaultValue : sourceValue;\n      return /*#__PURE__*/external_vendor_React_default().createElement(DynamicValueResolver, {\n        value: originalValue\n      }, ({\n        resolvedValue,\n        isDynamic,\n        isLoading\n      }) => {\n        const finalValue = isDynamic ? resolvedValue : originalValue;\n        return renderNextResolver(index + 1, {\n          ...resolvedProps,\n          [definition.propName]: finalValue\n        }, {\n          ...dynamicValuesMeta,\n          [definition.propName]: {\n            originalValue,\n            resolvedValue,\n            isDynamic,\n            isLoading\n          }\n        });\n      });\n    };\n    return renderNextResolver(0, {}, {});\n  }\n  const wrappedName = WrappedComponent.displayName || WrappedComponent.name || 'Component';\n  WithDynamicValuesComponent.displayName = `WithDynamicValues(${wrappedName})`;\n  return WithDynamicValuesComponent;\n}\n/* harmony default export */ const with_dynamic_values = (WithDynamicValues);\n;// ./packages/components/index.js\n\n\n\n\n\n\n\n\n\n;// ./packages/module-library/content-toggle/settings-content.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\n\n\n/** D4 `DSM_Content_Toggle::get_fields` — `defaultAttr` for Visual Builder parity (omitted keys after save). */\nconst dsmCtHeadingOneInner = {\n  desktop: {\n    value: {\n      text: 'Heading One'\n    }\n  }\n};\nconst dsmCtContentTypeInner = {\n  desktop: {\n    value: 'content'\n  }\n};\nconst dsmCtHeadingTwoInner = {\n  desktop: {\n    value: {\n      text: 'Heading Two'\n    }\n  }\n};\nconst dsmCtActiveSwitcherInner = {\n  desktop: {\n    value: 'switcher_one'\n  }\n};\nfunction content_toggle_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  const contentTypeOne = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.content_type_one?.innerContent);\n  const contentTypeTwo = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.content_type_two?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"contentOne\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content One', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"heading_one.innerContent\",\n    subName: \"text\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Heading', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: dsmCtHeadingOneInner,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"content_type_one.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content Type', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: dsmCtContentTypeInner\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      content: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Custom Content', 'dsm-supreme-modules-pro-for-divi')\n      },\n      library: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Library', 'dsm-supreme-modules-pro-for-divi')\n      },\n      shortcode: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shortcode', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), contentTypeOne === 'library' && /*#__PURE__*/external_vendor_React_default().createElement(divi_layout_control, {\n    label: \"Library\",\n    attrName: \"library_id_one.innerContent\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"shortcode_content_one.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shortcode', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    },\n    visible: 'shortcode' === contentTypeOne\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"custom_content_one.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content entered here will appear inside the module.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    },\n    visible: 'content' === contentTypeOne\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RichTextContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"contentTwo\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content Two', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"heading_two.innerContent\",\n    subName: \"text\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Heading', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: dsmCtHeadingTwoInner,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"content_type_two.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content Type', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: dsmCtContentTypeInner\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      content: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Custom Content', 'dsm-supreme-modules-pro-for-divi')\n      },\n      library: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Library', 'dsm-supreme-modules-pro-for-divi')\n      },\n      shortcode: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shortcode', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), contentTypeTwo === 'library' && /*#__PURE__*/external_vendor_React_default().createElement(divi_layout_control, {\n    label: \"Library\",\n    attrName: \"library_id_two.innerContent\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"shortcode_content_two.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shortcode', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    },\n    visible: 'shortcode' === contentTypeTwo\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"custom_content_two.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content entered here will appear inside the module.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    },\n    visible: 'content' === contentTypeTwo\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RichTextContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"setting\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Settings', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"active_switcher.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Select Active Switcher', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: dsmCtActiveSwitcherInner\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      switcher_one: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Switcher One', 'dsm-supreme-modules-pro-for-divi')\n      },\n      switcher_two: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Switcher Two', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const content_toggle_settings_content = (content_toggle_settings_content_SettingsContent);\n;// ./packages/module-library/content-toggle/settings-design.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\n/** D4 `DSM_Content_Toggle` advanced field defaults — Visual Builder `defaultAttr`. */\nconst dsmCtSwitcherSizeInner = {\n  desktop: {\n    value: '15px'\n  }\n};\nconst dsmCtAlignmentInner = {\n  desktop: {\n    value: 'center'\n  }\n};\nconst dsmCtSwitcherBgPrimaryInner = {\n  desktop: {\n    value: '#d3d3d3'\n  }\n};\nconst dsmCtSwitcherBgSecondaryInner = {\n  desktop: {\n    value: '#2ecc71'\n  }\n};\nconst dsmCtSwitcherInnerBgInner = {\n  desktop: {\n    value: '#ffffff'\n  }\n};\nconst dsmCtContentBgInner = {\n  desktop: {\n    value: '#ffffff'\n  }\n};\nconst dsmCtContentSpacingTopInner = {\n  desktop: {\n    value: '25px'\n  }\n};\n\n/** D4 `default_on_front` for fullwidth toggles. */\nconst dsmCtContentFullwidthInner = {\n  desktop: {\n    value: 'off'\n  }\n};\n\n/** D4 `header_level` default `h5` for both headings. */\nconst dsmCtHeadingFontDefaultGroupAttr = {\n  font: {\n    font: {\n      desktop: {\n        value: {\n          headingLevel: 'h5'\n        }\n      }\n    }\n  }\n};\nfunction content_toggle_settings_design_SettingsDesign({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  const moduleDeco = defaultSettingsAttrs?.module?.decoration;\n  const decorationDefaults = moduleDeco && typeof moduleDeco.asMutable === 'function' ? moduleDeco.asMutable({\n    deep: true\n  }) : moduleDeco;\n  const contentTypeOne = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.content_type_one?.innerContent);\n  const contentTypeTwo = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.content_type_two?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"switcher\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Switcher', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"switcher_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Switcher Size', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: dsmCtSwitcherSizeInner\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 200,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"alignment.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: dsmCtAlignmentInner,\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"switcher_bg_primary.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Switcher Primary Background', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: dsmCtSwitcherBgPrimaryInner\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"switcher_bg_secondary.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Switcher Secondary Background', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: dsmCtSwitcherBgSecondaryInner\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"switcher_inner_bg.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Switcher Inner Background', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: dsmCtSwitcherInnerBgInner\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"headingOne\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Heading One', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"heading_one.decoration.font\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Heading', 'dsm-supreme-modules-pro-for-divi'),\n    defaultGroupAttr: dsmCtHeadingFontDefaultGroupAttr,\n    fields: {\n      headingLevel: {\n        render: true\n      },\n      textAlign: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"headingTwo\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Heading Two', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"heading_two.decoration.font\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Heading', 'dsm-supreme-modules-pro-for-divi'),\n    defaultGroupAttr: dsmCtHeadingFontDefaultGroupAttr,\n    fields: {\n      headingLevel: {\n        render: true\n      },\n      textAlign: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"contentOne\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content One', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"content_bg_one.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content Background', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: dsmCtContentBgInner\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"content_padding_one.decoration.spacing\",\n    grouped: false,\n    fieldLabel: \"Content\",\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"content_spacing_top_one.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content Spacing Top', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: dsmCtContentSpacingTopInner\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 200,\n    step: 1,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"content_fullwidth_one.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Make This Layout Fullwidth', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose whether or not your to row and section in the layout will be fullwidth.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'library' === contentTypeOne || 'shortcode' === contentTypeOne,\n    defaultAttr: dsmCtContentFullwidthInner\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"custom_content_one.decoration.font\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('content', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      },\n      textAlign: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"contentOneStyle.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"contentOneStyle.decoration.boxShadow\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"contentTwo\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content Two', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"content_bg_two.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content Background', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: dsmCtContentBgInner\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"content_padding_two.decoration.spacing\",\n    grouped: false,\n    fieldLabel: \"Content\",\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"content_spacing_top_two.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content Spacing Top', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: dsmCtContentSpacingTopInner\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 200,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"content_fullwidth_two.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Make This Layout Fullwidth', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose whether or not your to row and section in the layout will be fullwidth.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'library' === contentTypeTwo || 'shortcode' === contentTypeTwo,\n    defaultAttr: dsmCtContentFullwidthInner\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"custom_content_two.decoration.font\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('content', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      },\n      textAlign: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"contentTwoStyle.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"contentTwoStyle.decoration.boxShadow\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, {\n    defaultGroupAttr: decorationDefaults?.sizing\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    defaultGroupAttr: decorationDefaults?.spacing\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, {\n    defaultGroupAttr: decorationDefaults?.filters\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, {\n    defaultGroupAttr: decorationDefaults?.transform\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, {\n    defaultGroupAttr: decorationDefaults?.animation\n  }));\n}\n/* harmony default export */ const content_toggle_settings_design = (content_toggle_settings_design_SettingsDesign);\n;// ./packages/module-library/content-toggle/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction content_toggle_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_content_toggle\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const content_toggle_settings_advanced = (content_toggle_settings_advanced_SettingsAdvanced);\n;// ./node_modules/@wordpress/html-entities/build-module/index.js\n/** @type {HTMLTextAreaElement} */\nlet _decodeTextArea;\n\n/**\n * Decodes the HTML entities from a given string.\n *\n * @param {string} html String that contain HTML entities.\n *\n * @example\n * ```js\n * import { decodeEntities } from '@wordpress/html-entities';\n *\n * const result = decodeEntities( '&aacute;' );\n * console.log( result ); // result will be \"á\"\n * ```\n *\n * @return {string} The decoded string.\n */\nfunction decodeEntities(html) {\n  // Not a string, or no entities to decode.\n  if ('string' !== typeof html || -1 === html.indexOf('&')) {\n    return html;\n  }\n\n  // Create a textarea for decoding entities, that we can reuse.\n  if (undefined === _decodeTextArea) {\n    if (document.implementation && document.implementation.createHTMLDocument) {\n      _decodeTextArea = document.implementation.createHTMLDocument('').createElement('textarea');\n    } else {\n      _decodeTextArea = document.createElement('textarea');\n    }\n  }\n  _decodeTextArea.innerHTML = html;\n  const decoded = _decodeTextArea.textContent;\n  _decodeTextArea.innerHTML = '';\n\n  /**\n   * Cast to string, HTMLTextAreaElement should always have `string` textContent.\n   *\n   * > The `textContent` property of the `Node` interface represents the text content of the\n   * > node and its descendants.\n   * >\n   * > Value: A string or `null`\n   * >\n   * > * If the node is a `document` or a Doctype, `textContent` returns `null`.\n   * > * If the node is a CDATA section, comment, processing instruction, or text node,\n   * >   textContent returns the text inside the node, i.e., the `Node.nodeValue`.\n   * > * For other node types, `textContent returns the concatenation of the textContent of\n   * >   every child node, excluding comments and processing instructions. (This is an empty\n   * >   string if the node has no children.)\n   *\n   * @see https://developer.mozilla.org/en-US/docs/Web/API/Node/textContent\n   */\n  return /** @type {string} */decoded;\n}\n//# sourceMappingURL=index.js.map\n;// external \"wp.dom\"\nconst external_wp_dom_namespaceObject = wp.dom;\n;// ./packages/module-library/content-toggle/module-styles.js\n\n\n\nconst switcherAlignmentCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'justify-content': true\n    }\n  });\n  if ('left' === attrValue) {\n    declarations.add('justify-content', 'flex-start');\n  }\n  if ('center' === attrValue) {\n    declarations.add('justify-content', 'center');\n  }\n  if ('right' === attrValue) {\n    declarations.add('justify-content', 'flex-end');\n  }\n  return declarations.value;\n};\n\n/**\n * React function component for rendering module style.\n */\nconst content_toggle_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), elements.style({\n    attrName: 'heading_one'\n  }), elements.style({\n    attrName: 'heading_two'\n  }), elements.style({\n    attrName: 'custom_content_one'\n  }), elements.style({\n    attrName: 'custom_content_two'\n  }), elements.style({\n    attrName: 'content_padding_one'\n  }), elements.style({\n    attrName: 'content_padding_two'\n  }), elements.style({\n    attrName: 'contentOneStyle'\n  }), elements.style({\n    attrName: 'contentTwoStyle'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-toggle`,\n    attr: attrs?.alignment?.innerContent,\n    declarationFunction: switcherAlignmentCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-switch-inner`,\n    attr: attrs?.switcher_bg_primary?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-toggle-switch:checked+.dsm-switch-inner`,\n    attr: attrs?.switcher_bg_secondary?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-toggle-btn`,\n    attr: attrs?.switcher_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-switch-inner::before`,\n    attr: attrs?.switcher_inner_bg?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-content-toggle-front`,\n    attr: attrs?.content_bg_one?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-content-toggle-back`,\n    attr: attrs?.content_bg_two?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-content-toggle-front`,\n    attr: attrs?.content_spacing_top_one?.innerContent,\n    property: \"margin-top\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-content-toggle-back`,\n    attr: attrs?.content_spacing_top_two?.innerContent,\n    property: \"margin-top\"\n  }));\n};\n;// ./packages/module-library/content-toggle/edit.js\n\n\n\n\n\n\n// Divi package dependencies.\n\n\n\n// Custom dependencies.\n\n\n\n/**\n * Divi Supreme Dependencies.\n */\n\n\n/**\n * React function component for registering module script data.\n */\n\nconst content_toggle_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction content_toggle_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  var _attrs$custom_content, _attrs$custom_content2;\n  const [isChecked, setChecked] = (0,external_vendor_React_.useState)(false);\n  const activeSwitcher = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.active_switcher?.innerContent);\n  const headingOne = attrs?.heading_one?.innerContent?.desktop?.value?.text;\n  const HeadingOneLevel = attrs?.heading_one?.decoration?.font?.font?.desktop?.value?.headingLevel;\n  const headingTwo = attrs?.heading_two?.innerContent?.desktop?.value?.text;\n  const HeadingTwoLevel = attrs?.heading_two?.decoration?.font?.font?.desktop?.value?.headingLevel;\n  const contentOne = (_attrs$custom_content = attrs?.custom_content_one?.innerContent?.desktop?.value) !== null && _attrs$custom_content !== void 0 ? _attrs$custom_content : '';\n  const contentTwo = (_attrs$custom_content2 = attrs?.custom_content_two?.innerContent?.desktop?.value) !== null && _attrs$custom_content2 !== void 0 ? _attrs$custom_content2 : '';\n  const active_switcher = activeSwitcher === 'switcher_two' ? true : isChecked;\n  const headingOneMarkup = /*#__PURE__*/external_vendor_React_default().createElement(HeadingOneLevel, {\n    className: \"dsm-toggle-head-one\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"label\", {\n    for: \"dsm-input\"\n  }, elements.render({\n    attrName: 'heading_one'\n  })));\n  const headingTwoMarkup = /*#__PURE__*/external_vendor_React_default().createElement(HeadingTwoLevel, {\n    className: \"dsm-toggle-head-two\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"label\", {\n    for: \"dsm-input\"\n  }, elements.render({\n    attrName: 'heading_two'\n  })));\n  const contentTypeOne = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.content_type_one?.innerContent);\n  const contentTypeTwo = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.content_type_two?.innerContent);\n  const libraryIDContentOne = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.library_id_one?.innerContent);\n  const libraryIDContentTwo = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.library_id_two?.innerContent);\n  const shortcodeContentOne = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.shortcode_content_one?.innerContent);\n  const shortcodeContentTwo = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.shortcode_content_two?.innerContent);\n  function ContentOne() {\n    switch (contentTypeOne) {\n      case 'content':\n        {\n          return /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n            value: contentOne\n          }, resolvedContent => /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n            dangerouslySetInnerHTML: {\n              __html: resolvedContent\n            }\n          }));\n        }\n      case 'library':\n        {\n          return /*#__PURE__*/external_vendor_React_default().createElement(library_layout_renderer, {\n            key: `dsm-content-toggle-lib-one-${libraryIDContentOne}`,\n            id: libraryIDContentOne\n          });\n        }\n      case 'shortcode':\n        {\n          return /*#__PURE__*/external_vendor_React_default().createElement(divi_shortcode_content_renderer, {\n            shortcode: shortcodeContentOne,\n            previewKey: \"dsm-content-toggle-shortcode-one\"\n          });\n        }\n    }\n  }\n  function ContentTwo() {\n    switch (contentTypeTwo) {\n      case 'content':\n        {\n          return /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n            value: contentTwo\n          }, resolvedContent => /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n            dangerouslySetInnerHTML: {\n              __html: resolvedContent\n            }\n          }));\n        }\n      case 'library':\n        {\n          return /*#__PURE__*/external_vendor_React_default().createElement(library_layout_renderer, {\n            key: `dsm-content-toggle-lib-two-${libraryIDContentTwo}`,\n            id: libraryIDContentTwo\n          });\n        }\n      case 'shortcode':\n        {\n          return /*#__PURE__*/external_vendor_React_default().createElement(divi_shortcode_content_renderer, {\n            shortcode: shortcodeContentTwo,\n            previewKey: \"dsm-content-toggle-shortcode-two\"\n          });\n        }\n    }\n  }\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: content_toggle_edit_ModuleScriptData,\n    stylesComponent: content_toggle_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-content-toggle\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-content-toggle-header\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-toggle\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-toggle-left\"\n  }, headingOneMarkup), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-toggle-btn\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"label\", {\n    className: \"dsm-switch-label\",\n    htmlFor: `dsm-input-`\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"input\", {\n    id: `dsm-input-`,\n    className: \"dsm-toggle-switch\",\n    checked: activeSwitcher === 'switcher_two' ? true : isChecked,\n    onChange: () => setChecked(!isChecked),\n    type: \"checkbox\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm-switch-inner\"\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-toggle-right\"\n  }, headingTwoMarkup))), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-content-toggle-body\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-content-toggle-front\",\n    style: {\n      display: active_switcher ? 'none' : 'block'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(ContentOne, null)), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-content-toggle-back\",\n    style: {\n      display: active_switcher ? 'block' : 'none'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(ContentTwo, null)))));\n}\n/* harmony default export */ const content_toggle_edit = (content_toggle_edit_Edit);\n;// ./packages/module-library/content-toggle/conversion-outline.js\nconst content_toggle_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border',\n      content_one: 'contentOneStyle.decoration.border',\n      content_two: 'contentTwoStyle.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow',\n      content_one: 'contentOneStyle.decoration.boxShadow',\n      content_two: 'contentTwoStyle.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    display_conditions: 'module.decoration.conditions',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    margin_padding: 'module.decoration.spacing',\n    max_width: 'module.decoration.sizing',\n    height: 'module.decoration.sizing',\n    link_options: 'module.advanced.link',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    fonts: {\n      heading_one: 'heading_one.decoration.font',\n      heading_two: 'heading_two.decoration.font',\n      content_one: 'custom_content_one.decoration.font',\n      content_two: 'custom_content_two.decoration.font'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    heading_one: 'heading_one.innerContent.*.text',\n    heading_one_level: 'heading_one.decoration.font.font.*.headingLevel',\n    heading_two: 'heading_two.innerContent.*.text',\n    heading_two_level: 'heading_two.decoration.font.font.*.headingLevel',\n    content_type_one: 'content_type_one.innerContent.*',\n    library_id_one: 'library_id_one.innerContent.*',\n    custom_content_one: 'custom_content_one.innerContent.*',\n    shortcode_content_one: 'shortcode_content_one.innerContent.*',\n    content_type_two: 'content_type_two.innerContent.*',\n    library_id_two: 'library_id_two.innerContent.*',\n    custom_content_two: 'custom_content_two.innerContent.*',\n    shortcode_content_two: 'shortcode_content_two.innerContent.*',\n    active_switcher: 'active_switcher.innerContent.*',\n    switcher_size: 'switcher_size.innerContent.*',\n    alignment: 'alignment.innerContent.*',\n    switcher_bg_primary: 'switcher_bg_primary.innerContent.*',\n    switcher_bg_secondary: 'switcher_bg_secondary.innerContent.*',\n    switcher_inner_bg: 'switcher_inner_bg.innerContent.*',\n    content_bg_one: 'content_bg_one.innerContent.*',\n    content_bg_two: 'content_bg_two.innerContent.*',\n    content_padding_one: 'content_padding_one.decoration.spacing.*.padding',\n    content_spacing_top_one: 'content_spacing_top_one.innerContent.*',\n    content_fullwidth_one: 'content_fullwidth_one.innerContent.*',\n    content_padding_two: 'content_padding_two.decoration.spacing.*.padding',\n    content_spacing_top_two: 'content_spacing_top_two.innerContent.*',\n    content_fullwidth_two: 'content_fullwidth_two.innerContent.*',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    content_padding_one: 'convertSpacing',\n    content_padding_two: 'convertSpacing',\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/content-toggle/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmContentToggle', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/content-toggle': {\n      name: 'divi-supreme/content-toggle',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.171875 6.265625 L 5.238281 6.265625 C 4.554688 6.265625 3.902344 6.535156 3.417969 7.015625 C 2.9375 7.5 2.667969 8.152344 2.667969 8.835938 C 2.667969 9.515625 2.9375 10.167969 3.417969 10.652344 C 3.902344 11.132812 4.554688 11.402344 5.238281 11.402344 L 11.171875 11.402344 C 11.855469 11.402344 12.507812 11.132812 12.988281 10.652344 C 13.472656 10.167969 13.742188 9.515625 13.742188 8.835938 C 13.742188 8.152344 13.472656 7.5 12.988281 7.015625 C 12.507812 6.535156 11.855469 6.265625 11.171875 6.265625 Z M 5.238281 10.671875 C 4.871094 10.671875 4.515625 10.566406 4.214844 10.363281 C 3.914062 10.160156 3.675781 9.875 3.539062 9.539062 C 3.398438 9.203125 3.363281 8.832031 3.433594 8.476562 C 3.503906 8.117188 3.679688 7.792969 3.9375 7.535156 C 4.191406 7.277344 4.519531 7.101562 4.878906 7.03125 C 5.234375 6.960938 5.605469 6.996094 5.941406 7.136719 C 6.277344 7.273438 6.5625 7.511719 6.765625 7.8125 C 6.96875 8.113281 7.074219 8.46875 7.074219 8.835938 C 7.074219 9.320312 6.882812 9.789062 6.535156 10.132812 C 6.191406 10.480469 5.722656 10.671875 5.238281 10.671875 Z M 5.238281 10.671875 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.285156 8.738281 L 10.027344 7.480469 C 10.015625 7.46875 10 7.457031 9.984375 7.449219 C 9.96875 7.445312 9.949219 7.441406 9.933594 7.441406 C 9.914062 7.441406 9.898438 7.445312 9.882812 7.453125 C 9.863281 7.460938 9.851562 7.46875 9.835938 7.480469 C 9.8125 7.507812 9.800781 7.542969 9.800781 7.578125 C 9.800781 7.613281 9.8125 7.648438 9.835938 7.675781 L 10.996094 8.835938 L 9.835938 10.011719 C 9.824219 10.023438 9.816406 10.039062 9.808594 10.054688 C 9.800781 10.074219 9.796875 10.089844 9.796875 10.105469 C 9.796875 10.125 9.800781 10.140625 9.808594 10.160156 C 9.816406 10.175781 9.824219 10.1875 9.835938 10.203125 C 9.847656 10.214844 9.863281 10.226562 9.878906 10.234375 C 9.894531 10.238281 9.914062 10.242188 9.933594 10.242188 C 9.96875 10.242188 10.003906 10.230469 10.03125 10.207031 L 11.285156 8.949219 C 11.300781 8.9375 11.308594 8.921875 11.316406 8.90625 C 11.324219 8.890625 11.328125 8.871094 11.328125 8.851562 C 11.332031 8.832031 11.328125 8.808594 11.320312 8.789062 C 11.316406 8.769531 11.300781 8.753906 11.285156 8.738281 Z M 11.285156 8.738281 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 7.796875 4.554688 C 7.609375 4.554688 7.425781 4.496094 7.269531 4.394531 C 7.117188 4.289062 6.996094 4.144531 6.925781 3.96875 C 6.851562 3.796875 6.832031 3.609375 6.871094 3.425781 C 6.90625 3.242188 6.996094 3.074219 7.128906 2.941406 C 7.261719 2.8125 7.429688 2.722656 7.609375 2.683594 C 7.792969 2.648438 7.984375 2.667969 8.15625 2.738281 C 8.328125 2.808594 8.476562 2.929688 8.578125 3.085938 C 8.683594 3.242188 8.738281 3.421875 8.738281 3.609375 C 8.738281 3.859375 8.640625 4.101562 8.460938 4.277344 C 8.285156 4.453125 8.046875 4.554688 7.796875 4.554688 Z M 7.796875 3.203125 C 7.710938 3.203125 7.628906 3.226562 7.558594 3.273438 C 7.492188 3.320312 7.4375 3.382812 7.402344 3.460938 C 7.371094 3.539062 7.363281 3.621094 7.378906 3.703125 C 7.394531 3.785156 7.433594 3.863281 7.492188 3.921875 C 7.550781 3.980469 7.628906 4.019531 7.710938 4.035156 C 7.792969 4.050781 7.875 4.042969 7.953125 4.011719 C 8.03125 3.976562 8.09375 3.921875 8.140625 3.855469 C 8.1875 3.785156 8.210938 3.703125 8.210938 3.617188 C 8.207031 3.507812 8.164062 3.40625 8.085938 3.328125 C 8.007812 3.25 7.90625 3.207031 7.796875 3.203125 Z M 7.796875 3.203125 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.261719 13.785156 C 12.074219 13.785156 11.894531 13.730469 11.738281 13.625 C 11.582031 13.523438 11.460938 13.375 11.390625 13.203125 C 11.320312 13.03125 11.300781 12.839844 11.335938 12.65625 C 11.375 12.476562 11.464844 12.308594 11.59375 12.175781 C 11.726562 12.042969 11.894531 11.953125 12.078125 11.917969 C 12.261719 11.878906 12.449219 11.898438 12.621094 11.972656 C 12.796875 12.042969 12.941406 12.164062 13.046875 12.316406 C 13.148438 12.472656 13.203125 12.65625 13.203125 12.84375 C 13.203125 13.09375 13.105469 13.332031 12.929688 13.507812 C 12.75 13.6875 12.511719 13.785156 12.261719 13.785156 Z M 12.261719 12.4375 C 12.179688 12.4375 12.097656 12.460938 12.027344 12.503906 C 11.957031 12.550781 11.902344 12.617188 11.871094 12.695312 C 11.839844 12.769531 11.828125 12.855469 11.84375 12.9375 C 11.863281 13.019531 11.902344 13.09375 11.960938 13.152344 C 12.019531 13.210938 12.09375 13.253906 12.175781 13.269531 C 12.257812 13.285156 12.34375 13.273438 12.417969 13.242188 C 12.496094 13.210938 12.5625 13.15625 12.609375 13.085938 C 12.652344 13.015625 12.675781 12.933594 12.675781 12.851562 C 12.679688 12.796875 12.667969 12.742188 12.648438 12.691406 C 12.628906 12.636719 12.597656 12.589844 12.558594 12.550781 C 12.519531 12.511719 12.472656 12.480469 12.421875 12.460938 C 12.371094 12.4375 12.316406 12.425781 12.261719 12.425781 Z M 12.261719 12.4375 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/content-toggle/index.js\n// External library dependencies.\n\n// Wordpress dependencies.\n\n\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\nconst contentToggleModule = {\n  metadata: content_toggle_module_namespaceObject,\n  settings: {\n    content: content_toggle_settings_content,\n    design: content_toggle_settings_design,\n    advanced: content_toggle_settings_advanced\n  },\n  conversionOutline: content_toggle_conversion_outline_conversionOutline,\n  renderers: {\n    edit: content_toggle_edit,\n    styles: content_toggle_module_styles_ModuleStyles\n  },\n  placeholderContent: {\n    module: {},\n    heading_one: {\n      decoration: {\n        font: {\n          font: {\n            desktop: {\n              value: {\n                headingLevel: 'h5'\n              }\n            }\n          }\n        }\n      },\n      innerContent: {\n        desktop: {\n          value: {\n            text: 'Heading One'\n          }\n        }\n      }\n    },\n    content_type_one: {\n      innerContent: {\n        desktop: {\n          value: 'content'\n        }\n      }\n    },\n    heading_two: {\n      decoration: {\n        font: {\n          font: {\n            desktop: {\n              value: {\n                headingLevel: 'h5'\n              }\n            }\n          }\n        }\n      },\n      innerContent: {\n        desktop: {\n          value: {\n            text: 'Heading Two'\n          }\n        }\n      }\n    },\n    content_type_two: {\n      innerContent: {\n        desktop: {\n          value: 'content'\n        }\n      }\n    },\n    active_switcher: {\n      innerContent: {\n        desktop: {\n          value: 'switcher_one'\n        }\n      }\n    }\n  }\n};\n/* harmony default export */ const content_toggle = (contentToggleModule);\n;// ./packages/module-library/content-timeline/module.json\nconst content_timeline_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/content-timeline\",\"d4Shortcode\":\"dsm_content_timeline\",\"title\":\"Supreme Content Timeline\",\"titles\":\"Supreme Content Timelines\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/content-timeline\",\"childrenName\":[\"dsm/content-timeline-child\"],\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{}},\"advanced\":{\"link\":{}}}},\"header\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-content-timeline-content-wrapper .dsm-title\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"content\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-description\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"opposite_text\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-content-timeline-date .date\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_timeline_style\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"responsive\":false,\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_responsive_style\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"responsive\":false,\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_card_arrow\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tree_animation\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_fill_animation_speed\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_item_scroll_animation\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_item_scroll_style\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_item_scroll_duration\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_image_lightbox\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_pointer_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_pointer_active_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_pointer_icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_pointer_active_icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_pointer_icon_font_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tree_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tree_active_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tree_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_horizontal_alignment\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_icon_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_icon_font_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_image_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_icon_image_align\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_opposite_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_opposite_content_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_opposite_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-content-timeline-date .date\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_card_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-content-timeline-content-wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_card_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-content-timeline-content-wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_icon_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-image-wrapper .dsm-image, {{selector}} .dsm-icon-wrapper .dsm-icon\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_alignment\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_icon_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-image-wrapper .dsm-image, {{selector}} .dsm-icon-wrapper .dsm-icon\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"opposite_text_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-content-timeline-date .date\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-content-timeline-date .date\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-content-timeline-date .date\",\"useOverlay\":true}}},\"button\":{\"type\":\"object\",\"selector\":\"{{selector}}.et_pb_module .et_pb_button_module_wrapper .et_pb_button\",\"default\":{\"decoration\":{\"button\":{\"desktop\":{\"value\":{\"enable\":\"off\",\"icon\":{\"enable\":\"on\",\"onHover\":\"on\"}}}},\"border\":{\"desktop\":{\"value\":{\"styles\":{\"all\":{\"color\":\"\"}}}}},\"font\":{\"font\":{\"desktop\":{\"value\":{\"color\":\"\"}}}}}},\"elementType\":\"button\",\"styleProps\":{\"font\":{\"important\":{\"font\":{\"desktop\":{\"value\":{\"color\":true,\"font-size\":true,\"letter-spacing\":true}}}}},\"button\":{\"propertySelectors\":{\"desktop\":{\"value\":{\"text-align\":\"{{selector}} .et_pb_button_wrapper\"}}}},\"spacing\":{\"important\":true}}},\"card_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-content-timeline-content-wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-content-timeline-content-wrapper\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-content-timeline-content-wrapper\",\"useOverlay\":true}}},\"pointer_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-content-timeline-middle-circle\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-content-timeline-middle-circle\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-content-timeline-middle-circle\",\"useOverlay\":true}}},\"image_icon_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-image, {{selector}} .dsm-icon\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-image, {{selector}} .dsm-icon\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-image, {{selector}} .dsm-icon\",\"useOverlay\":true}}}}}');\n;// ./packages/module-library/content-timeline/module-default-render-attributes.json\nconst content_timeline_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"module\":{\"decoration\":{}},\"header\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"headingLevel\":\"h4\"}}}}}},\"dsm_timeline_style\":{\"innerContent\":{\"desktop\":{\"value\":\"center\"}}},\"dsm_responsive_style\":{\"innerContent\":{\"desktop\":{\"value\":\"select\"}}},\"dsm_card_arrow\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"dsm_tree_animation\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"dsm_fill_animation_speed\":{\"innerContent\":{\"desktop\":{\"value\":\"100\"}}},\"dsm_item_scroll_animation\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"dsm_item_scroll_style\":{\"innerContent\":{\"desktop\":{\"value\":\"alternate\"}}},\"dsm_item_scroll_duration\":{\"innerContent\":{\"desktop\":{\"value\":\"600\"}}},\"dsm_image_lightbox\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"dsm_bg_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#f6f6f6\"}}},\"dsm_pointer_bg_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#4161D4\"}}},\"dsm_pointer_active_bg_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#7cda24\"}}},\"dsm_pointer_icon_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#ffffff\"}}},\"dsm_pointer_active_icon_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#000000\"}}},\"dsm_pointer_icon_font_size\":{\"innerContent\":{\"desktop\":{\"value\":\"20px\"}}},\"dsm_tree_bg_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#4161D4\"}}},\"dsm_tree_active_bg_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#E09900\"}}},\"dsm_tree_width\":{\"innerContent\":{\"desktop\":{\"value\":\"3px\"}}},\"dsm_horizontal_alignment\":{\"innerContent\":{\"desktop\":{\"value\":\"left\"}}},\"dsm_icon_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#000000\"}}},\"dsm_icon_font_size\":{\"innerContent\":{\"desktop\":{\"value\":\"32px\"}}},\"dsm_image_width\":{\"innerContent\":{\"desktop\":{\"value\":\"100%\"}}},\"dsm_opposite_bg_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"dsm_opposite_content_width\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"button\":{\"decoration\":{\"button\":{\"desktop\":{\"value\":{\"enable\":\"off\",\"icon\":{\"enable\":\"on\",\"onHover\":\"on\"}}}},\"border\":{\"desktop\":{\"value\":{\"styles\":{\"all\":{\"color\":\"\"}}}}},\"font\":{\"font\":{\"desktop\":{\"value\":{\"color\":\"\"}}}}}}}');\n;// ./packages/module-library/content-timeline/conversion-outline.js\n\nconst content_timeline_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    module: 'module.advanced.htmlAttributes',\n    margin_padding: 'module.decoration.spacing',\n    borders: {\n      default: 'module.decoration.border',\n      opposite_border: 'opposite_text_style.decoration.border',\n      card_border: 'card_style.decoration.border',\n      pointer_border: 'pointer_style.decoration.border',\n      'image-icon': 'image_icon_style.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow',\n      opposite_shadow: 'opposite_text_style.decoration.boxShadow',\n      card_shadow: 'card_style.decoration.boxShadow',\n      pointer_shadow: 'pointer_style.decoration.boxShadow',\n      'image-icon': 'image_icon_style.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    fonts: {\n      header: 'header.decoration.font',\n      content: 'content.decoration.font',\n      opposite_text: 'opposite_text.decoration.font'\n    },\n    button: {\n      button: 'button'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    dsm_timeline_style: 'dsm_timeline_style.innerContent.*',\n    dsm_responsive_style: 'dsm_responsive_style.innerContent.*',\n    dsm_card_arrow: 'dsm_card_arrow.innerContent.*',\n    dsm_tree_animation: 'dsm_tree_animation.innerContent.*',\n    dsm_fill_animation_speed: 'dsm_fill_animation_speed.innerContent.*',\n    dsm_item_scroll_animation: 'dsm_item_scroll_animation.innerContent.*',\n    dsm_item_scroll_style: 'dsm_item_scroll_style.innerContent.*',\n    dsm_item_scroll_duration: 'dsm_item_scroll_duration.innerContent.*',\n    dsm_image_lightbox: 'dsm_image_lightbox.innerContent.*',\n    dsm_bg_color: 'dsm_bg_color.innerContent.*',\n    dsm_pointer_bg_color: 'dsm_pointer_bg_color.innerContent.*',\n    dsm_pointer_active_bg_color: 'dsm_pointer_active_bg_color.innerContent.*',\n    dsm_pointer_icon_color: 'dsm_pointer_icon_color.innerContent.*',\n    dsm_pointer_active_icon_color: 'dsm_pointer_active_icon_color.innerContent.*',\n    dsm_pointer_icon_font_size: 'dsm_pointer_icon_font_size.innerContent.*',\n    dsm_tree_bg_color: 'dsm_tree_bg_color.innerContent.*',\n    dsm_tree_active_bg_color: 'dsm_tree_active_bg_color.innerContent.*',\n    dsm_tree_width: 'dsm_tree_width.innerContent.*',\n    dsm_horizontal_alignment: 'dsm_horizontal_alignment.innerContent.*',\n    dsm_icon_color: 'dsm_icon_color.innerContent.*',\n    dsm_icon_bg_color: 'dsm_icon_bg_color.innerContent.*',\n    dsm_icon_font_size: 'dsm_icon_font_size.innerContent.*',\n    dsm_image_width: 'dsm_image_width.innerContent.*',\n    dsm_icon_image_align: 'dsm_icon_image_align.innerContent.*',\n    dsm_opposite_bg_color: 'dsm_opposite_bg_color.innerContent.*',\n    dsm_opposite_content_width: 'dsm_opposite_content_width.innerContent.*',\n    dsm_opposite_padding: 'dsm_opposite_padding.decoration.spacing.*.padding',\n    dsm_card_margin: 'dsm_card_margin.decoration.spacing.*.margin',\n    dsm_card_padding: 'dsm_card_padding.decoration.spacing.*.padding',\n    image_icon_padding: 'image_icon_padding.decoration.spacing.*.padding',\n    image_icon_margin: 'image_icon_margin.decoration.spacing.*.margin',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    dsm_opposite_padding: 'convertSpacing',\n    dsm_card_margin: 'convertSpacing',\n    dsm_card_padding: 'convertSpacing',\n    image_icon_padding: 'convertSpacing',\n    image_icon_margin: 'convertSpacing',\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/content-timeline/settings-content.js\n\n// Wordpress dependencies.\n\n// Divi package dependencies.\n\n\n\n\n\n\n\nfunction content_timeline_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  var _getAttrByMode, _getAttrByMode2;\n  const dsmTreeAnimation = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_tree_animation?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'off';\n  const dsmItemScrollAnimation = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_item_scroll_animation?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'off';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"timeline_items\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Timeline items', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(ChildDraggableModuleList, {\n    childModuleName: \"dsm/content-timeline-child\",\n    addTitle: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Add timeline item', 'dsm-supreme-modules-pro-for-divi')\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"timeline_layout\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Layout', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_timeline_style.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Desktop layout', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('How timeline cards align relative to the center line on desktop.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      responsive: false,\n      preset: 'content'\n    },\n    defaultAttr: content_timeline_module_default_render_attributes_namespaceObject.dsm_timeline_style.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_responsive_style.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tablet & mobile layout', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overrides desktop layout on tablet and phone. Choose “Same as desktop” to follow the setting above.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      responsive: false,\n      preset: 'content'\n    },\n    defaultAttr: content_timeline_module_default_render_attributes_namespaceObject.dsm_responsive_style.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      select: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Same as desktop', 'dsm-supreme-modules-pro-for-divi')\n      },\n      left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_card_arrow.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show card arrow', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Small arrow pointing from each card toward the timeline.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    defaultAttr: content_timeline_module_default_render_attributes_namespaceObject.dsm_card_arrow.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"timeline_animation\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animation', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tree_animation.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tree line animation', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animates the vertical line and step pointers as the user scrolls.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    defaultAttr: content_timeline_module_default_render_attributes_namespaceObject.dsm_tree_animation.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_fill_animation_speed.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animation duration', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('How long each segment of the line animation takes (milliseconds).', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmTreeAnimation,\n    features: {\n      preset: 'content'\n    },\n    defaultAttr: content_timeline_module_default_render_attributes_namespaceObject.dsm_fill_animation_speed.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 100,\n    max: 5000,\n    step: 100,\n    defaultUnit: ''\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_item_scroll_animation.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animate items on scroll', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Reveal each timeline row (card, line, opposite text) as it enters the viewport.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    defaultAttr: content_timeline_module_default_render_attributes_namespaceObject.dsm_item_scroll_animation.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_item_scroll_style.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Item animation style', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Alternate follows desktop layout (e.g. left/right in center mode). Fade only moves opacity.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmItemScrollAnimation,\n    features: {\n      preset: 'content'\n    },\n    defaultAttr: content_timeline_module_default_render_attributes_namespaceObject.dsm_item_scroll_style.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      alternate: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Alternate (layout-based)', 'dsm-supreme-modules-pro-for-divi')\n      },\n      from_left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('From left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      from_right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('From right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fade: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_item_scroll_duration.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Item animation duration', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('How long each item reveal takes (milliseconds).', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmItemScrollAnimation,\n    features: {\n      preset: 'content'\n    },\n    defaultAttr: content_timeline_module_default_render_attributes_namespaceObject.dsm_item_scroll_duration.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 100,\n    max: 2000,\n    step: 50,\n    defaultUnit: ''\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"timeline_lightbox\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Lightbox', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_image_lightbox.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image lightbox', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Open item images in a lightbox when clicked.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    defaultAttr: content_timeline_module_default_render_attributes_namespaceObject.dsm_image_lightbox.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const content_timeline_settings_content = (content_timeline_settings_content_SettingsContent);\n;// ./packages/module-library/content-timeline/settings-design.js\n\n// Wordpress dependencies.\n\n// Divi package dependencies.\n\n\n\n\n\nfunction content_timeline_settings_design_SettingsDesign({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  var _getAttrByMode, _defaultSettingsAttrs;\n  const dsmTreeAnimation = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_tree_animation?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'off';\n  const button = attrs?.button?.decoration?.button?.desktop?.value?.enable;\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"ct_typography\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Typography', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"ct_typography_alignment\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Card text alignment', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_horizontal_alignment.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Horizontal alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Default alignment for title and body inside each timeline card.', 'dsm-supreme-modules-pro-for-divi'),\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    },\n    defaultAttr: content_timeline_module_default_render_attributes_namespaceObject.dsm_horizontal_alignment.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"header.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: true\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"content.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Body text', 'dsm-supreme-modules-pro-for-divi'),\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Body', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      },\n      textAlign: {\n        render: true\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"ct_card\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Cards', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"ct_card_appearance\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Appearance', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_bg_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: content_timeline_module_default_render_attributes_namespaceObject.dsm_bg_color.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"card_style.decoration.border\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Card', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"card_style.decoration.boxShadow\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Card', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"ct_card_spacing\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Spacing', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_card_margin.decoration.spacing\",\n    grouped: false,\n    fields: {\n      padding: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_card_padding.decoration.spacing\",\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"ct_opposite_labels\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Opposite labels', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_opposite_bg_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Style the small label on the opposite side of the card.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_opposite_content_width.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Width', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    step: 1,\n    defaultUnit: '%'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_opposite_padding.decoration.spacing\",\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"opposite_text.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Label text', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      },\n      textAlign: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"opposite_text_style.decoration.border\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Label', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"opposite_text_style.decoration.boxShadow\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Label', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"ct_timeline_line\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Timeline line & pointers', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"ct_step_pointers\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Step pointers', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_pointer_bg_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pointer background', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: content_timeline_module_default_render_attributes_namespaceObject.dsm_pointer_bg_color.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_pointer_active_bg_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Active pointer background', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('When tree animation is on.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmTreeAnimation,\n    defaultAttr: content_timeline_module_default_render_attributes_namespaceObject.dsm_pointer_active_bg_color.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_pointer_icon_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon color', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: content_timeline_module_default_render_attributes_namespaceObject.dsm_pointer_icon_color.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_pointer_active_icon_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Active icon color', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmTreeAnimation,\n    defaultAttr: content_timeline_module_default_render_attributes_namespaceObject.dsm_pointer_active_icon_color.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_pointer_icon_font_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon size', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: content_timeline_module_default_render_attributes_namespaceObject.dsm_pointer_icon_font_size.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 120,\n    step: 1,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"pointer_style.decoration.border\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pointer', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"pointer_style.decoration.boxShadow\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pointer', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"ct_connector_line\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Connector line', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tree_bg_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Line color', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: content_timeline_module_default_render_attributes_namespaceObject.dsm_tree_bg_color.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tree_active_bg_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Active line color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('When tree animation is on.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmTreeAnimation,\n    defaultAttr: content_timeline_module_default_render_attributes_namespaceObject.dsm_tree_active_bg_color.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tree_width.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Line thickness', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: content_timeline_module_default_render_attributes_namespaceObject.dsm_tree_width.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 10,\n    step: 1,\n    defaultUnit: 'px'\n  })))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"ct_item_media\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Item image & icon', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_icon_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon color', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: content_timeline_module_default_render_attributes_namespaceObject.dsm_icon_color.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_icon_bg_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon background', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_icon_font_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon size', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: content_timeline_module_default_render_attributes_namespaceObject.dsm_icon_font_size.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 120,\n    step: 1,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_image_width.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image width', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: content_timeline_module_default_render_attributes_namespaceObject.dsm_image_width.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    step: 1,\n    defaultUnit: '%'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_icon_image_align.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image / icon alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('When the image or icon sits above the text.', 'dsm-supreme-modules-pro-for-divi'),\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"image_icon_style.decoration.border\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image / icon', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"image_icon_margin.decoration.spacing\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image / icon', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      padding: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"image_icon_padding.decoration.spacing\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image / icon', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"image_icon_style.decoration.boxShadow\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image / icon', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"ct_button\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ButtonGroupContainer, {\n    attrName: \"button\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi'),\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi'),\n    defaultGroupAttr: (_defaultSettingsAttrs = defaultSettingsAttrs?.button?.decoration?.asMutable({\n      deep: true\n    })) !== null && _defaultSettingsAttrs !== void 0 ? _defaultSettingsAttrs : {},\n    grouped: false,\n    fields: {\n      alignment: {\n        render: true\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_alignment.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Custom button alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Used when the Divi button style is off (plain link button).', 'dsm-supreme-modules-pro-for-divi'),\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    },\n    visible: 'off' === button\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const content_timeline_settings_design = (content_timeline_settings_design_SettingsDesign);\n;// ./packages/module-library/content-timeline/settings-advanced.js\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\nfunction content_timeline_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_content_timeline\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const content_timeline_settings_advanced = (content_timeline_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/content-timeline/module-styles.js\n\n\n\nconst imageIconAlignDeclaration = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'justify-content': true\n    }\n  });\n  declarations.add('display', 'flex');\n  if ('left' === attrValue) {\n    declarations.add('justify-content', 'flex-start');\n  }\n  if ('center' === attrValue) {\n    declarations.add('justify-content', 'center');\n  }\n  if ('right' === attrValue) {\n    declarations.add('justify-content', 'flex-end');\n  }\n  return declarations.value;\n};\nconst buttonAlignDeclaration = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'text-align': true\n    }\n  });\n  if ('left' === attrValue) {\n    declarations.add('text-align', 'left');\n  }\n  if ('center' === attrValue) {\n    declarations.add('text-align', 'center');\n  }\n  if ('right' === attrValue) {\n    declarations.add('text-align', 'right');\n  }\n  return declarations.value;\n};\n\n/**\n * React function component for rendering module style.\n */\nconst content_timeline_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'header'\n  }), elements.style({\n    attrName: 'content'\n  }), elements.style({\n    attrName: 'dsm_card_margin'\n  }), elements.style({\n    attrName: 'dsm_card_padding'\n  }), elements.style({\n    attrName: 'card_style'\n  }), elements.style({\n    attrName: 'pointer_style'\n  }), elements.style({\n    attrName: 'dsm_opposite_padding'\n  }), elements.style({\n    attrName: 'opposite_text'\n  }), elements.style({\n    attrName: 'opposite_text_style'\n  }), elements.style({\n    attrName: 'button'\n  }), elements.style({\n    attrName: 'image_icon_padding'\n  }), elements.style({\n    attrName: 'image_icon_margin'\n  }), elements.style({\n    attrName: 'image_icon_style'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}  .dsm-content-timeline-content-wrapper, ${orderClass}  .dsm-content-timeline-content-wrapper::before`,\n    attr: attrs?.dsm_bg_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-content-timeline-date .date`,\n    attr: attrs?.dsm_opposite_bg_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-content-timeline-date .date`,\n    attr: attrs?.dsm_opposite_content_width?.innerContent,\n    property: \"width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-content-timeline-middle-line, ${orderClass} .dsm-content-timeline-middle .dsm-content-timeline-tree-animation`,\n    attr: attrs?.dsm_tree_width?.innerContent,\n    property: \"width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-content-timeline-middle-line`,\n    attr: attrs?.dsm_tree_bg_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-content-timeline-middle .dsm-content-timeline-tree-animation`,\n    attr: attrs?.dsm_tree_active_bg_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-content-timeline-middle-circle`,\n    attr: attrs?.dsm_pointer_bg_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-content-timeline-middle-circle.dsm-timeline-pointer-active`,\n    attr: attrs?.dsm_pointer_active_bg_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-content-timeline-middle-circle.dsm-timeline-pointer-active .et-pb-icon.dsm-icon`,\n    attr: attrs?.dsm_pointer_active_icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-content-timeline-middle-circle .dsm-image`,\n    attr: attrs?.dsm_pointer_icon_font_size?.innerContent,\n    property: \"width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-content-timeline-middle-circle .et-pb-icon.dsm-icon`,\n    attr: attrs?.dsm_pointer_icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-content-timeline-middle-circle .et-pb-icon.dsm-icon`,\n    attr: attrs?.dsm_pointer_icon_font_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-content-timeline-items-wrapper`,\n    attr: attrs?.dsm_horizontal_alignment?.innerContent,\n    property: \"text-align\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-image-wrapper .dsm-image`,\n    attr: attrs?.dsm_image_width?.innerContent,\n    property: \"max-width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-icon-wrapper .dsm-icon`,\n    attr: attrs?.dsm_icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-icon-wrapper .et-pb-icon.dsm-icon`,\n    attr: attrs?.dsm_icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-icon-wrapper .et-pb-icon.dsm-icon`,\n    attr: attrs?.dsm_icon_bg_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-icon-wrapper .et-pb-icon.dsm-icon`,\n    attr: attrs?.dsm_icon_font_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-image-wrapper, ${orderClass} .dsm-icon-wrapper`,\n    attr: attrs?.dsm_icon_image_align?.innerContent,\n    declarationFunction: imageIconAlignDeclaration\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et_pb_button_module_wrapper`,\n    attr: attrs?.button_alignment?.innerContent,\n    declarationFunction: buttonAlignDeclaration\n  }));\n};\n;// ./packages/module-library/content-timeline/content-timeline-shared.js\n/**\n * Content Timeline — shared between frontend (`content-timeline-frontend-init.js`) and Visual Builder (`edit.js`).\n *\n * @package DiviSupreme\n */\n\n/**\n * Collect window and scrollable ancestors so animation works in nested scroll regions (e.g. Visual Builder canvas).\n *\n * @param {HTMLElement} element Module root.\n * @return {Array<EventTarget>}\n */\nfunction dsmGetTimelineScrollTargets(element) {\n  const targets = new Set();\n  targets.add(window);\n  if (!element || !element.parentElement) {\n    return [...targets];\n  }\n  let el = element.parentElement;\n  while (el && el !== document.documentElement) {\n    try {\n      const style = window.getComputedStyle(el);\n      const oy = style.overflowY;\n      const ox = style.overflowX;\n      const scrollableY = (oy === 'auto' || oy === 'scroll' || oy === 'overlay') && el.scrollHeight > el.clientHeight;\n      const scrollableX = (ox === 'auto' || ox === 'scroll' || ox === 'overlay') && el.scrollWidth > el.clientWidth;\n      if (scrollableY || scrollableX) {\n        targets.add(el);\n      }\n    } catch (e) {\n      break;\n    }\n    el = el.parentElement;\n  }\n  return [...targets];\n}\nclass DSMContentTimeline {\n  /**\n   * Container\n   *\n   * @type {HTMLDivElement}\n   */\n  container = null;\n\n  /**\n   * Items container\n   *\n   * @type {HTMLDivElement}\n   */\n  itemsContainer = null;\n\n  /**\n   * Direction\n   *\n   * @type {\"left\" | \"right\" | \"center\"}\n   */\n  direction = 'center';\n\n  /**\n   * Constructor\n   *\n   * @param {HTMLDivElement} container Root.\n   */\n  constructor(container) {\n    this.container = container;\n    this.itemsContainer = this.container;\n    this.direction = this.getDefaultDirection();\n    if (!this.isBuilder()) {\n      this.init();\n    }\n  }\n\n  /**\n   * Check if builder is active\n   *\n   * @return {boolean}\n   */\n  isBuilder() {\n    return document.body.classList.contains('et-fb');\n  }\n\n  /**\n   * Init\n   *\n   * @return void\n   */\n  init() {\n    this.addResponsiveSupport();\n    new DSMContentTimelineTreeAnimation(this.container);\n    new DSMContentTimelineLightbox(this.container);\n    new DSMContentTimelineItemScrollAnimation(this.container);\n  }\n\n  /**\n   * Get default direction\n   *\n   * @return {\"left\" | \"right\" | \"center\"}\n   */\n  getDefaultDirection() {\n    if (this.itemsContainer.classList.contains('left')) {\n      return 'left';\n    }\n    if (this.itemsContainer.classList.contains('right')) {\n      return 'right';\n    }\n    return 'center';\n  }\n\n  /**\n   * Get responsive direction\n   *\n   * @return {\"left\" | \"right\" | \"none\"}\n   */\n  getResponsiveDirection() {\n    if (this.itemsContainer.classList.contains('responsive-left')) {\n      return 'left';\n    }\n    if (this.itemsContainer.classList.contains('responsive-right')) {\n      return 'right';\n    }\n    return 'none';\n  }\n\n  /**\n   * Add responsive support\n   *\n   * @return void\n   */\n  addResponsiveSupport() {\n    const mediaQuery = window.matchMedia('(max-width: 767px)');\n    const responsiveDirection = this.getResponsiveDirection();\n    const handleMediaChange = e => {\n      if (e.matches) {\n        this.itemsContainer.classList.remove(this.direction);\n        if ('none' !== responsiveDirection) {\n          this.itemsContainer.classList.add(responsiveDirection);\n        }\n      } else {\n        if ('none' !== responsiveDirection) {\n          this.itemsContainer.classList.remove(responsiveDirection);\n        }\n        this.itemsContainer.classList.add(this.direction);\n      }\n    };\n    mediaQuery.addEventListener('change', handleMediaChange);\n    handleMediaChange(mediaQuery);\n  }\n}\n\n/**\n * DSM Content Timeline Tree Animation\n */\nclass DSMContentTimelineTreeAnimation {\n  /**\n   * @param {HTMLDivElement} container Timeline items wrapper.\n   */\n  constructor(container) {\n    this.container = container;\n    this.prefersReducedMotion = typeof window.matchMedia === 'function' && window.matchMedia('(prefers-reduced-motion: reduce)').matches;\n    this.enableAnimation = container.dataset.treeAnimation === 'on' && !this.prefersReducedMotion;\n    this.items = [];\n    this.middleSections = [];\n    this.lastScrollTop = window.pageYOffset || document.documentElement.scrollTop;\n    this.scrollTargets = [];\n    this.onScrollBound = this.scheduleScroll.bind(this);\n    this.rafId = 0;\n    this.scrollScheduled = false;\n    this.resizeObserver = null;\n    this.init();\n  }\n\n  /**\n   * @return void\n   */\n  init() {\n    if (!this.enableAnimation) {\n      return;\n    }\n    this.items = this.container.querySelectorAll('.dsm-content-timeline-item');\n    this.middleSections = this.container.querySelectorAll('.dsm-content-timeline-middle');\n    this.scrollTargets = dsmGetTimelineScrollTargets(this.container);\n    this.scrollTargets.forEach(target => {\n      target.addEventListener('scroll', this.onScrollBound, {\n        passive: true\n      });\n    });\n    if (typeof ResizeObserver !== 'undefined') {\n      this.resizeObserver = new ResizeObserver(() => this.scheduleScroll());\n      this.resizeObserver.observe(this.container);\n    }\n    window.addEventListener('resize', this.onScrollBound, {\n      passive: true\n    });\n    this.container.classList.add('dsm-init');\n    this.handleScroll();\n  }\n\n  /**\n   * Batch scroll / layout updates to one animation frame.\n   *\n   * @return void\n   */\n  scheduleScroll() {\n    if (this.scrollScheduled) {\n      return;\n    }\n    this.scrollScheduled = true;\n    this.rafId = window.requestAnimationFrame(() => {\n      this.scrollScheduled = false;\n      this.rafId = 0;\n      this.handleScroll();\n    });\n  }\n\n  /**\n   * Remove listeners and observers.\n   *\n   * @return void\n   */\n  destroy() {\n    if (this.rafId) {\n      window.cancelAnimationFrame(this.rafId);\n      this.rafId = 0;\n    }\n    this.scrollScheduled = false;\n    this.scrollTargets.forEach(target => {\n      target.removeEventListener('scroll', this.onScrollBound);\n    });\n    this.scrollTargets = [];\n    window.removeEventListener('resize', this.onScrollBound);\n    if (this.resizeObserver) {\n      this.resizeObserver.disconnect();\n      this.resizeObserver = null;\n    }\n  }\n\n  /**\n   * @param {number}  index   Segment index.\n   * @param {boolean} partial Partial fill allowed.\n   * @return {boolean}\n   */\n  isAnimationCompleted(index, partial = false) {\n    const treeAnimations = this.container.querySelectorAll('.dsm-content-timeline-tree-animation');\n    if (typeof treeAnimations[index] === 'undefined') {\n      return true;\n    }\n    const treeAnimation = treeAnimations[index];\n    const computedStyle = window.getComputedStyle(treeAnimation);\n    const currentHeight = parseFloat(computedStyle.height);\n    const parentHeight = treeAnimation.parentElement.offsetHeight;\n    return partial ? currentHeight > 0 : currentHeight >= parentHeight * 0.98;\n  }\n\n  /**\n   * Update fill height from scroll position.\n   *\n   * @return void\n   */\n  handleScroll() {\n    if (!this.enableAnimation) {\n      return;\n    }\n    const windowHeight = window.innerHeight;\n    const triggerPoint = windowHeight * 0.5;\n    const currentScrollTop = window.pageYOffset || document.documentElement.scrollTop;\n    const isScrollingDown = currentScrollTop > this.lastScrollTop;\n    this.middleSections.forEach((section, index) => {\n      const rect = section.getBoundingClientRect();\n      const isActive = rect.top <= triggerPoint;\n      const circle = section.querySelector('.dsm-content-timeline-middle-circle');\n      const treeAnimation = section.querySelector('.dsm-content-timeline-tree-animation');\n      const isPreviousAnimationCompleted = this.isAnimationCompleted(index - 1);\n      const isNextAnimationCompleted = this.isAnimationCompleted(index + 1, true);\n      if (isActive) {\n        if (treeAnimation) {\n          const sectionHeight = rect.height;\n          const sectionTop = rect.top;\n          let progress = Math.min(100, Math.max(0, (triggerPoint - sectionTop) / sectionHeight * 100));\n          if (isScrollingDown ? isPreviousAnimationCompleted : !isNextAnimationCompleted) {\n            circle?.classList.add('dsm-timeline-pointer-active');\n            if (section.classList.contains('dsm-last-middle')) {\n              progress = Math.min(progress, 0);\n            }\n            treeAnimation.style.setProperty('--tree-filled', `${progress}%`);\n          }\n        }\n      } else {\n        circle?.classList.remove('dsm-timeline-pointer-active');\n        treeAnimation?.style.setProperty('--tree-filled', '0%');\n      }\n    });\n    this.lastScrollTop = currentScrollTop;\n  }\n}\n\n/**\n * Scroll-triggered reveal: trigger on `.dsm-content-timeline-middle-circle`, animate\n * `.dsm-content-timeline-item-wrapper` and opposite column (spine stays visible for IO).\n */\nclass DSMContentTimelineItemScrollAnimation {\n  /**\n   * @param {HTMLDivElement} container `.dsm-content-timeline-items-wrapper`\n   */\n  constructor(container) {\n    this.container = container;\n    this.enabled = String(container.dataset.itemScrollAnimation || '').toLowerCase() === 'on';\n    if (!this.enabled) {\n      return;\n    }\n    this.stylePreset = container.dataset.itemScrollStyle || 'alternate';\n    this.observer = null;\n    /** @type {WeakMap<Element, RowParts>} */\n    this.observed = new WeakMap();\n    /** Root margin so intersection fires near viewport center (aligns with tree line trigger). */\n    this.centerBandRootMargin = '-42% 0px -42% 0px';\n    this.reducedMotion = typeof window.matchMedia === 'function' && window.matchMedia('(prefers-reduced-motion: reduce)').matches;\n    this.init();\n  }\n\n  /**\n   * @return {void}\n   */\n  init() {\n    if (this.reducedMotion) {\n      this.revealAll();\n      return;\n    }\n    const cards = this.container.querySelectorAll('.dsm_content_timeline_child');\n    if (!cards.length) {\n      return;\n    }\n    const scrollRoot = document.querySelector('#scrollArea') || null;\n    this.observer = new IntersectionObserver(this.handleIntersection.bind(this), {\n      root: scrollRoot,\n      rootMargin: this.centerBandRootMargin,\n      threshold: [0, 0.01, 0.25, 0.5, 0.75, 1]\n    });\n    cards.forEach(card => {\n      const row = this.getRowElements(card);\n      if (!row) {\n        return;\n      }\n      this.applyPendingState(row);\n      const triggerEl = this.getScrollTriggerElement(row);\n      this.observed.set(triggerEl, row);\n      this.observer.observe(triggerEl);\n    });\n    const initial = this.observer.takeRecords();\n    if (initial.length) {\n      this.handleIntersection(initial, this.observer);\n    }\n  }\n\n  /**\n   * @typedef {Object} RowParts\n   * @property {Element}              card          `.dsm_content_timeline_child` (direction + queries).\n   * @property {Element|null}         itemWrapper   `.dsm-content-timeline-item-wrapper` (animated card body).\n   * @property {Element|null}         middle        `.dsm-content-timeline-middle` (not animated — keeps circle visible for IO).\n   * @property {Element|null}         opposite      Opposite column (animated).\n   */\n\n  /**\n   * @param {Element} card Timeline child module root.\n   * @return {RowParts|null}\n   */\n  getRowElements(card) {\n    const prefix = 'dsm_content_timeline_child_';\n    const orderClass = [...card.classList].find(c => c.startsWith(prefix) && c.length > prefix.length);\n    if (!orderClass) {\n      return null;\n    }\n    const esc = typeof CSS !== 'undefined' && typeof CSS.escape === 'function' ? CSS.escape(orderClass) : orderClass;\n    const itemWrapper = card.querySelector('.dsm-content-timeline-item-wrapper');\n    const middle = this.container.querySelector(`.dsm-content-timeline-middle.${esc}`);\n    const opposite = this.container.querySelector(`.dsm-content-timeline-opposite.${esc}`);\n    return {\n      card,\n      itemWrapper,\n      middle,\n      opposite\n    };\n  }\n\n  /**\n   * Prefer the spine circle so reveal aligns with the timeline step (tree line uses the same column).\n   *\n   * @param {RowParts} row Row parts.\n   * @return {Element}\n   */\n  getScrollTriggerElement(row) {\n    const circle = row.middle?.querySelector('.dsm-content-timeline-middle-circle');\n    if (circle instanceof Element) {\n      return circle;\n    }\n    return row.card;\n  }\n\n  /**\n   * Center layout: card center vs spine (middle column) — reliable; gridColumnStart is often \"auto\".\n   *\n   * @param {RowParts} row Row parts.\n   * @return {\"left\"|\"right\"|null} Null if geometry unavailable.\n   */\n  getCenterSlideDirFromGeometry(row) {\n    const mid = row.middle;\n    if (!mid || !row.card) {\n      return null;\n    }\n    const cardRect = row.card.getBoundingClientRect();\n    const spineRect = mid.getBoundingClientRect();\n    if (!cardRect.width || !spineRect.width) {\n      return null;\n    }\n    const cardCx = cardRect.left + cardRect.width / 2;\n    const spineCx = spineRect.left + spineRect.width / 2;\n    const cardIsRightOfSpine = cardCx > spineCx;\n    if (this.isRtl()) {\n      return cardIsRightOfSpine ? 'left' : 'right';\n    }\n    return cardIsRightOfSpine ? 'right' : 'left';\n  }\n\n  /**\n   * Matches SCSS: even item index (0,2,4…) → right column; odd → left.\n   *\n   * @param {RowParts} row Row parts.\n   * @return {number} NaN if unreadable.\n   */\n  getCenterItemIndexFromMiddle(row) {\n    const mid = row.middle;\n    if (!mid) {\n      return NaN;\n    }\n    let raw = window.getComputedStyle(mid).getPropertyValue('--item-index').trim();\n    if (raw === '') {\n      const st = mid.getAttribute('style') || '';\n      const m = st.match(/--item-index:\\s*([^;]+)/i);\n      if (m) {\n        raw = m[1].trim();\n      }\n    }\n    const n = parseInt(raw, 10);\n    return Number.isNaN(n) ? NaN : n;\n  }\n\n  /**\n   * @param {RowParts} row Row parts.\n   * @return {\"left\"|\"right\"|\"fade\"}\n   */\n  computeSlideDirection(row) {\n    const preset = this.stylePreset;\n    if (preset === 'fade') {\n      return 'fade';\n    }\n    if (preset === 'from_left') {\n      return this.isRtl() ? 'right' : 'left';\n    }\n    if (preset === 'from_right') {\n      return this.isRtl() ? 'left' : 'right';\n    }\n    const wrapper = this.container;\n    const card = row.card;\n    if (wrapper.classList.contains('left')) {\n      return this.isRtl() ? 'left' : 'right';\n    }\n    if (wrapper.classList.contains('right')) {\n      return this.isRtl() ? 'right' : 'left';\n    }\n    if (wrapper.classList.contains('center')) {\n      const fromGeom = this.getCenterSlideDirFromGeometry(row);\n      if (fromGeom) {\n        return fromGeom;\n      }\n      const idx = this.getCenterItemIndexFromMiddle(row);\n      if (!Number.isNaN(idx)) {\n        const cardOnRightColumn = idx % 2 === 0;\n        if (this.isRtl()) {\n          return cardOnRightColumn ? 'left' : 'right';\n        }\n        return cardOnRightColumn ? 'right' : 'left';\n      }\n      let col = parseInt(window.getComputedStyle(card).gridColumnStart, 10);\n      if (Number.isNaN(col)) {\n        col = 1;\n      }\n      if (col <= 1) {\n        return this.isRtl() ? 'right' : 'left';\n      }\n      if (col >= 3) {\n        return this.isRtl() ? 'left' : 'right';\n      }\n      return 'fade';\n    }\n    return this.isRtl() ? 'right' : 'left';\n  }\n\n  /**\n   * @return {boolean}\n   */\n  isRtl() {\n    return document.documentElement.getAttribute('dir') === 'rtl' || document.body?.getAttribute('dir') === 'rtl';\n  }\n\n  /**\n   * Card motion targets the inner wrapper so the spine circle stays visible for IntersectionObserver.\n   *\n   * @param {RowParts} row Row parts.\n   * @return {void}\n   */\n  applyPendingState(row) {\n    const slideDir = this.computeSlideDirection(row);\n    const cardTarget = row.itemWrapper || row.card;\n    /**\n     * @param {Element|null} el Element.\n     * @param {string}       dir Direction key.\n     */\n    const setDir = (el, dir) => {\n      if (!el) {\n        return;\n      }\n      el.setAttribute('data-dsm-scroll-dir', dir);\n      el.classList.add('dsm-timeline-item-pending');\n    };\n    if (slideDir === 'fade') {\n      setDir(cardTarget, 'fade');\n      setDir(row.opposite, 'fade');\n      return;\n    }\n    setDir(cardTarget, slideDir);\n    if (row.opposite) {\n      const mirrorOppositeForCenterAlternate = this.stylePreset === 'alternate' && this.container.classList.contains('center');\n      const oppositeDir = mirrorOppositeForCenterAlternate ? slideDir === 'left' ? 'right' : 'left' : slideDir;\n      setDir(row.opposite, oppositeDir);\n    }\n  }\n\n  /**\n   * @param {IntersectionObserverEntry[]} entries Entries.\n   * @param {IntersectionObserver}      observer Observer.\n   * @return {void}\n   */\n  handleIntersection(entries, observer) {\n    entries.forEach(entry => {\n      if (!entry.isIntersecting) {\n        return;\n      }\n      const row = this.observed.get(entry.target);\n      if (!row) {\n        return;\n      }\n      this.revealRow(row);\n      observer.unobserve(entry.target);\n    });\n  }\n\n  /**\n   * @param {RowParts} row Row parts.\n   * @return {void}\n   */\n  revealRow(row) {\n    const cardTarget = row.itemWrapper || row.card;\n    const els = [cardTarget, row.opposite].filter(Boolean);\n    els.forEach(el => {\n      el.classList.remove('dsm-timeline-item-pending');\n      el.classList.add('dsm-timeline-item-in-view');\n    });\n  }\n\n  /**\n   * @return {void}\n   */\n  revealAll() {\n    const cards = this.container.querySelectorAll('.dsm_content_timeline_child');\n    cards.forEach(card => {\n      const row = this.getRowElements(card);\n      if (!row) {\n        return;\n      }\n      this.revealRow(row);\n    });\n  }\n\n  /**\n   * @return {void}\n   */\n  destroy() {\n    if (this.observer) {\n      this.observer.disconnect();\n      this.observer = null;\n    }\n  }\n}\n\n/**\n * DSM Content Timeline Lightbox\n */\nclass DSMContentTimelineLightbox {\n  /**\n   * @param {HTMLDivElement} container Timeline root.\n   */\n  constructor(container) {\n    this.container = container;\n    this.init();\n  }\n\n  /**\n   * Initialize lightbox functionality\n   */\n  init() {\n    const isLightboxEnabled = this.container.dataset.image_lightbox === 'on';\n    if (!isLightboxEnabled) {\n      return;\n    }\n    const images = this.container.querySelectorAll('.dsm-image img');\n    if (!images.length) {\n      return;\n    }\n    jQuery(images).magnificPopup({\n      type: 'image',\n      removalDelay: 500,\n      mainClass: 'mfp-fade',\n      gallery: {\n        enabled: true\n      },\n      image: {\n        titleSrc(item) {\n          return item.el.attr('alt') || '';\n        }\n      },\n      zoom: {\n        enabled: true,\n        duration: 500,\n        opener(element) {\n          return element;\n        }\n      },\n      callbacks: {\n        elementParse(item) {\n          item.src = item.el.attr('src');\n        },\n        open() {\n          this.container.addClass('dsm-lightbox-custom');\n        }\n      }\n    });\n  }\n}\n;// ./packages/module-library/content-timeline/edit.js\n\n\n\n\n// Divi package dependencies.\n\n\n// Custom dependencies.\n\n\n\n/**\n * React function component for registering module script data.\n */\nconst content_timeline_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction content_timeline_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements,\n  childrenIds\n}) {\n  var _getAttrByMode, _getAttrByMode2, _attrs$dsm_timeline_s, _attrs$dsm_responsive, _getAttrByMode3, _getAttrByMode4, _getAttrByMode5, _getAttrByMode6, _getAttrByMode7;\n  const container = (0,external_vendor_React_.useRef)(null);\n  const dsm_image_lightbox = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_image_lightbox?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'off';\n  const dsm_tree_animation = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_tree_animation?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'off';\n  const timelineStyle = (_attrs$dsm_timeline_s = attrs?.dsm_timeline_style?.innerContent?.desktop?.value) !== null && _attrs$dsm_timeline_s !== void 0 ? _attrs$dsm_timeline_s : 'center';\n  const timelineResponsiveStyle = (_attrs$dsm_responsive = attrs?.dsm_responsive_style?.innerContent?.desktop?.value) !== null && _attrs$dsm_responsive !== void 0 ? _attrs$dsm_responsive : 'select';\n  const responsiveClassName = 'select' === timelineResponsiveStyle ? timelineStyle : timelineResponsiveStyle;\n  const dsm_card_arrow = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_card_arrow?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'off';\n  const rawFillSpeed = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_fill_animation_speed?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : '100';\n  const treeAnimationDurationMs = Math.max(50, parseInt(String(rawFillSpeed), 10) || 100);\n  const dsm_item_scroll_animation = (_getAttrByMode5 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_item_scroll_animation?.innerContent)) !== null && _getAttrByMode5 !== void 0 ? _getAttrByMode5 : 'off';\n  const dsm_item_scroll_style = (_getAttrByMode6 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_item_scroll_style?.innerContent)) !== null && _getAttrByMode6 !== void 0 ? _getAttrByMode6 : 'alternate';\n  const rawItemScrollDuration = (_getAttrByMode7 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_item_scroll_duration?.innerContent)) !== null && _getAttrByMode7 !== void 0 ? _getAttrByMode7 : '600';\n  const itemScrollDurationMs = Math.max(100, parseInt(String(rawItemScrollDuration), 10) || 600);\n  const childModules = (0,external_divi_data_namespaceObject.useSelect)(select => {\n    return childrenIds.map(moduleId => select('divi/edit-post').getModule(moduleId));\n  }, [childrenIds]);\n  const breakpoint = (0,external_divi_data_namespaceObject.useSelect)(select => {\n    return select('divi/app-ui').getBreakpoint();\n  });\n  const oppositeTexts = childModules.map(item => {\n    const childAttrs = item?.props?.attrs;\n    return childAttrs?.dsm_opposite_text?.innerContent?.desktop?.value;\n  });\n  const hasOppositeText = oppositeTexts.some(text => text);\n  const isDesktop = breakpoint === 'desktop' || breakpoint === 'widescreen';\n  const layoutClassForCanvas = !isDesktop && responsiveClassName !== timelineStyle ? responsiveClassName : timelineStyle;\n  const refreshkey = [dsm_image_lightbox, dsm_tree_animation, timelineResponsiveStyle, timelineStyle, String(treeAnimationDurationMs), dsm_item_scroll_animation, dsm_item_scroll_style, String(itemScrollDurationMs), layoutClassForCanvas, responsiveClassName, childrenIds.join(',')];\n  (0,external_vendor_React_.useEffect)(() => {\n    const el = container.current;\n    if (!el) {\n      return;\n    }\n    let treeAnimationInstance = null;\n    if (dsm_tree_animation === 'on') {\n      treeAnimationInstance = new DSMContentTimelineTreeAnimation(el);\n    }\n    let itemScrollInstance = null;\n    if (dsm_item_scroll_animation === 'on') {\n      itemScrollInstance = new DSMContentTimelineItemScrollAnimation(el);\n    }\n\n    // Visual Builder: match frontend `DSMContentTimelineLightbox` — bind directly to\n    // `.dsm-image img`. Container delegation + zoom often fail in the builder canvas.\n    if (dsm_image_lightbox === 'on') {\n      const $ = window.jQuery;\n      if (!$ || !$.fn.magnificPopup) {\n        return;\n      }\n      const images = el.querySelectorAll('.dsm-image img');\n      if (!images.length) {\n        return;\n      }\n      const $images = $(images);\n      try {\n        $images.magnificPopup('destroy');\n      } catch (e) {\n        // Not previously bound.\n      }\n      const zoomEnabled = typeof window.et_pb_custom !== 'undefined' && window.et_pb_custom && !window.et_pb_custom.is_builder_plugin_used;\n      $images.magnificPopup({\n        type: 'image',\n        removalDelay: 500,\n        mainClass: 'mfp-fade',\n        gallery: {\n          enabled: true\n        },\n        autoFocusLast: false,\n        image: {\n          titleSrc(item) {\n            return item.el.attr('alt') || '';\n          }\n        },\n        zoom: {\n          enabled: zoomEnabled,\n          duration: 500,\n          opener(element) {\n            return element;\n          }\n        },\n        callbacks: {\n          elementParse(item) {\n            item.src = item.el.attr('src');\n          },\n          open() {\n            this.container.addClass('dsm-lightbox-custom');\n          }\n        }\n      });\n    }\n    return () => {\n      treeAnimationInstance?.destroy?.();\n      itemScrollInstance?.destroy?.();\n      if (dsm_image_lightbox === 'on' && typeof window.jQuery !== 'undefined' && window.jQuery.fn.magnificPopup) {\n        const $imgs = window.jQuery(el).find('.dsm-image img');\n        if ($imgs.length) {\n          try {\n            $imgs.magnificPopup('destroy');\n          } catch (e) {\n            // Ignore teardown errors.\n          }\n        }\n      }\n    };\n  }, refreshkey);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: content_timeline_edit_ModuleScriptData,\n    stylesComponent: content_timeline_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n      params.classnamesInstance.add(`dsm-timeline-${timelineStyle}`);\n      if ('on' === dsm_card_arrow) {\n        params.classnamesInstance.add('dsm-show-arrow');\n      }\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: `dsm-content-timeline-items-wrapper ${layoutClassForCanvas} responsive-${responsiveClassName} ${!hasOppositeText ? 'dsm-no-opposite-text' : ''}`,\n    ref: container,\n    key: refreshkey.join(','),\n    role: \"region\",\n    \"aria-label\": (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content timeline', 'dsm-supreme-modules-pro-for-divi'),\n    \"data-tree-animation\": dsm_tree_animation,\n    \"data-item-scroll-animation\": dsm_item_scroll_animation,\n    \"data-item-scroll-style\": dsm_item_scroll_style,\n    style: {\n      '--spacing': '50px',\n      '--tree-animation-speed': `${treeAnimationDurationMs}ms`,\n      '--item-scroll-duration': `${itemScrollDurationMs}ms`\n    },\n    \"data-image_lightbox\": dsm_image_lightbox\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ChildModulesContainer, {\n    ids: childrenIds\n  })));\n}\n/* harmony default export */ const content_timeline_edit = (content_timeline_edit_Edit);\n;// ./packages/module-library/content-timeline/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmContentTimeline', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/content-timeline': {\n      name: 'divi-supreme/content-timeline',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.1875 2.78125 C 10.832031 2.78125 10.542969 2.492188 10.542969 2.136719 C 10.542969 1.78125 10.832031 1.492188 11.1875 1.492188 C 11.542969 1.492188 11.835938 1.78125 11.835938 2.136719 C 11.835938 2.492188 11.542969 2.78125 11.1875 2.78125 Z M 11.1875 1.847656 C 11.03125 1.847656 10.898438 1.980469 10.898438 2.136719 C 10.898438 2.296875 11.03125 2.425781 11.1875 2.425781 C 11.347656 2.425781 11.480469 2.296875 11.480469 2.136719 C 11.480469 1.980469 11.347656 1.847656 11.1875 1.847656 Z M 11.1875 1.847656 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.027344 15.039062 C 5.671875 15.039062 5.382812 14.75 5.382812 14.394531 C 5.382812 14.039062 5.671875 13.75 6.027344 13.75 C 6.382812 13.75 6.671875 14.039062 6.671875 14.394531 C 6.671875 14.75 6.382812 15.039062 6.027344 15.039062 Z M 6.027344 14.105469 C 5.867188 14.105469 5.738281 14.238281 5.738281 14.394531 C 5.738281 14.554688 5.867188 14.683594 6.027344 14.683594 C 6.183594 14.683594 6.316406 14.554688 6.316406 14.394531 C 6.316406 14.238281 6.183594 14.105469 6.027344 14.105469 Z M 6.027344 14.105469 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 8.421875 7.429688 C 8.222656 7.429688 8.0625 7.269531 8.0625 7.070312 C 8.0625 6.871094 8.222656 6.710938 8.421875 6.710938 C 8.621094 6.710938 8.785156 6.871094 8.785156 7.070312 C 8.785156 7.269531 8.621094 7.429688 8.421875 7.429688 Z M 8.421875 9.792969 C 8.222656 9.792969 8.0625 9.632812 8.0625 9.433594 C 8.0625 9.234375 8.222656 9.074219 8.421875 9.074219 C 8.621094 9.074219 8.785156 9.234375 8.785156 9.433594 C 8.785156 9.632812 8.621094 9.792969 8.421875 9.792969 Z M 8.421875 12.15625 C 8.222656 12.15625 8.0625 11.996094 8.0625 11.796875 C 8.0625 11.597656 8.222656 11.4375 8.421875 11.4375 C 8.621094 11.4375 8.785156 11.597656 8.785156 11.796875 C 8.785156 11.996094 8.621094 12.15625 8.421875 12.15625 Z M 8.421875 4.34375 C 8.621094 4.34375 8.785156 4.507812 8.785156 4.707031 C 8.785156 4.90625 8.621094 5.066406 8.421875 5.066406 C 8.222656 5.066406 8.0625 4.90625 8.0625 4.707031 C 8.0625 4.507812 8.222656 4.34375 8.421875 4.34375 Z M 9.300781 4.707031 C 9.300781 4.222656 8.90625 3.828125 8.421875 3.828125 C 7.9375 3.828125 7.542969 4.222656 7.542969 4.707031 C 7.542969 5.101562 7.804688 5.433594 8.164062 5.546875 L 8.164062 6.230469 C 7.804688 6.339844 7.542969 6.675781 7.542969 7.070312 C 7.542969 7.464844 7.804688 7.800781 8.164062 7.910156 L 8.164062 8.59375 C 7.804688 8.703125 7.542969 9.039062 7.542969 9.433594 C 7.542969 9.828125 7.804688 10.164062 8.164062 10.273438 L 8.164062 10.957031 C 7.804688 11.066406 7.542969 11.402344 7.542969 11.796875 C 7.542969 12.28125 7.9375 12.675781 8.421875 12.675781 C 8.90625 12.675781 9.300781 12.28125 9.300781 11.796875 C 9.300781 11.402344 9.039062 11.066406 8.683594 10.957031 L 8.683594 10.273438 C 9.039062 10.164062 9.300781 9.828125 9.300781 9.433594 C 9.300781 9.039062 9.039062 8.703125 8.683594 8.59375 L 8.683594 7.910156 C 9.039062 7.800781 9.300781 7.464844 9.300781 7.070312 C 9.300781 6.675781 9.039062 6.339844 8.683594 6.230469 L 8.683594 5.546875 C 9.039062 5.433594 9.300781 5.101562 9.300781 4.707031 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.421875 4.890625 C 6.371094 4.9375 6.308594 4.964844 6.238281 4.964844 L 4.871094 4.964844 C 4.800781 4.964844 4.734375 4.9375 4.6875 4.890625 C 4.636719 4.839844 4.609375 4.773438 4.609375 4.707031 C 4.609375 4.636719 4.636719 4.570312 4.6875 4.523438 C 4.734375 4.472656 4.800781 4.445312 4.871094 4.445312 L 6.238281 4.445312 C 6.308594 4.445312 6.371094 4.472656 6.421875 4.523438 C 6.46875 4.570312 6.496094 4.636719 6.496094 4.707031 C 6.496094 4.773438 6.46875 4.839844 6.421875 4.890625 Z M 6.238281 3.929688 L 4.871094 3.929688 C 4.660156 3.929688 4.464844 4.007812 4.320312 4.15625 C 4.171875 4.300781 4.089844 4.496094 4.089844 4.707031 C 4.089844 4.914062 4.171875 5.109375 4.320312 5.253906 C 4.464844 5.402344 4.660156 5.484375 4.871094 5.484375 L 6.238281 5.484375 C 6.445312 5.484375 6.640625 5.402344 6.789062 5.253906 C 6.933594 5.109375 7.015625 4.914062 7.015625 4.707031 C 7.015625 4.496094 6.933594 4.300781 6.789062 4.15625 C 6.640625 4.007812 6.445312 3.929688 6.238281 3.929688 Z M 6.238281 3.929688 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.421875 9.617188 C 6.371094 9.664062 6.308594 9.691406 6.238281 9.691406 L 4.871094 9.691406 C 4.800781 9.691406 4.734375 9.667969 4.6875 9.617188 C 4.636719 9.566406 4.609375 9.503906 4.609375 9.433594 C 4.609375 9.363281 4.636719 9.300781 4.6875 9.25 C 4.734375 9.203125 4.800781 9.175781 4.871094 9.175781 L 6.238281 9.175781 C 6.308594 9.175781 6.371094 9.203125 6.421875 9.25 C 6.46875 9.296875 6.496094 9.367188 6.496094 9.433594 C 6.496094 9.503906 6.46875 9.566406 6.421875 9.617188 Z M 6.238281 8.65625 L 4.871094 8.65625 C 4.660156 8.65625 4.464844 8.738281 4.320312 8.882812 C 4.171875 9.03125 4.089844 9.226562 4.089844 9.433594 C 4.089844 9.640625 4.171875 9.835938 4.320312 9.984375 C 4.464844 10.128906 4.660156 10.210938 4.871094 10.210938 L 6.238281 10.210938 C 6.445312 10.210938 6.640625 10.128906 6.789062 9.984375 C 6.933594 9.835938 7.015625 9.640625 7.015625 9.433594 C 7.015625 9.226562 6.933594 9.03125 6.789062 8.882812 C 6.640625 8.738281 6.445312 8.65625 6.238281 8.65625 Z M 6.238281 8.65625 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 10.089844 6.851562 L 12.007812 6.851562 C 12.148438 6.851562 12.265625 6.734375 12.265625 6.59375 C 12.265625 6.449219 12.148438 6.332031 12.007812 6.332031 L 10.089844 6.332031 C 9.945312 6.332031 9.828125 6.449219 9.828125 6.59375 C 9.828125 6.734375 9.945312 6.851562 10.089844 6.851562 Z M 10.089844 6.851562 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 10.089844 11.554688 L 12.007812 11.554688 C 12.148438 11.554688 12.265625 11.4375 12.265625 11.296875 C 12.265625 11.152344 12.148438 11.035156 12.007812 11.035156 L 10.089844 11.035156 C 9.945312 11.035156 9.828125 11.152344 9.828125 11.296875 C 9.828125 11.4375 9.945312 11.554688 10.089844 11.554688 Z M 10.089844 11.554688 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 10.089844 7.898438 L 10.945312 7.898438 C 11.089844 7.898438 11.207031 7.78125 11.207031 7.640625 C 11.207031 7.496094 11.089844 7.378906 10.945312 7.378906 L 10.089844 7.378906 C 9.945312 7.378906 9.828125 7.496094 9.828125 7.640625 C 9.828125 7.78125 9.945312 7.898438 10.089844 7.898438 Z M 10.089844 7.898438 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 10.089844 12.601562 L 10.945312 12.601562 C 11.089844 12.601562 11.207031 12.484375 11.207031 12.339844 C 11.207031 12.199219 11.089844 12.082031 10.945312 12.082031 L 10.089844 12.082031 C 9.945312 12.082031 9.828125 12.199219 9.828125 12.339844 C 9.828125 12.484375 9.945312 12.601562 10.089844 12.601562 Z M 10.089844 12.601562 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/content-timeline/index.js\n// External library dependencies.\n\n\n// Wordpress dependencies.\n\n\n\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\n\n\nconst CONTENT_TIMELINE_CHILD = 'dsm/content-timeline-child';\nconst contentTimelineDefaultChildTemplate = buildParentDefaultChildTemplate(CONTENT_TIMELINE_CHILD, 3, ['Step 1', 'Step 2', 'Step 3'].map(label => ({\n  dsm_title: {\n    innerContent: {\n      desktop: {\n        value: label\n      }\n    }\n  }\n})));\nconst content_timeline_defaultAttrs = content_timeline_module_default_render_attributes_namespaceObject;\nconst contentTimelineModule = {\n  metadata: content_timeline_module_namespaceObject,\n  conversionOutline: content_timeline_conversion_outline_conversionOutline,\n  renderers: {\n    edit: content_timeline_edit,\n    styles: content_timeline_module_styles_ModuleStyles\n  },\n  defaultAttrs: content_timeline_defaultAttrs,\n  childrenName: [CONTENT_TIMELINE_CHILD],\n  template: contentTimelineDefaultChildTemplate,\n  callbacks: buildChildDraggableListCallbacks([CONTENT_TIMELINE_CHILD]),\n  settings: {\n    content: content_timeline_settings_content,\n    design: content_timeline_settings_design,\n    advanced: content_timeline_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    ...content_timeline_module_default_render_attributes_namespaceObject\n  }\n};\n/* harmony default export */ const content_timeline = (contentTimelineModule);\n;// ./packages/module-library/content-timeline-child/module.json\nconst content_timeline_child_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/content-timeline-child\",\"d4Shortcode\":\"dsm_content_timeline_child\",\"title\":\"Supreme Content Timeline Child\",\"titles\":\"Supreme Content Timeline Childs\",\"category\":\"child-module\",\"childrenName\":[],\"allowAllElements\":true,\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-content-timeline-content-wrapper\",\"settings\":{\"decoration\":{\"attributes\":{},\"background\":{},\"layout\":{}},\"advanced\":{\"link\":{},\"elements\":{\"groupType\":\"group-item\",\"item\":{\"groupSlug\":\"contentElements\",\"priority\":5,\"render\":true,\"component\":{\"type\":\"group\",\"name\":\"divi/elements\",\"props\":{\"grouped\":false}}}}}},\"styleProps\":{\"background\":{\"selector\":\"{{selector}} .dsm-content-timeline-content-wrapper, {{selector}} .dsm-content-timeline-content-wrapper::before\"},\"layout\":{\"selector\":\"{{selector}} .dsm-timeline-nestable\"}}},\"header\":{\"type\":\"object\",\"selector\":\".dsm-content-timeline-container {{selector}} .dsm-content-timeline-content-wrapper .dsm-title\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"content\":{\"type\":\"object\",\"selector\":\".dsm-content-timeline-container {{selector}} .dsm-content-timeline-content-wrapper .dsm-timeline-content .dsm-description\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"opposite_text\":{\"type\":\"object\",\"selector\":\".dsm-content-timeline-items-wrapper {{selector}} .dsm-content-timeline-date .date\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_use_icon_image\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_image\":{\"type\":\"object\",\"elementType\":\"image\",\"selector\":\"{{selector}} .dsm-image-wrapper .dsm-image img\",\"inlineEditor\":\"UploadContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_use_icon\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"font_icon\":{\"type\":\"object\",\"inlineEditor\":\"IconPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_icon_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_icon_image_placement\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content\":{\"type\":\"object\",\"inlineEditor\":\"RichTextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_shortcode\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_use_pointer_element\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_select_pointer_option\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_point_image\":{\"type\":\"object\",\"elementType\":\"image\",\"selector\":\"{{selector}} .dsm-content-timeline-middle-circle .dsm-image img\",\"inlineEditor\":\"UploadContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_point_font_icon\":{\"type\":\"object\",\"inlineEditor\":\"IconPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_title\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_text\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\",\"tagName\":\"span\"},\"button_url\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_url_new_window\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_alignment\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_opposite_text\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_horizontal_alignment\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_image_icon_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_icon_image_align\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_icon_font_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_image_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_opposite_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_opposite_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\".dsm-content-timeline-items-wrapper {{selector}} .dsm-content-timeline-date .date\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_image_icon_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-content-timeline-content-wrapper .dsm-image, {{selector}} .dsm-content-timeline-content-wrapper .dsm_icon\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_image_icon_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-content-timeline-content-wrapper .dsm-image, {{selector}} .dsm-content-timeline-content-wrapper .dsm_icon\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_card_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\".dsm-content-timeline-container {{selector}} .dsm-content-timeline-content-wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_card_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\".dsm-content-timeline-container {{selector}} .dsm-content-timeline-content-wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_timeline_content_spacing\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-timeline-content\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"opposite_style\":{\"type\":\"object\",\"selector\":\".dsm-content-timeline-items-wrapper {{selector}} .dsm-content-timeline-date .date\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\".dsm-content-timeline-items-wrapper {{selector}} .dsm-content-timeline-date .date\",\"important\":true},\"boxShadow\":{\"selector\":\".dsm-content-timeline-items-wrapper {{selector}} .dsm-content-timeline-date .date\",\"useOverlay\":true}}},\"image_icon_style\":{\"type\":\"object\",\"selector\":\".dsm-content-timeline-items-wrapper {{selector}} .dsm-content-timeline-content-wrapper .dsm-image, .dsm-content-timeline-items-wrapper {{selector}} .dsm-content-timeline-content-wrapper .dsm_icon\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\".dsm-content-timeline-items-wrapper {{selector}}.dsm-content-timeline-content-wrapper .dsm-image, .dsm-content-timeline-items-wrapper {{selector}} .dsm-content-timeline-content-wrapper .dsm_icon\",\"important\":true},\"boxShadow\":{\"selector\":\".dsm-content-timeline-items-wrapper {{selector}}.dsm-content-timeline-content-wrapper .dsm-image, .dsm-content-timeline-items-wrapper {{selector}} .dsm-content-timeline-content-wrapper .dsm_icon\",\"useOverlay\":true}}},\"card_style\":{\"type\":\"object\",\"selector\":\".dsm-content-timeline-container {{selector}} .dsm-content-timeline-content-wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\".dsm-content-timeline-container {{selector}} .dsm-content-timeline-content-wrapper\",\"important\":true},\"boxShadow\":{\"selector\":\".dsm-content-timeline-container {{selector}} .dsm-content-timeline-content-wrapper\",\"useOverlay\":true}}}},\"settings\":{\"advanced\":\"auto\",\"groups\":{\"contentElements\":{\"panel\":\"content\",\"priority\":5,\"groupName\":\"contentElements\",\"multiElements\":true,\"component\":{\"name\":\"divi/composite\",\"props\":{\"groupLabel\":\"Elements\"}}}}}}');\n;// ./packages/module-library/content-timeline-child/module-default-render-attributes.json\nconst content_timeline_child_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"module\":{\"decoration\":{}},\"header\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"headingLevel\":\"h4\"}}}}}},\"button\":{\"decoration\":{\"button\":{\"desktop\":{\"value\":{\"enable\":\"off\"}}}}},\"dsm_use_icon_image\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"dsm_use_icon\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"dsm_icon_image_placement\":{\"innerContent\":{\"desktop\":{\"value\":\"top\"}}},\"dsm_horizontal_alignment\":{\"innerContent\":{\"desktop\":{\"value\":\"left\"}}},\"dsm_title\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"dsm_content_type\":{\"innerContent\":{\"desktop\":{\"value\":\"custom\"}}},\"dsm_content\":{\"innerContent\":{\"desktop\":{\"value\":{\"text\":\"\"}}}},\"dsm_use_pointer_element\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"dsm_select_pointer_option\":{\"innerContent\":{\"desktop\":{\"value\":\"icon\"}}},\"button_url_new_window\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"button_alignment\":{\"innerContent\":{\"desktop\":{\"value\":\"left\"}}},\"dsm_image\":{\"innerContent\":{\"desktop\":{\"value\":{\"src\":\"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTA4MCIgaGVpZ2h0PSI1NDAiIHZpZXdCb3g9IjAgMCAxMDgwIDU0MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPHBhdGggZmlsbD0iI0VCRUJFQiIgZD0iTTAgMGgxMDgwdjU0MEgweiIvPgogICAgICAgIDxwYXRoIGQ9Ik00NDUuNjQ5IDU0MGgtOTguOTk1TDE0NC42NDkgMzM3Ljk5NSAwIDQ4Mi42NDR2LTk4Ljk5NWwxMTYuMzY1LTExNi4zNjVjMTUuNjItMTUuNjIgNDAuOTQ3LTE1LjYyIDU2LjU2OCAwTDQ0NS42NSA1NDB6IiBmaWxsLW9wYWNpdHk9Ii4xIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgICAgICA8Y2lyY2xlIGZpbGwtb3BhY2l0eT0iLjA1IiBmaWxsPSIjMDAwIiBjeD0iMzMxIiBjeT0iMTQ4IiByPSI3MCIvPgogICAgICAgIDxwYXRoIGQ9Ik0xMDgwIDM3OXYxMTMuMTM3TDcyOC4xNjIgMTQwLjMgMzI4LjQ2MiA1NDBIMjE1LjMyNEw2OTkuODc4IDU1LjQ0NmMxNS42Mi0xNS42MiA0MC45NDgtMTUuNjIgNTYuNTY4IDBMMTA4MCAzNzl6IiBmaWxsLW9wYWNpdHk9Ii4yIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgIDwvZz4KPC9zdmc+Cg==\"}}}},\"dsm_image_icon_width\":{\"innerContent\":{\"desktop\":{\"value\":\"100%\"}}},\"dsm_timeline_content_spacing\":{\"decoration\":{\"spacing\":{\"desktop\":{\"value\":{\"margin\":{\"top\":\"15px\"}}}}}}}');\n;// ./packages/module-library/content-timeline-child/settings-content.js\n\n// Wordpress dependencies.\n\n// Divi package dependencies.\n\n\n\n\nfunction content_timeline_child_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs,\n  groupConfiguration\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _getAttrByMode4, _getAttrByMode5;\n  const contentElements = groupConfiguration?.contentElements;\n  const dsmUseIcon = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_use_icon?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'off';\n  const dsmUseIconImage = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_use_icon_image?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'on';\n  const dsmContentType = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_content_type?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'custom';\n  const dsmUsePointerElement = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_use_pointer_element?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : 'off';\n  const dsmSelectPointerOption = (_getAttrByMode5 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_select_pointer_option?.innerContent)) !== null && _getAttrByMode5 !== void 0 ? _getAttrByMode5 : 'icon';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"ct_child_media\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image & icon', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_use_icon_image.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show image or icon', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Display media beside or above the card text.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'on'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_image.innerContent\",\n    subName: \"src\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      sticky: false\n    },\n    visible: 'off' === dsmUseIcon && 'on' === dsmUseIconImage\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_use_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use icon instead of image', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmUseIconImage,\n    defaultAttr: {\n      desktop: {\n        value: 'on'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"font_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmUseIcon && 'on' === dsmUseIconImage\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_icon_image_placement.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Placement', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Position relative to the title and text.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmUseIconImage,\n    defaultAttr: {\n      desktop: {\n        value: 'top'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      top: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top', 'dsm-supreme-modules-pro-for-divi')\n      },\n      left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"ct_child_text\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title & description', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_title.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    },\n    defaultAttr: {\n      desktop: {\n        value: ''\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content_type.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Description type', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rich text in the builder, or any shortcode output.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'custom'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      custom: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rich text', 'dsm-supreme-modules-pro-for-divi')\n      },\n      shortcode: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shortcode', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content.innerContent\",\n    subName: \"text\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Description', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'custom' === dsmContentType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    },\n    defaultAttr: {\n      desktop: {\n        value: {\n          text: ''\n        }\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RichTextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_shortcode.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shortcode', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    },\n    visible: 'shortcode' === dsmContentType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"ct_child_step_pointer\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Step pointer', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_use_pointer_element.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Custom pointer on timeline', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Replace the default dot with your own icon or image on the center line.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'off'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"pointer_icon_image\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pointer graphic', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmUsePointerElement\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_select_pointer_option.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Type', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmUsePointerElement,\n    defaultAttr: {\n      desktop: {\n        value: 'icon'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      icon: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi')\n      },\n      image: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_point_image.innerContent\",\n    subName: \"src\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      sticky: false\n    },\n    visible: 'image' === dsmSelectPointerOption && 'on' === dsmUsePointerElement\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_point_font_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'icon' === dsmSelectPointerOption && 'on' === dsmUsePointerElement\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null)))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"ct_child_opposite\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Opposite label', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_opposite_text.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Label text', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Short text on the opposite side of the card (e.g. a date). Leave empty to hide.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"ct_child_button\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_text.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_url.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Link', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_url_new_window.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Open in new tab', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      off: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('No', 'dsm-supreme-modules-pro-for-divi')\n      },\n      on: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Yes', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), contentElements ? /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleGroups, {\n    groups: {\n      contentElements\n    }\n  }) : null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const content_timeline_child_settings_content = (content_timeline_child_settings_content_SettingsContent);\n;// ./packages/module-library/content-timeline-child/settings-design.js\n\n// Wordpress dependencies.\n\n// Divi package dependencies.\n\n\n\n\n\nfunction content_timeline_child_settings_design_SettingsDesign({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _defaultSettingsAttrs;\n  const dsmIconImagePlacement = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_icon_image_placement?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'top';\n  const dsmUseIcon = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_use_icon?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'off';\n  const dsmUseIconImage = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_use_icon_image?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'on';\n  const button = attrs?.button?.decoration?.button?.desktop?.value?.enable;\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"ct_child_typography\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Typography', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"ct_child_typography_align\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text alignment', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_horizontal_alignment.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Horizontal alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Aligns title, description, and button within this item.', 'dsm-supreme-modules-pro-for-divi'),\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    },\n    defaultAttr: content_timeline_child_module_default_render_attributes_namespaceObject.dsm_horizontal_alignment.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"header.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: true\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"content.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Description', 'dsm-supreme-modules-pro-for-divi'),\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Description', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"ct_child_card\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Card', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"ct_child_card_look\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Appearance', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"card_style.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"card_style.decoration.boxShadow\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"ct_child_card_spacing\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Spacing', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_card_margin.decoration.spacing\",\n    grouped: false,\n    fields: {\n      padding: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_card_padding.decoration.spacing\",\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"ct_child_timeline_content_spacing\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content Wrapper', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_timeline_content_spacing.decoration.spacing\",\n    grouped: false\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"ct_child_opposite\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Opposite label', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_opposite_bg_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_opposite_padding.decoration.spacing\",\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"opposite_text.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Label', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      },\n      textAlign: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"opposite_style.decoration.border\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Label', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"opposite_style.decoration.boxShadow\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Label', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"ct_child_button\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ButtonGroupContainer, {\n    attrName: \"button\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi'),\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi'),\n    defaultGroupAttr: (_defaultSettingsAttrs = defaultSettingsAttrs?.button?.decoration?.asMutable({\n      deep: true\n    })) !== null && _defaultSettingsAttrs !== void 0 ? _defaultSettingsAttrs : {},\n    grouped: false,\n    fields: {\n      alignment: {\n        render: true\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_alignment.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Custom alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('When Divi button style is off.', 'dsm-supreme-modules-pro-for-divi'),\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    },\n    defaultAttr: content_timeline_child_module_default_render_attributes_namespaceObject.button_alignment.innerContent,\n    visible: 'off' === button\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"ct_child_media_design\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image & icon', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_icon_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon color', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmUseIcon && 'on' === dsmUseIconImage\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_icon_bg_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon background', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmUseIcon && 'on' === dsmUseIconImage\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_icon_font_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon size', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 120,\n    step: 1,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_image_width.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image width', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    step: 1,\n    defaultUnit: '%'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_icon_image_align.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Alignment (stacked layout)', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('When image or icon is above the text.', 'dsm-supreme-modules-pro-for-divi'),\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    },\n    visible: 'top' === dsmIconImagePlacement\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image / icon', 'dsm-supreme-modules-pro-for-divi'),\n    attrName: \"image_icon_style.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"image_icon_style.decoration.boxShadow\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image / icon', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_image_icon_margin.decoration.spacing\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image / icon', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      padding: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_image_icon_padding.decoration.spacing\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image / icon', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null));\n}\n/* harmony default export */ const content_timeline_child_settings_design = (content_timeline_child_settings_design_SettingsDesign);\n;// ./packages/module-library/content-timeline-child/settings-advanced.js\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\nfunction content_timeline_child_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_content_timeline_child\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const content_timeline_child_settings_advanced = (content_timeline_child_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/content-timeline-child/module-styles.js\n\n\n\n\nconst cardIconFontCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'font-family': true\n    }\n  });\n  addNativeIconFontFamily(declarations, attrValue);\n  addNativeIconFontContent(declarations, attrValue);\n  return declarations.value;\n};\nconst pointerIconFontCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'font-family': true\n    }\n  });\n  addNativeIconFontFamily(declarations, attrValue);\n  addNativeIconFontContent(declarations, attrValue);\n  return declarations.value;\n};\n\n/**\n * Pointer icon renders in a grid sibling column, not inside the module root.\n *\n * @param {string} orderClass Module order class (e.g. `.dsm_content_timeline_child_0`).\n * @return {string}\n */\nconst buildTimelinePointerIconSelector = orderClass => `.dsm-content-timeline-items-wrapper .dsm-content-timeline-middle${orderClass} .et-pb-icon.dsm-icon::before`;\nconst buildTimelinePointerWebfontGlyphSelector = orderClass => `.dsm-content-timeline-items-wrapper .dsm-content-timeline-middle${orderClass} .et-pb-icon.dsm-icon .dsm-webfont-icon-glyph`;\nconst buildTimelineCardWebfontGlyphSelector = orderClass => `${orderClass} .dsm-icon-wrapper .et-pb-icon.dsm-icon .dsm-webfont-icon-glyph`;\nconst module_styles_imageIconAlignDeclaration = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'justify-content': true\n    }\n  });\n  declarations.add('display', 'flex');\n  if ('left' === attrValue) {\n    declarations.add('justify-content', 'flex-start');\n  }\n  if ('center' === attrValue) {\n    declarations.add('justify-content', 'center');\n  }\n  if ('right' === attrValue) {\n    declarations.add('justify-content', 'flex-end');\n  }\n  return declarations.value;\n};\nconst module_styles_buttonAlignDeclaration = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'text-align': true\n    }\n  });\n  if ('left' === attrValue) {\n    declarations.add('text-align', 'left');\n  }\n  if ('center' === attrValue) {\n    declarations.add('text-align', 'center');\n  }\n  if ('right' === attrValue) {\n    declarations.add('text-align', 'right');\n  }\n  return declarations.value;\n};\n\n/**\n * React function component for rendering module style.\n */\nconst content_timeline_child_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'header'\n  }), elements.style({\n    attrName: 'content'\n  }), elements.style({\n    attrName: 'opposite_text'\n  }), elements.style({\n    attrName: 'dsm_card_margin'\n  }), elements.style({\n    attrName: 'dsm_timeline_content_spacing'\n  }), elements.style({\n    attrName: 'card_style'\n  }), elements.style({\n    attrName: 'opposite_style'\n  }), elements.style({\n    attrName: 'dsm_opposite_padding'\n  }), elements.style({\n    attrName: 'opposite_text'\n  }), elements.style({\n    attrName: 'image_icon_style'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-content-timeline-content-wrapper`,\n    attr: attrs?.dsm_bg_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-content-timeline-content-wrapper, ${orderClass} .dsm-image-wrapper`,\n    attr: attrs?.dsm_horizontal_alignment?.innerContent,\n    property: \"text-align\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et_pb_button_module_wrapper`,\n    attr: attrs?.button_alignment?.innerContent,\n    declarationFunction: module_styles_buttonAlignDeclaration\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-icon-wrapper .et-pb-icon.dsm-icon::before`,\n    attr: attrs?.font_icon?.innerContent,\n    declarationFunction: cardIconFontCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: buildTimelineCardWebfontGlyphSelector(orderClass),\n    attr: attrs?.font_icon?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: buildTimelinePointerIconSelector(orderClass),\n    attr: attrs?.dsm_point_font_icon?.innerContent,\n    declarationFunction: pointerIconFontCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: buildTimelinePointerWebfontGlyphSelector(orderClass),\n    attr: attrs?.dsm_point_font_icon?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm-content-timeline-items-wrapper ${orderClass} .dsm-content-timeline-date .date`,\n    attr: attrs?.dsm_opposite_bg_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm-content-timeline-items-wrapper ${orderClass} .dsm-content-timeline-date .date`,\n    attr: attrs?.dsm_opposite_content_width?.innerContent,\n    property: \"width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm-content-timeline-items-wrapper ${orderClass} .dsm-icon-wrapper .et-pb-icon.dsm-icon`,\n    attr: attrs?.dsm_icon_font_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: buildTimelineCardWebfontGlyphSelector(orderClass),\n    attr: attrs?.dsm_icon_font_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm-content-timeline-items-wrapper ${orderClass} .dsm-image-wrapper .dsm-image`,\n    attr: attrs?.dsm_image_width?.innerContent,\n    property: \"max-width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm-content-timeline-items-wrapper ${orderClass} .dsm-icon-wrapper .et-pb-icon.dsm-icon`,\n    attr: attrs?.dsm_icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm-content-timeline-items-wrapper ${orderClass} .dsm-icon-wrapper .et-pb-icon.dsm-icon`,\n    attr: attrs?.dsm_icon_bg_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm-content-timeline-items-wrapper ${orderClass} .dsm-image-wrapper, .dsm-content-timeline-items-wrapper ${orderClass} .dsm-icon-wrapper`,\n    attr: attrs?.dsm_icon_image_align?.innerContent,\n    declarationFunction: module_styles_imageIconAlignDeclaration\n  }));\n};\n;// ./packages/module-library/content-timeline-child/edit.js\n\n\n\n\n// Divi package dependencies.\n\n\n// Custom dependencies.\n\n\n\n\n\n\n/**\n * Normalize upload innerContent for `DynamicValueResolver` / `<img src>` (object `{ src }` or string).\n *\n * @param {*} raw From `getAttrByMode( attrs.*.innerContent )`.\n * @return {string}\n */\nconst content_timeline_child_edit_getUploadValueForDynamicData = raw => {\n  if (raw == null || raw === '') {\n    return '';\n  }\n  if (typeof raw === 'string' || typeof raw === 'number') {\n    return String(raw);\n  }\n  if (typeof raw === 'object') {\n    if (typeof raw.src === 'string' && raw.src !== '') {\n      return raw.src;\n    }\n    if (typeof raw.url === 'string' && raw.url !== '') {\n      return raw.url;\n    }\n  }\n  return '';\n};\n\n/**\n * Rich text stores `innerContent.*.value` as `{ text: string }` (or legacy string).\n *\n * @param {Object|undefined} innerContent Attribute innerContent.\n * @param {string}           fallback      Default when empty.\n * @return {string} HTML string for the description.\n */\nconst getRichTextInnerString = (innerContent, fallback) => {\n  const val = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(innerContent);\n  if (typeof val === 'string') {\n    return val;\n  }\n  if (val && typeof val === 'object' && typeof val.text === 'string') {\n    return val.text;\n  }\n  return fallback;\n};\n\n/**\n * React function component for registering module script data.\n */\n\nconst content_timeline_child_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction content_timeline_child_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements,\n  parentAttrs,\n  parentId,\n  childrenIds,\n  canvasId,\n  isLooped,\n  loopIndex,\n  ...remainingProps\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _getAttrByMode4, _getAttrByMode5, _getAttrByMode6, _getAttrByMode7, _getAttrByMode8, _getAttrByMode9, _getAttrByMode0, _getAttrByMode1, _getAttrByMode10, _attrs$header$decorat, _getAttrByMode11, _getAttrByMode12, _remainingProps$isLas;\n  const orderIndex = useOrderIndex(parentId, id);\n  // Match PHP `ContentTimelineChild` middle/opposite markup: `dsm_content_timeline_child_{orderIndex}`.\n  const timelineChildOrderClass = `dsm_content_timeline_child_${orderIndex}`;\n  const imageUrl = content_timeline_child_edit_getUploadValueForDynamicData((0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_image?.innerContent));\n  const title_text = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_title?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : '';\n  const dsm_use_pointer_element = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_use_pointer_element?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'off';\n  const dsm_select_pointer_option = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_select_pointer_option?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'icon';\n  const dsmPointImageUrl = content_timeline_child_edit_getUploadValueForDynamicData((0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_point_image?.innerContent));\n  const content_type = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_content_type?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : 'custom';\n  const dsm_shortcode = (_getAttrByMode5 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_shortcode?.innerContent)) !== null && _getAttrByMode5 !== void 0 ? _getAttrByMode5 : '';\n  const content_text = getRichTextInnerString(attrs?.dsm_content?.innerContent, 'Your description goes here. Edit or remove this text inline or in the description settings');\n  const opposite_text = (_getAttrByMode6 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_opposite_text?.innerContent)) !== null && _getAttrByMode6 !== void 0 ? _getAttrByMode6 : '';\n  const use_icon_image = (_getAttrByMode7 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_use_icon_image?.innerContent)) !== null && _getAttrByMode7 !== void 0 ? _getAttrByMode7 : 'on';\n  const dsm_use_icon = (_getAttrByMode8 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_use_icon?.innerContent)) !== null && _getAttrByMode8 !== void 0 ? _getAttrByMode8 : 'off';\n  const cardFontIcon = (_getAttrByMode9 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.font_icon?.innerContent)) !== null && _getAttrByMode9 !== void 0 ? _getAttrByMode9 : {};\n  const pointerFontIcon = (_getAttrByMode0 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_point_font_icon?.innerContent)) !== null && _getAttrByMode0 !== void 0 ? _getAttrByMode0 : {};\n  const dsm_icon_image_placement = (_getAttrByMode1 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_icon_image_placement?.innerContent)) !== null && _getAttrByMode1 !== void 0 ? _getAttrByMode1 : 'top';\n  const button_text = (_getAttrByMode10 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_text?.innerContent)) !== null && _getAttrByMode10 !== void 0 ? _getAttrByMode10 : '';\n  const header_level = (_attrs$header$decorat = attrs?.header?.decoration?.font?.font?.desktop?.value?.headingLevel) !== null && _attrs$header$decorat !== void 0 ? _attrs$header$decorat : parentAttrs?.header?.decoration?.font?.font?.desktop?.value?.headingLevel;\n  const dsm_pointer_icon_font_size = (_getAttrByMode11 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(parentAttrs?.dsm_pointer_icon_font_size?.innerContent)) !== null && _getAttrByMode11 !== void 0 ? _getAttrByMode11 : '20';\n  const pointerSize = dsm_use_pointer_element === 'on' ? `${parseInt(dsm_pointer_icon_font_size) + 20}px` : '20px';\n  const hasNestedModules = Array.isArray(childrenIds) && childrenIds.length > 0;\n  const nestableLayoutDisplay = (_getAttrByMode12 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.module?.decoration?.layout?.desktop?.value?.display)) !== null && _getAttrByMode12 !== void 0 ? _getAttrByMode12 : 'flex';\n  const nestableWrapperClassName = ['dsm-timeline-nestable', 'grid' === nestableLayoutDisplay ? 'et_grid_module' : 'et_flex_module'].join(' ');\n  const ButtonMarkup = !(0,lodash.isEmpty)(button_text) && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"et_pb_button_module_wrapper\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n    className: \"et_pb_button\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", null, button_text)));\n  const isLastItem = (_remainingProps$isLas = remainingProps?.isLast) !== null && _remainingProps$isLas !== void 0 ? _remainingProps$isLas : false;\n  const isOppositeText = !(0,lodash.isEmpty)(opposite_text) ? 'dsm-opposite-text' : '';\n  const parentTimeline = (0,external_divi_data_namespaceObject.useSelect)(select => {\n    if (!parentId) {\n      return null;\n    }\n    return select('divi/edit-post').getModule(parentId);\n  }, [parentId]);\n  const timelineChildCount = Array.isArray(parentTimeline?.childrenIds) ? parentTimeline.childrenIds.length : 0;\n  const totalForArticleLabel = Math.max(1, timelineChildCount, orderIndex + 1);\n  const hasTitleForLabel = 'custom' === content_type && !(0,lodash.isEmpty)(String(title_text).trim());\n  const articleAriaLabel = (0,external_window_vendor_wp_i18n_namespaceObject.sprintf)(/* translators: 1: current item number (1-based), 2: total items */\n  (0,external_window_vendor_wp_i18n_namespaceObject.__)('Timeline item %1$d of %2$d', 'dsm-supreme-modules-pro-for-divi'), orderIndex + 1, totalForArticleLabel);\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    childrenIds: childrenIds,\n    scriptDataComponent: content_timeline_child_edit_ModuleScriptData,\n    stylesComponent: content_timeline_child_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat, _remainingProps$isLas2;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n      if ((_remainingProps$isLas2 = remainingProps?.isLast) !== null && _remainingProps$isLas2 !== void 0 ? _remainingProps$isLas2 : false) {\n        params.classnamesInstance.add('dsm-last');\n      }\n      params.classnamesInstance.add('dsm-content-timeline-item');\n      params.classnamesInstance.add(`dsm-image-icon_placement-${dsm_icon_image_placement}`);\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"et_pb_module_inner dsm-content-timeline-item-wrapper\",\n    role: \"article\",\n    \"aria-labelledby\": hasTitleForLabel ? `dsm-timeline-title-${id}` : undefined,\n    \"aria-label\": hasTitleForLabel ? undefined : articleAriaLabel\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-content-timeline-content-wrapper dsm-visibility\"\n  }, !(0,lodash.isEmpty)(opposite_text) && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-content-timeline-date dsm-mobile\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"date\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: opposite_text\n  }))), use_icon_image !== 'off' && 'off' === dsm_use_icon && !(0,lodash.isEmpty)(imageUrl) && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-image-wrapper\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-image\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: imageUrl\n  }, resolvedImage => /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n    src: content_timeline_child_edit_getUploadValueForDynamicData(resolvedImage),\n    \"data-full-image\": imageUrl,\n    alt: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content Timeline Image', 'dsm-supreme-modules-pro-for-divi')\n  })))), use_icon_image !== 'off' && 'on' === dsm_use_icon && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-icon-wrapper\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(ModuleIconHost, {\n    icon: cardFontIcon,\n    className: \"dsm-icon\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-timeline-content\"\n  }, hasTitleForLabel && /*#__PURE__*/external_vendor_React_default().createElement(header_level || 'h2', {\n    className: 'dsm-title',\n    id: `dsm-timeline-title-${id}`\n  }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: title_text\n  })), 'custom' === content_type ? /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: content_text\n  }, resolvedContent => /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-description\",\n    dangerouslySetInnerHTML: {\n      __html: 'string' === typeof resolvedContent ? resolvedContent : ''\n    }\n  })) : /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-description\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(divi_shortcode_content_renderer, {\n    shortcode: dsm_shortcode,\n    previewKey: `dsm-content-timeline-shortcode-${id}`\n  })), ButtonMarkup, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: nestableWrapperClassName\n  }, hasNestedModules ? /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ChildModulesContainer, {\n    ids: childrenIds,\n    isLooped: isLooped,\n    loopIndex: loopIndex,\n    canvasId: canvasId\n  }) : /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleAdd, {\n    moduleId: id,\n    basicModuleType: \"module\",\n    addChild: true\n  })))))), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: `dsm-content-timeline-middle ${timelineChildOrderClass} ${isLastItem ? 'dsm-last-middle' : ''}`,\n    style: {\n      '--item-index': orderIndex\n    },\n    \"aria-hidden\": \"true\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-content-timeline-middle-circle\",\n    style: {\n      '--pointer-size': pointerSize\n    }\n  }, 'on' === dsm_use_pointer_element && 'icon' === dsm_select_pointer_option && /*#__PURE__*/external_vendor_React_default().createElement(ModuleIconHost, {\n    icon: pointerFontIcon,\n    className: \"dsm-icon dsm-timeline-pointer-icon\",\n    nativeRender: \"inline\"\n  }), 'on' === dsm_use_pointer_element && 'image' === dsm_select_pointer_option && !(0,lodash.isEmpty)(dsmPointImageUrl) && /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm-image\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: dsmPointImageUrl\n  }, resolvedPointImage => /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n    src: content_timeline_child_edit_getUploadValueForDynamicData(resolvedPointImage),\n    alt: \"\"\n  })))), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-content-timeline-middle-line\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-content-timeline-tree-animation\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: `${timelineChildOrderClass} dsm-content-timeline-opposite dsm-content-timeline-date dsm-desktop ${isOppositeText}`,\n    style: {\n      '--item-index': orderIndex\n    },\n    \"aria-hidden\": (0,lodash.isEmpty)(opposite_text) ? true : undefined\n  }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: opposite_text\n  }, resolvedOpposite => /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"date\"\n  }, resolvedOpposite))));\n}\n/* harmony default export */ const content_timeline_child_edit = (content_timeline_child_edit_Edit);\n;// ./packages/module-library/content-timeline-child/conversion-outline.js\n\n\nconst content_timeline_child_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'card_style.decoration.border',\n      opposite_border: 'opposite_style.decoration.border',\n      image_icon: 'image_icon_style.decoration.border'\n    },\n    box_shadow: {\n      default: 'card_style.decoration.boxShadow',\n      'image-icon': 'image_icon_style.decoration.boxShadow',\n      opposite_shadow: 'opposite_style.decoration.boxShadow'\n    },\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    text_shadow: {\n      default: 'module.advanced.text.textShadow'\n    },\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    fonts: {\n      header: 'header.decoration.font',\n      content: 'content.decoration.font',\n      opposite_text: 'opposite_text.decoration.font'\n    },\n    margin_padding: 'module.decoration.spacing',\n    link_options: 'module.advanced.link',\n    button: {\n      button: 'button'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    title: 'title.innerContent.*',\n    dsm_use_icon_image: 'dsm_use_icon_image.innerContent.*',\n    dsm_image: 'dsm_image.innerContent.*.src',\n    dsm_use_icon: 'dsm_use_icon.innerContent.*',\n    dsm_icon_color: 'dsm_icon_color.innerContent.*',\n    font_icon: 'font_icon.innerContent.*',\n    dsm_point_font_icon: 'dsm_point_font_icon.innerContent.*',\n    dsm_icon_bg_color: 'dsm_icon_bg_color.innerContent.*',\n    dsm_icon_image_placement: 'dsm_icon_image_placement.innerContent.*',\n    dsm_horizontal_alignment: 'dsm_horizontal_alignment.innerContent.*',\n    dsm_content_type: 'dsm_content_type.innerContent.*',\n    dsm_content: 'dsm_content.innerContent.*.text',\n    dsm_shortcode: 'dsm_shortcode.innerContent.*',\n    dsm_use_pointer_element: 'dsm_use_pointer_element.innerContent.*',\n    dsm_select_pointer_option: 'dsm_select_pointer_option.innerContent.*',\n    dsm_point_image: 'dsm_point_image.innerContent.*.src',\n    dsm_title: 'dsm_title.innerContent.*',\n    parent_header_level: 'parent_header_level.innerContent.*',\n    title_text: 'title_text.innerContent.*',\n    button_text: 'button_text.innerContent.*',\n    button_url: 'button_url.innerContent.*',\n    button_url_new_window: 'button_url_new_window.innerContent.*',\n    dsm_opposite_text: 'dsm_opposite_text.innerContent.*',\n    button_alignment: 'button_alignment.innerContent.*',\n    dsm_image_icon_width: 'dsm_image_icon_width.innerContent.*',\n    dsm_icon_image_align: 'dsm_icon_image_align.innerContent.*',\n    dsm_opposite_bg_color: 'dsm_opposite_bg_color.innerContent.*',\n    dsm_opposite_content_width: 'dsm_opposite_content_width.innerContent.*',\n    dsm_opposite_padding: 'dsm_opposite_padding.decoration.spacing.*.padding',\n    dsm_card_margin: 'dsm_card_margin.decoration.spacing.*.margin',\n    dsm_card_padding: 'dsm_card_padding.decoration.spacing.*.padding',\n    image_icon_padding: 'image_icon_padding.decoration.spacing.*.padding',\n    image_icon_margin: 'image_icon_margin.decoration.spacing.*.margin',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    dsm_opposite_padding: 'convertSpacing',\n    dsm_card_margin: 'convertSpacing',\n    dsm_card_padding: 'convertSpacing',\n    image_icon_padding: 'convertSpacing',\n    image_icon_margin: 'convertSpacing',\n    font_icon: external_divi_conversion_namespaceObject.convertFontIcon,\n    dsm_point_font_icon: external_divi_conversion_namespaceObject.convertFontIcon,\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/content-timeline-child/index.js\n// External library dependencies.\n\n// Wordpress dependencies.\n\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\nconst content_timeline_child_defaultAttrs = content_timeline_child_module_default_render_attributes_namespaceObject;\nconst contentTimelineChildModule = {\n  metadata: content_timeline_child_module_namespaceObject,\n  conversionOutline: content_timeline_child_conversion_outline_conversionOutline,\n  renderers: {\n    edit: content_timeline_child_edit,\n    styles: content_timeline_child_module_styles_ModuleStyles\n  },\n  defaultAttrs: content_timeline_child_defaultAttrs,\n  parentsName: ['dsm/content-timeline'],\n  callbacks: {\n    content: {\n      elements: external_divi_moduleUtils_namespaceObject.elementsCallbacks\n    }\n  },\n  settings: {\n    content: content_timeline_child_settings_content,\n    design: content_timeline_child_settings_design,\n    advanced: content_timeline_child_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    ...content_timeline_child_module_default_render_attributes_namespaceObject,\n    dsm_title: {\n      innerContent: {\n        desktop: {\n          value: 'Your Title Goes Here'\n        }\n      }\n    },\n    dsm_content: {\n      innerContent: {\n        desktop: {\n          value: {\n            text: 'Your description goes here. Edit or remove this text inline or in the description settings'\n          }\n        }\n      }\n    }\n  }\n};\n/* harmony default export */ const content_timeline_child = (contentTimelineChildModule);\n;// ./packages/module-library/contact-form7/module.json\nconst contact_form7_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/contact-form7\",\"d4Shortcode\":\"dsm_contact_form_7\",\"title\":\"Supreme Contact Form 7\",\"titles\":\"Supreme Contact Form 7\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/contact-form7\",\"moduleClassName\":\"dsm_contact_form_7\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{}}}},\"cf7_library\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"show_validation\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"labels\":{\"type\":\"object\",\"selector\":\"{{selector}} .wpcf7-form label\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"placeholder\":{\"type\":\"object\",\"selector\":\"{{selector}} .wpcf7-form-control.wpcf7-text::placeholder, {{selector}} .wpcf7-form-control.wpcf7-textarea::placeholder\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"radio_checkbox\":{\"type\":\"object\",\"selector\":\"{{selector}} .wpcf7-list-item-label\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"file\":{\"type\":\"object\",\"selector\":\"{{selector}} .wpcf7-form-control.wpcf7-file\",\"childrenSanitizer\":\"et_core_esc_previously\",\"settings\":{\"decoration\":{\"background\":{},\"border\":{},\"sizing\":{},\"boxShadow\":{}}},\"styleProps\":{\"background\":{\"selector\":\"{{selector}} .wpcf7-form-control.wpcf7-file\"},\"border\":{\"selector\":\"{{selector}} .wpcf7-form-control.wpcf7-file\",\"important\":true},\"sizing\":{\"selector\":\"{{selector}} .wpcf7-form-control.wpcf7-file\"},\"boxShadow\":{\"selector\":\"{{selector}} .wpcf7-form-control.wpcf7-file\",\"useOverlay\":true}}},\"error_msg\":{\"type\":\"object\",\"selector\":\"{{selector}} .wpcf7-not-valid-tip\",\"childrenSanitizer\":\"et_core_esc_previously\",\"settings\":{\"decoration\":{\"background\":{},\"spacing\":{},\"sizing\":{}}},\"styleProps\":{\"background\":{\"selector\":\"{{selector}} .wpcf7-not-valid-tip\"},\"spacing\":{\"selector\":\"{{selector}} .wpcf7-not-valid-tip\",\"important\":true},\"sizing\":{\"selector\":\"{{selector}} .wpcf7-not-valid-tip\"},\"border\":{\"selector\":\"{{selector}} .wpcf7-not-valid-tip\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .wpcf7-not-valid-tip\",\"useOverlay\":true}}},\"error_validation\":{\"type\":\"object\",\"selector\":\"{{selector}} .wpcf7 form.invalid .wpcf7-response-output, {{selector}} .wpcf7 form.unaccepted .wpcf7-response-output, {{selector}} .wpcf7-response-output.wpcf7-validation-errors\",\"childrenSanitizer\":\"et_core_esc_previously\",\"settings\":{\"decoration\":{\"background\":{},\"spacing\":{},\"sizing\":{}}},\"styleProps\":{\"background\":{\"selector\":\"{{selector}} .wpcf7 form.invalid .wpcf7-response-output, {{selector}} .wpcf7 form.unaccepted .wpcf7-response-output, {{selector}} .wpcf7-response-output.wpcf7-validation-errors\"},\"spacing\":{\"selector\":\"{{selector}} .wpcf7 form.invalid .wpcf7-response-output, {{selector}} .wpcf7 form.unaccepted .wpcf7-response-output, {{selector}} .wpcf7-response-output.wpcf7-validation-errors\",\"important\":true},\"sizing\":{\"selector\":\"{{selector}} .wpcf7 form.invalid .wpcf7-response-output, {{selector}} .wpcf7 form.unaccepted .wpcf7-response-output, {{selector}} .wpcf7-response-output.wpcf7-validation-errors\"},\"border\":{\"selector\":\"{{selector}} .wpcf7 form.invalid .wpcf7-response-output, {{selector}} .wpcf7 form.unaccepted .wpcf7-response-output, {{selector}} .wpcf7-response-output.wpcf7-validation-errors\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .wpcf7 form.invalid .wpcf7-response-output, {{selector}} .wpcf7 form.unaccepted .wpcf7-response-output, {{selector}} .wpcf7-response-output.wpcf7-validation-errors\",\"useOverlay\":true}}},\"validation_success\":{\"type\":\"object\",\"selector\":\"{{selector}} .wpcf7 form.sent .wpcf7-response-output, {{selector}} .wpcf7 form .wpcf7-response-output.wpcf7-mail-sent-ok, {{selector}} .wpcf7 form.sent .wpcf7-response-output.wpcf7-mail-sent-ok\",\"childrenSanitizer\":\"et_core_esc_previously\",\"settings\":{\"decoration\":{\"background\":{},\"spacing\":{},\"sizing\":{}}},\"styleProps\":{\"background\":{\"selector\":\"{{selector}} .wpcf7 form.sent .wpcf7-response-output, {{selector}} .wpcf7 form .wpcf7-response-output.wpcf7-mail-sent-ok, {{selector}} .wpcf7 form.sent .wpcf7-response-output.wpcf7-mail-sent-ok\"},\"spacing\":{\"selector\":\"{{selector}} .wpcf7 form.sent .wpcf7-response-output, {{selector}} .wpcf7 form .wpcf7-response-output.wpcf7-mail-sent-ok, {{selector}} .wpcf7 form.sent .wpcf7-response-output.wpcf7-mail-sent-ok\",\"important\":true},\"sizing\":{\"selector\":\"{{selector}} .wpcf7 form.sent .wpcf7-response-output, {{selector}} .wpcf7 form .wpcf7-response-output.wpcf7-mail-sent-ok, {{selector}} .wpcf7 form.sent .wpcf7-response-output.wpcf7-mail-sent-ok\"},\"border\":{\"selector\":\"{{selector}} .wpcf7 form.sent .wpcf7-response-output, {{selector}} .wpcf7 form .wpcf7-response-output.wpcf7-mail-sent-ok, {{selector}} .wpcf7 form.sent .wpcf7-response-output.wpcf7-mail-sent-ok\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .wpcf7 form.sent .wpcf7-response-output, {{selector}} .wpcf7 form .wpcf7-response-output.wpcf7-mail-sent-ok, {{selector}} .wpcf7 form.sent .wpcf7-response-output.wpcf7-mail-sent-ok\",\"useOverlay\":true}}},\"input_textarea_select\":{\"type\":\"object\",\"selector\":\"{{selector}} .wpcf7-form-control.wpcf7-text, {{selector}} .wpcf7-form-control.wpcf7-tel, {{selector}} .wpcf7-form-control.wpcf7-url, {{selector}} .wpcf7-form-control.wpcf7-quiz, {{selector}} .wpcf7-form-control.wpcf7-number, {{selector}} .wpcf7-form-control.wpcf7-textarea, {{selector}} .wpcf7-form-control.wpcf7-select, {{selector}} .wpcf7-form-control.wpcf7-date\",\"childrenSanitizer\":\"et_core_esc_previously\",\"settings\":{\"decoration\":{\"background\":{},\"spacing\":{},\"sizing\":{}}},\"styleProps\":{\"background\":{\"selector\":\"{{selector}} .wpcf7-form-control.wpcf7-text, {{selector}} .wpcf7-form-control.wpcf7-tel, {{selector}} .wpcf7-form-control.wpcf7-url, {{selector}} .wpcf7-form-control.wpcf7-quiz, {{selector}} .wpcf7-form-control.wpcf7-number, {{selector}} .wpcf7-form-control.wpcf7-textarea, {{selector}} .wpcf7-form-control.wpcf7-select, {{selector}} .wpcf7-form-control.wpcf7-date\"},\"spacing\":{\"selector\":\"{{selector}} .wpcf7-form-control.wpcf7-text, {{selector}} .wpcf7-form-control.wpcf7-tel, {{selector}} .wpcf7-form-control.wpcf7-url, {{selector}} .wpcf7-form-control.wpcf7-quiz, {{selector}} .wpcf7-form-control.wpcf7-number, {{selector}} .wpcf7-form-control.wpcf7-textarea, {{selector}} .wpcf7-form-control.wpcf7-select, {{selector}} .wpcf7-form-control.wpcf7-date\",\"important\":true},\"sizing\":{\"selector\":\"{{selector}} .wpcf7-form-control.wpcf7-text, {{selector}} .wpcf7-form-control.wpcf7-tel, {{selector}} .wpcf7-form-control.wpcf7-url, {{selector}} .wpcf7-form-control.wpcf7-quiz, {{selector}} .wpcf7-form-control.wpcf7-number, {{selector}} .wpcf7-form-control.wpcf7-textarea, {{selector}} .wpcf7-form-control.wpcf7-select, {{selector}} .wpcf7-form-control.wpcf7-date\"},\"border\":{\"selector\":\"{{selector}} .wpcf7-form-control.wpcf7-text, {{selector}} .wpcf7-form-control.wpcf7-tel, {{selector}} .wpcf7-form-control.wpcf7-url, {{selector}} .wpcf7-form-control.wpcf7-quiz, {{selector}} .wpcf7-form-control.wpcf7-number, {{selector}} .wpcf7-form-control.wpcf7-textarea, {{selector}} .wpcf7-form-control.wpcf7-select, {{selector}} .wpcf7-form-control.wpcf7-date\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .wpcf7-form-control.wpcf7-text, {{selector}} .wpcf7-form-control.wpcf7-tel, {{selector}} .wpcf7-form-control.wpcf7-url, {{selector}} .wpcf7-form-control.wpcf7-quiz, {{selector}} .wpcf7-form-control.wpcf7-number, {{selector}} .wpcf7-form-control.wpcf7-textarea, {{selector}} .wpcf7-form-control.wpcf7-select, {{selector}} .wpcf7-form-control.wpcf7-date\",\"useOverlay\":true},\"font\":{\"selector\":\"{{selector}} .wpcf7-form-control.wpcf7-text, {{selector}} .wpcf7-form-control.wpcf7-tel, {{selector}} .wpcf7-form-control.wpcf7-url, {{selector}} .wpcf7-form-control.wpcf7-quiz, {{selector}} .wpcf7-form-control.wpcf7-number, {{selector}} .wpcf7-form-control.wpcf7-textarea, {{selector}} .wpcf7-form-control.wpcf7-select\"}}},\"date_field\":{\"type\":\"object\",\"selector\":\"{{selector}} .wpcf7-form-control.wpcf7-date\",\"childrenSanitizer\":\"et_core_esc_previously\",\"settings\":{\"decoration\":{\"font\":{}}},\"styleProps\":{\"font\":{\"selector\":\"{{selector}} .wpcf7-form-control.wpcf7-date\"}}},\"date_icon\":{\"type\":\"object\",\"selector\":\"{{selector}} .wpcf7-form-control.wpcf7-date::-webkit-calendar-picker-indicator\",\"childrenSanitizer\":\"et_core_esc_previously\",\"settings\":{\"decoration\":{\"font\":{}}},\"styleProps\":{\"font\":{\"selector\":\"{{selector}} .wpcf7-form-control.wpcf7-date::-webkit-calendar-picker-indicator\",\"important\":true}}},\"label_bottom_spacing\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_alignment\":{\"type\":\"object\",\"inlineEditor\":\"ButtonContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"file_padding\":{\"type\":\"object\",\"inlineEditor\":\"\",\"selector\":\"{{selector}} .wpcf7-form-control.wpcf7-file\",\"childrenSanitizer\":\"et_core_esc_previously\",\"settings\":{\"decoration\":{\"spacing\":{}}},\"styleProps\":{\"spacing\":{\"selector\":\"{{selector}} .wpcf7-form-control.wpcf7-file\",\"important\":true}}},\"button\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-custom-submit\",\"default\":{\"decoration\":{\"button\":{\"desktop\":{\"value\":{\"enable\":\"off\",\"icon\":{\"enable\":\"on\",\"onHover\":\"on\"}}}},\"border\":{\"desktop\":{\"value\":{\"styles\":{\"all\":{\"color\":\"\"}}}}},\"font\":{\"font\":{\"desktop\":{\"value\":{\"color\":\"\"}}}}}},\"elementType\":\"button\",\"styleProps\":{\"font\":{\"important\":{\"font\":{\"desktop\":{\"value\":{\"color\":true,\"font-size\":true,\"letter-spacing\":true}}}}},\"spacing\":{\"important\":true}}}}}');\n;// ./packages/module-library/contact-form7/settings-content.js\n\n// Wordpress dependencies.\n\n// Divi package dependencies.\n\n\n\n\nfunction contact_form7_settings_content_SettingsContent({\n  defaultSettingsAttrs\n}) {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Supreme Contact Form 7', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"cf7_library.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Contact Form 7', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Select a form created in Contact Form 7.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'none'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: dsmContactForms.forms\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"show_validation.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Error & Validation Messages', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show error and validation messages in the builder for styling. The form still works on the frontend only, like the Divi Contact Form module.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'off'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const contact_form7_settings_content = (contact_form7_settings_content_SettingsContent);\n;// ./packages/module-library/contact-form7/settings-design.js\n\n// Wordpress dependencies.\n\n\n// Divi package dependencies.\n\n\n\n\n\n/** D4 `get_advanced_fields_config()` — shared label / field / placeholder / radio / error / validation fonts. */\nconst cf7StandardFontDefaultGroupAttr = {\n  font: {\n    desktop: {\n      value: {\n        size: '14px',\n        lineHeight: '1.7em',\n        letterSpacing: '0px'\n      }\n    }\n  }\n};\n\n/** D4 `fonts.file` (11px; line-height hidden in D4). */\nconst cf7FileFontDefaultGroupAttr = {\n  font: {\n    desktop: {\n      value: {\n        size: '11px',\n        letterSpacing: '0px'\n      }\n    }\n  }\n};\n\n/** D4 `fonts.date_icon` default size (other typography tabs hidden in D4). */\nconst cf7DateIconFontDefaultGroupAttr = {\n  font: {\n    desktop: {\n      value: {\n        size: '14px'\n      }\n    }\n  }\n};\n\n/** D4 `borders.error_validation.defaults.border_styles`. */\nconst cf7ErrorValidationBorderDefaultGroupAttr = {\n  border: {\n    desktop: {\n      value: {\n        styles: {\n          all: {\n            width: '2px',\n            color: '#ffb900',\n            style: 'solid'\n          }\n        }\n      }\n    }\n  }\n};\n\n/** D4 `borders.validation_success.defaults.border_styles`. */\nconst cf7ValidationSuccessBorderDefaultGroupAttr = {\n  border: {\n    desktop: {\n      value: {\n        styles: {\n          all: {\n            width: '2px',\n            color: '#46b450',\n            style: 'solid'\n          }\n        }\n      }\n    }\n  }\n};\n\n/** D4 `button` default decoration (`module.json` / VB preset). */\nconst cf7ButtonDecorationDefaultGroupAttr = {\n  button: {\n    desktop: {\n      value: {\n        enable: 'off',\n        icon: {\n          enable: 'on',\n          onHover: 'on'\n        }\n      }\n    }\n  },\n  border: {\n    desktop: {\n      value: {\n        styles: {\n          all: {\n            color: ''\n          }\n        }\n      }\n    }\n  },\n  font: {\n    font: {\n      desktop: {\n        value: {\n          color: ''\n        }\n      }\n    }\n  }\n};\nfunction contact_form7_settings_design_SettingsDesign() {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"label\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Labels', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"label_bottom_spacing.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Spacing', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"labels.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Labels', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    defaultGroupAttr: cf7StandardFontDefaultGroupAttr,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"input\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Input, Textarea & Select', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"input_textarea_select.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text Input', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text Input', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true,\n    defaultGroupAttr: cf7StandardFontDefaultGroupAttr,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, {\n    attrName: \"input_textarea_select.decoration.background\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"input_textarea_select.decoration.border\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Field', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"input_textarea_select.decoration.boxShadow\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Field', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, {\n    attrName: \"input_textarea_select.decoration.sizing\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Field', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"input_textarea_select.decoration.spacing\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Field', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"placeholder.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Placeholder', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Placeholder', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true,\n    defaultGroupAttr: cf7StandardFontDefaultGroupAttr,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"date\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Date', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"date_field.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Typography', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Date Field', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true,\n    defaultGroupAttr: cf7StandardFontDefaultGroupAttr,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"date_icon.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Calendar Icon', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Calendar Icon', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true,\n    defaultGroupAttr: cf7DateIconFontDefaultGroupAttr,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"radio_checkbox\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Checkbox & Radio', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"radio_checkbox.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Checkbox & Radio', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Checkbox & Radio', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true,\n    defaultGroupAttr: cf7StandardFontDefaultGroupAttr,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"file\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('File', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"file_padding.decoration.spacing\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('File', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, {\n    attrName: \"file.decoration.sizing\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('File', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, {\n    attrName: \"file.decoration.background\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"file.decoration.border\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('File', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"file.decoration.boxShadow\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('File', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"file.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Font', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Font', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true,\n    defaultGroupAttr: cf7FileFontDefaultGroupAttr,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"validation_success\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Success Message', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, {\n    attrName: \"validation_success.decoration.background\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"validation_success.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Success Message', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Success Message', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true,\n    defaultGroupAttr: cf7StandardFontDefaultGroupAttr,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"validation_success.decoration.border\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Success Message', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true,\n    defaultGroupAttr: cf7ValidationSuccessBorderDefaultGroupAttr\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"validation_success.decoration.boxShadow\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Success Message', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, {\n    attrName: \"validation_success.decoration.sizing\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Success Message', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"validation_success.decoration.spacing\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Success Message', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"error_messages\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Validation Messages', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, {\n    attrName: \"error_msg.decoration.background\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"error_msg.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Validation Messages', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Validation Messages', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true,\n    defaultGroupAttr: cf7StandardFontDefaultGroupAttr,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"error_msg.decoration.border\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Field Validation', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"error_msg.decoration.boxShadow\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Field Validation', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, {\n    attrName: \"error_msg.decoration.sizing\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Validation Messages', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"error_msg.decoration.spacing\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Validation Messages', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"validation_error\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Invalid Form Message', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, {\n    attrName: \"error_validation.decoration.background\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"error_validation.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Invalid Form Message', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Invalid Form Message', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true,\n    defaultGroupAttr: cf7StandardFontDefaultGroupAttr,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"error_validation.decoration.border\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Invalid Form Message', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true,\n    defaultGroupAttr: cf7ErrorValidationBorderDefaultGroupAttr\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"error_validation.decoration.boxShadow\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Invalid Form Message', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, {\n    attrName: \"error_validation.decoration.sizing\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Invalid Form Message', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"error_validation.decoration.spacing\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Invalid Form Message', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"button\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_alignment.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ButtonGroupContainer, {\n    attrName: \"button\",\n    grouped: true,\n    defaultGroupAttr: cf7ButtonDecorationDefaultGroupAttr\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const contact_form7_settings_design = (contact_form7_settings_design_SettingsDesign);\n;// ./packages/module-library/contact-form7/settings-advanced.js\n// Wordpress dependencies.\n\n// Divi package dependencies.\n\n\nfunction contact_form7_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_contact_form_7\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const contact_form7_settings_advanced = (contact_form7_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/contact-form7/module-styles.js\n\n\n\n/**\n * React function component for rendering module style.\n */\nconst contact_form7_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'labels'\n  }), elements.style({\n    attrName: 'input_textarea_select'\n  }), elements.style({\n    attrName: 'date_field'\n  }), elements.style({\n    attrName: 'date_icon'\n  }), elements.style({\n    attrName: 'error_msg'\n  }), elements.style({\n    attrName: 'placeholder'\n  }), elements.style({\n    attrName: 'radio_checkbox'\n  }), elements.style({\n    attrName: 'button'\n  }), elements.style({\n    attrName: 'file'\n  }), elements.style({\n    attrName: 'file_padding'\n  }), elements.style({\n    attrName: 'error_validation'\n  }), elements.style({\n    attrName: 'validation_success'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .wpcf7 label`,\n    attr: attrs?.label_bottom_spacing?.innerContent,\n    property: \"margin-bottom\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .wpcf7-form p:nth-last-of-type(1)`,\n    attr: attrs?.button_alignment?.innerContent,\n    property: \"text-align\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .wpcf7 form.invalid .wpcf7-response-output, ${orderClass} .wpcf7 form.unaccepted .wpcf7-response-output`,\n    attr: attrs?.button_alignment?.innerContent,\n    property: \"text-align\"\n  }));\n};\n;// ./packages/module-library/contact-form7/edit.js\n\n\n\n// Divi package dependencies.\n\n\n\n\n\n// Custom dependencies.\n\n\n/**\n * React function component for registering module script data.\n */\nconst contact_form7_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction contact_form7_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  const [output, setOuput] = (0,external_vendor_React_.useState)('');\n  const [isLoading, setLoading] = (0,external_vendor_React_.useState)('');\n  const {} = attrs;\n  const showValidation = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_validation?.innerContent);\n  const cf7Library = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.cf7_library?.innerContent);\n  (0,external_vendor_React_.useEffect)(() => {\n    if (showValidation === 'on') {\n      jQuery('.wpcf7').find('input.wpcf7-validates-as-required').after('<span role=\"alert\" class=\"wpcf7-not-valid-tip\">The field is required.</span>');\n      jQuery('.wpcf7').find('.wpcf7-form p:nth-last-of-type(1)').after('<div class=\"wpcf7-response-output wpcf7-validation-errors\" role=\"alert\">One or more fields have an error. Please check and try again.</div><div class=\"wpcf7-response-output wpcf7-mail-sent-ok\" style=\"display: block;\" role=\"alert\">Thank you for your message. It has been sent.</div>');\n    }\n  }, [showValidation]);\n  const handleFormLoading = () => {\n    if (typeof wp?.ajax?.settings?.url !== 'undefined') {\n      setLoading(true);\n      jQuery.ajax({\n        type: 'post',\n        dataType: 'html',\n        url: wp.ajax.settings.url,\n        data: {\n          id: cf7Library,\n          action: 'dsm_contact_form',\n          nonce: dsmContactForms.renderNonce\n        },\n        success: function (response) {\n          setOuput(response);\n        },\n        complete: function () {\n          setLoading(false);\n        }\n      });\n    }\n  };\n  (0,external_vendor_React_.useEffect)(() => {\n    window.addEventListener('load', () => {\n      handleFormLoading();\n    });\n  }, []);\n  (0,external_vendor_React_.useEffect)(() => handleFormLoading(), [cf7Library, output]);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: contact_form7_edit_ModuleScriptData,\n    stylesComponent: contact_form7_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), isLoading ? /*#__PURE__*/external_vendor_React_default().createElement(external_divi_uiLibrary_namespaceObject.Loading, null) : /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    key: showValidation,\n    className: \"dsm-contact-form-wrapper\",\n    dangerouslySetInnerHTML: {\n      __html: output\n    }\n  }));\n}\n/* harmony default export */ const contact_form7_edit = (contact_form7_edit_Edit);\n;// ./packages/module-library/contact-form7/conversion-outline.js\nconst contact_form7_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border',\n      image: 'input_textarea_select.decoration.border',\n      error_msg: 'error_msg.decoration.border',\n      error_validation: 'error_validation.decoration.border',\n      validation_success: 'validation_success.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow',\n      input_field: 'input_textarea_select.decoration.boxShadow',\n      error_msg: 'error_msg.decoration.boxShadow',\n      error_validation: 'error_validation.decoration.boxShadow',\n      validation_success: 'validation_success.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    fonts: {\n      labels: 'labels.decoration.font',\n      input_textarea_select: 'input_textarea_select.decoration.font',\n      date_field: 'date_field.decoration.font',\n      date_icon: 'date_icon.decoration.font',\n      placeholder: 'placeholder.decoration.font',\n      radio_checkbox: 'radio_checkbox.decoration.font',\n      file: 'file.decoration.font',\n      error_msg: 'error_msg.decoration.font',\n      error_validation: 'error_validation.decoration.font',\n      success_validation: 'validation_success.decoration.font'\n    },\n    button: {\n      button_one: 'button'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    cf7_library: 'cf7_library.innerContent.*',\n    show_validation: 'show_validation.innerContent.*',\n    label_bottom_spacing: 'label_bottom_spacing.innerContent.*',\n    button_alignment: 'button_alignment.innerContent.*',\n    file_padding: 'file_padding.decoration.spacing.*.padding'\n  },\n  valueExpansionFunctionMap: {\n    file_padding: 'convertSpacing',\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/contact-form7/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmContactForm7', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/contact-form7': {\n      name: 'divi-supreme/contact-form7',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 2.816406 11.804688 C 2.441406 11.804688 2.132812 11.496094 2.132812 11.117188 C 2.132812 10.742188 2.441406 10.433594 2.816406 10.433594 C 3.195312 10.433594 3.503906 10.742188 3.503906 11.117188 C 3.503906 11.496094 3.199219 11.804688 2.816406 11.804688 Z M 2.816406 10.8125 C 2.648438 10.8125 2.511719 10.949219 2.511719 11.117188 C 2.511719 11.289062 2.648438 11.425781 2.816406 11.425781 C 2.988281 11.425781 3.125 11.289062 3.125 11.117188 C 3.125 10.949219 2.988281 10.8125 2.816406 10.8125 Z M 2.816406 10.8125 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.550781 2.4375 C 12.175781 2.4375 11.867188 2.128906 11.867188 1.75 C 11.867188 1.375 12.175781 1.066406 12.550781 1.066406 C 12.929688 1.066406 13.238281 1.375 13.238281 1.75 C 13.238281 2.128906 12.929688 2.4375 12.550781 2.4375 Z M 12.550781 1.445312 C 12.382812 1.445312 12.242188 1.582031 12.242188 1.75 C 12.242188 1.921875 12.382812 2.058594 12.550781 2.058594 C 12.71875 2.058594 12.859375 1.921875 12.859375 1.75 C 12.859375 1.582031 12.71875 1.445312 12.550781 1.445312 Z M 12.550781 1.445312 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.605469 14.398438 L 5.546875 14.398438 C 4.992188 14.398438 4.535156 13.941406 4.535156 13.386719 L 4.535156 4.347656 C 4.535156 3.785156 4.992188 3.335938 5.546875 3.335938 L 12.605469 3.335938 C 13.164062 3.335938 13.621094 3.792969 13.621094 4.347656 L 13.621094 13.386719 C 13.621094 13.949219 13.164062 14.398438 12.605469 14.398438 Z M 5.546875 3.71875 C 5.199219 3.71875 4.917969 4 4.917969 4.347656 L 4.917969 13.386719 C 4.917969 13.734375 5.199219 14.019531 5.546875 14.019531 L 12.605469 14.019531 C 12.953125 14.019531 13.238281 13.734375 13.238281 13.386719 L 13.238281 4.347656 C 13.238281 4 12.953125 3.71875 12.605469 3.71875 Z M 5.546875 3.71875 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.832031 4.460938 L 11.320312 4.460938 L 11.320312 4.84375 L 6.832031 4.84375 Z M 6.832031 4.460938 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.832031 5.421875 L 10.050781 5.421875 L 10.050781 5.671875 L 6.832031 5.671875 Z M 6.832031 5.421875 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.832031 6.3125 L 11.320312 6.3125 L 11.320312 6.566406 L 6.832031 6.566406 Z M 6.832031 6.3125 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.832031 7.886719 L 11.320312 7.886719 L 11.320312 8.269531 L 6.832031 8.269531 Z M 6.832031 7.886719 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.832031 8.84375 L 10.050781 8.84375 L 10.050781 9.097656 L 6.832031 9.097656 Z M 6.832031 8.84375 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.832031 9.738281 L 11.320312 9.738281 L 11.320312 9.992188 L 6.832031 9.992188 Z M 6.832031 9.738281 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.832031 11.152344 L 11.320312 11.152344 L 11.320312 11.535156 L 6.832031 11.535156 Z M 6.832031 11.152344 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.832031 12.113281 L 10.050781 12.113281 L 10.050781 12.363281 L 6.832031 12.363281 Z M 6.832031 12.113281 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.832031 13.003906 L 11.320312 13.003906 L 11.320312 13.257812 L 6.832031 13.257812 Z M 6.832031 13.003906 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/contact-form7/index.js\n// External library dependencies.\n\n// Wordpress dependencies.\n\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\nconst contactForm7Module = {\n  metadata: contact_form7_module_namespaceObject,\n  conversionOutline: contact_form7_conversion_outline_conversionOutline,\n  renderers: {\n    edit: contact_form7_edit,\n    styles: contact_form7_module_styles_ModuleStyles\n  },\n  settings: {\n    content: contact_form7_settings_content,\n    design: contact_form7_settings_design,\n    advanced: contact_form7_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    cf7_library: {\n      innerContent: {\n        desktop: {\n          value: 'none'\n        }\n      }\n    },\n    show_validation: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    }\n  }\n};\n/* harmony default export */ const contact_form7 = (contactForm7Module);\n;// ./packages/module-library/circle-info/module.json\nconst circle_info_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/circle-info\",\"d4Shortcode\":\"dsm_circle_info\",\"title\":\"Supreme Circle Info\",\"titles\":\"Supreme Circle Info\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/circle-info\",\"childrenName\":[\"dsm/circle-info-child\"],\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"header\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-circle-info-content-wrapper .dsm-title\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-circle-info-content-wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"circle_title\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-circle-info-button-wrapper span\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_enable_autoplay\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_speed\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_delay\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_trigger\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_circle_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_circle_size_auto\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_animation\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_design_tab_circle_items\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"general\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_design_tab_circle_content\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"wrapper\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_design_tab_circle_content_media\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"icon\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_design_tab_circle_icon_image\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"icon\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_circle_item_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_circle_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_circle_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_circle_active_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_circle_active_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_icon_font_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_icon_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_icon_active_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_icon_active_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_circle_image_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_icon_font_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_icon_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_image_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_icon_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-circle-info-button .dsm-circle-info-item-inner-wrapper .dsm_icon\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_icon_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-circle-info-button .dsm-circle-info-item-inner-wrapper .dsm_icon\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-circle-info-content-wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_icon_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-circle-info-content-wrapper .dsm_content_icon\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_icon_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-circle-info-content-wrapper .dsm_content_icon\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"circle_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-circle-info-container\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-circle-info-container\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-circle-info-container\",\"useOverlay\":true}}},\"content_general_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-circle-info-container .dsm-circle-info-content-wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-circle-info-container .dsm-circle-info-content-wrapper\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-circle-info-container .dsm-circle-info-content-wrapper\",\"useOverlay\":true}}},\"circle_normal_item_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-circle-info-button-wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-circle-info-button-wrapper\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-circle-info-button-wrapper\",\"useOverlay\":true}}},\"circle_active_item_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-circle-info-item-active .dsm-circle-info-button-wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-circle-info-item-active .dsm-circle-info-button-wrapper\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-circle-info-item-active .dsm-circle-info-button-wrapper\",\"useOverlay\":true}}},\"icon_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-circle-info-button .dsm-circle-info-item-inner-wrapper .dsm_icon\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-circle-info-button .dsm-circle-info-item-inner-wrapper .dsm_icon\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-circle-info-button .dsm-circle-info-item-inner-wrapper .dsm_icon\",\"useOverlay\":true}}},\"image_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-circle-info-button .dsm-circle-info-item-inner-wrapper .dsm-circle-info-inner img\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-circle-info-button .dsm-circle-info-item-inner-wrapper .dsm-circle-info-inner img\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-circle-info-button .dsm-circle-info-item-inner-wrapper .dsm-circle-info-inner img\",\"useOverlay\":true}}},\"content_image_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-circle-info-content .dsm-circle-info-content-wrapper .dsm-image img\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-circle-info-content .dsm-circle-info-content-wrapper .dsm-image img\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-circle-info-content .dsm-circle-info-content-wrapper .dsm-image img\",\"useOverlay\":true}}},\"content_icon_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-circle-info-content .dsm-circle-info-content-wrapper .dsm_content_icon\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-circle-info-content .dsm-circle-info-content-wrapper .dsm_content_icon\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-circle-info-content .dsm-circle-info-content-wrapper .dsm_content_icon\",\"useOverlay\":true}}},\"button\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-circle-info-content .dsm-circle-info-content-wrapper .et_pb_button_wrapper .et_pb_button\",\"default\":{\"decoration\":{\"button\":{\"desktop\":{\"value\":{\"enable\":\"off\",\"icon\":{\"enable\":\"on\",\"onHover\":\"on\"}}}},\"border\":{\"desktop\":{\"value\":{\"styles\":{\"all\":{\"color\":\"\"}}}}},\"font\":{\"font\":{\"desktop\":{\"value\":{\"color\":\"\"}}}}}},\"elementType\":\"button\",\"styleProps\":{\"font\":{\"important\":{\"font\":{\"desktop\":{\"value\":{\"color\":true,\"font-size\":true,\"letter-spacing\":true}}}}},\"spacing\":{\"propertySelectors\":{\"desktop\":{\"value\":{\"margin\":\"{{selector}} .dsm-circle-info-content .dsm-circle-info-content-wrapper .et_pb_button_wrapper\"}}},\"important\":true}}}}}');\n;// ./packages/module-library/circle-info/conversion-outline.js\nconst circle_info_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    module: 'module.advanced.htmlAttributes',\n    borders: {\n      default: 'module.decoration.border',\n      dsm_circle_border: 'circle_style.decoration.border',\n      dsm_content_wrapper: 'content_general_style.decoration.border',\n      dsm_circle_item_border: 'circle_normal_item_style.decoration.border',\n      dsm_active_circle_item_border: 'circle_active_item_style.decoration.border',\n      dsm_circle_icon_border: 'icon_style.decoration.border',\n      dsm_circle_image_border: 'image_style.decoration.border',\n      dsm_content_icon_border: 'content_icon_style.decoration.border',\n      dsm_content_image_border: 'content_image_style.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow',\n      dsm_circle: 'circle_style.decoration.boxShadow',\n      dsm_circle_content_wrapper: 'content_general_style.decoration.boxShadow',\n      dsm_circle_item: 'circle_normal_item_style.decoration.boxShadow',\n      circle_active_item: 'circle_active_item_style.decoration.boxShadow',\n      dsm_circle_icon_shadow: 'icon_style.decoration.boxShadow',\n      dsm_circle_image_shadow: 'image_style.decoration.boxShadow',\n      dsm_content_icon_shadow: 'content_icon_style.decoration.boxShadow',\n      dsm_content_image_shadow: 'content_image_style.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    margin_padding: 'module.decoration.spacing',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    fonts: {\n      circle_title: 'circle_title.decoration.font',\n      header: 'header.decoration.font',\n      dsm_content: 'dsm_content.decoration.font'\n    },\n    button: {\n      button: 'button'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    header: 'header.decoration.font.font.*.headingLevel',\n    header_level: 'header.decoration.font.font.*.headingLevel',\n    dsm_enable_autoplay: 'dsm_enable_autoplay.innerContent.*',\n    dsm_speed: 'dsm_speed.innerContent.*',\n    dsm_delay: 'dsm_delay.innerContent.*',\n    dsm_trigger: 'dsm_trigger.innerContent.*',\n    dsm_circle_size: 'dsm_circle_size.innerContent.*',\n    dsm_content_animation: 'dsm_content_animation.innerContent.*',\n    dsm_circle_item_size: 'dsm_circle_item_size.innerContent.*',\n    dsm_circle_bg_color: 'dsm_circle_bg_color.innerContent.*',\n    dsm_circle_color: 'dsm_circle_color.innerContent.*',\n    dsm_circle_active_bg_color: 'dsm_circle_active_bg_color.innerContent.*',\n    dsm_circle_active_color: 'dsm_circle_active_color.innerContent.*',\n    dsm_icon_font_size: 'dsm_icon_font_size.innerContent.*',\n    dsm_icon_bg_color: 'dsm_icon_bg_color.innerContent.*',\n    dsm_icon_active_bg_color: 'dsm_icon_active_bg_color.innerContent.*',\n    dsm_icon_color: 'dsm_icon_color.innerContent.*',\n    dsm_icon_active_color: 'dsm_icon_active_color.innerContent.*',\n    dsm_circle_image_width: 'dsm_circle_image_width.innerContent.*',\n    dsm_content_icon_font_size: 'dsm_content_icon_font_size.innerContent.*',\n    dsm_content_icon_bg_color: 'dsm_content_icon_bg_color.innerContent.*',\n    dsm_content_icon_color: 'dsm_content_icon_color.innerContent.*',\n    dsm_content_image_width: 'dsm_content_image_width.innerContent.*',\n    dsm_icon_margin: 'dsm_icon_margin.decoration.spacing.*.margin',\n    dsm_icon_padding: 'dsm_icon_padding.decoration.spacing.*.padding',\n    dsm_content_padding: 'dsm_content_padding.decoration.spacing.*.padding',\n    dsm_content_icon_margin: 'dsm_content_icon_margin.decoration.spacing.*.margin',\n    dsm_content_icon_padding: 'dsm_content_icon_padding.decoration.spacing.*.padding'\n  },\n  valueExpansionFunctionMap: {\n    dsm_icon_margin: 'convertSpacing',\n    dsm_icon_padding: 'convertSpacing',\n    dsm_content_padding: 'convertSpacing',\n    dsm_content_icon_margin: 'convertSpacing',\n    dsm_content_icon_padding: 'convertSpacing',\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/circle-info/settings-content.js\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\n\nfunction circle_info_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  var _getAttrByMode;\n  const dsmEnableAutoplay = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_enable_autoplay?.innerContent);\n  const dsmCircleSizeAuto = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_circle_size_auto?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'off';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(ChildDraggableModuleList, {\n    childModuleName: \"dsm/circle-info-child\",\n    addTitle: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Add New Item', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"settings\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Settings', 'dsm-supreme-modules-pro-for-divi'),\n    preset: \"content\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_enable_autoplay.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enable Autoplay', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'off'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_speed.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Speed', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmEnableAutoplay,\n    defaultAttr: {\n      desktop: {\n        value: '1s'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0.1,\n    max: 10,\n    step: 0.1,\n    defaultUnit: 's'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_delay.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Delay', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmEnableAutoplay,\n    defaultAttr: {\n      desktop: {\n        value: '3000'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 100,\n    max: 10000,\n    step: 100,\n    defaultUnit: ''\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_trigger.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Trigger', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose to trigger it with Click or On Hover.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'click'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      click: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Click', 'dsm-supreme-modules-pro-for-divi')\n      },\n      hover: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hover', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_circle_size_auto.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Auto Circle Size', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Size the circle from the module width (e.g. column). Turns off the fixed Circle Size control.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'off'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_circle_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Circle Size', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'off' === dsmCircleSizeAuto,\n    defaultAttr: {\n      desktop: {\n        value: '500px'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 100,\n    max: 1200,\n    step: 1,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content_animation.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content Animation', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'fadeIn'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      none: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('None', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeIn: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeInDown: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Down', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeInDownBig: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Down Big', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeInLeft: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeInLeftBig: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Left Big', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeInRight: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeInRightBig: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Right Big', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeInDown: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Down', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeInDownBig: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Down Big', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeInUp: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Up', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeInUpBig: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Up Big', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bounce: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bounce', 'dsm-supreme-modules-pro-for-divi')\n      },\n      flash: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Flash', 'dsm-supreme-modules-pro-for-divi')\n      },\n      pulse: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pulse', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rubberBand: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rubber Band', 'dsm-supreme-modules-pro-for-divi')\n      },\n      shake: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shake', 'dsm-supreme-modules-pro-for-divi')\n      },\n      swing: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Swing', 'dsm-supreme-modules-pro-for-divi')\n      },\n      tada: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tada', 'dsm-supreme-modules-pro-for-divi')\n      },\n      wobble: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Wobble', 'dsm-supreme-modules-pro-for-divi')\n      },\n      jello: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Jello', 'dsm-supreme-modules-pro-for-divi')\n      },\n      lightSpeedIn: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Light Speed In', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rollIn: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Roll In', 'dsm-supreme-modules-pro-for-divi')\n      },\n      hinge: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hinge', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bounceIn: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('bounceIn', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bounceInDown: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('bounceInDown', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bounceInLeft: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('bounceInLeft', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bounceInRight: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('bounceInRight', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bounceInUp: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('bounceInUp', 'dsm-supreme-modules-pro-for-divi')\n      },\n      slideInUp: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide In Up', 'dsm-supreme-modules-pro-for-divi')\n      },\n      slideInDown: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide In Down', 'dsm-supreme-modules-pro-for-divi')\n      },\n      slideInLeft: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide In Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      slideInRight: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide In Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      flip: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Flip', 'dsm-supreme-modules-pro-for-divi')\n      },\n      flipInX: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Flip In X', 'dsm-supreme-modules-pro-for-divi')\n      },\n      flipInY: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Flip In Y', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rotateIn: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rotate In', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rotateInDownLeft: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rotate In Down Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rotateInDownRight: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rotate In Down Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rotateInUpLeft: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rotate In Up Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rotateInUpRight: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rotate In Up Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zoomIn: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom In', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zoomInDown: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom In Down', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zoomInLeft: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom In Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zoomInRight: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom In Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zoomInUp: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zoomInDown: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom In Up', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const circle_info_settings_content = (circle_info_settings_content_SettingsContent);\n;// ./packages/module-library/circle-info/settings-design.js\n\n// Wordpress dependencies.\n\n// Divi package dependencies.\n\n\n\n\n\n/** D4: `header` font — `divi-4/includes/modules/CircleInfo/CircleInfo.php`. */\nconst circleInfoHeaderFontDefaultGroupAttr = {\n  font: {\n    desktop: {\n      value: {\n        headingLevel: 'h4'\n      }\n    }\n  }\n};\n\n/** D4: `circle_title` font. */\nconst circleInfoCircleTitleFontDefaultGroupAttr = {\n  font: {\n    desktop: {\n      value: {\n        size: '14px',\n        lineHeight: '1.7em',\n        letterSpacing: '0px',\n        textAlign: 'center'\n      }\n    }\n  }\n};\n\n/** D4: `dsm_content` font. */\nconst circleInfoContentFontDefaultGroupAttr = {\n  font: {\n    desktop: {\n      value: {\n        size: '14px',\n        lineHeight: '1.7em',\n        letterSpacing: '0px',\n        textAlign: 'center'\n      }\n    }\n  }\n};\n\n/** D4: `dsm_content_padding` custom_margin default `10px|20px|10px|20px` (top|right|bottom|left). */\nconst circleInfoContentPaddingSpacingDefault = {\n  desktop: {\n    value: {\n      padding: {\n        top: '10px',\n        right: '20px',\n        bottom: '10px',\n        left: '20px'\n      }\n    }\n  }\n};\n\n/** Design tab: circle button item appearance (VB-only preference, persisted like FAQ design tabs). */\nconst circleItemsTabOptions = {\n  general: {\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('General', 'dsm-supreme-modules-pro-for-divi')\n  },\n  normal: {\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Normal', 'dsm-supreme-modules-pro-for-divi')\n  },\n  active: {\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Active', 'dsm-supreme-modules-pro-for-divi')\n  }\n};\n\n/** Design tab: content panel (wrapper, title, description). */\nconst circleContentTabOptions = {\n  wrapper: {\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Wrapper', 'dsm-supreme-modules-pro-for-divi')\n  },\n  title: {\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi')\n  },\n  description: {\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Description', 'dsm-supreme-modules-pro-for-divi')\n  }\n};\n\n/** Design tab: icon vs image (circle ring buttons + content panel). */\nconst iconImageDesignTabOptions = {\n  icon: {\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi')\n  },\n  image: {\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi')\n  }\n};\nfunction circle_info_settings_design_SettingsDesign({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _getAttrByMode4, _defaultSettingsAttrs;\n  const button = attrs?.button?.decoration?.button?.desktop?.value?.enable;\n  const circleItemsDesignTab = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_design_tab_circle_items?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'general';\n  const circleContentDesignTab = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_design_tab_circle_content?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'wrapper';\n  const circleContentMediaTab = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_design_tab_circle_content_media?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'icon';\n  const circleIconImageTab = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_design_tab_circle_icon_image?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : 'icon';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"circle\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Circle container', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"circle_style.decoration.border\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Container', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"circle_style.decoration.boxShadow\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"circle_icon_image\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Circle Icon / Image', 'dsm-supreme-modules-pro-for-divi'),\n    defaultOpened: true\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_design_tab_circle_icon_image.innerContent\",\n    defaultAttr: {\n      desktop: {\n        value: 'icon'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: iconImageDesignTabOptions,\n    tabUi: true,\n    showLabel: true\n  })), 'icon' === circleIconImageTab && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_icon_font_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Size', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose icon width.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: '16px'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    defaultUnit: 'px',\n    allowedUnits: ['%', 'em', 'rem', 'px', 'cm', 'mm', 'in', 'pt', 'pc', 'ex', 'vh', 'vw'],\n    step: 1\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_icon_bg_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom background color for the icon.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_icon_active_bg_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Active Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom active background color for the icon.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_icon_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom color for the icon.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_icon_active_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Active Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom active color for the icon.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_icon_margin.decoration.spacing\",\n    grouped: false,\n    fields: {\n      padding: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_icon_padding.decoration.spacing\",\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"icon_style.decoration.border\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"icon_style.decoration.boxShadow\",\n    grouped: false\n  })), 'image' === circleIconImageTab && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_circle_image_width.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Width', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Maximum width for images inside circle button items (px or %). Migrated layouts keep D4 px values.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: '30%'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 200,\n    step: 1,\n    defaultUnit: '%',\n    allowedUnits: ['%', 'px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"image_style.decoration.border\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"image_style.decoration.boxShadow\",\n    grouped: false\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"circle_items\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Circle items', 'dsm-supreme-modules-pro-for-divi'),\n    defaultOpened: true\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_design_tab_circle_items.innerContent\",\n    defaultAttr: {\n      desktop: {\n        value: 'general'\n      }\n    },\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Item state', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Style the ring buttons: general sizing and title, default (inactive) look, or the active item.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: circleItemsTabOptions,\n    tabUi: true,\n    showLabel: true\n  })), 'general' === circleItemsDesignTab && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_circle_item_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Circle Size', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: '80px'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 32,\n    max: 500,\n    step: 1,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"circle_title.decoration.font\",\n    defaultGroupAttr: circleInfoCircleTitleFontDefaultGroupAttr,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  })), 'normal' === circleItemsDesignTab && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_circle_bg_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background for inactive circle items.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: '#444444'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_circle_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text and icon color on inactive items.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: '#ffffff'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"circle_normal_item_style.decoration.border\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Circle Item', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"circle_normal_item_style.decoration.boxShadow\",\n    grouped: false\n  })), 'active' === circleItemsDesignTab && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_circle_active_bg_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background for the active circle item.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_circle_active_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text and icon color on the active item.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"circle_active_item_style.decoration.border\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Active Circle Item', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"circle_active_item_style.decoration.boxShadow\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Active', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"content_panel\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi'),\n    defaultOpened: true\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_design_tab_circle_content.innerContent\",\n    defaultAttr: {\n      desktop: {\n        value: 'wrapper'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: circleContentTabOptions,\n    tabUi: true,\n    showLabel: true\n  })), 'wrapper' === circleContentDesignTab && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_content_padding.decoration.spacing\",\n    defaultAttr: circleInfoContentPaddingSpacingDefault,\n    defaultGroupAttr: circleInfoContentPaddingSpacingDefault,\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"content_general_style.decoration.boxShadow\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"content_general_style.decoration.border\",\n    grouped: false\n  })), 'title' === circleContentDesignTab && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"header.decoration.font\",\n    defaultGroupAttr: circleInfoHeaderFontDefaultGroupAttr,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: true\n      }\n    }\n  }), 'description' === circleContentDesignTab && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"dsm_content.decoration.font\",\n    defaultGroupAttr: circleInfoContentFontDefaultGroupAttr,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Description', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"content_icon_image\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content Icon / Image', 'dsm-supreme-modules-pro-for-divi'),\n    defaultOpened: true\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_design_tab_circle_content_media.innerContent\",\n    defaultAttr: {\n      desktop: {\n        value: 'icon'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: iconImageDesignTabOptions,\n    tabUi: true,\n    showLabel: true\n  })), 'icon' === circleContentMediaTab && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content_icon_font_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Size', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose icon width.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: '16px'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    step: 1,\n    defaultUnit: 'px',\n    allowedUnits: ['%', 'em', 'rem', 'px', 'cm', 'mm', 'in', 'pt', 'pc', 'ex', 'vh', 'vw']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content_icon_bg_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom background color for the icon.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content_icon_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom color for the icon.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_content_icon_margin.decoration.spacing\",\n    grouped: false,\n    fields: {\n      padding: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_content_icon_padding.decoration.spacing\",\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"content_icon_style.decoration.border\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"content_icon_style.decoration.boxShadow\",\n    grouped: false\n  })), 'image' === circleContentMediaTab && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content_image_width.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Width', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: '30%'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    step: 1,\n    defaultUnit: '%'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"content_image_style.decoration.border\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"content_image_style.decoration.boxShadow\",\n    grouped: false\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"button\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ButtonGroupContainer, {\n    attrName: \"button\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi'),\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi'),\n    defaultGroupAttr: (_defaultSettingsAttrs = defaultSettingsAttrs?.button?.decoration?.asMutable({\n      deep: true\n    })) !== null && _defaultSettingsAttrs !== void 0 ? _defaultSettingsAttrs : {},\n    grouped: false,\n    fields: {\n      alignment: {\n        render: true\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_alignment.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    },\n    visible: 'off' === button\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const circle_info_settings_design = (circle_info_settings_design_SettingsDesign);\n;// ./packages/module-library/circle-info/settings-advanced.js\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\nfunction circle_info_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_circle_info\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const circle_info_settings_advanced = (circle_info_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/circle-info/module-styles.js\n\n\n\n\n\n/**\n * React function component for rendering module style.\n */\nconst circle_info_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag,\n  childrenIds\n}) => {\n  const childModules = (0,external_divi_data_namespaceObject.useSelect)(select => {\n    return Array.isArray(childrenIds) ? childrenIds.map(moduleId => select('divi/edit-post').getModule(moduleId)) : [];\n  }, [childrenIds]);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'header'\n  }), elements.style({\n    attrName: 'dsm_content'\n  }), elements.style({\n    attrName: 'circle_style'\n  }), elements.style({\n    attrName: 'circle_normal_item_style'\n  }), elements.style({\n    attrName: 'circle_title'\n  }), elements.style({\n    attrName: 'dsm_content_padding'\n  }), elements.style({\n    attrName: 'content_general_style'\n  }), elements.style({\n    attrName: 'image_style'\n  }), elements.style({\n    attrName: 'dsm_content_icon_margin'\n  }), elements.style({\n    attrName: 'dsm_content_icon_padding'\n  }), elements.style({\n    attrName: 'content_icon_style'\n  }), elements.style({\n    attrName: 'content_image_style'\n  }), elements.style({\n    attrName: 'dsm_icon_margin'\n  }), elements.style({\n    attrName: 'dsm_icon_padding'\n  }), elements.style({\n    attrName: 'icon_style'\n  }), elements.style({\n    attrName: 'image_style'\n  }), elements.style({\n    attrName: 'circle_active_item_style'\n  }), elements.style({\n    attrName: 'button'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-circle-info-button-wrapper`,\n    attr: attrs?.dsm_circle_item_size?.innerContent,\n    property: \"width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-circle-info-button-wrapper`,\n    attr: attrs?.dsm_circle_item_size?.innerContent,\n    property: \"height\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-circle-info-button-wrapper`,\n    attr: attrs?.dsm_circle_bg_color?.innerContent,\n    property: \"background\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-circle-info-button-wrapper`,\n    attr: attrs?.dsm_circle_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-circle-info-item-inner-wrapper.dsm-circle-info-item-active .dsm-circle-info-button-wrapper`,\n    attr: attrs?.dsm_circle_active_bg_color?.innerContent,\n    property: \"background\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-circle-info-item-inner-wrapper.dsm-circle-info-item-active .dsm-circle-info-button-wrapper`,\n    attr: attrs?.dsm_circle_active_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_content_icon`,\n    attr: attrs?.dsm_content_icon_font_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_content_icon`,\n    attr: attrs?.dsm_content_icon_bg_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_content_icon`,\n    attr: attrs?.dsm_content_icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_icon`,\n    attr: attrs?.dsm_icon_font_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_icon`,\n    attr: attrs?.dsm_icon_bg_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_icon`,\n    attr: attrs?.dsm_icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-circle-info-button .dsm-circle-info-item-inner-wrapper.dsm-circle-info-item-active .dsm_icon`,\n    attr: attrs?.dsm_icon_active_bg_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-circle-info-button .dsm-circle-info-item-inner-wrapper.dsm-circle-info-item-active .dsm_icon`,\n    attr: attrs?.dsm_icon_active_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-circle-info-button .dsm-circle-info-item-inner-wrapper .dsm-circle-info-inner img`,\n    attr: attrs?.dsm_circle_image_width?.innerContent,\n    property: \"max-width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-image img`,\n    attr: attrs?.dsm_content_image_width?.innerContent,\n    property: \"width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-circle-info-button, ${orderClass} .dsm-circle-info-button .dsm-circle-info-item-inner-wrapper`,\n    attr: attrs?.dsm_speed?.innerContent,\n    property: \"transition-duration\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-circle-info-button`,\n    attr: attrs?.dsm_speed?.innerContent,\n    declarationFunction: attrValue => {\n      const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n        returnType: 'string',\n        important: true\n      });\n      declarations.add('transform', `rotate(calc(var(--dsm-angle) * 1deg));`);\n      return declarations.value;\n    }\n  }), (() => {\n    const totalItemCount = childModules.length || 0;\n    const angle = 360 / totalItemCount;\n    const startAngle = angle;\n    return Array.from({\n      length: totalItemCount\n    }, (_, index) => {\n      // Adjust for PHP 1-based indexing by using index + 1\n      let currentRot = index * angle + startAngle;\n      return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n        key: index,\n        selector: `${orderClass} .dsm-circle-info-item-inner-wrapper:nth-child(${index + 1})`,\n        attr: attrs?.dsm_circle_size?.innerContent,\n        declarationFunction: attrValue => {\n          const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n            returnType: 'string',\n            important: {\n              transform: true\n            }\n          });\n          declarations.add('transform', `rotate(calc(${currentRot} * 1deg)) translate(calc(var(--main-circle-size, 500px) / 2)) rotate(calc((${currentRot} + var(--dsm-angle)) * -1deg))`);\n          return declarations.value;\n        }\n      });\n    });\n  })());\n};\n;// ./packages/module-library/shared/get-child-module-order-class.js\n\n\n/**\n * Resolve the same order-class token child `ModuleStyles` uses (`{{selector}}` / `orderClass`).\n *\n * Parent-rendered markup and sibling DOM (e.g. timeline spine) must use this class so\n * pseudo-icon CSS and module style selectors match the Visual Builder and frontend.\n *\n * @param {Object|string} childModuleOrId Child from `getModule`, or child module store id.\n * @param {string}        fallbackPrefix  Legacy prefix when store lookup fails (e.g. `dsm_advanced_tabs_child`).\n * @param {number}        fallbackIndex   Loop index when orderIndex is unavailable.\n * @return {string} Order class without a leading dot.\n */\nfunction getChildModuleOrderClass(childModuleOrId, fallbackPrefix, fallbackIndex = 0) {\n  let childId = '';\n  /** @type {Object|null} */\n  let childModule = null;\n  if (typeof childModuleOrId === 'string') {\n    childId = childModuleOrId;\n  } else if (childModuleOrId && typeof childModuleOrId === 'object') {\n    childModule = childModuleOrId;\n    childId = typeof childModule.id === 'string' ? childModule.id : '';\n  }\n  if ('' !== childId) {\n    const fromStore = (0,external_divi_moduleUtils_namespaceObject.getModuleOrderClassName)(childId);\n    if ('string' === typeof fromStore && '' !== fromStore) {\n      return fromStore;\n    }\n  }\n  const idx = typeof childModule?.orderIndex === 'number' ? childModule.orderIndex : typeof childModule?.props?.orderIndex === 'number' ? childModule.props.orderIndex : fallbackIndex;\n  return `${fallbackPrefix}_${idx}`;\n}\n;// ./packages/module-library/circle-info/edit.js\nfunction circle_info_edit_extends() {\n  return circle_info_edit_extends = Object.assign ? Object.assign.bind() : function (n) {\n    for (var e = 1; e < arguments.length; e++) {\n      var t = arguments[e];\n      for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n    }\n    return n;\n  }, circle_info_edit_extends.apply(null, arguments);\n}\n\n\n\n\n// Divi package dependencies.\n\n\n// Custom dependencies.\n\n\n\n\n\n\n\n\n/**\n * Auto Circle Size: use slightly less than the container width so orbit buttons\n * (which extend past the ring) are less likely to clip on narrow / overflow-hidden parents.\n */\nconst DSM_CIRCLE_INFO_AUTO_SIZE_WIDTH_FACTOR = 0.8;\n\n/**\n * Canvas markup mirrors D4 `CircleInfoChild.php`: circle button image is a bare\n * `img.dsm_circle_info_image` (no `.dsm-image`); content image uses `.dsm-image` per D4.\n * Inner order: image → icon → title on the button; content panel: content image → icon → title\n * → description → button. D4 `render_button()` uses `.et_pb_button_wrapper > a.et_pb_button.dsm_button`.\n *\n * D5 TextContainer / RichTextContainer: `value` is `{ text }` (migration + VB).\n * Legacy or edge: plain string on `value`.\n *\n * @param {Object|undefined} childAttrs Circle `props.attrs`.\n * @param {string}           attrKey   Attribute name.\n * @return {string|undefined}\n */\nfunction getDesktopInnerTextLeaf(childAttrs, attrKey) {\n  const desktop = childAttrs?.[attrKey]?.innerContent?.desktop;\n  if (!desktop || 'object' !== typeof desktop) {\n    return undefined;\n  }\n  const v = desktop.value;\n  if (undefined !== v && null !== v) {\n    if ('string' === typeof v) {\n      return v;\n    }\n    if ('object' === typeof v && 'text' in v) {\n      const t = v.text;\n      return 'string' === typeof t ? t : undefined;\n    }\n  }\n  // D4→D5 migrator `*.innerContent.*.text` can leave plain `desktop.text` with no `value`.\n  if ('string' === typeof desktop.text) {\n    return desktop.text;\n  }\n  return undefined;\n}\n\n/**\n * D5 UploadContainer: `value` is `{ src, id? }`. Legacy: URL string.\n *\n * @param {Object|undefined} childAttrs Child `props.attrs`.\n * @param {string}           attrKey    Attribute name.\n * @return {string|undefined}\n */\nfunction getDesktopUploadSrcLeaf(childAttrs, attrKey) {\n  const v = childAttrs?.[attrKey]?.innerContent?.desktop?.value;\n  if (undefined === v || null === v) {\n    return undefined;\n  }\n  if ('string' === typeof v) {\n    return v;\n  }\n  if ('object' === typeof v && 'string' === typeof v.src) {\n    return v.src;\n  }\n  return undefined;\n}\nconst CIRCLE_INFO_BUTTON_DYNAMIC_PROPS = [{\n  propName: 'title',\n  getValue: props => getDesktopInnerTextLeaf(props?.childModule?.props?.attrs, 'dsm_circle_info_title'),\n  defaultValue: 'Title'\n}, {\n  propName: 'image',\n  getValue: props => getDesktopUploadSrcLeaf(props?.childModule?.props?.attrs, 'image'),\n  defaultValue: ''\n}];\nconst CIRCLE_INFO_CONTENT_DYNAMIC_PROPS = [{\n  propName: 'title',\n  getValue: props => getDesktopInnerTextLeaf(props?.childModule?.props?.attrs, 'dsm_content_title'),\n  defaultValue: 'Your Title Goes Here'\n}, {\n  propName: 'content',\n  getValue: props => getDesktopInnerTextLeaf(props?.childModule?.props?.attrs, 'dsm_circle_info_content'),\n  defaultValue: 'Your description goes here. Edit or remove this text inline or in the description settings'\n}, {\n  propName: 'contentImage',\n  getValue: props => getDesktopUploadSrcLeaf(props?.childModule?.props?.attrs, 'dsm_content_image'),\n  defaultValue: ''\n}, {\n  propName: 'buttonText',\n  getValue: props => getDesktopInnerTextLeaf(props?.childModule?.props?.attrs, 'button_text'),\n  defaultValue: ''\n}];\nconst CircleInfoButtonItem = with_dynamic_values(({\n  childModule,\n  index,\n  activeCircleIndex,\n  dsmTrigger,\n  onActivate,\n  title,\n  image,\n  a11yBaseId\n}) => {\n  var _childAttr$dsm_show_i, _getDesktopInnerTextL, _getAttrByMode;\n  const childAttr = childModule?.props?.attrs;\n  const childOrderClass = getChildModuleOrderClass(childModule, 'dsm_circle_info_child', index);\n  const dsm_show_icon = (_childAttr$dsm_show_i = childAttr?.dsm_show_icon?.innerContent?.desktop?.value) !== null && _childAttr$dsm_show_i !== void 0 ? _childAttr$dsm_show_i : 'off';\n  const imgAlt = (_getDesktopInnerTextL = getDesktopInnerTextLeaf(childAttr, 'alt')) !== null && _getDesktopInnerTextL !== void 0 ? _getDesktopInnerTextL : '';\n  const buttonFontIcon = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(childAttr?.font_icon?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : {};\n  const handleEvent = () => {\n    onActivate(index);\n  };\n  const tabId = `${a11yBaseId}-tab-${index}`;\n  const panelId = `${a11yBaseId}-panel-${index}`;\n  const isActive = index === activeCircleIndex;\n  return /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: `dsm-circle-info-item-inner-wrapper ${childOrderClass} ${isActive ? 'dsm-circle-info-item-active' : ''}`\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"button\", {\n    type: \"button\",\n    className: \"dsm-circle-info-button-wrapper\",\n    id: tabId,\n    role: \"tab\",\n    \"aria-selected\": isActive,\n    \"aria-controls\": panelId,\n    tabIndex: isActive ? 0 : -1,\n    onClick: () => {\n      if ('click' === dsmTrigger) {\n        handleEvent();\n      }\n    },\n    onMouseEnter: () => {\n      if ('hover' === dsmTrigger) {\n        handleEvent();\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm-circle-info-inner\"\n  }, 'on' !== dsm_show_icon && !(0,lodash.isEmpty)(image) && /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n    className: \"dsm_circle_info_image\",\n    src: image,\n    alt: imgAlt,\n    decoding: \"async\"\n  }), 'on' === dsm_show_icon && /*#__PURE__*/external_vendor_React_default().createElement(ModuleIconHost, {\n    icon: buttonFontIcon,\n    className: \"dsm_icon\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm_text\"\n  }, title))));\n}, CIRCLE_INFO_BUTTON_DYNAMIC_PROPS);\nconst CircleInfoContentItem = with_dynamic_values(({\n  childModule,\n  index,\n  activeCircleIndex,\n  dsmContentAnimation,\n  parentHeadingLevel,\n  title,\n  content,\n  contentImage,\n  buttonText,\n  a11yBaseId\n}) => {\n  var _childAttr$dsm_conten, _getAttrByMode2, _childAttr$dsm_conten2, _childAttr$header$dec;\n  const childAttr = childModule?.props?.attrs;\n  const childOrderClass = getChildModuleOrderClass(childModule, 'dsm_circle_info_child', index);\n  const dsm_content_show_icon = (_childAttr$dsm_conten = childAttr?.dsm_content_show_icon?.innerContent?.desktop?.value) !== null && _childAttr$dsm_conten !== void 0 ? _childAttr$dsm_conten : 'off';\n  const contentFontIcon = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(childAttr?.dsm_font_icon?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : {};\n  const dsm_content_type = (_childAttr$dsm_conten2 = childAttr?.dsm_content_type?.innerContent?.desktop?.value) !== null && _childAttr$dsm_conten2 !== void 0 ? _childAttr$dsm_conten2 : 'content';\n  const shortcode_content = getDesktopInnerTextLeaf(childAttr, 'shortcode_content');\n  const headingLevel = (_childAttr$header$dec = childAttr?.header?.decoration?.font?.font?.desktop?.value?.headingLevel) !== null && _childAttr$header$dec !== void 0 ? _childAttr$header$dec : '';\n  const IsParentHeadingLevel = (0,lodash.isEmpty)(headingLevel) ? parentHeadingLevel : headingLevel;\n  const titleMarkup = !(0,lodash.isEmpty)(title) && /*#__PURE__*/external_vendor_React_default().createElement(IsParentHeadingLevel, {\n    className: \"dsm-title\"\n  }, title);\n  const descriptionMarkup = !(0,lodash.isEmpty)(content) && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-circle-info-description\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_window_vendor_wp_element_namespaceObject.RawHTML, null, content));\n  const ButtonMarkup = !(0,lodash.isEmpty)(buttonText) && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"et_pb_button_wrapper\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n    className: \"et_pb_button dsm_button\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", null, buttonText)));\n  const tabId = `${a11yBaseId}-tab-${index}`;\n  const panelId = `${a11yBaseId}-panel-${index}`;\n  const isActive = index === activeCircleIndex;\n  const contentImgAlt = !(0,lodash.isEmpty)(title) ? title : '';\n  return /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: `dsm-circle-info-content-wrapper ${childOrderClass} ${isActive ? 'dsm-circle-info-item-active' : ''}`,\n    id: panelId,\n    role: \"tabpanel\",\n    \"aria-labelledby\": tabId,\n    hidden: !isActive\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: `dsm-circle-info-content-inner-wrapper  ${index === activeCircleIndex ? `animated ${dsmContentAnimation}` : ''}`\n  }, 'content' === dsm_content_type && 'on' !== dsm_content_show_icon && !(0,lodash.isEmpty)(contentImage) && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-image\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n    src: contentImage,\n    alt: contentImgAlt,\n    decoding: \"async\"\n  })), 'content' === dsm_content_type && 'on' === dsm_content_show_icon && /*#__PURE__*/external_vendor_React_default().createElement(ModuleIconHost, {\n    icon: contentFontIcon,\n    className: \"dsm_content_icon\"\n  }), 'content' === dsm_content_type && titleMarkup, 'content' === dsm_content_type && descriptionMarkup, 'content' === dsm_content_type && ButtonMarkup, 'shortcode' === dsm_content_type && /*#__PURE__*/external_vendor_React_default().createElement(divi_shortcode_content_renderer, {\n    shortcode: shortcode_content,\n    previewKey: `dsm-circle-info-shortcode-${index}`\n  })));\n}, CIRCLE_INFO_CONTENT_DYNAMIC_PROPS);\n\n/**\n * React function component for registering module script data.\n */\nconst circle_info_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction circle_info_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements,\n  childrenIds\n}) {\n  var _getAttrByMode3, _getAttrByMode4, _getAttrByMode5, _getAttrByMode6, _getAttrByMode7, _getAttrByMode8, _attrs$header$decorat;\n  const [activeCircleIndex, setActiveCircleIndex] = (0,external_vendor_React_.useState)(0);\n  const [updateAngle, setUpdateAngle] = (0,external_vendor_React_.useState)(0);\n  const intervalRef = (0,external_vendor_React_.useRef)(null);\n  const a11yBaseId = `dsm-ci-${String(id).replace(/[^a-zA-Z0-9_-]/g, '-')}`;\n  const dsm_circle_size = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_circle_size?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : '500px';\n  const dsm_circle_size_auto = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_circle_size_auto?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : 'off';\n  const circleInfoContainerRef = (0,external_vendor_React_.useRef)(null);\n  const dsm_trigger = (_getAttrByMode5 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_trigger?.innerContent)) !== null && _getAttrByMode5 !== void 0 ? _getAttrByMode5 : 'click';\n  const dsm_delay = (_getAttrByMode6 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_delay?.innerContent)) !== null && _getAttrByMode6 !== void 0 ? _getAttrByMode6 : '3000';\n  const dsm_enable_autoplay = (_getAttrByMode7 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_enable_autoplay?.innerContent)) !== null && _getAttrByMode7 !== void 0 ? _getAttrByMode7 : 'off';\n  const dsm_content_animation = (_getAttrByMode8 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_content_animation?.innerContent)) !== null && _getAttrByMode8 !== void 0 ? _getAttrByMode8 : 'fadeIn';\n  const parentHeadingLevel = (_attrs$header$decorat = attrs?.header?.decoration?.font?.font?.desktop?.value?.headingLevel) !== null && _attrs$header$decorat !== void 0 ? _attrs$header$decorat : 'h4';\n  const childModules = (0,external_divi_data_namespaceObject.useSelect)(select => {\n    return childrenIds.map(moduleId => select('divi/edit-post').getModule(moduleId));\n  }, [childrenIds]);\n  const handleAutoplay = () => {\n    intervalRef.current = setInterval(() => {\n      setActiveCircleIndex(prevIndex => prevIndex >= childModules.length - 1 ? 0 : prevIndex + 1);\n      setUpdateAngle(prevAngle => prevAngle + 360 / childModules.length);\n    }, Number(dsm_delay));\n  };\n  (0,external_vendor_React_.useEffect)(() => {\n    const reducedMotion = 'undefined' !== typeof window && window.matchMedia && window.matchMedia('(prefers-reduced-motion: reduce)').matches;\n    if ('on' === dsm_enable_autoplay && !reducedMotion) {\n      handleAutoplay();\n    }\n    childModules.forEach((item, index) => {\n      var _childAttr$dsm_active;\n      const childAttr = item?.props?.attrs;\n      const dsm_active_item_default = (_childAttr$dsm_active = childAttr?.dsm_active_item_default?.innerContent?.desktop?.value) !== null && _childAttr$dsm_active !== void 0 ? _childAttr$dsm_active : 'off';\n      if ('on' === dsm_active_item_default) {\n        setActiveCircleIndex(index);\n      }\n    });\n    return () => {\n      // Clear the interval on cleanup\n      if (intervalRef.current) {\n        clearInterval(intervalRef.current);\n      }\n    };\n  }, [dsm_delay, dsm_enable_autoplay, childModules, childModules.length]);\n  (0,external_vendor_React_.useLayoutEffect)(() => {\n    if ('on' !== dsm_circle_size_auto || !circleInfoContainerRef.current) {\n      return;\n    }\n    const el = circleInfoContainerRef.current;\n    // Measure module inner / parent so --main-circle-size matches available width; the\n    // container stays width/height = var(--main-circle-size) like fixed Circle Size.\n    const sizingEl = el.parentElement || el;\n    const applyMainCircleSize = () => {\n      const raw = sizingEl.clientWidth;\n      if (raw <= 0) {\n        return;\n      }\n      const inset = Math.round(raw * DSM_CIRCLE_INFO_AUTO_SIZE_WIDTH_FACTOR);\n      if (inset > 0) {\n        el.style.setProperty('--main-circle-size', `${inset}px`);\n      }\n    };\n    applyMainCircleSize();\n    let ro;\n    if ('undefined' !== typeof ResizeObserver) {\n      ro = new ResizeObserver(applyMainCircleSize);\n      ro.observe(sizingEl);\n    }\n    return () => {\n      if (ro) {\n        ro.disconnect();\n      }\n    };\n  }, [dsm_circle_size_auto, childModules.length]);\n  const onTabListKeyDown = (0,external_vendor_React_.useCallback)(event => {\n    const n = childModules.length;\n    if (n === 0) {\n      return;\n    }\n    const activeEl = document.activeElement;\n    if (!activeEl || !activeEl.id || !activeEl.id.startsWith(`${a11yBaseId}-tab-`)) {\n      return;\n    }\n    const cur = parseInt(activeEl.id.replace(`${a11yBaseId}-tab-`, ''), 10);\n    if (isNaN(cur)) {\n      return;\n    }\n    let next = cur;\n    if ('ArrowRight' === event.key || 'ArrowDown' === event.key) {\n      event.preventDefault();\n      next = (cur + 1) % n;\n    } else if ('ArrowLeft' === event.key || 'ArrowUp' === event.key) {\n      event.preventDefault();\n      next = (cur - 1 + n) % n;\n    } else if ('Home' === event.key) {\n      event.preventDefault();\n      next = 0;\n    } else if ('End' === event.key) {\n      event.preventDefault();\n      next = n - 1;\n    } else {\n      return;\n    }\n    setActiveCircleIndex(next);\n    requestAnimationFrame(() => {\n      document.getElementById(`${a11yBaseId}-tab-${next}`)?.focus();\n    });\n  }, [a11yBaseId, childModules.length]);\n  const circleInfoButton = childModules.map((item, index) => /*#__PURE__*/external_vendor_React_default().createElement(CircleInfoButtonItem, {\n    key: index,\n    childModule: item,\n    index: index,\n    activeCircleIndex: activeCircleIndex,\n    dsmTrigger: dsm_trigger,\n    onActivate: setActiveCircleIndex,\n    a11yBaseId: a11yBaseId\n  }));\n  const circleInfoContent = childModules.map((item, index) => /*#__PURE__*/external_vendor_React_default().createElement(CircleInfoContentItem, {\n    key: index,\n    childModule: item,\n    index: index,\n    activeCircleIndex: activeCircleIndex,\n    dsmContentAnimation: dsm_content_animation,\n    parentHeadingLevel: parentHeadingLevel,\n    a11yBaseId: a11yBaseId\n  }));\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: circle_info_edit_ModuleScriptData,\n    stylesComponent: props => /*#__PURE__*/external_vendor_React_default().createElement(circle_info_module_styles_ModuleStyles, circle_info_edit_extends({}, props, {\n      childrenIds: childrenIds\n    })),\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    ref: circleInfoContainerRef,\n    className: `dsm-circle-info-container dsm_animate${'on' === dsm_circle_size_auto ? ' dsm-circle-info-size-auto' : ''}`,\n    \"data-circle-size-auto\": dsm_circle_size_auto,\n    style: {\n      ...('on' !== dsm_circle_size_auto ? {\n        '--main-circle-size': dsm_circle_size\n      } : {}),\n      '--dsm-angle': updateAngle\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-circle-info-button\",\n    role: \"tablist\",\n    \"aria-label\": (0,external_window_vendor_wp_i18n_namespaceObject.__)('Circle items', 'dsm-supreme-modules-pro-for-divi'),\n    onKeyDown: onTabListKeyDown\n  }, circleInfoButton), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-circle-info-content\"\n  }, circleInfoContent)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ChildModulesContainer, {\n    ids: childrenIds\n  }));\n}\n/* harmony default export */ const circle_info_edit = (circle_info_edit_Edit);\n;// ./packages/module-library/circle-info/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmCircleInfo', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/circle-info': {\n      name: 'divi-supreme/circle-info',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 14.933594 1.601562 C 14.640625 1.601562 14.398438 1.359375 14.398438 1.066406 C 14.398438 0.773438 14.640625 0.535156 14.933594 0.535156 C 15.226562 0.535156 15.464844 0.773438 15.464844 1.066406 C 15.464844 1.359375 15.226562 1.601562 14.933594 1.601562 Z M 14.933594 0.828125 C 14.800781 0.828125 14.695312 0.933594 14.695312 1.066406 C 14.695312 1.199219 14.800781 1.304688 14.933594 1.304688 C 15.066406 1.304688 15.171875 1.199219 15.171875 1.066406 C 15.171875 0.933594 15.066406 0.828125 14.933594 0.828125 Z M 14.933594 0.828125 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 1.601562 14.933594 C 1.304688 14.933594 1.066406 14.695312 1.066406 14.398438 C 1.066406 14.105469 1.304688 13.867188 1.601562 13.867188 C 1.894531 13.867188 2.132812 14.105469 2.132812 14.398438 C 2.132812 14.695312 1.894531 14.933594 1.601562 14.933594 Z M 1.601562 14.160156 C 1.46875 14.160156 1.359375 14.269531 1.359375 14.398438 C 1.359375 14.53125 1.46875 14.640625 1.601562 14.640625 C 1.730469 14.640625 1.839844 14.53125 1.839844 14.398438 C 1.839844 14.269531 1.730469 14.160156 1.601562 14.160156 Z M 1.601562 14.160156 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 13.480469 9.621094 C 13.546875 9.273438 13.578125 8.921875 13.578125 8.5625 C 13.578125 6.609375 12.601562 4.796875 10.960938 3.722656 L 10.539062 4.371094 C 11.960938 5.300781 12.808594 6.867188 12.808594 8.5625 C 12.808594 8.828125 12.785156 9.09375 12.746094 9.355469 C 12 9.246094 11.210938 9.585938 10.800781 10.300781 C 10.269531 11.21875 10.585938 12.402344 11.503906 12.933594 C 12.433594 13.46875 13.609375 13.140625 14.140625 12.226562 C 14.664062 11.316406 14.363281 10.164062 13.480469 9.621094 Z M 13.472656 11.839844 C 13.152344 12.394531 12.445312 12.582031 11.890625 12.265625 C 11.339844 11.945312 11.148438 11.238281 11.46875 10.683594 C 11.789062 10.132812 12.492188 9.941406 13.046875 10.261719 C 13.601562 10.582031 13.789062 11.289062 13.472656 11.839844 Z M 13.472656 11.839844 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 7.839844 13.628906 C 6.679688 13.628906 5.574219 13.230469 4.679688 12.507812 C 5.152344 11.90625 5.242188 11.050781 4.835938 10.351562 C 4.304688 9.429688 3.125 9.113281 2.203125 9.644531 C 1.28125 10.179688 0.964844 11.355469 1.496094 12.277344 C 2.015625 13.175781 3.160156 13.507812 4.082031 13.011719 C 5.128906 13.910156 6.453125 14.398438 7.839844 14.398438 C 8.757812 14.398438 9.636719 14.191406 10.449219 13.78125 L 10.101562 13.089844 C 9.394531 13.449219 8.636719 13.628906 7.839844 13.628906 Z M 2.164062 11.894531 C 1.84375 11.339844 2.035156 10.632812 2.585938 10.3125 C 3.140625 9.996094 3.847656 10.179688 4.167969 10.734375 C 4.488281 11.289062 4.296875 11.996094 3.746094 12.316406 C 3.191406 12.636719 2.484375 12.445312 2.164062 11.894531 Z M 2.164062 11.894531 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.023438 3.878906 C 6.308594 4.589844 7 5.09375 7.8125 5.09375 C 8.875 5.09375 9.738281 4.230469 9.738281 3.167969 C 9.738281 2.101562 8.875 1.238281 7.8125 1.238281 C 6.769531 1.238281 5.917969 2.074219 5.886719 3.109375 C 3.699219 3.882812 2.167969 5.90625 2.039062 8.242188 L 2.808594 8.285156 C 2.917969 6.304688 4.191406 4.578125 6.023438 3.878906 Z M 7.8125 2.007812 C 8.449219 2.007812 8.96875 2.527344 8.96875 3.167969 C 8.96875 3.804688 8.449219 4.324219 7.8125 4.324219 C 7.175781 4.324219 6.65625 3.804688 6.65625 3.167969 C 6.65625 2.527344 7.175781 2.007812 7.8125 2.007812 Z M 7.8125 2.007812 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 7.859375 9.902344 C 6.996094 9.902344 6.292969 9.199219 6.292969 8.339844 C 6.292969 7.476562 6.996094 6.773438 7.859375 6.773438 C 8.71875 6.773438 9.421875 7.476562 9.421875 8.339844 C 9.421875 9.199219 8.71875 9.902344 7.859375 9.902344 Z M 7.859375 7.636719 C 7.472656 7.636719 7.15625 7.953125 7.15625 8.339844 C 7.15625 8.722656 7.472656 9.042969 7.859375 9.042969 C 8.242188 9.042969 8.5625 8.722656 8.5625 8.339844 C 8.5625 7.953125 8.242188 7.636719 7.859375 7.636719 Z M 7.859375 7.636719 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/circle-info/index.js\n// External library dependencies.\n\n\n// Wordpress dependencies.\n\n\n\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\n\n\nconst CIRCLE_INFO_CHILD = 'dsm/circle-info-child';\nconst circleInfoDefaultChildTemplate = buildParentDefaultChildTemplate(CIRCLE_INFO_CHILD, 3, ['Item 1', 'Item 2', 'Item 3'].map(label => ({\n  dsm_circle_info_title: {\n    innerContent: {\n      desktop: {\n        value: {\n          text: label\n        }\n      }\n    }\n  }\n})));\nconst circleInfoModule = {\n  metadata: circle_info_module_namespaceObject,\n  renderers: {\n    edit: circle_info_edit,\n    styles: circle_info_module_styles_ModuleStyles\n  },\n  conversionOutline: circle_info_conversion_outline_conversionOutline,\n  childrenName: [CIRCLE_INFO_CHILD],\n  template: circleInfoDefaultChildTemplate,\n  callbacks: buildChildDraggableListCallbacks([CIRCLE_INFO_CHILD]),\n  settings: {\n    content: circle_info_settings_content,\n    design: circle_info_settings_design,\n    advanced: circle_info_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    header: {\n      decoration: {\n        font: {\n          font: {\n            desktop: {\n              value: {\n                headingLevel: 'h4'\n              }\n            }\n          }\n        }\n      }\n    },\n    button: {\n      decoration: {\n        button: {\n          desktop: {\n            value: {\n              enable: 'off'\n            }\n          }\n        }\n      }\n    },\n    dsm_enable_autoplay: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    dsm_speed: {\n      innerContent: {\n        desktop: {\n          value: '1s'\n        }\n      }\n    },\n    dsm_delay: {\n      innerContent: {\n        desktop: {\n          value: '3000'\n        }\n      }\n    },\n    dsm_trigger: {\n      innerContent: {\n        desktop: {\n          value: 'click'\n        }\n      }\n    },\n    dsm_circle_size: {\n      innerContent: {\n        desktop: {\n          value: '500px'\n        }\n      }\n    },\n    dsm_circle_size_auto: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    dsm_content_animation: {\n      innerContent: {\n        desktop: {\n          value: 'fadeIn'\n        }\n      }\n    },\n    dsm_design_tab_circle_items: {\n      innerContent: {\n        desktop: {\n          value: 'general'\n        }\n      }\n    },\n    dsm_design_tab_circle_content: {\n      innerContent: {\n        desktop: {\n          value: 'wrapper'\n        }\n      }\n    },\n    dsm_design_tab_circle_content_media: {\n      innerContent: {\n        desktop: {\n          value: 'icon'\n        }\n      }\n    },\n    dsm_design_tab_circle_icon_image: {\n      innerContent: {\n        desktop: {\n          value: 'icon'\n        }\n      }\n    }\n  }\n};\n/* harmony default export */ const circle_info = (circleInfoModule);\n;// ./packages/module-library/circle-info-child/module.json\nconst circle_info_child_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/circle-info-child\",\"d4Shortcode\":\"dsm_circle_info_child\",\"title\":\"Supreme Circle Info Child\",\"titles\":\"Supreme Circle Info Child\",\"category\":\"child-module\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"default\":{\"meta\":{\"adminLabel\":{\"desktop\":{\"value\":\"Supreme Circle Info Child\"}}}},\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}},\"styleProps\":{\"background\":{\"selector\":\".dsm_circle_info {{selector}}.dsm-circle-info-content-wrapper\",\"selectors\":{\"desktop\":{\"value\":\".dsm_circle_info {{selector}}.dsm-circle-info-content-wrapper\",\"hover\":\".dsm_circle_info {{selector}}:hover .dsm-circle-info-content-wrapper\"}}}}},\"header\":{\"type\":\"object\",\"selector\":\".dsm_circle_info {{selector}}.dsm-circle-info-content-wrapper .dsm-title\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content\":{\"type\":\"object\",\"selector\":\".dsm_circle_info {{selector}}.dsm-circle-info-content-wrapper .dsm-circle-info-description\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_circle_info_title\":{\"type\":\"object\",\"selector\":\".dsm_circle_info {{selector}} .dsm-circle-info-button-wrapper .dsm_text\",\"attributes\":{\"class\":\"dsm_text\"},\"tagName\":\"span\",\"inlineEditor\":\"plainText\",\"elementType\":\"headingLink\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\".dsm_circle_info {{selector}} .dsm-circle-info-button-wrapper .dsm_text\",\"hover\":\".dsm_circle_info {{selector}} .dsm-circle-info-button-wrapper:hover .dsm_text\"}}}}},\"dsm_design_tab_circle_items\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"general\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_design_tab_circle_content\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"wrapper\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_design_tab_circle_content_media\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"icon\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_design_tab_circle_icon_image\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"icon\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_show_icon\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"font_icon\":{\"type\":\"object\",\"inlineEditor\":\"IconPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image\":{\"type\":\"object\",\"label\":\"Image\",\"elementType\":\"image\",\"selector\":\".dsm_circle_info .dsm-circle-info-container .dsm-circle-info-button {{selector}} .dsm-circle-info-inner img\",\"supportsCustomAttributes\":true,\"attributes\":{\"class\":\"dsm_circle_info_image\"},\"inlineEditor\":\"UploadContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_active_item_default\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"shortcode_content\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_title\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_circle_info_content\":{\"type\":\"object\",\"inlineEditor\":\"RichTextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_show_icon\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_font_icon\":{\"type\":\"object\",\"inlineEditor\":\"IconPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_image\":{\"type\":\"object\",\"label\":\"Content Image\",\"elementType\":\"image\",\"selector\":\".dsm_circle_info .dsm-circle-info-container .dsm-circle-info-content {{selector}} .dsm-image img\",\"supportsCustomAttributes\":true,\"inlineEditor\":\"UploadContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_circle_image_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_icon_font_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_icon_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_icon_active_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_icon_active_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_icon_font_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_icon_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_image_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_text\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\",\"tagName\":\"span\"},\"button_url\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_url_new_window\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"admin_title\":{\"type\":\"object\",\"inlineEditor\":\"\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_active_item_default_notice\":{\"type\":\"object\",\"inlineEditor\":\"\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"alt\":{\"type\":\"object\",\"inlineEditor\":\"\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_circle_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_circle_active_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-circle-info-content-wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_icon_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\".dsm_circle_info .dsm-circle-info-container .dsm-circle-info-button {{selector}} .dsm_icon\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_icon_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\".dsm_circle_info .dsm-circle-info-container .dsm-circle-info-button {{selector}} .dsm_icon\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_icon_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\".dsm-circle-info-container .dsm-circle-info-content {{selector}} .dsm_content_icon\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_icon_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\".dsm-circle-info-container .dsm-circle-info-content {{selector}} .dsm_content_icon\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"circle_normal_item_style\":{\"type\":\"object\",\"selector\":\".dsm_circle_info .dsm-circle-info-container {{selector}} .dsm-circle-info-button-wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\".dsm_circle_info .dsm-circle-info-container {{selector}} .dsm-circle-info-button-wrapper\",\"important\":true},\"boxShadow\":{\"selector\":\".dsm_circle_info .dsm-circle-info-container {{selector}} .dsm-circle-info-button-wrapper\",\"useOverlay\":true},\"spacing\":{\"selector\":\".dsm_circle_info .dsm-circle-info-container {{selector}} .dsm-circle-info-button-wrapper\",\"important\":true}}},\"circle_active_item_style\":{\"type\":\"object\",\"selector\":\".dsm_circle_info .dsm-circle-info-container {{selector}}.dsm-circle-info-item-active .dsm-circle-info-button-wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\".dsm_circle_info .dsm-circle-info-container {{selector}}.dsm-circle-info-item-active .dsm-circle-info-button-wrapper\",\"important\":true},\"boxShadow\":{\"selector\":\".dsm_circle_info .dsm-circle-info-container {{selector}}.dsm-circle-info-item-active .dsm-circle-info-button-wrapper\",\"useOverlay\":true}}},\"dsm_circle_content_wrapper_style\":{\"type\":\"object\",\"selector\":\".dsm_circle_info {{selector}}.dsm-circle-info-content-wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\",\"settings\":{\"decoration\":{\"border\":{},\"boxShadow\":{}}},\"styleProps\":{\"border\":{\"selector\":\".dsm_circle_info {{selector}}.dsm-circle-info-content-wrapper\",\"important\":true},\"boxShadow\":{\"selector\":\".dsm_circle_info {{selector}}.dsm-circle-info-content-wrapper\",\"useOverlay\":true}}},\"icon_style\":{\"type\":\"object\",\"selector\":\".dsm_circle_info .dsm-circle-info-container .dsm-circle-info-button {{selector}} .dsm_icon\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\".dsm_circle_info .dsm-circle-info-container .dsm-circle-info-button {{selector}} .dsm_icon\",\"important\":true},\"boxShadow\":{\"selector\":\".dsm_circle_info .dsm-circle-info-container .dsm-circle-info-button {{selector}} .dsm_icon\",\"useOverlay\":true}}},\"image_style\":{\"type\":\"object\",\"selector\":\".dsm_circle_info .dsm-circle-info-container .dsm-circle-info-button {{selector}} .dsm-circle-info-inner img\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\".dsm_circle_info .dsm-circle-info-container .dsm-circle-info-button {{selector}} .dsm-circle-info-inner img\",\"important\":true},\"boxShadow\":{\"selector\":\".dsm_circle_info .dsm-circle-info-container .dsm-circle-info-button {{selector}} .dsm-circle-info-inner img\",\"useOverlay\":true}}},\"content_image_style\":{\"type\":\"object\",\"selector\":\".dsm_circle_info .dsm-circle-info-container .dsm-circle-info-content {{selector}} .dsm-image img\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\".dsm_circle_info .dsm-circle-info-container .dsm-circle-info-content {{selector}} .dsm-image img\",\"important\":true},\"boxShadow\":{\"selector\":\".dsm_circle_info .dsm-circle-info-container .dsm-circle-info-content {{selector}} .dsm-image img\",\"useOverlay\":true}}},\"content_icon_style\":{\"type\":\"object\",\"selector\":\".dsm_circle_info .dsm-circle-info-container .dsm-circle-info-content {{selector}} .dsm_content_icon\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\".dsm_circle_info .dsm-circle-info-container .dsm-circle-info-content {{selector}} .dsm_content_icon\",\"important\":true},\"boxShadow\":{\"selector\":\".dsm_circle_info .dsm-circle-info-container .dsm-circle-info-content {{selector}} .dsm_content_icon\",\"useOverlay\":true}}},\"button\":{\"type\":\"object\",\"selector\":\".dsm_circle_info .dsm-circle-info-container .dsm-circle-info-content {{selector}} .et_pb_button_wrapper .et_pb_button\",\"default\":{\"decoration\":{\"button\":{\"desktop\":{\"value\":{\"enable\":\"off\",\"icon\":{\"enable\":\"on\",\"onHover\":\"on\"}}}},\"border\":{\"desktop\":{\"value\":{\"styles\":{\"all\":{\"color\":\"\"}}}}},\"font\":{\"font\":{\"desktop\":{\"value\":{\"color\":\"\"}}}}}},\"elementType\":\"button\",\"styleProps\":{\"font\":{\"important\":{\"font\":{\"desktop\":{\"value\":{\"color\":true,\"font-size\":true,\"letter-spacing\":true}}}}},\"spacing\":{\"propertySelectors\":{\"desktop\":{\"value\":{\"margin\":\".dsm_circle_info .dsm-circle-info-container .dsm-circle-info-content {{selector}} .et_pb_button_wrapper\"}}},\"important\":true}}}}}');\n;// ./packages/module-library/circle-info-child/circle-info-child-module-defaults.js\n/**\n * Shared defaults for Circle Info child (`dsm/circle-info-child`) VB + layer labels.\n *\n * @package DiviSupreme\n */\n\nconst circleInfoChildDefaultAdminLabel = {\n  desktop: {\n    value: 'Supreme Circle Info Child'\n  }\n};\nconst circleInfoChildTitleTextDefault = {\n  desktop: {\n    value: {\n      text: 'Title'\n    }\n  }\n};\n;// ./packages/module-library/circle-info-child/settings-content.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\n\n\n/**\n * Empty `{ src }` default for upload `FieldContainer`s (same pattern as image-accordion-child).\n * Lets the VB merge layer resolve migrated `innerContent.*.value.src` so the media preview shows.\n */\nconst circleInfoChildUploadFieldDefaultAttr = {\n  desktop: {\n    value: {\n      src: ''\n    }\n  }\n};\nfunction circle_info_child_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _getAttrByMode4, _defaultSettingsAttrs;\n  const dsmShowIcon = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_show_icon?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'off';\n  const dsmContentType = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_content_type?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'content';\n  const dsmContentShowIcon = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_content_show_icon?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'off';\n  const activeItemDefault = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_active_item_default?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : 'off';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"main_content\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Settings', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_circle_info_title.innerContent\",\n    subName: \"text\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Input your circle info button title here', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    },\n    defaultAttr: circleInfoChildTitleTextDefault\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_show_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Icon', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose whether icon should be used.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'off'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"font_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Choose an icon to display with your circle button.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmShowIcon\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image.innerContent\",\n    subName: \"src\",\n    defaultAttr: circleInfoChildUploadFieldDefaultAttr,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Upload an image to display at the top of your blurb.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      sticky: false\n    },\n    visible: 'on' !== dsmShowIcon\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_active_item_default.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Active Item By Default', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose whether icon should be used.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'off'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), 'on' === activeItemDefault && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.WarningContainer, {\n    name: \"warning\",\n    value: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Make sure to enable this option for only 1 item. enabling it on multiple items may cause an issue', 'dsm-supreme-modules-pro-for-divi')\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"content\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content_type.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content Type', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'content'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      content: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Custom Content', 'dsm-supreme-modules-pro-for-divi')\n      },\n      shortcode: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shortcode', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"shortcode_content.innerContent\",\n    subName: \"text\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shortcode', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    },\n    visible: 'shortcode' === dsmContentType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content_title.innerContent\",\n    subName: \"text\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('The title of your circle info content.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    },\n    visible: 'content' === dsmContentType || null === dsmContentType,\n    defaultAttr: {\n      desktop: {\n        value: {\n          text: 'Your Title Goes Here'\n        }\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_circle_info_content.innerContent\",\n    subName: \"text\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Input the main text content for your module here.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'content' === dsmContentType || null === dsmContentType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    },\n    defaultAttr: {\n      desktop: {\n        value: {\n          text: 'Your description goes here. Edit or remove this text inline or in the description settings'\n        }\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RichTextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content_show_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Icon', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose whether icon should be used.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'content' === dsmContentType || null === dsmContentType,\n    defaultAttr: {\n      desktop: {\n        value: 'off'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_font_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Choose an icon to display with your circle button.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'content' === dsmContentType && 'on' === dsmContentShowIcon || null === dsmContentType && 'on' === dsmContentShowIcon\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content_image.innerContent\",\n    subName: \"src\",\n    defaultAttr: circleInfoChildUploadFieldDefaultAttr,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Upload an image to display at the top of your blurb.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'content' === dsmContentType && 'on' !== dsmContentShowIcon || null === dsmContentType && 'on' !== dsmContentShowIcon,\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_text.innerContent\",\n    subName: \"text\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Text', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Input your desired button text, or leave blank for no button.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'content' === dsmContentType || null === dsmContentType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_url.innerContent\",\n    subName: \"text\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Link URL', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Input the destination URL for your Circle Info button.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'content' === dsmContentType || null === dsmContentType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_url_new_window.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Link Target', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose whether or not your link opens in a new window.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'content' === dsmContentType || null === dsmContentType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      off: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The Same Window', 'dsm-supreme-modules-pro-for-divi')\n      },\n      on: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The New Tab', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: (_defaultSettingsAttrs = defaultSettingsAttrs?.module?.meta?.adminLabel) !== null && _defaultSettingsAttrs !== void 0 ? _defaultSettingsAttrs : circleInfoChildDefaultAdminLabel\n  }));\n}\n/* harmony default export */ const circle_info_child_settings_content = (circle_info_child_settings_content_SettingsContent);\n;// ./packages/module-library/circle-info-child/settings-design.js\n\n// Wordpress dependencies.\n\n// Divi package dependencies.\n\n\n\n\n\n/** D4: `dsm_circle_info_title` font — `divi-4/includes/modules/CircleInfoChild/CircleInfoChild.php`. */\nconst circleInfoChildCircleTitleFontDefaultGroupAttr = {\n  font: {\n    desktop: {\n      value: {\n        size: '14px',\n        lineHeight: '1.7em',\n        letterSpacing: '0px',\n        textAlign: 'center'\n      }\n    }\n  }\n};\nconst circleInfoChildHeaderFontDefaultGroupAttr = {\n  font: {\n    desktop: {\n      value: {\n        headingLevel: 'h4'\n      }\n    }\n  }\n};\nconst circleInfoChildContentFontDefaultGroupAttr = {\n  font: {\n    desktop: {\n      value: {\n        size: '14px',\n        lineHeight: '1.7em',\n        letterSpacing: '0px',\n        textAlign: 'center'\n      }\n    }\n  }\n};\n\n/** Design tab: circle button item (child: title + normal + active). */\nconst settings_design_circleItemsTabOptions = {\n  general: {\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('General', 'dsm-supreme-modules-pro-for-divi')\n  },\n  normal: {\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Normal', 'dsm-supreme-modules-pro-for-divi')\n  },\n  active: {\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Active', 'dsm-supreme-modules-pro-for-divi')\n  }\n};\n\n/** Design tab: content panel (wrapper, title, description). */\nconst settings_design_circleContentTabOptions = {\n  wrapper: {\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Wrapper', 'dsm-supreme-modules-pro-for-divi')\n  },\n  title: {\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi')\n  },\n  description: {\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Description', 'dsm-supreme-modules-pro-for-divi')\n  }\n};\n\n/** Design tab: icon vs image (circle ring + content panel). */\nconst settings_design_iconImageDesignTabOptions = {\n  icon: {\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi')\n  },\n  image: {\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi')\n  }\n};\nfunction circle_info_child_settings_design_SettingsDesign({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _getAttrByMode4, _defaultSettingsAttrs;\n  const button = attrs?.button?.decoration?.button?.desktop?.value?.enable;\n  const circleItemsDesignTab = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_design_tab_circle_items?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'general';\n  const circleContentDesignTab = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_design_tab_circle_content?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'wrapper';\n  const circleContentMediaTab = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_design_tab_circle_content_media?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'icon';\n  const circleIconImageTab = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_design_tab_circle_icon_image?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : 'icon';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"circle_items\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Circle items', 'dsm-supreme-modules-pro-for-divi'),\n    defaultOpened: true\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_design_tab_circle_items.innerContent\",\n    defaultAttr: {\n      desktop: {\n        value: 'general'\n      }\n    },\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Item state', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Style this item’s ring button: title text, default look, or the active state.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: settings_design_circleItemsTabOptions,\n    tabUi: true,\n    showLabel: true\n  })), 'general' === circleItemsDesignTab && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"dsm_circle_info_title.decoration.font\",\n    defaultGroupAttr: circleInfoChildCircleTitleFontDefaultGroupAttr,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Circle items', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), 'normal' === circleItemsDesignTab && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_circle_bg_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Circle item background', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background for this item’s circle button (migrated D4 “Circle Background Color”).', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"circle_normal_item_style.decoration.border\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Circle Item', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"circle_normal_item_style.decoration.boxShadow\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Circle Item', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"circle_normal_item_style.decoration.spacing\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Circle Item', 'dsm-supreme-modules-pro-for-divi')\n  })), 'active' === circleItemsDesignTab && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_circle_active_bg_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Active circle item background', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background when this item is active (migrated D4 “Active Circle Background Color”).', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"circle_active_item_style.decoration.border\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Active Circle Item', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"circle_active_item_style.decoration.boxShadow\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Active Circle Item', 'dsm-supreme-modules-pro-for-divi')\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"circle_icon_image\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Circle Icon / Image', 'dsm-supreme-modules-pro-for-divi'),\n    defaultOpened: true\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_design_tab_circle_icon_image.innerContent\",\n    defaultAttr: {\n      desktop: {\n        value: 'icon'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: settings_design_iconImageDesignTabOptions,\n    tabUi: true,\n    showLabel: true\n  })), 'icon' === circleIconImageTab && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_icon_font_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Size', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose icon width.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    defaultUnit: 'px',\n    allowedUnits: ['%', 'em', 'rem', 'px', 'cm', 'mm', 'in', 'pt', 'pc', 'ex', 'vh', 'vw'],\n    step: 1\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_icon_bg_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom background color for the icon.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_icon_active_bg_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Active Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom active background color for the icon.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_icon_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom color for the icon.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_icon_active_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Active Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom active color for the icon.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_icon_margin.decoration.spacing\",\n    grouped: false,\n    fields: {\n      padding: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_icon_padding.decoration.spacing\",\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"icon_style.decoration.border\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"icon_style.decoration.boxShadow\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi')\n  })), 'image' === circleIconImageTab && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_circle_image_width.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Width', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Width of circle button images; use percent (D4 used px — those values still load until you re-save or re-run migration).', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 200,\n    step: 1,\n    defaultUnit: '%',\n    allowedUnits: ['%', 'px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"image_style.decoration.border\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"image_style.decoration.boxShadow\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi')\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"content_panel\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi'),\n    defaultOpened: true\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_design_tab_circle_content.innerContent\",\n    defaultAttr: {\n      desktop: {\n        value: 'wrapper'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: settings_design_circleContentTabOptions,\n    tabUi: true,\n    showLabel: true\n  })), 'wrapper' === circleContentDesignTab && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_content_padding.decoration.spacing\",\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"dsm_circle_content_wrapper_style.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"dsm_circle_content_wrapper_style.decoration.boxShadow\",\n    grouped: false\n  })), 'title' === circleContentDesignTab && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"header.decoration.font\",\n    defaultGroupAttr: circleInfoChildHeaderFontDefaultGroupAttr,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: true\n      }\n    }\n  }), 'description' === circleContentDesignTab && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"dsm_content.decoration.font\",\n    defaultGroupAttr: circleInfoChildContentFontDefaultGroupAttr,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Description', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"content_icon_image\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content Icon / Image', 'dsm-supreme-modules-pro-for-divi'),\n    defaultOpened: true\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_design_tab_circle_content_media.innerContent\",\n    defaultAttr: {\n      desktop: {\n        value: 'icon'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: settings_design_iconImageDesignTabOptions,\n    tabUi: true,\n    showLabel: true\n  })), 'icon' === circleContentMediaTab && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content_icon_font_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Size', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose icon width.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    step: 1,\n    defaultUnit: 'px',\n    allowedUnits: ['%', 'em', 'rem', 'px', 'cm', 'mm', 'in', 'pt', 'pc', 'ex', 'vh', 'vw']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content_icon_bg_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom background color for the icon.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content_icon_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom color for the icon.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_content_icon_margin.decoration.spacing\",\n    grouped: false,\n    fields: {\n      padding: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_content_icon_padding.decoration.spacing\",\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"content_icon_style.decoration.border\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"content_icon_style.decoration.boxShadow\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi')\n  })), 'image' === circleContentMediaTab && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content_image_width.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Width', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose image width.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    step: 1,\n    defaultUnit: '%',\n    allowedUnits: ['%']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"content_image_style.decoration.border\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"content_image_style.decoration.boxShadow\",\n    grouped: false\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"button\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ButtonGroupContainer, {\n    attrName: \"button\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi'),\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi'),\n    defaultGroupAttr: (_defaultSettingsAttrs = defaultSettingsAttrs?.button?.decoration?.asMutable({\n      deep: true\n    })) !== null && _defaultSettingsAttrs !== void 0 ? _defaultSettingsAttrs : {},\n    grouped: false,\n    fields: {\n      alignment: {\n        render: true\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_alignment.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    multipleChoices: false,\n    visible: 'off' === button,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null));\n}\n/* harmony default export */ const circle_info_child_settings_design = (circle_info_child_settings_design_SettingsDesign);\n;// ./packages/module-library/circle-info-child/settings-advanced.js\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\nfunction circle_info_child_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_circle_info_child\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const circle_info_child_settings_advanced = (circle_info_child_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/circle-info-child/module-styles.js\n\n\n\n\n\n/**\n * Divi only emits background-size / repeat etc. when explicitly set on `image` (StyleDeclarationTrait.php).\n * Merged defaults omit those keys when equal to schema default — hydrate so `cover` still outputs as CSS.\n *\n * @param {Object|undefined} attrs Module root attrs.\n */\nfunction hydrateCircleInfoChildModuleBgForStyleOutput(attrs) {\n  const bg = attrs?.module?.decoration?.background;\n  if (!bg || typeof bg !== 'object') {\n    return;\n  }\n  const base = {\n    url: '',\n    parallax: {\n      enabled: 'off',\n      method: 'on'\n    },\n    size: 'cover',\n    width: 'auto',\n    height: 'auto',\n    position: 'center',\n    horizontalOffset: '0',\n    verticalOffset: '0',\n    repeat: 'no-repeat',\n    blend: 'normal'\n  };\n  Object.keys(bg).forEach(breakpoint => {\n    const states = bg[breakpoint];\n    if (!states || typeof states !== 'object') {\n      return;\n    }\n    Object.keys(states).forEach(stateKey => {\n      const sv = states[stateKey];\n      const url = sv?.image?.url;\n      if (url === undefined || url === null || typeof url === 'string' && '' === url.trim()) {\n        return;\n      }\n      if (!sv.image || typeof sv.image !== 'object') {\n        return;\n      }\n      states[stateKey] = {\n        ...sv,\n        image: {\n          ...base,\n          ...sv.image,\n          parallax: {\n            ...base.parallax,\n            ...(sv.image.parallax || {})\n          }\n        }\n      };\n    });\n  });\n}\nconst circleIconFontCss = buildLegacyPseudoIconFontCss;\nconst contentIconFontCss = buildLegacyPseudoIconFontCss;\n\n/**\n * React function component for rendering module style.\n */\nconst circle_info_child_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  hydrateCircleInfoChildModuleBgForStyleOutput(attrs);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'header'\n  }), elements.style({\n    attrName: 'dsm_circle_info_title'\n  }), elements.style({\n    attrName: 'dsm_content'\n  }), elements.style({\n    attrName: 'button'\n  }), elements.style({\n    attrName: 'content_image_style'\n  }), elements.style({\n    attrName: 'content_icon_style'\n  }), elements.style({\n    attrName: 'dsm_content_icon_margin'\n  }), elements.style({\n    attrName: 'dsm_content_icon_padding'\n  }), elements.style({\n    attrName: 'dsm_circle_content_wrapper_style'\n  }), elements.style({\n    attrName: 'icon_style'\n  }), elements.style({\n    attrName: 'image_style'\n  }), elements.style({\n    attrName: 'circle_active_item_style'\n  }), elements.style({\n    attrName: 'circle_normal_item_style'\n  }), elements.style({\n    attrName: 'dsm_icon_margin'\n  }), elements.style({\n    attrName: 'dsm_icon_padding'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et-pb-icon.dsm_icon::before`,\n    attr: attrs?.font_icon?.innerContent,\n    declarationFunction: circleIconFontCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et-pb-icon.dsm_content_icon::before`,\n    attr: attrs?.dsm_font_icon?.innerContent,\n    declarationFunction: contentIconFontCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm_circle_info .dsm-circle-info-container ${orderClass} .dsm-image img`,\n    attr: attrs?.dsm_content_image_width?.innerContent,\n    property: \"width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm_circle_info .dsm-circle-info-container ${orderClass} .et-pb-icon.dsm_content_icon`,\n    attr: attrs?.dsm_content_icon_font_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm_circle_info .dsm-circle-info-container ${orderClass} .et-pb-icon.dsm_content_icon`,\n    attr: attrs?.dsm_content_icon_bg_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm_circle_info .dsm-circle-info-container ${orderClass} .et-pb-icon.dsm_content_icon`,\n    attr: attrs?.dsm_content_icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm_circle_info .dsm-circle-info-container .dsm-circle-info-button ${orderClass} .et-pb-icon.dsm_icon`,\n    attr: attrs?.dsm_icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm_circle_info .dsm-circle-info-container .dsm-circle-info-button ${orderClass} .et-pb-icon.dsm_icon`,\n    attr: attrs?.dsm_icon_bg_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm_circle_info .dsm-circle-info-container .dsm-circle-info-button ${orderClass} .et-pb-icon.dsm_icon`,\n    attr: attrs?.dsm_icon_font_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm_circle_info .dsm-circle-info-container .dsm-circle-info-button ${orderClass}.dsm-circle-info-item-active .et-pb-icon.dsm_icon`,\n    attr: attrs?.dsm_icon_active_bg_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm_circle_info .dsm-circle-info-container .dsm-circle-info-button ${orderClass}.dsm-circle-info-item-active .et-pb-icon.dsm_icon`,\n    attr: attrs?.dsm_icon_active_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm_circle_info .dsm-circle-info-container .dsm-circle-info-button ${orderClass} .dsm-circle-info-inner img`,\n    attr: attrs?.dsm_circle_image_width?.innerContent,\n    property: \"width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm_circle_info .dsm-circle-info-container ${orderClass}.dsm-circle-info-item-inner-wrapper .dsm-circle-info-button-wrapper`,\n    attr: attrs?.dsm_circle_bg_color?.innerContent,\n    property: \"background\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm_circle_info .dsm-circle-info-container ${orderClass}.dsm-circle-info-item-inner-wrapper.dsm-circle-info-item-active .dsm-circle-info-button-wrapper`,\n    attr: attrs?.dsm_circle_active_bg_color?.innerContent,\n    property: \"background\"\n  }));\n};\n;// ./packages/module-library/circle-info-child/edit.js\n\n\n// Divi package dependencies.\n\n// Custom dependencies.\n\n\n/**\n * React function component for registering module script data.\n */\n\nconst circle_info_child_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction circle_info_child_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  const {} = attrs;\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: circle_info_child_edit_ModuleScriptData,\n    stylesComponent: circle_info_child_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }));\n}\n/* harmony default export */ const circle_info_child_edit = (circle_info_child_edit_Edit);\n;// ./packages/module-library/circle-info-child/conversion-outline.js\n\n\nconst circle_info_child_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    // D4: `advanced_fields.background` targets `%%order_class%%.dsm-circle-info-content-wrapper`.\n    // Outline maps background → module; ensure_* merges legacy promoted wrapper-only BG onto module for Content-tab control.\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border',\n      dsm_circle_item_border: 'circle_normal_item_style.decoration.border',\n      dsm_circle_active_item_border: 'circle_active_item_style.decoration.border',\n      dsm_circle_icon_border: 'icon_style.decoration.border',\n      dsm_content_icon_border: 'content_icon_style.decoration.border',\n      dsm_circle_image_border: 'image_style.decoration.border',\n      dsm_content_image_border: 'content_image_style.decoration.border',\n      dsm_circle_content_wrapper: 'dsm_circle_content_wrapper_style.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow',\n      dsm_circle_item: 'circle_normal_item_style.decoration.boxShadow',\n      dsm_circle_active_item: 'circle_active_item_style.decoration.boxShadow',\n      dsm_circle_content_wrapper: 'dsm_circle_content_wrapper_style.decoration.boxShadow',\n      dsm_circle_icon_shadow: 'icon_style.decoration.boxShadow',\n      dsm_content_icon_shadow: 'content_icon_style.decoration.boxShadow',\n      dsm_circle_image_shadow: 'image_style.decoration.boxShadow',\n      dsm_content_image_shadow: 'content_image_style.decoration.boxShadow'\n    },\n    button: {\n      button: 'button'\n    },\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    text_shadow: {\n      default: 'module.advanced.text.textShadow'\n    },\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    fonts: {\n      dsm_circle_info_title: 'dsm_circle_info_title.decoration.font',\n      header: 'header.decoration.font',\n      dsm_content: 'dsm_content.decoration.font'\n    },\n    margin_padding: {\n      default: 'module.decoration.spacing',\n      // D4: `margin_padding.dsm_circle_item` → `.dsm-circle-info-button-wrapper`.\n      dsm_circle_item: 'circle_normal_item_style.decoration.spacing'\n    },\n    link_options: 'module.advanced.link'\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    header: 'header.decoration.font.font.*.headingLevel',\n    header_level: 'header.decoration.font.font.*.headingLevel',\n    dsm_circle_info_title: 'dsm_circle_info_title.innerContent.*.text',\n    dsm_show_icon: 'dsm_show_icon.innerContent.*',\n    font_icon: 'font_icon.innerContent.*',\n    image: 'image.innerContent.*.src',\n    admin_title: 'module.meta.adminLabel.*',\n    alt: 'alt.innerContent.*.text',\n    dsm_active_item_default: 'dsm_active_item_default.innerContent.*',\n    dsm_active_item_default_notice: 'dsm_active_item_default_notice.innerContent.*',\n    dsm_content_type: 'dsm_content_type.innerContent.*',\n    shortcode_content: 'shortcode_content.innerContent.*.text',\n    dsm_content_title: 'dsm_content_title.innerContent.*.text',\n    dsm_circle_info_content: 'dsm_circle_info_content.innerContent.*.text',\n    dsm_content_show_icon: 'dsm_content_show_icon.innerContent.*',\n    dsm_font_icon: 'dsm_font_icon.innerContent.*',\n    dsm_content_image: 'dsm_content_image.innerContent.*.src',\n    dsm_circle_image_width: 'dsm_circle_image_width.innerContent.*',\n    dsm_icon_font_size: 'dsm_icon_font_size.innerContent.*',\n    dsm_icon_bg_color: 'dsm_icon_bg_color.innerContent.*',\n    dsm_icon_active_bg_color: 'dsm_icon_active_bg_color.innerContent.*',\n    dsm_icon_color: 'dsm_icon_color.innerContent.*',\n    dsm_icon_active_color: 'dsm_icon_active_color.innerContent.*',\n    dsm_content_icon_font_size: 'dsm_content_icon_font_size.innerContent.*',\n    dsm_content_icon_bg_color: 'dsm_content_icon_bg_color.innerContent.*',\n    dsm_content_icon_color: 'dsm_content_icon_color.innerContent.*',\n    dsm_content_image_width: 'dsm_content_image_width.innerContent.*',\n    button_text: 'button_text.innerContent.*.text',\n    button_url: 'button_url.innerContent.*.text',\n    button_url_new_window: 'button_url_new_window.innerContent.*',\n    dsm_circle_bg_color: 'dsm_circle_bg_color.innerContent.*',\n    dsm_circle_active_bg_color: 'dsm_circle_active_bg_color.innerContent.*',\n    dsm_content_padding: 'dsm_content_padding.decoration.spacing.*.padding',\n    dsm_icon_margin: 'dsm_icon_margin.decoration.spacing.*.margin',\n    dsm_icon_padding: 'dsm_icon_padding.decoration.spacing.*.padding',\n    dsm_content_icon_margin: 'dsm_content_icon_margin.decoration.spacing.*.margin',\n    dsm_content_icon_padding: 'dsm_content_icon_padding.decoration.spacing.*.padding',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    dsm_content_padding: 'convertSpacing',\n    dsm_icon_margin: 'convertSpacing',\n    dsm_icon_padding: 'convertSpacing',\n    dsm_content_icon_margin: 'convertSpacing',\n    dsm_content_icon_padding: 'convertSpacing',\n    dsm_font_icon: external_divi_conversion_namespaceObject.convertFontIcon,\n    font_icon: external_divi_conversion_namespaceObject.convertFontIcon,\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/circle-info-child/index.js\n// External library dependencies.\n\n\n// Wordpress dependencies.\n\n\n\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\nconst circleInfoChildModule = {\n  metadata: circle_info_child_module_namespaceObject,\n  parentsName: ['dsm/circle-info'],\n  conversionOutline: circle_info_child_conversion_outline_conversionOutline,\n  settings: {\n    content: circle_info_child_settings_content,\n    design: circle_info_child_settings_design,\n    advanced: circle_info_child_settings_advanced\n  },\n  renderers: {\n    edit: circle_info_child_edit,\n    styles: circle_info_child_module_styles_ModuleStyles\n  },\n  defaultAttrs: {\n    image: {\n      innerContent: {\n        desktop: {\n          value: {\n            src: ''\n          }\n        }\n      }\n    },\n    dsm_content_image: {\n      innerContent: {\n        desktop: {\n          value: {\n            src: ''\n          }\n        }\n      }\n    }\n  },\n  placeholderContent: {\n    button: {\n      decoration: {\n        button: {\n          desktop: {\n            value: {\n              enable: 'off'\n            }\n          }\n        }\n      }\n    },\n    dsm_use_icon: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    dsm_content_type: {\n      innerContent: {\n        desktop: {\n          value: 'content'\n        }\n      }\n    },\n    dsm_content_show_icon: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    dsm_font_icon: {\n      innerContent: {\n        desktop: {\n          value: ''\n        }\n      }\n    },\n    dsm_circle_info_content: {\n      innerContent: {\n        desktop: {\n          value: {\n            text: 'Your description goes here. Edit or remove this text inline or in the description settings'\n          }\n        }\n      }\n    },\n    dsm_content_title: {\n      innerContent: {\n        desktop: {\n          value: {\n            text: 'Your Title Goes Here'\n          }\n        }\n      }\n    },\n    button_url_new_window: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    dsm_circle_info_title: {\n      innerContent: circleInfoChildTitleTextDefault\n    },\n    dsm_show_icon: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    dsm_active_item_default: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    dsm_design_tab_circle_items: {\n      innerContent: {\n        desktop: {\n          value: 'general'\n        }\n      }\n    },\n    dsm_design_tab_circle_content: {\n      innerContent: {\n        desktop: {\n          value: 'wrapper'\n        }\n      }\n    },\n    dsm_design_tab_circle_content_media: {\n      innerContent: {\n        desktop: {\n          value: 'icon'\n        }\n      }\n    },\n    dsm_design_tab_circle_icon_image: {\n      innerContent: {\n        desktop: {\n          value: 'icon'\n        }\n      }\n    }\n  }\n};\n/* harmony default export */ const circle_info_child = (circleInfoChildModule);\n;// ./packages/module-library/dual-heading/module.json\nconst dual_heading_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/dual-heading\",\"d4Shortcode\":\"dsm_dual_heading\",\"title\":\"Supreme Dual Heading\",\"titles\":\"Supreme Dual Heading\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/dual-heading\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"default\":{\"advanced\":{\"text\":{\"text\":{\"desktop\":{\"value\":{\"color\":\"light\"}}}}}},\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"main_text\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-dual-heading-main\",\"childrenSanitizer\":\"et_core_esc_previously\",\"settings\":{\"decoration\":{\"font\":{}}},\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-dual-heading-main\",\"hover\":\"{{selector}}:hover .dsm-dual-heading-main\"}}}}},\"before_text\":{\"type\":\"object\",\"tagName\":\"span\",\"inlineEditor\":\"TextContainer\",\"selector\":\"{{selector}} .dsm-dual-heading-before\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"middle_text\":{\"type\":\"object\",\"tagName\":\"span\",\"inlineEditor\":\"TextContainer\",\"selector\":\"{{selector}} .dsm-dual-heading-middle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"after_text\":{\"type\":\"object\",\"tagName\":\"span\",\"inlineEditor\":\"TextContainer\",\"selector\":\"{{selector}} .dsm-dual-heading-after\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"heading_html_tag\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"before_background_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"middle_background_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"after_background_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"before_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-dual-heading-before\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"middle_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-dual-heading-middle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"after_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-dual-heading-after\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"before_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-dual-heading-before\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"middle_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-dual-heading-middle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"after_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-dual-heading-after\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"before_display_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"middle_display_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"after_display_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"parts_flex_direction\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"parts_column_gap\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"parts_row_gap\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"parts_column_align\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"beforeStyle\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-dual-heading-before\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-dual-heading-before\",\"important\":true}}},\"middleStyle\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-dual-heading-middle\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-dual-heading-middle\",\"important\":true}}},\"afterStyle\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-dual-heading-after\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-dual-heading-after\",\"important\":true}}}}}');\n;// ./packages/module-library/dual-heading/module-default-render-attributes.json\nconst dual_heading_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"before_text\":{\"innerContent\":{\"desktop\":{\"value\":\"Dual \"}}},\"middle_text\":{\"innerContent\":{\"desktop\":{\"value\":\"Heading\"}}},\"after_text\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"heading_html_tag\":{\"innerContent\":{\"desktop\":{\"value\":\"h2\"}}},\"before_background_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"middle_background_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"after_background_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"before_display_type\":{\"innerContent\":{\"desktop\":{\"value\":\"inline_block\"}}},\"middle_display_type\":{\"innerContent\":{\"desktop\":{\"value\":\"inline_block\"}}},\"after_display_type\":{\"innerContent\":{\"desktop\":{\"value\":\"inline_block\"}}},\"parts_flex_direction\":{\"innerContent\":{\"desktop\":{\"value\":\"row\"}}},\"parts_column_gap\":{\"innerContent\":{\"desktop\":{\"value\":\"0px\"}}},\"parts_row_gap\":{\"innerContent\":{\"desktop\":{\"value\":\"0px\"}}},\"parts_column_align\":{\"innerContent\":{\"desktop\":{\"value\":\"stretch\"}}}}');\n;// ./packages/module-library/dual-heading/dual-heading-vb-default-attrs.js\n/**\n * Visual Builder `defaultAttr` map from `module-default-render-attributes.json`.\n *\n * @package DiviSupreme\n */\n\n\nconst dualHeadingFieldDefaultInnerContent = Object.fromEntries(Object.entries(dual_heading_module_default_render_attributes_namespaceObject).map(([key, attr]) => [key, attr.innerContent]));\n\n/** @type {typeof dualHeadingFieldDefaultInnerContent} */\nconst dualHeadingFd = dualHeadingFieldDefaultInnerContent;\n;// ./packages/module-library/dual-heading/settings-content.js\n\n// Wordpress dependencies.\n\n\n// Divi package dependencies.\n\n\n\n\n\nfunction dual_heading_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  const partsFlexDirection = 'column' === (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.parts_flex_direction?.innerContent) ? 'column' : 'row';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Dual Heading Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"before_text.innerContent\",\n    defaultAttr: dualHeadingFieldDefaultInnerContent.before_text,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Before Text', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"middle_text.innerContent\",\n    defaultAttr: dualHeadingFieldDefaultInnerContent.middle_text,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Middle Text', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"after_text.innerContent\",\n    defaultAttr: dualHeadingFieldDefaultInnerContent.after_text,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('After Text', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"dualHeadingSettings\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Settings', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"heading_html_tag.innerContent\",\n    defaultAttr: dualHeadingFieldDefaultInnerContent.heading_html_tag,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Heading HTML Tag', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      h1: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('H1', 'dsm-supreme-modules-pro-for-divi')\n      },\n      h2: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('H2', 'dsm-supreme-modules-pro-for-divi')\n      },\n      h3: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('H3', 'dsm-supreme-modules-pro-for-divi')\n      },\n      h4: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('H4', 'dsm-supreme-modules-pro-for-divi')\n      },\n      h5: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('H5', 'dsm-supreme-modules-pro-for-divi')\n      },\n      h6: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('H6', 'dsm-supreme-modules-pro-for-divi')\n      },\n      div: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('div', 'dsm-supreme-modules-pro-for-divi')\n      },\n      span: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('span', 'dsm-supreme-modules-pro-for-divi')\n      },\n      p: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('p', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"parts_flex_direction.innerContent\",\n    defaultAttr: dualHeadingFieldDefaultInnerContent.parts_flex_direction,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Parts layout', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Horizontal places Before, Middle, and After in a row (wrapping when needed). Vertical stacks them.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      row: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Horizontal', 'dsm-supreme-modules-pro-for-divi')\n      },\n      column: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Vertical', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"parts_column_gap.innerContent\",\n    defaultAttr: dualHeadingFieldDefaultInnerContent.parts_column_gap,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Horizontal gap', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Space between segments when layout is horizontal (CSS column-gap).', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      hover: false,\n      sticky: false\n    },\n    visible: 'row' === partsFlexDirection\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: \"px\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"parts_row_gap.innerContent\",\n    defaultAttr: dualHeadingFieldDefaultInnerContent.parts_row_gap,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Vertical gap', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Space between segments when layout is vertical (CSS row-gap).', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      hover: false,\n      sticky: false\n    },\n    visible: 'column' === partsFlexDirection\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: \"px\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"parts_column_align.innerContent\",\n    defaultAttr: dualHeadingFieldDefaultInnerContent.parts_column_align,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Stacked segment width', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('When layout is vertical: full width stretches backgrounds edge to edge; fit options shrink each segment to its text.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    visible: 'column' === partsFlexDirection\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      stretch: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Full width', 'dsm-supreme-modules-pro-for-divi')\n      },\n      start: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fit content (start)', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fit content (center)', 'dsm-supreme-modules-pro-for-divi')\n      },\n      end: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fit content (end)', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const dual_heading_settings_content = (dual_heading_settings_content_SettingsContent);\n;// ./packages/module-library/dual-heading/settings-design.js\n\n\n// Wordpress dependencies.\n\n\n// Divi package dependencies.\n\n\n\n\n\nfunction dual_heading_settings_design_SettingsDesign() {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainText\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Main Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"main_text.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Main', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"beforeText\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Before Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"before_background_color.innerContent\",\n    defaultAttr: dualHeadingFieldDefaultInnerContent.before_background_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom background color for the before text.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"before_margin.decoration.spacing\",\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Adjust margin to specific values, or leave blank to use the default margin.', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      padding: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"before_padding.decoration.spacing\",\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Adjust padding to specific values, or leave blank to use the default padding.', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"before_display_type.innerContent\",\n    defaultAttr: dualHeadingFieldDefaultInnerContent.before_display_type,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Display', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      inline_block: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inline Block', 'dsm-supreme-modules-pro-for-divi')\n      },\n      block: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Block', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"before_text.decoration.font\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Before', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      },\n      textAlign: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"beforeStyle.decoration.border\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Before Text', 'dsm-supreme-modules-pro-for-divi')\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"middleText\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Middle Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"middle_background_color.innerContent\",\n    defaultAttr: dualHeadingFieldDefaultInnerContent.middle_background_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom background color for the middle text.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"middle_margin.decoration.spacing\",\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Adjust margin to specific values, or leave blank to use the default margin.', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      padding: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"middle_padding.decoration.spacing\",\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Adjust padding to specific values, or leave blank to use the default padding.', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"middle_display_type.innerContent\",\n    defaultAttr: dualHeadingFieldDefaultInnerContent.middle_display_type,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Display', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      inline_block: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inline Block', 'dsm-supreme-modules-pro-for-divi')\n      },\n      block: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Block', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"middle_text.decoration.font\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Middle', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      },\n      textAlign: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"middleStyle.decoration.border\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Middle Text', 'dsm-supreme-modules-pro-for-divi')\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"afterText\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('After Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"after_background_color.innerContent\",\n    defaultAttr: dualHeadingFieldDefaultInnerContent.after_background_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom background color for the after text.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"after_margin.decoration.spacing\",\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Adjust margin to specific values, or leave blank to use the default margin.', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      padding: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"after_padding.decoration.spacing\",\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Adjust padding to specific values, or leave blank to use the default padding.', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"after_display_type.innerContent\",\n    defaultAttr: dualHeadingFieldDefaultInnerContent.after_display_type,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Display', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      inline_block: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inline Block', 'dsm-supreme-modules-pro-for-divi')\n      },\n      block: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Block', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"after_text.decoration.font\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('After', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      },\n      textAlign: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"afterStyle.decoration.border\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('After Text', 'dsm-supreme-modules-pro-for-divi')\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const dual_heading_settings_design = (dual_heading_settings_design_SettingsDesign);\n;// ./packages/module-library/dual-heading/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction dual_heading_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_dual_heading\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const dual_heading_settings_advanced = (dual_heading_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/dual-heading/module-styles.js\n\n\n\n\n/**\n * Main Text → flex row: `text-align` does not move flex items; mirror Divi Icon List\n * (`FontStyle::text_alignment_declaration`) by emitting `justify-content` on `.dsm-dual-heading-parts`.\n *\n * @param {{ attrValue?: { textAlign?: string } }} params Params from CommonStyle.\n * @return {string}\n */\nfunction dualHeadingPartsJustifyFromMainFont(params) {\n  const textAlign = params?.attrValue?.textAlign;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string'\n  });\n  if (!textAlign) {\n    return declarations.value;\n  }\n  switch (textAlign) {\n    case 'left':\n      declarations.add('justify-content', 'flex-start');\n      break;\n    case 'center':\n      declarations.add('justify-content', 'center');\n      break;\n    case 'right':\n      declarations.add('justify-content', 'flex-end');\n      break;\n    case 'justify':\n      declarations.add('justify-content', 'space-between');\n      break;\n    default:\n      declarations.add('justify-content', 'flex-start');\n      break;\n  }\n  return declarations.value;\n}\n\n/**\n * React function component for rendering module style.\n */\nconst dual_heading_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextStyle, {\n    selector: orderClass,\n    attr: attrs?.module?.advanced?.text\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'main_text'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-dual-heading-parts`,\n    attr: attrs?.main_text?.decoration?.font?.font,\n    declarationFunction: dualHeadingPartsJustifyFromMainFont\n  }), elements.style({\n    attrName: 'before_text'\n  }), elements.style({\n    attrName: 'middle_text'\n  }), elements.style({\n    attrName: 'after_text'\n  }), elements.style({\n    attrName: 'before_margin'\n  }), elements.style({\n    attrName: 'middle_margin'\n  }), elements.style({\n    attrName: 'after_margin'\n  }), elements.style({\n    attrName: 'before_padding'\n  }), elements.style({\n    attrName: 'middle_padding'\n  }), elements.style({\n    attrName: 'after_padding'\n  }), elements.style({\n    attrName: 'beforeStyle'\n  }), elements.style({\n    attrName: 'middleStyle'\n  }), elements.style({\n    attrName: 'afterStyle'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-dual-heading-before`,\n    attr: attrs?.before_background_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-dual-heading-middle`,\n    attr: attrs?.middle_background_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-dual-heading-after`,\n    attr: attrs?.after_background_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-dual-heading-parts`,\n    attr: attrs?.parts_column_gap?.innerContent,\n    property: \"column-gap\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-dual-heading-parts`,\n    attr: attrs?.parts_row_gap?.innerContent,\n    property: \"row-gap\"\n  }));\n};\n;// ./packages/module-library/dual-heading/edit.js\n\n\n\n\n// Divi package dependencies.\n\n\n\n// Custom dependencies.\n\nconst DUAL_HEADING_ALLOWED_TAGS = new Set(['h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'div', 'span', 'p']);\n\n/**\n * Coerce migrated / stored heading tag to a valid DOM tag name for `<HeadingTag>`.\n *\n * @param {*} raw From `getAttrByMode( attrs?.heading_html_tag?.innerContent )`.\n * @return {string} Lowercase tag name (`h1`–`h6`, `div`, `span`, `p`, or `h2` fallback).\n */\nfunction resolveDualHeadingHtmlTag(raw) {\n  if (typeof raw !== 'string') {\n    return 'h2';\n  }\n  const t = raw.trim().toLowerCase();\n  return DUAL_HEADING_ALLOWED_TAGS.has(t) ? t : 'h2';\n}\n\n/**\n * Flex direction for the parts wrapper (`row` = horizontal flow, `column` = stacked).\n *\n * @param {*} raw From `getAttrByMode( attrs?.parts_flex_direction?.innerContent )`.\n * @return {'row'|'column'}\n */\nfunction resolvePartsFlexDirection(raw) {\n  if (typeof raw !== 'string') {\n    return 'row';\n  }\n  const t = raw.trim().toLowerCase();\n  return 'column' === t ? 'column' : 'row';\n}\n\n/**\n * When layout is vertical, optional cross-axis alignment so segment backgrounds can hug text.\n *\n * @param {*}           raw       From `getAttrByMode( attrs?.parts_column_align?.innerContent )`.\n * @param {'row'|'column'} direction Resolved flex direction.\n * @return {string} Additional class names (each prefixed with space) or empty string.\n */\nfunction resolvePartsColumnAlignClasses(raw, direction) {\n  if ('column' !== direction) {\n    return '';\n  }\n  if (typeof raw !== 'string') {\n    return '';\n  }\n  const t = raw.trim().toLowerCase();\n  if ('start' === t) {\n    return ' dsm-dual-heading-parts-column-cross-start';\n  }\n  if ('center' === t) {\n    return ' dsm-dual-heading-parts-column-cross-center';\n  }\n  if ('end' === t) {\n    return ' dsm-dual-heading-parts-column-cross-end';\n  }\n  return '';\n}\n\n/**\n * React function component for registering module script data.\n */\nconst dual_heading_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction dual_heading_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  const {} = attrs;\n  const before_text = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.before_text?.innerContent);\n  const middle_text = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.middle_text?.innerContent);\n  const after_text = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.after_text?.innerContent);\n  const HeadingTag = resolveDualHeadingHtmlTag((0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.heading_html_tag?.innerContent));\n  const before_display_type = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.before_display_type?.innerContent);\n  const middle_display_type = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.middle_display_type?.innerContent);\n  const after_display_type = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.after_display_type?.innerContent);\n\n  // D4 only outputs display CSS when not default inline-block; match by adding a class only for `block`.\n  const before_display_modifier_class = 'block' === before_display_type ? 'dsm-before-display-block' : '';\n  const middle_display_modifier_class = 'block' === middle_display_type ? 'dsm-middle-display-block' : '';\n  const after_display_modifier_class = 'block' === after_display_type ? 'dsm-after-display-block' : '';\n  const parts_flex_direction = resolvePartsFlexDirection((0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.parts_flex_direction?.innerContent));\n  const parts_wrapper_class = 'dsm-dual-heading-parts' + ('column' === parts_flex_direction ? ' dsm-dual-heading-parts-is-column' : '') + resolvePartsColumnAlignClasses((0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.parts_column_align?.innerContent), parts_flex_direction);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: dual_heading_edit_ModuleScriptData,\n    stylesComponent: dual_heading_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(HeadingTag, {\n    className: \"dsm-dual-heading-main et_pb_module_header\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: parts_wrapper_class\n  }, [!(0,lodash.isEmpty)(before_text) ? /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    key: \"dsm-dh-before\",\n    className: `dsm-dual-heading-before ${before_display_modifier_class}`\n  }, elements.render({\n    attrName: 'before_text'\n  })) : null, !(0,lodash.isEmpty)(middle_text) ? /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    key: \"dsm-dh-middle\",\n    className: `dsm-dual-heading-middle ${middle_display_modifier_class}`\n  }, elements.render({\n    attrName: 'middle_text'\n  })) : null, !(0,lodash.isEmpty)(after_text) ? /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    key: \"dsm-dh-after\",\n    className: `dsm-dual-heading-after ${after_display_modifier_class}`\n  }, elements.render({\n    attrName: 'after_text'\n  })) : null].filter(Boolean))));\n}\n/* harmony default export */ const dual_heading_edit = (dual_heading_edit_Edit);\n;// ./packages/module-library/dual-heading/conversion-outline.js\nconst dual_heading_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    disabled_on: 'module.decoration.disabledOn',\n    display_conditions: 'module.decoration.conditions',\n    borders: {\n      default: 'module.decoration.border',\n      before: 'beforeStyle.decoration.border',\n      middle: 'middleStyle.decoration.border',\n      after: 'afterStyle.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow'\n    },\n    module: 'module.advanced.htmlAttributes',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    text: 'module.advanced.text',\n    text_shadow: {\n      default: 'module.advanced.text.textShadow'\n    },\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    margin_padding: 'module.decoration.spacing',\n    link_options: 'module.advanced.link',\n    height: 'module.decoration.sizing',\n    max_width: 'module.decoration.sizing',\n    fonts: {\n      header: 'main_text.decoration.font',\n      before: 'before_text.decoration.font',\n      middle: 'middle_text.decoration.font',\n      after: 'after_text.decoration.font'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    before_text: 'before_text.innerContent.*',\n    middle_text: 'middle_text.innerContent.*',\n    after_text: 'after_text.innerContent.*',\n    heading_html_tag: 'heading_html_tag.innerContent.*',\n    before_background_color: 'before_background_color.innerContent.*',\n    middle_background_color: 'middle_background_color.innerContent.*',\n    after_background_color: 'after_background_color.innerContent.*',\n    before_margin: 'before_margin.decoration.spacing.*.margin',\n    middle_margin: 'middle_margin.decoration.spacing.*.margin',\n    after_margin: 'after_margin.decoration.spacing.*.margin',\n    before_padding: 'before_padding.decoration.spacing.*.padding',\n    middle_padding: 'middle_padding.decoration.spacing.*.padding',\n    after_padding: 'after_padding.decoration.spacing.*.padding',\n    before_display_type: 'before_display_type.innerContent.*',\n    middle_display_type: 'middle_display_type.innerContent.*',\n    after_display_type: 'after_display_type.innerContent.*',\n    parts_gap: 'parts_gap.innerContent.*',\n    parts_flex_direction: 'parts_flex_direction.innerContent.*',\n    parts_column_gap: 'parts_column_gap.innerContent.*',\n    parts_row_gap: 'parts_row_gap.innerContent.*',\n    parts_column_align: 'parts_column_align.innerContent.*',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    before_margin: 'convertSpacing',\n    middle_margin: 'convertSpacing',\n    after_margin: 'convertSpacing',\n    before_padding: 'convertSpacing',\n    middle_padding: 'convertSpacing',\n    after_padding: 'convertSpacing',\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/dual-heading/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmDualHeading', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/dual-heading': {\n      name: 'divi-supreme/dual-heading',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.214844 12.132812 L 2.695312 12.132812 L 2.695312 11.667969 C 2.917969 11.667969 3.085938 11.605469 3.207031 11.476562 C 3.433594 11.234375 3.398438 10.808594 3.398438 10.800781 L 3.398438 7.453125 L 2.3125 7.453125 C 1.964844 7.453125 1.75 7.621094 1.625 7.765625 C 1.539062 7.863281 1.402344 7.898438 1.277344 7.855469 C 1.148438 7.808594 1.066406 7.695312 1.066406 7.554688 L 1.066406 5.355469 L 7.84375 5.355469 L 7.84375 7.554688 C 7.84375 7.6875 7.761719 7.808594 7.636719 7.855469 C 7.511719 7.90625 7.378906 7.871094 7.285156 7.765625 C 7.160156 7.625 6.945312 7.453125 6.597656 7.453125 L 5.519531 7.453125 L 5.519531 10.800781 C 5.519531 10.800781 5.484375 11.226562 5.710938 11.476562 C 5.832031 11.605469 5.992188 11.667969 6.222656 11.667969 L 6.222656 12.132812 Z M 3.644531 11.667969 L 5.273438 11.667969 C 5.039062 11.304688 5.050781 10.859375 5.058594 10.773438 L 5.058594 6.992188 L 6.605469 6.992188 C 6.9375 6.992188 7.195312 7.097656 7.382812 7.230469 L 7.382812 5.820312 L 1.535156 5.820312 L 1.535156 7.230469 C 1.722656 7.097656 1.980469 6.992188 2.3125 6.992188 L 3.859375 6.992188 L 3.859375 10.773438 C 3.859375 10.859375 3.878906 11.304688 3.644531 11.667969 Z M 3.644531 11.667969 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.515625 6.769531 L 10.175781 6.769531 L 10.175781 8.230469 C 10.175781 8.289062 10.246094 8.316406 10.285156 8.273438 C 10.398438 8.140625 10.605469 7.980469 10.925781 7.980469 L 11.902344 7.980469 L 11.902344 10.621094 C 11.902344 10.621094 11.980469 11.445312 11.214844 11.445312 L 13.816406 11.445312 C 13.050781 11.445312 13.128906 10.621094 13.128906 10.621094 L 13.128906 7.980469 L 14.105469 7.980469 C 14.425781 7.980469 14.632812 8.140625 14.746094 8.273438 C 14.78125 8.316406 14.855469 8.289062 14.855469 8.230469 L 14.855469 6.769531 Z M 12.515625 6.769531 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.679688 12.519531 L 10.234375 4.863281 L 10.652344 5.054688 L 7.097656 12.714844 Z M 6.679688 12.519531 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 3.390625 3.804688 C 2.933594 3.804688 2.554688 3.429688 2.554688 2.96875 C 2.554688 2.507812 2.933594 2.132812 3.390625 2.132812 C 3.851562 2.132812 4.226562 2.507812 4.226562 2.96875 C 4.226562 3.429688 3.851562 3.804688 3.390625 3.804688 Z M 3.390625 2.601562 C 3.191406 2.601562 3.023438 2.765625 3.023438 2.96875 C 3.023438 3.171875 3.191406 3.339844 3.390625 3.339844 C 3.59375 3.339844 3.761719 3.171875 3.761719 2.96875 C 3.761719 2.765625 3.59375 2.601562 3.390625 2.601562 Z M 3.390625 2.601562 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 14.070312 14.417969 C 13.613281 14.417969 13.234375 14.039062 13.234375 13.582031 C 13.234375 13.121094 13.613281 12.746094 14.070312 12.746094 C 14.53125 12.746094 14.90625 13.121094 14.90625 13.582031 C 14.90625 14.039062 14.53125 14.417969 14.070312 14.417969 Z M 14.070312 13.210938 C 13.871094 13.210938 13.703125 13.378906 13.703125 13.582031 C 13.703125 13.78125 13.871094 13.949219 14.070312 13.949219 C 14.273438 13.949219 14.441406 13.78125 14.441406 13.582031 C 14.441406 13.378906 14.273438 13.210938 14.070312 13.210938 Z M 14.070312 13.210938 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/dual-heading/index.js\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\nconst dual_heading_defaultAttrs = {\n  ...dual_heading_module_default_render_attributes_namespaceObject\n};\nconst dualHeadingModule = {\n  metadata: dual_heading_module_namespaceObject,\n  conversionOutline: dual_heading_conversion_outline_conversionOutline,\n  renderers: {\n    edit: dual_heading_edit,\n    styles: dual_heading_module_styles_ModuleStyles\n  },\n  defaultAttrs: dual_heading_defaultAttrs,\n  settings: {\n    content: dual_heading_settings_content,\n    design: dual_heading_settings_design,\n    advanced: dual_heading_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    ...dual_heading_module_default_render_attributes_namespaceObject\n  }\n};\n/* harmony default export */ const dual_heading = (dualHeadingModule);\n;// ./packages/module-library/embed-google-map/module.json\nconst embed_google_map_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/embed-google-map\",\"d4Shortcode\":\"dsm_embed_google_map\",\"title\":\"Supreme Embed Google Map\",\"titles\":\"Supreme Embed Google Map\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/embed-google-map\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}} iframe\",\"styleProps\":{\"sizing\":{\"propertySelectors\":{\"desktop\":{\"value\":{\"width\":\"{{selector}}\",\"margin-left\":\"{{selector}}.et_pb_module\",\"margin-right\":\"{{selector}}.et_pb_module\"}}},\"important\":{\"desktop\":{\"value\":{\"width\":true,\"margin-left\":true,\"margin-right\":true}}}}},\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}},\"default\":{\"decoration\":{\"sizing\":{\"desktop\":{\"value\":{\"height\":\"320px\"}}}}}},\"google_maps_script_notice\":{\"type\":\"object\",\"inlineEditor\":\"warningContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"address\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"zoom\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/embed-google-map/embed-google-map-vb-default-attrs.js\n/**\n * D4-aligned innerContent defaults for Visual Builder FieldContainer `defaultAttr`.\n *\n * @package DiviSupreme\n */\n\n/** @type {Record<string, { desktop: { value: string } }>} */\nconst embedGoogleMapContentDefaultInnerContent = {\n  address: {\n    desktop: {\n      value: '1233 Howard St Apt 3A San Francisco, CA 94103-2775'\n    }\n  },\n  zoom: {\n    desktop: {\n      value: '10'\n    }\n  }\n};\n\n/**\n * D4 `get_advanced_fields_config()` height default `320px` → Design sizing height field.\n *\n * @type { { desktop: { value: { height: string } } } }\n */\nconst embedGoogleMapModuleSizingHeightDefaultAttr = {\n  desktop: {\n    value: {\n      height: '320px'\n    }\n  }\n};\n;// ./packages/module-library/embed-google-map/settings-content.js\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\nfunction embed_google_map_settings_content_SettingsContent({\n  defaultSettingsAttrs\n}) {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Embed Google Map', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.WarningContainer, {\n    name: \"google-api-key\",\n    value: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Google Embed Map API is not required. However, if you encounter any issues with the Embed Google Map, please consider using Google Embed Map API for stability in the future.', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \".innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Google API Key', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextGoogleAPIKeyContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"address.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Address', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: embedGoogleMapContentDefaultInnerContent.address,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"zoom.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: embedGoogleMapContentDefaultInnerContent.zoom\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 22,\n    defaultUnit: '',\n    allowedUnits: ['']\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const embed_google_map_settings_content = (embed_google_map_settings_content_SettingsContent);\n;// ./packages/module-library/embed-google-map/settings-design.js\n\n\n\nfunction embed_google_map_settings_design_SettingsDesign() {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, {\n    fields: {\n      height: {\n        defaultAttr: embedGoogleMapModuleSizingHeightDefaultAttr\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const embed_google_map_settings_design = (embed_google_map_settings_design_SettingsDesign);\n;// ./packages/module-library/embed-google-map/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction embed_google_map_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_embed_google_map\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const embed_google_map_settings_advanced = (embed_google_map_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/embed-google-map/module-styles.js\n\n\n\n/** Default module styles target `iframe`; width + module alignment use root via module.json `propertySelectors`. */\nconst embed_google_map_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }));\n};\n;// ./packages/module-library/embed-google-map/edit.js\n\n\n\n// Divi package dependencies.\n\n\n\n// Custom dependencies.\n\n\n\n/**\n * React function component for registering module script data.\n */\nconst embed_google_map_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction embed_google_map_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  var _getAttrByMode, _getAttrByMode2;\n  const address = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.address?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : embedGoogleMapContentDefaultInnerContent.address.desktop.value;\n  const zoom = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.zoom?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : embedGoogleMapContentDefaultInnerContent.zoom.desktop.value;\n  const iframeHeight = attrs?.module?.decoration?.sizing?.desktop?.value?.height;\n  const heightAttr = !(0,lodash.isEmpty)(iframeHeight) && iframeHeight.match(/(\\d+)/) ? iframeHeight : '320px';\n  const zoomLevel = parseInt(String(zoom), 10) || 10;\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: embed_google_map_edit_ModuleScriptData,\n    stylesComponent: embed_google_map_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"iframe\", {\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Divi Supreme Embed Google Map', 'dsm-supreme-modules-pro-for-divi'),\n    src: `https://maps.google.com/maps?q=${encodeURIComponent(address)}&t=m&z=${zoomLevel}&output=embed&iwloc=near`,\n    height: heightAttr,\n    loading: \"lazy\"\n  }));\n}\n/* harmony default export */ const embed_google_map_edit = (embed_google_map_edit_Edit);\n;// ./packages/module-library/embed-google-map/conversion-outline.js\nconst embed_google_map_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    height: 'module.decoration.sizing',\n    link_options: 'module.advanced.link',\n    margin_padding: 'module.decoration.spacing',\n    max_width: 'module.decoration.sizing',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex'\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    address: 'address.innerContent.*',\n    zoom: 'zoom.innerContent.*'\n  }\n};\n;// ./packages/module-library/embed-google-map/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmEmbedGoogleMap', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/embed-google-map': {\n      name: 'divi-supreme/embed-google-map',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 2.5 11.324219 C 2.023438 11.324219 1.640625 10.941406 1.640625 10.46875 C 1.640625 9.996094 2.023438 9.609375 2.5 9.609375 C 2.972656 9.609375 3.355469 9.996094 3.355469 10.46875 C 3.355469 10.941406 2.972656 11.324219 2.5 11.324219 Z M 2.5 10.082031 C 2.285156 10.082031 2.113281 10.257812 2.113281 10.46875 C 2.113281 10.679688 2.285156 10.851562 2.5 10.851562 C 2.710938 10.851562 2.882812 10.679688 2.882812 10.46875 C 2.882812 10.257812 2.710938 10.082031 2.5 10.082031 Z M 2.5 10.082031 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 7.992188 5.488281 C 7.050781 5.488281 6.277344 6.230469 6.277344 7.148438 C 6.277344 7.425781 6.347656 7.695312 6.484375 7.933594 L 7.902344 10.410156 C 7.921875 10.441406 7.953125 10.46875 7.992188 10.46875 C 8.03125 10.46875 8.070312 10.449219 8.085938 10.410156 L 9.503906 7.933594 C 9.640625 7.695312 9.710938 7.417969 9.710938 7.148438 C 9.710938 6.230469 8.9375 5.488281 7.992188 5.488281 Z M 7.992188 7.976562 C 7.519531 7.976562 7.136719 7.605469 7.136719 7.148438 C 7.136719 6.6875 7.519531 6.320312 7.992188 6.320312 C 8.46875 6.320312 8.851562 6.6875 8.851562 7.148438 C 8.851562 7.605469 8.46875 7.976562 7.992188 7.976562 Z M 7.992188 7.976562 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 5.632812 10.640625 L 1.601562 8.261719 L 1.601562 7.179688 L 5.632812 4.800781 L 5.632812 6.359375 L 3.191406 7.71875 L 5.632812 9.074219 Z M 2.082031 7.992188 L 5.144531 9.792969 L 5.144531 9.367188 L 2.460938 7.875 L 2.460938 7.570312 L 5.144531 6.082031 L 5.144531 5.65625 L 2.082031 7.457031 Z M 2.082031 7.992188 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 10.351562 10.640625 L 10.351562 9.082031 L 12.792969 7.722656 L 10.351562 6.367188 L 10.351562 4.804688 L 14.386719 7.183594 L 14.386719 8.269531 Z M 10.839844 9.367188 L 10.839844 9.792969 L 13.902344 7.988281 L 13.902344 7.464844 L 10.839844 5.664062 L 10.839844 6.085938 L 13.523438 7.578125 L 13.523438 7.882812 Z M 10.839844 9.367188 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/embed-google-map/index.js\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\n\nconst embedGoogleMapModule = {\n  metadata: embed_google_map_module_namespaceObject,\n  conversionOutline: embed_google_map_conversion_outline_conversionOutline,\n  renderers: {\n    edit: embed_google_map_edit,\n    styles: embed_google_map_module_styles_ModuleStyles\n  },\n  defaultAttrs: {\n    module: {\n      decoration: {\n        sizing: {\n          desktop: {\n            value: {\n              height: '320px'\n            }\n          }\n        }\n      }\n    },\n    address: {\n      innerContent: embedGoogleMapContentDefaultInnerContent.address\n    },\n    zoom: {\n      innerContent: embedGoogleMapContentDefaultInnerContent.zoom\n    }\n  },\n  settings: {\n    content: embed_google_map_settings_content,\n    design: embed_google_map_settings_design,\n    advanced: embed_google_map_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {\n        sizing: {\n          desktop: {\n            value: {\n              height: '320px'\n            }\n          }\n        }\n      }\n    },\n    address: {\n      innerContent: {\n        desktop: {\n          value: '1233 Howard St Apt 3A San Francisco, CA 94103-2775'\n        }\n      }\n    },\n    zoom: {\n      innerContent: {\n        desktop: {\n          value: '10'\n        }\n      }\n    }\n  }\n};\n/* harmony default export */ const embed_google_map = (embedGoogleMapModule);\n;// ./packages/module-library/facebook-embed/module.json\nconst facebook_embed_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/facebook-embed\",\"d4Shortcode\":\"dsm_facebook_embed\",\"title\":\"Supreme Facebook Embed\",\"titles\":\"Supreme Facebook Embed\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/facebook-embed\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"fb_app_id\":{\"type\":\"object\",\"inlineEditor\":\"readOnly\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"fb_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"fb_post_url\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"fb_video_url\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"fb_show_text\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"fb_video_fullscreen\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"fb_video_autoplay\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"fb_video_show_captions\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"fb_alignment\":{\"type\":\"object\",\"inlineEditor\":\"ButtonContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"css\":{\"type\":\"object\",\"inlineEditor\":\"codemirror\",\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/facebook-embed/settings-content.js\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\nfunction facebook_embed_settings_content_SettingsContent({\n  attrs,\n  defaultSettingsAttrs\n}) {\n  var _getAttrByMode;\n  const fbType = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.fb_type?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'post';\n  const fbAppConfigured = typeof facebookAppId !== 'undefined' && facebookAppId && typeof facebookAppId.appId === 'string' && facebookAppId.appId !== '';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Facebook Feed Settings', 'dsm-supreme-modules-pro-for-divi')\n  }, !fbAppConfigured && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.WarningContainer, {\n    name: \"facebook-app-id-notice\",\n    value: (0,external_window_vendor_wp_i18n_namespaceObject.__)('The Facebook APP ID is currently empty in the Divi Supreme Plugin Page. This module might not function properly without the Facebook APP ID.', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"fb_type.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Type', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'post'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      post: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Post', 'dsm-supreme-modules-pro-for-divi')\n      },\n      video: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Video', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"fb_post_url.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Post URL', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'post' === fbType,\n    defaultAttr: {\n      desktop: {\n        value: 'https://www.facebook.com/photo/?fbid=624909893015891&set=a.236441901862694&__tn__=%2CO*F'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"fb_video_url.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Video URL', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'video' === fbType,\n    defaultAttr: {\n      desktop: {\n        value: 'https://fb.watch/lpF1Z-680x/'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"fb_show_text.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Text', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'false'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      false: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hide', 'dsm-supreme-modules-pro-for-divi')\n      },\n      true: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"fb_video_fullscreen.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Allow Video Fullscreen', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'video' === fbType,\n    defaultAttr: {\n      desktop: {\n        value: 'false'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      false: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Disallow', 'dsm-supreme-modules-pro-for-divi')\n      },\n      true: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Allow', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"fb_video_autoplay.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Video Autoplay', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'video' === fbType,\n    defaultAttr: {\n      desktop: {\n        value: 'false'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      false: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('No', 'dsm-supreme-modules-pro-for-divi')\n      },\n      true: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Yes', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"fb_video_show_captions.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Video Captions', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'video' === fbType,\n    defaultAttr: {\n      desktop: {\n        value: 'false'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      false: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('No', 'dsm-supreme-modules-pro-for-divi')\n      },\n      true: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Yes', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const facebook_embed_settings_content = (facebook_embed_settings_content_SettingsContent);\n;// ./packages/module-library/facebook-embed/settings-design.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\nfunction facebook_embed_settings_design_SettingsDesign() {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"alignment\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Alignment', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"fb_alignment.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const facebook_embed_settings_design = (facebook_embed_settings_design_SettingsDesign);\n;// ./packages/module-library/facebook-embed/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction facebook_embed_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_facebook_embed\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const facebook_embed_settings_advanced = (facebook_embed_settings_advanced_SettingsAdvanced);\n;// ./node_modules/react-facebook/dist/esm/index.js\nvar u=function(e,t){return u=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},u(e,t)};var c,l=function(){return l=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},l.apply(this,arguments)};function d(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&\"function\"==typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]])}return n}function esm_h(e,t,n,r){return new(n||(n=Promise))((function(i,o){function a(e){try{u(r.next(e))}catch(e){o(e)}}function s(e){try{u(r.throw(e))}catch(e){o(e)}}function u(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}u((r=r.apply(e,t||[])).next())}))}function f(e,t){var n,r,i,o,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},\"function\"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(s){return function(u){return function(s){if(n)throw new TypeError(\"Generator is already executing.\");for(;o&&(o=0,s[0]&&(a=0)),a;)try{if(n=1,r&&(i=2&s[0]?r.return:s[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,s[1])).done)return i;switch(r=0,i&&(s=[2&s[0],i.value]),s[0]){case 0:case 1:i=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,r=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(i=a.trys,(i=i.length>0&&i[i.length-1])||6!==s[0]&&2!==s[0])){a=0;continue}if(3===s[0]&&(!i||s[1]>i[0]&&s[1]<i[3])){a.label=s[1];break}if(6===s[0]&&a.label<i[1]){a.label=i[1],i=s;break}if(i&&a.label<i[2]){a.label=i[2],a.ops.push(s);break}i[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],r=0}finally{n=i=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,u])}}}function p(e,t,n){if(n||2===arguments.length)for(var r,i=0,o=t.length;i<o;i++)!r&&i in t||(r||(r=Array.prototype.slice.call(t,0,i)),r[i]=t[i]);return e.concat(r||Array.prototype.slice.call(t))}!function(e){e.CONNECTED=\"connected\",e.AUTHORIZATION_EXPIRED=\"authorization_expired\",e.NOT_AUTHORIZED=\"not_authorized\",e.UNKNOWN=\"unknown\"}(c||(c={}));var v,esm_g,m=c,y=function(e){function t(t,n,r){var i=e.call(this,t)||this;return i.code=n,i.type=r,i}return function(e,t){if(\"function\"!=typeof t&&null!==t)throw new TypeError(\"Class extends value \"+String(t)+\" is not a constructor or null\");function n(){this.constructor=e}u(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}(t,e),t}(Error);!function(e){e.GET=\"get\",e.POST=\"post\",e.DELETE=\"delete\"}(v||(v={})),function(e){e.UI=\"ui\",e.API=\"api\",e.LOGIN=\"login\",e.LOGOUT=\"logout\",e.GET_LOGIN_STATUS=\"getLoginStatus\",e.GET_AUTH_RESPONSE=\"getAuthResponse\"}(esm_g||(esm_g={}));var esm_w,esm_b={domain:\"connect.facebook.net\",version:\"v15.0\",cookie:!1,status:!1,xfbml:!1,language:\"en_US\",frictionlessRequests:!1,debug:!1,chatSupport:!1,autoLogAppEvents:!0,lazy:!1},esm_E=function(){function e(e){if(!e.appId)throw new Error(\"You need to set appId\");this.options=l(l({},esm_b),e),this.options.lazy||this.init()}return e.prototype.getAppId=function(){return this.options.appId},e.prototype.getFB=function(){return window.FB},e.prototype.init=function(){return esm_h(this,void 0,void 0,(function(){var e=this;return f(this,(function(t){return this.loadingPromise||(this.loadingPromise=new Promise((function(t){var n=e.options,r=n.domain,i=n.language,o=n.debug,a=n.chatSupport,s=d(n,[\"domain\",\"language\",\"debug\",\"chatSupport\"]);if(window.fbAsyncInit=function(){window.FB.init({appId:s.appId,version:s.version,cookie:s.cookie,status:s.status,xfbml:s.xfbml,frictionlessRequests:s.frictionlessRequests}),t(e)},window.document.getElementById(\"facebook-jssdk\"))return t(e);var u=window.document.createElement(\"script\");u.id=\"facebook-jssdk\",u.async=!0,u.defer=!0,u.crossOrigin=\"anonymous\",u.src=\"https://\".concat(r,\"/\").concat(i,\"/sdk\").concat(a?\"/xfbml.customerchat\":\"\").concat(o?\"/debug\":\"\",\".js\"),window.document.body.appendChild(u)}))),[2,this.loadingPromise]}))}))},e.prototype.process=function(e,t,n){return void 0===t&&(t=[]),void 0===n&&(n=[]),esm_h(this,void 0,void 0,(function(){var r;return f(this,(function(i){switch(i.label){case 0:return[4,this.init()];case 1:return i.sent(),r=this.getFB(),[2,new Promise((function(i,o){r[e].apply(r,p(p(p([],t,!1),[function(t){if(t)if(t&&\"error\"in t){var n=t.error,r=n.code,a=n.type,s=n.message;o(new y(s,r,a))}else i(t);else{if(e===esm_g.UI)return;o(new Error(\"Response is undefined\"))}}],!1),n,!1))}))]}}))}))},e.prototype.ui=function(e){return esm_h(this,void 0,void 0,(function(){return f(this,(function(t){return[2,this.process(esm_g.UI,[e])]}))}))},e.prototype.api=function(e,t,n){return void 0===t&&(t=v.GET),void 0===n&&(n={}),esm_h(this,void 0,void 0,(function(){return f(this,(function(r){return[2,this.process(esm_g.API,[e,t,n])]}))}))},e.prototype.login=function(e){return esm_h(this,void 0,void 0,(function(){var t,n,r,i,o,a,s;return f(this,(function(u){return t=e.scope,n=e.authType,r=void 0===n?[]:n,i=e.returnScopes,o=e.rerequest,a=e.reauthorize,s={scope:t},i&&(s.return_scopes=!0),o&&r.push(\"rerequest\"),a&&r.push(\"reauthenticate\"),r.length&&(s.auth_type=r.join(\",\")),[2,this.process(esm_g.LOGIN,[],[s])]}))}))},e.prototype.logout=function(){return esm_h(this,void 0,void 0,(function(){return f(this,(function(e){return[2,this.process(esm_g.LOGOUT)]}))}))},e.prototype.getLoginStatus=function(){return esm_h(this,void 0,void 0,(function(){return f(this,(function(e){return[2,this.process(esm_g.GET_LOGIN_STATUS)]}))}))},e.prototype.getAuthResponse=function(){return esm_h(this,void 0,void 0,(function(){return f(this,(function(e){return[2,this.process(esm_g.GET_AUTH_RESPONSE)]}))}))},e.prototype.getTokenDetail=function(e){return esm_h(this,void 0,void 0,(function(){var t;return f(this,(function(n){switch(n.label){case 0:return(null==e?void 0:e.status)===m.CONNECTED?[2,e.authResponse]:[4,this.getLoginStatus()];case 1:if((t=n.sent()).status===m.CONNECTED)return[2,t.authResponse];throw new Error(\"Token is undefined\")}}))}))},e.prototype.getProfile=function(e){return esm_h(this,void 0,void 0,(function(){return f(this,(function(t){return[2,this.api(\"/me\",v.GET,e)]}))}))},e.prototype.getTokenDetailWithProfile=function(e,t){return esm_h(this,void 0,void 0,(function(){var n;return f(this,(function(r){switch(r.label){case 0:return[4,this.getTokenDetail(t)];case 1:return n=r.sent(),[4,this.getProfile(e)];case 2:return[2,{profile:r.sent(),tokenDetail:n}]}}))}))},e.prototype.getToken=function(){return esm_h(this,void 0,void 0,(function(){return f(this,(function(e){switch(e.label){case 0:return[4,this.getTokenDetail()];case 1:return[2,e.sent().accessToken]}}))}))},e.prototype.getUserId=function(){return esm_h(this,void 0,void 0,(function(){return f(this,(function(e){switch(e.label){case 0:return[4,this.getTokenDetail()];case 1:return[2,e.sent().userID]}}))}))},e.prototype.sendInvite=function(e,t){return esm_h(this,void 0,void 0,(function(){return f(this,(function(n){return[2,this.ui(l({to:e,method:\"apprequests\"},t))]}))}))},e.prototype.postAction=function(e,t,n,r,i){return void 0===i&&(i=!1),esm_h(this,void 0,void 0,(function(){var o;return f(this,(function(a){return o=\"/me/\".concat(e,\":\").concat(t,\"?\").concat(n,\"=\").concat(encodeURIComponent(r)),!0===i&&(o+=\"&no_feed_story=true\"),[2,this.api(o,v.POST)]}))}))},e.prototype.getPermissions=function(){return esm_h(this,void 0,void 0,(function(){return f(this,(function(e){switch(e.label){case 0:return[4,this.api(\"/me/permissions\")];case 1:return[2,e.sent().data]}}))}))},e.prototype.hasPermissions=function(e){return esm_h(this,void 0,void 0,(function(){var t;return f(this,(function(n){switch(n.label){case 0:return[4,this.getPermissions()];case 1:return t=n.sent(),[2,e.filter((function(e){return!!t.find((function(t){var n=t.permission;return\"granted\"===t.status&&n===e}))})).length===e.length]}}))}))},e.prototype.subscribe=function(e,t){return esm_h(this,void 0,void 0,(function(){var n=this;return f(this,(function(r){switch(r.label){case 0:return[4,this.init()];case 1:return r.sent(),this.getFB().Event.subscribe(e,t),[2,function(){return n.unsubscribe(e,t)}]}}))}))},e.prototype.unsubscribe=function(e,t){return esm_h(this,void 0,void 0,(function(){return f(this,(function(n){switch(n.label){case 0:return[4,this.init()];case 1:return n.sent(),this.getFB().Event.unsubscribe(e,t),[2]}}))}))},e.prototype.parse=function(e){return esm_h(this,void 0,void 0,(function(){return f(this,(function(t){switch(t.label){case 0:return[4,this.init()];case 1:return t.sent(),void 0===e?this.getFB().XFBML.parse():this.getFB().XFBML.parse(e),[2]}}))}))},e.prototype.getRequests=function(){return esm_h(this,void 0,void 0,(function(){return f(this,(function(e){return[2,this.api(\"/me/apprequests\")]}))}))},e.prototype.removeRequest=function(e){return esm_h(this,void 0,void 0,(function(){return f(this,(function(t){return[2,this.api(e,v.DELETE)]}))}))},e.prototype.setAutoGrow=function(){return esm_h(this,void 0,void 0,(function(){return f(this,(function(e){switch(e.label){case 0:return[4,this.init()];case 1:return e.sent(),this.getFB().Canvas.setAutoGrow(),[2]}}))}))},e.prototype.paySimple=function(e,t){return void 0===t&&(t=1),esm_h(this,void 0,void 0,(function(){return f(this,(function(n){return[2,this.ui({method:\"pay\",action:\"purchaseitem\",product:e,quantity:t})]}))}))},e.prototype.pay=function(e,t){return esm_h(this,void 0,void 0,(function(){return f(this,(function(n){return[2,this.ui(l({method:\"pay\",action:\"purchaseitem\",product:e},t))]}))}))},e}(),esm_T=(0,external_vendor_React_.createContext)(void 0);function esm_(t){var i=t.children,o=d(t,[\"children\"]),a=(0,external_vendor_React_.useState)(!0),s=a[0],u=a[1],c=(0,external_vendor_React_.useState)(!1),l=c[0],p=c[1],v=(0,external_vendor_React_.useState)(),g=v[0],m=v[1];function y(){return esm_h(this,void 0,void 0,(function(){var e;return f(this,(function(t){switch(t.label){case 0:return t.trys.push([0,2,3,4]),esm_w?[2,esm_w.init()]:(p(!1),u(!0),[4,(esm_w=new esm_E(o)).init()]);case 1:return t.sent(),p(!0),[3,4];case 2:return e=t.sent(),m(e),[3,4];case 3:return u(!1),[7];case 4:return[2,esm_w]}}))}))}(0,external_vendor_React_.useEffect)((function(){o.lazy||y()}),[]);var b={isLoading:s,error:g,init:y,api:l?esm_w:void 0,parse:function(e){return esm_h(this,void 0,void 0,(function(){var t;return f(this,(function(n){switch(n.label){case 0:return[4,y()];case 1:return(t=n.sent())?[4,t.parse(e)]:[3,3];case 2:n.sent(),n.label=3;case 3:return[2]}}))}))}};return external_vendor_React_default().createElement(esm_T.Provider,{value:b},i)}function esm_z(e){void 0===e&&(e={});var t=e.lazy,n=void 0!==t&&t,o=(0,external_vendor_React_.useContext)(esm_T);if(!o)throw new Error(\"useFacebook must be used within a FacebookProvider\");return (0,external_vendor_React_.useEffect)((function(){n||o.init()}),[n]),o}var esm_k=(0,external_vendor_React_.memo)((0,external_vendor_React_.forwardRef)((function(t,n){var r=t.inline,i=t.children,o=d(t,[\"inline\",\"children\"]),a=r?\"span\":\"div\";return external_vendor_React_default().createElement(a,l({},o,{ref:n}),i)})));var esm_I=(0,external_vendor_React_.memo)((function(t){var i=t.children,o=t.inline,a=d(t,[\"children\",\"inline\"]),u=esm_z().parse,c=(0,external_vendor_React_.useState)(null),h=c[0],f=c[1],p=(0,external_vendor_React_.useCallback)((function(e){f(e)}),[]);return (0,external_vendor_React_.useEffect)((function(){h&&u(h)}),[h]),external_vendor_React_default().createElement(esm_k,l({inline:o},a,{ref:p}),i)})),esm_O=!(\"undefined\"==typeof window||!window.document||!window.document.createElement);function esm_S(){return esm_O?window.location.href:\"https://www.facebook.com\"}var esm_A=(0,external_vendor_React_.memo)((0,external_vendor_React_.forwardRef)((function(t,n){var r=t.href,i=void 0===r?esm_S():r,o=t.layout,a=t.colorScheme,s=t.action,u=t.showFaces,c=t.share,h=t.children,f=t.width,p=t.size,v=t.kidDirectedSite,g=t.referral,m=t.lazy,y=d(t,[\"href\",\"layout\",\"colorScheme\",\"action\",\"showFaces\",\"share\",\"children\",\"width\",\"size\",\"kidDirectedSite\",\"referral\",\"lazy\"]);return external_vendor_React_default().createElement(esm_I,null,external_vendor_React_default().createElement(\"div\",l({className:\"fb-like\",\"data-ref\":g,\"data-href\":i,\"data-layout\":o,\"data-colorscheme\":a,\"data-action\":s,\"data-show-faces\":u,\"data-share\":c,\"data-width\":f,\"data-size\":p,\"data-lazy\":m,\"data-kid-directed-site\":v},y,{ref:n}),h))})));function esm_C(){var e=esm_z().init,t=(0,external_vendor_React_.useState)(!1),r=t[0],i=t[1],o=(0,external_vendor_React_.useState)(void 0),a=o[0],s=o[1];return{isLoading:r,error:a,share:function(t){return esm_h(this,void 0,void 0,(function(){var n,r,o,a,u,c,h;return f(this,(function(f){switch(f.label){case 0:return f.trys.push([0,2,3,4]),n=t.href,r=t.display,o=t.hashtag,a=t.redirectUri,u=d(t,[\"href\",\"display\",\"hashtag\",\"redirectUri\"]),s(void 0),i(!0),[4,e()];case 1:if(!(c=f.sent()))throw new Error(\"Facebook API is not initialized\");return[2,c.ui((p=l({method:\"share\",href:n,display:r,app_id:c.getAppId(),hashtag:o,redirect_uri:a},u),Object.fromEntries(Object.entries(p).filter((function(e){return void 0!==e[1]})))))];case 2:return h=f.sent(),s(h),[3,4];case 3:return i(!1),[7];case 4:return[2]}var p}))}))}}}function esm_L(t){var n=t.children,r=t.asChild,i=void 0===r?\"button\":r;t.disabled;var o=t.href,a=t.display,s=t.hashtag,u=t.redirectUri,c=d(t,[\"children\",\"asChild\",\"disabled\",\"href\",\"display\",\"hashtag\",\"redirectUri\"]),h=esm_C(),f=h.isLoading,p=h.share;return external_vendor_React_default().createElement(i,l({onClick:function(){f||p({href:o,display:a,hashtag:s,redirectUri:u})},disabled:f},c),n)}var esm_N=(0,external_vendor_React_.memo)((0,external_vendor_React_.forwardRef)((function(t,n){var r=t.style,i=t.href,o=void 0===i?esm_S():i,a=t.tabs,s=t.hideCover,u=t.width,c=t.height,h=t.showFacepile,f=t.hideCTA,p=t.smallHeader,v=t.adaptContainerWidth,g=t.children,m=t.lazy,y=d(t,[\"style\",\"href\",\"tabs\",\"hideCover\",\"width\",\"height\",\"showFacepile\",\"hideCTA\",\"smallHeader\",\"adaptContainerWidth\",\"children\",\"lazy\"]);return external_vendor_React_default().createElement(esm_I,null,external_vendor_React_default().createElement(\"div\",l({className:\"fb-page\",style:r,\"data-tabs\":a,\"data-hide-cover\":s,\"data-show-facepile\":h,\"data-hide-cta\":f,\"data-href\":o,\"data-small-header\":p,\"data-adapt-container-width\":v,\"data-height\":c,\"data-width\":u,\"data-lazy\":m},y,{ref:n}),g))})));function P(){var e=esm_z(),t=e.api,r=e.isLoading,i=(0,external_vendor_React_.useState)(void 0),o=i[0],a=i[1],s=(0,external_vendor_React_.useState)(!1),u=s[0],c=s[1],l=(0,external_vendor_React_.useState)(),d=l[0],p=l[1];return{login:function(e,n){return esm_h(this,void 0,void 0,(function(){var r,i;return f(this,(function(o){switch(o.label){case 0:if(o.trys.push([0,2,3,4]),!t)throw new Error(\"Facebook API is not initialized\");return c(!0),[4,t.login(e)];case 1:if((r=o.sent()).status!==m.CONNECTED)throw new Error(\"Unauthorized user\");return p(r),null==n||n(r),[2,r];case 2:throw i=o.sent(),a(i),i;case 3:return c(!1),[7];case 4:return[2]}}))}))},error:o,isLoading:r||u,status:null==d?void 0:d.status}}function esm_D(t){var n=t.children,r=t.asChild,i=void 0===r?\"button\":r;t.disabled;var o=t.scope,a=t.returnScopes,s=t.authType,u=t.rerequest,c=t.reauthorize,p=t.onError,v=t.onSuccess,g=d(t,[\"children\",\"asChild\",\"disabled\",\"scope\",\"returnScopes\",\"authType\",\"rerequest\",\"reauthorize\",\"onError\",\"onSuccess\"]),m=P(),y=m.isLoading,w=m.login;return external_vendor_React_default().createElement(i,l({onClick:function(){return esm_h(this,void 0,void 0,(function(){var e,t;return f(this,(function(n){switch(n.label){case 0:return n.trys.push([0,2,,3]),y?[2]:[4,w({scope:o,returnScopes:a,authType:s,rerequest:u,reauthorize:c})];case 1:return e=n.sent(),null==v||v(e),[3,3];case 2:return t=n.sent(),null==p||p(t),[3,3];case 3:return[2]}}))}))},disabled:y},g),n)}var esm_R=(0,external_vendor_React_.memo)((0,external_vendor_React_.forwardRef)((function(t,n){var r=t.href,i=t.width,o=t.showText,a=t.lazy,s=t.children,u=d(t,[\"href\",\"width\",\"showText\",\"lazy\",\"children\"]);return external_vendor_React_default().createElement(esm_I,null,external_vendor_React_default().createElement(\"div\",l({className:\"fb-post\",\"data-href\":r,\"data-width\":i,\"data-lazy\":a,\"data-show-text\":o},u,{ref:n}),s))})));var esm_x=(0,external_vendor_React_.memo)((0,external_vendor_React_.forwardRef)((function(t,n){var r=t.href,i=t.width,o=t.showText,a=t.allowFullScreen,s=t.autoPlay,u=t.lazy,c=t.showCaptions,h=t.children,f=d(t,[\"href\",\"width\",\"showText\",\"allowFullScreen\",\"autoPlay\",\"lazy\",\"showCaptions\",\"children\"]);return external_vendor_React_default().createElement(esm_I,null,external_vendor_React_default().createElement(\"div\",l({className:\"fb-video\",\"data-href\":r,\"data-width\":i,\"data-show-text\":o,\"data-show-captions\":c,\"data-autoplay\":s,\"data-lazy\":u,\"data-allowfullscreen\":a},f,{ref:n}),h))})));var U=(0,external_vendor_React_.memo)((0,external_vendor_React_.forwardRef)((function(t,n){var r=t.colorScheme,i=t.href,o=void 0===i?esm_S():i,a=t.numPosts,s=t.orderBy,u=t.width,c=t.children,h=t.mobile,f=t.lazy,p=d(t,[\"colorScheme\",\"href\",\"numPosts\",\"orderBy\",\"width\",\"children\",\"mobile\",\"lazy\"]);return external_vendor_React_default().createElement(esm_I,null,external_vendor_React_default().createElement(\"div\",l({className:\"fb-comments\",\"data-colorscheme\":r,\"data-numposts\":a,\"data-href\":o,\"data-order-by\":s,\"data-width\":u,\"data-skin\":r,\"data-mobile\":h,\"data-lazy\":f},p,{ref:n}),c))})));var G=(0,external_vendor_React_.memo)((0,external_vendor_React_.forwardRef)((function(t,n){var r=t.href,i=void 0===r?esm_S():r,o=t.children,a=d(t,[\"href\",\"children\"]);return external_vendor_React_default().createElement(esm_I,{inline:!0},external_vendor_React_default().createElement(\"span\",l({className:\"fb-comments-count\",\"data-href\":i},a,{ref:n}),o))})));var F=(0,external_vendor_React_.memo)((0,external_vendor_React_.forwardRef)((function(t,n){var r=t.style,i=t.href,o=void 0===i?esm_S():i,a=t.width,s=t.lazy,u=t.showSocialContext,c=t.showMetaData,h=t.children,f=t.skin,p=d(t,[\"style\",\"href\",\"width\",\"lazy\",\"showSocialContext\",\"showMetaData\",\"children\",\"skin\"]);return external_vendor_React_default().createElement(esm_I,null,external_vendor_React_default().createElement(\"div\",l({className:\"fb-group\",style:r,\"data-href\":o,\"data-width\":a,\"data-show-social-context\":u,\"data-show-metadata\":c,\"data-skin\":f,\"data-lazy\":s},p,{ref:n}),h))})));var esm_B=(0,external_vendor_React_.memo)((0,external_vendor_React_.forwardRef)((function(t,n){var r=t.style,i=t.uri,o=void 0===i?esm_S():i,a=t.lazy,s=t.children,u=d(t,[\"style\",\"uri\",\"lazy\",\"children\"]);return external_vendor_React_default().createElement(esm_I,null,external_vendor_React_default().createElement(\"div\",l({className:\"fb-save\",style:r,\"data-uri\":o,\"data-lazy\":a},u,{ref:n}),s))})));var esm_M=(0,external_vendor_React_.memo)((0,external_vendor_React_.forwardRef)((function(t,n){var r=t.style,i=t.href,o=void 0===i?esm_S():i,a=t.lazy,s=t.layout,u=t.size,c=t.children,h=d(t,[\"style\",\"href\",\"lazy\",\"layout\",\"size\",\"children\"]);return external_vendor_React_default().createElement(esm_I,null,external_vendor_React_default().createElement(\"div\",l({className:\"fb-share-button\",style:r,\"data-href\":o,\"data-lazy\":a,\"data-size\":u,\"data-layout\":s},h,{ref:n}),c))})));var esm_j=(0,external_vendor_React_.memo)((0,external_vendor_React_.forwardRef)((function(t,n){var r=t.children,i=t.pageId,o=t.themeColor,a=t.loggedInGreeting,s=t.loggedOutGreeting,u=t.dataRef,c=t.greetingDialogDisplay,h=t.greetingDialogDelay,f=t.minimized,p=d(t,[\"children\",\"pageId\",\"themeColor\",\"loggedInGreeting\",\"loggedOutGreeting\",\"dataRef\",\"greetingDialogDisplay\",\"greetingDialogDelay\",\"minimized\"]);return external_vendor_React_default().createElement(esm_I,null,external_vendor_React_default().createElement(\"div\",l({className:\"fb-customerchat\",page_id:i,theme_color:o,logged_in_greeting:a,logged_out_greeting:s,greeting_dialog_display:c,greeting_dialog_delay:h,\"data-ref\":u,minimized:f},p,{ref:n}),r))})));var esm_q=(0,external_vendor_React_.memo)((0,external_vendor_React_.forwardRef)((function(t,n){var r=t.color,i=t.messengerAppId,o=t.pageId,a=t.children,s=t.size,u=t.dataRef,c=d(t,[\"color\",\"messengerAppId\",\"pageId\",\"children\",\"size\",\"dataRef\"]);return external_vendor_React_default().createElement(esm_I,null,external_vendor_React_default().createElement(\"div\",l({className:\"fb-messengermessageus\",messenger_app_id:i,page_id:o,\"data-color\":r,\"data-size\":s,\"data-ref\":u},c,{ref:n}),a))})));var esm_H=(0,external_vendor_React_.memo)((0,external_vendor_React_.forwardRef)((function(t,n){var r=t.origin,i=t.prechecked,o=t.allowLogin,a=t.userRef,s=t.messengerAppId,u=t.pageId,c=t.children,h=t.size,f=t.centerAlign,p=t.skin,v=d(t,[\"origin\",\"prechecked\",\"allowLogin\",\"userRef\",\"messengerAppId\",\"pageId\",\"children\",\"size\",\"centerAlign\",\"skin\"]);return external_vendor_React_default().createElement(esm_I,null,external_vendor_React_default().createElement(\"div\",l({className:\"fb-messenger-checkbox\",messenger_app_id:s,page_id:u,size:h,origin:r,user_ref:a,prechecked:i,allow_login:o,skin:p,center_align:f},v,{ref:n}),c))})));var W,X=(0,external_vendor_React_.memo)((0,external_vendor_React_.forwardRef)((function(t,n){var r=t.color,i=t.messengerAppId,o=t.pageId,a=t.children,s=t.dataRef,u=t.size,c=t.enforceLogin,h=t.ctaText,f=d(t,[\"color\",\"messengerAppId\",\"pageId\",\"children\",\"dataRef\",\"size\",\"enforceLogin\",\"ctaText\"]);return external_vendor_React_default().createElement(esm_I,null,external_vendor_React_default().createElement(\"div\",l({className:\"fb-send-to-messenger\",messenger_app_id:i,page_id:o,\"data-color\":r,\"data-size\":u,\"data-ref\":s,enforce_login:c,cta_text:h},f,{ref:n}),a))})));!function(e){e.SMALL=\"small\",e.LARGE=\"large\"}(W||(W={}));var K,V=W;!function(e){e.STANDARD=\"standard\",e.BUTTON_COUNT=\"button_count\",e.BUTTON=\"button\",e.BOX_COUNT=\"box_count\"}(K||(K={}));var Z,Y=K;!function(e){e.LIGHT=\"light\",e.DARK=\"dark\"}(Z||(Z={}));var J,Q=Z;!function(e){e.LIKE=\"like\",e.RECOMMEND=\"recommend\"}(J||(J={}));var esm_$,ee=J;!function(e){e.SOCIAL=\"social\",e.REVERSE_TIME=\"reverse_time\",e.TIME=\"time\"}(esm_$||(esm_$={}));var te,ne=esm_$;!function(e){e.SMALL=\"small\",e.MEDIUM=\"medium\",e.STANDARD=\"standard\",e.LARGE=\"large\",e.XLARGE=\"xlarge\"}(te||(te={}));var re,ie=te;!function(e){e.BLUE=\"blue\",e.WHITE=\"white\"}(re||(re={}));var oe=re,ae=[\"id\",\"first_name\",\"last_name\",\"middle_name\",\"name\",\"name_format\",\"picture\",\"short_name\",\"email\"];function se(e,t){var i=this,o=(0,external_vendor_React_.useState)(void 0),a=o[0],u=o[1],c=esm_z().init,l=(0,external_vendor_React_.useCallback)((function(e){u(e),null==t||t(a)}),[t]),d=(0,external_vendor_React_.useCallback)((function(){return esm_h(i,void 0,void 0,(function(){var t;return f(this,(function(n){switch(n.label){case 0:return[4,c()];case 1:return(t=n.sent())?[4,t.subscribe(e,l)]:[3,3];case 2:n.sent(),n.label=3;case 3:return[2]}}))}))}),[e,l]),p=(0,external_vendor_React_.useCallback)((function(){return esm_h(i,void 0,void 0,(function(){var t;return f(this,(function(n){switch(n.label){case 0:return[4,c()];case 1:return(t=n.sent())?[4,t.unsubscribe(e,l)]:[3,3];case 2:n.sent(),n.label=3;case 3:return[2]}}))}))}),[e,l]);return (0,external_vendor_React_.useEffect)((function(){return d(),function(){p()}}),[d]),a}function ue(){var e=esm_z().init,t=(0,external_vendor_React_.useState)(!0),i=t[0],o=t[1],a=(0,external_vendor_React_.useState)(void 0),u=a[0],c=a[1],l=(0,external_vendor_React_.useState)(m.UNKNOWN),d=l[0],p=l[1];return se(\"auth.statusChange\",(0,external_vendor_React_.useCallback)((function(e){p(e.status)}),[])),(0,external_vendor_React_.useEffect)((function(){!function(){esm_h(this,void 0,void 0,(function(){var t,n,r;return f(this,(function(i){switch(i.label){case 0:return i.trys.push([0,3,4,5]),o(!0),[4,e()];case 1:if(!(t=i.sent()))throw new Error(\"Facebook API is not initialized\");return[4,t.getLoginStatus()];case 2:return n=i.sent().status,p(n),[3,5];case 3:return r=i.sent(),c(r),[3,5];case 4:return o(!1),[7];case 5:return[2]}}))}))}()}),[]),{isLoading:i,error:u,status:d}}function ce(e){var t=esm_z().init,i=ue().status,o=(0,external_vendor_React_.useState)(!0),a=o[0],s=o[1],u=(0,external_vendor_React_.useState)(void 0),c=u[0],l=u[1],d=(0,external_vendor_React_.useState)(void 0),p=d[0],v=d[1];return (0,external_vendor_React_.useEffect)((function(){!function(){esm_h(this,void 0,void 0,(function(){var n,r,o;return f(this,(function(a){switch(a.label){case 0:return a.trys.push([0,4,5,6]),v(void 0),s(!0),[4,t()];case 1:if(!(n=a.sent()))throw new Error(\"Facebook API is not initialized\");return i!==m.CONNECTED?[3,3]:[4,n.getProfile({fields:e})];case 2:r=a.sent(),l(r),a.label=3;case 3:return[3,6];case 4:return o=a.sent(),v(o),[3,6];case 5:return s(!1),[7];case 6:return[2]}}))}))}()}),[i,e]),{isLoading:a,error:p,profile:c}}\n//# sourceMappingURL=index.js.map\n\n;// ./packages/module-library/facebook-embed/module-styles.js\n\n\n\n/**\n * React function component for rendering module style.\n */\nconst facebook_embed_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-facebook-embed`,\n    attr: attrs?.fb_alignment?.innerContent,\n    property: \"text-align\"\n  }));\n};\n;// ./packages/module-library/facebook-embed/edit.js\n\n\n// Divi package dependencies.\n\n\n\n// Custom dependencies.\n\n\n\n/**\n * React function component for registering module script data.\n */\nconst facebook_embed_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction facebook_embed_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _getAttrByMode4;\n  const fbPostUrl = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.fb_post_url?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'https://www.facebook.com/photo/?fbid=624909893015891&set=a.236441901862694&__tn__=%2CO*F';\n  const fbShowText = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.fb_show_text?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : false;\n  const fbType = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.fb_type?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'post';\n  const fbVideoUrl = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.fb_video_url?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : 'https://fb.watch/lpF1Z-680x/';\n  const fbAllowFullScreen = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.fb_video_fullscreen?.innerContent);\n  const fbVideoAutoplay = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.fb_video_autoplay?.innerContent);\n  const fbShowVideoCaption = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.fb_video_show_captions?.innerContent);\n  const refreshKey = [fbPostUrl, fbShowText, fbType, fbVideoUrl, fbAllowFullScreen, fbVideoAutoplay, fbShowVideoCaption];\n  const fbAppId = typeof facebookAppId !== 'undefined' && facebookAppId && typeof facebookAppId.appId === 'string' && facebookAppId.appId !== '' ? facebookAppId.appId : '252971358753113';\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: facebook_embed_edit_ModuleScriptData,\n    stylesComponent: facebook_embed_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: `fb-${fbType} dsm-facebook-embed`,\n    key: refreshKey.join(',')\n  }, 'post' === fbType && /*#__PURE__*/external_vendor_React_default().createElement(esm_, {\n    appId: fbAppId\n  }, /*#__PURE__*/external_vendor_React_default().createElement(esm_R, {\n    href: fbPostUrl,\n    showText: fbShowText,\n    width: \"470\"\n  })), 'video' === fbType && /*#__PURE__*/external_vendor_React_default().createElement(esm_, {\n    appId: fbAppId\n  }, /*#__PURE__*/external_vendor_React_default().createElement(esm_x, {\n    href: fbVideoUrl,\n    showText: fbShowText,\n    allowFullScreen: fbAllowFullScreen,\n    autoPlay: fbVideoAutoplay,\n    showCaptions: fbShowVideoCaption\n  }))));\n}\n/* harmony default export */ const facebook_embed_edit = (facebook_embed_edit_Edit);\n;// ./packages/module-library/facebook-embed/conversion-outline.js\nconst facebook_embed_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    module: 'module.advanced.htmlAttributes',\n    borders: {\n      default: 'module.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    filters: {\n      default: 'module.decoration.filters'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    fb_type: 'fb_type.innerContent.*',\n    fb_post_url: 'fb_post_url.innerContent.*',\n    fb_video_url: 'fb_video_url.innerContent.*',\n    fb_show_text: 'fb_show_text.innerContent.*',\n    fb_video_fullscreen: 'fb_video_fullscreen.innerContent.*',\n    fb_video_autoplay: 'fb_video_autoplay.innerContent.*',\n    fb_video_show_captions: 'fb_video_show_captions.innerContent.*',\n    fb_alignment: 'fb_alignment.innerContent.*',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/facebook-embed/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmFacebookEmbed', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/facebook-embed': {\n      name: 'divi-supreme/facebook-embed',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.492188 11.527344 C 12.046875 11.527344 11.679688 11.164062 11.679688 10.71875 C 11.679688 10.269531 12.046875 9.90625 12.492188 9.90625 C 12.9375 9.90625 13.300781 10.269531 13.300781 10.71875 C 13.300781 11.164062 12.9375 11.527344 12.492188 11.527344 Z M 12.492188 10.351562 C 12.292969 10.351562 12.128906 10.519531 12.128906 10.71875 C 12.128906 10.917969 12.292969 11.082031 12.492188 11.082031 C 12.691406 11.082031 12.855469 10.917969 12.855469 10.71875 C 12.855469 10.519531 12.691406 10.351562 12.492188 10.351562 Z M 12.492188 10.351562 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 3.476562 5.886719 C 3.03125 5.886719 2.667969 5.523438 2.667969 5.078125 C 2.667969 4.628906 3.03125 4.265625 3.476562 4.265625 C 3.921875 4.265625 4.285156 4.628906 4.285156 5.078125 C 4.285156 5.523438 3.921875 5.886719 3.476562 5.886719 Z M 3.476562 4.710938 C 3.277344 4.710938 3.113281 4.878906 3.113281 5.078125 C 3.113281 5.277344 3.277344 5.441406 3.476562 5.441406 C 3.675781 5.441406 3.839844 5.277344 3.839844 5.078125 C 3.839844 4.878906 3.675781 4.710938 3.476562 4.710938 Z M 3.476562 4.710938 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.398438 10.707031 L 2.667969 8.503906 L 2.667969 7.5 L 6.398438 5.300781 L 6.398438 6.742188 L 4.140625 8 L 6.398438 9.253906 Z M 3.113281 8.25 L 5.949219 9.917969 L 5.949219 9.527344 L 3.464844 8.144531 L 3.464844 7.863281 L 5.949219 6.484375 L 5.949219 6.09375 L 3.113281 7.765625 Z M 3.113281 8.25 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 7.167969 9.742188 L 7.167969 7.691406 L 6.824219 7.691406 L 6.824219 7.082031 L 7.167969 7.082031 L 7.167969 6.980469 C 7.167969 6.660156 7.265625 6.304688 7.503906 6.085938 C 7.710938 5.886719 7.992188 5.816406 8.234375 5.816406 C 8.417969 5.816406 8.554688 5.839844 8.671875 5.871094 L 8.636719 6.507812 C 8.566406 6.484375 8.480469 6.46875 8.371094 6.46875 C 8.101562 6.46875 7.984375 6.683594 7.984375 6.945312 L 7.984375 7.078125 L 8.515625 7.078125 L 8.515625 7.6875 L 7.992188 7.6875 L 7.992188 9.738281 L 7.167969 9.738281 Z M 7.167969 9.742188 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 9.59375 10.667969 L 9.59375 9.246094 L 11.832031 8.011719 L 9.59375 6.777344 L 9.59375 5.355469 L 13.289062 7.519531 L 13.289062 8.507812 Z M 10.035156 9.507812 L 10.035156 9.894531 L 12.839844 8.253906 L 12.839844 7.773438 L 10.035156 6.136719 L 10.035156 6.523438 L 12.492188 7.878906 L 12.492188 8.15625 Z M 10.035156 9.507812 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/facebook-embed/index.js\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\nconst facebookEmbedModule = {\n  metadata: facebook_embed_module_namespaceObject,\n  conversionOutline: facebook_embed_conversion_outline_conversionOutline,\n  renderers: {\n    edit: facebook_embed_edit,\n    styles: facebook_embed_module_styles_ModuleStyles\n  },\n  settings: {\n    content: facebook_embed_settings_content,\n    design: facebook_embed_settings_design,\n    advanced: facebook_embed_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    fb_type: {\n      innerContent: {\n        desktop: {\n          value: 'post'\n        }\n      }\n    },\n    fb_post_url: {\n      innerContent: {\n        desktop: {\n          value: 'https://www.facebook.com/photo/?fbid=624909893015891&set=a.236441901862694&__tn__=%2CO*F'\n        }\n      }\n    },\n    fb_video_url: {\n      innerContent: {\n        desktop: {\n          value: 'https://fb.watch/lpF1Z-680x/'\n        }\n      }\n    },\n    fb_show_text: {\n      innerContent: {\n        desktop: {\n          value: 'false'\n        }\n      }\n    },\n    fb_video_fullscreen: {\n      innerContent: {\n        desktop: {\n          value: 'false'\n        }\n      }\n    },\n    fb_video_autoplay: {\n      innerContent: {\n        desktop: {\n          value: 'false'\n        }\n      }\n    },\n    fb_video_show_captions: {\n      innerContent: {\n        desktop: {\n          value: 'false'\n        }\n      }\n    }\n  }\n};\n/* harmony default export */ const facebook_embed = (facebookEmbedModule);\n;// ./packages/module-library/facebook-simple-feed/module.json\nconst facebook_simple_feed_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/facebook-simple-feed\",\"d4Shortcode\":\"dsm_facebook_feed\",\"title\":\"Supreme Facebook Feed\",\"titles\":\"Supreme Facebook Feed\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/facebook-simple-feed\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"fb_page_url\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"fb_tabs\":{\"type\":\"object\",\"inlineEditor\":\"checkboxesContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"fb_hide_cover\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"fb_small_header\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"fb_show_facepile\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"fb_adapt_container_width\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"fb_hide_cta\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"fb_lazy\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"fb_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"fb_height\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"fb_alignment\":{\"type\":\"object\",\"inlineEditor\":\"ButtonContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"css\":{\"type\":\"object\",\"inlineEditor\":\"codemirror\",\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/facebook-simple-feed/settings-content.js\n\n\n\n\n\nfunction facebook_simple_feed_settings_content_SettingsContent({\n  defaultSettingsAttrs\n}) {\n  const fbAppConfigured = typeof facebookAppId !== 'undefined' && facebookAppId && typeof facebookAppId.appId === 'string' && facebookAppId.appId !== '';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Facebook Feed Settings', 'dsm-supreme-modules-pro-for-divi')\n  }, !fbAppConfigured && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.WarningContainer, {\n    name: \"facebook-app-id-notice\",\n    value: (0,external_window_vendor_wp_i18n_namespaceObject.__)('The Facebook APP ID is currently empty in the Divi Supreme Plugin Page. This module might not function properly without the Facebook APP ID.', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"fb_page_url.innerContent\",\n    defaultAttr: {\n      desktop: {\n        value: 'https://www.facebook.com/divisupreme/'\n      }\n    },\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Facebook Page URL', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enter the Facebook Page URL.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'url'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"fb_tabs.innerContent\",\n    defaultAttr: {\n      desktop: {\n        value: ['timeline']\n      }\n    },\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tabs', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Choose which tabs to show on your Facebook page.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.CheckboxesContainer, {\n    options: [{\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Timeline', 'dsm-supreme-modules-pro-for-divi'),\n      value: 'timeline'\n    }, {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Events', 'dsm-supreme-modules-pro-for-divi'),\n      value: 'events'\n    }, {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Messages', 'dsm-supreme-modules-pro-for-divi'),\n      value: 'messages'\n    }]\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"fb_hide_cover.innerContent\",\n    defaultAttr: {\n      desktop: {\n        value: 'false'\n      }\n    },\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hide Cover Photo', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hide cover photo in the header.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      false: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show', 'dsm-supreme-modules-pro-for-divi')\n      },\n      true: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hide', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"fb_small_header.innerContent\",\n    defaultAttr: {\n      desktop: {\n        value: 'false'\n      }\n    },\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Small Header?', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use the small header instead.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      false: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('No', 'dsm-supreme-modules-pro-for-divi')\n      },\n      true: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Yes', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"fb_show_facepile.innerContent\",\n    defaultAttr: {\n      desktop: {\n        value: 'true'\n      }\n    },\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Face Pile', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show profile photos when friends like this.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      false: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hide', 'dsm-supreme-modules-pro-for-divi')\n      },\n      true: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"fb_adapt_container_width.innerContent\",\n    defaultAttr: {\n      desktop: {\n        value: 'true'\n      }\n    },\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Adapt to Container Width', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fit the plugin width inside the parent container on load (Facebook Page Plugin: data-adapt-container-width).', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      true: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Yes', 'dsm-supreme-modules-pro-for-divi')\n      },\n      false: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('No', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"fb_hide_cta.innerContent\",\n    defaultAttr: {\n      desktop: {\n        value: 'false'\n      }\n    },\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hide Call To Action Button', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hide the custom call to action button if the page has one (data-hide-cta).', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      false: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show', 'dsm-supreme-modules-pro-for-divi')\n      },\n      true: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hide', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"fb_lazy.innerContent\",\n    defaultAttr: {\n      desktop: {\n        value: 'false'\n      }\n    },\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Lazy Load Plugin', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use the browser loading attribute on the plugin iframe (data-lazy).', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      false: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('No', 'dsm-supreme-modules-pro-for-divi')\n      },\n      true: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Yes', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"fb_width.innerContent\",\n    defaultAttr: {\n      desktop: {\n        value: '340px'\n      }\n    },\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Width', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('The pixel width of the Facebook feed. Min. is 180 and max. is 500.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 180,\n    max: 500,\n    step: 1,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"fb_height.innerContent\",\n    defaultAttr: {\n      desktop: {\n        value: '500px'\n      }\n    },\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Height', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pixel height of the plugin (minimum 70 per Facebook Page Plugin).', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 70,\n    max: 1200,\n    step: 1,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const facebook_simple_feed_settings_content = (facebook_simple_feed_settings_content_SettingsContent);\n;// ./packages/module-library/facebook-simple-feed/settings-design.js\n\n\n\n\n\nfunction facebook_simple_feed_settings_design_SettingsDesign() {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"alignment\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Alignment', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"fb_alignment.innerContent\",\n    defaultAttr: {\n      desktop: {\n        value: 'center'\n      }\n    },\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Define the alignment of the Facebook feed.', 'dsm-supreme-modules-pro-for-divi'),\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"sizing\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Sizing', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, {\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const facebook_simple_feed_settings_design = (facebook_simple_feed_settings_design_SettingsDesign);\n;// ./packages/module-library/facebook-simple-feed/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction facebook_simple_feed_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_facebook_feed\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const facebook_simple_feed_settings_advanced = (facebook_simple_feed_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/facebook-simple-feed/module-styles.js\n\n\n\n/**\n * React function component for rendering module style.\n */\nconst facebook_simple_feed_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }));\n};\n;// ./packages/module-library/facebook-simple-feed/edit.js\n\n\n\n\n\nconst facebook_simple_feed_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\n\n/**\n * Normalize select / checkbox values to boolean for react-facebook Page props.\n *\n * @param {unknown} value   Raw stored value.\n * @param {boolean} defaultValue Fallback when unset.\n * @return {boolean}\n */\nfunction attrToBool(value, defaultValue) {\n  if (value === true || value === 'true' || value === 'on' || value === 'yes' || value === 1 || value === '1') {\n    return true;\n  }\n  if (value === false || value === 'false' || value === 'off' || value === 'no' || value === 0 || value === '0' || value === '') {\n    return false;\n  }\n  return defaultValue;\n}\n\n/**\n * Pixel integer for Page plugin data-width / data-height (Meta expects numbers).\n *\n * @param {unknown} raw          Range value (may include px).\n * @param {number}  defaultValue Fallback.\n * @param {number}  min          Min clamp.\n * @param {number|null} max      Max clamp or null.\n * @return {number}\n */\nfunction pixelInt(raw, defaultValue, min, max = null) {\n  const n = parseInt(String(raw !== null && raw !== void 0 ? raw : '').replace(/[^0-9.-]/g, ''), 10);\n  let v = Number.isFinite(n) ? n : defaultValue;\n  v = Math.max(min, v);\n  if (max !== null) {\n    v = Math.min(max, v);\n  }\n  return v;\n}\n\n/**\n * Normalize tabs value from stored attrs (array or legacy object).\n *\n * @param {unknown} raw Raw tabs value.\n * @return {string[]} Tab ids for the Page plugin.\n */\nfunction getTabsList(raw) {\n  if (Array.isArray(raw)) {\n    return raw.filter(item => typeof item === 'string' && item.length > 0);\n  }\n  if (raw && typeof raw === 'object') {\n    return Object.values(raw).filter(item => typeof item === 'string' && item.length > 0);\n  }\n  return ['timeline'];\n}\nfunction facebook_simple_feed_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _getAttrByMode4, _getAttrByMode5, _getAttrByMode6, _getAttrByMode7, _getAttrByMode8, _getAttrByMode9;\n  const facebookPageUrl = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.fb_page_url?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'https://www.facebook.com/divisupreme/';\n  const facebookHideCover = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.fb_hide_cover?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'false';\n  const fbSmallHeader = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.fb_small_header?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'false';\n  const width = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.fb_width?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : '340px';\n  const height = (_getAttrByMode5 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.fb_height?.innerContent)) !== null && _getAttrByMode5 !== void 0 ? _getAttrByMode5 : '500px';\n  const fbShowFacepile = (_getAttrByMode6 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.fb_show_facepile?.innerContent)) !== null && _getAttrByMode6 !== void 0 ? _getAttrByMode6 : 'true';\n  const fbAdaptContainer = (_getAttrByMode7 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.fb_adapt_container_width?.innerContent)) !== null && _getAttrByMode7 !== void 0 ? _getAttrByMode7 : 'true';\n  const fbHideCta = (_getAttrByMode8 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.fb_hide_cta?.innerContent)) !== null && _getAttrByMode8 !== void 0 ? _getAttrByMode8 : 'false';\n  const fbLazy = (_getAttrByMode9 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.fb_lazy?.innerContent)) !== null && _getAttrByMode9 !== void 0 ? _getAttrByMode9 : 'false';\n  const fbTabsRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.fb_tabs?.innerContent);\n  const fbTabsValues = getTabsList(fbTabsRaw);\n  const widthPx = pixelInt(width, 340, 180, 500);\n  const heightPx = pixelInt(height, 500, 70, null);\n  const refreshKey = [fbTabsValues.join(','), facebookPageUrl, facebookHideCover, fbSmallHeader, fbShowFacepile, fbAdaptContainer, fbHideCta, fbLazy, widthPx, heightPx];\n  const fbAppId = typeof facebookAppId !== 'undefined' && facebookAppId && typeof facebookAppId.appId === 'string' && facebookAppId.appId !== '' ? facebookAppId.appId : '252971358753113';\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: facebook_simple_feed_edit_ModuleScriptData,\n    stylesComponent: facebook_simple_feed_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat, _getAttrByMode0;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n      const alignRaw = (_getAttrByMode0 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.fb_alignment?.innerContent)) !== null && _getAttrByMode0 !== void 0 ? _getAttrByMode0 : 'center';\n      const allowed = ['left', 'center', 'right', 'justified'];\n      const align = allowed.includes(alignRaw) ? alignRaw : 'center';\n      params.classnamesInstance.add(`et_pb_text_align_${align}`);\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-facebook-feed\",\n    key: refreshKey.join('|')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(esm_, {\n    appId: fbAppId\n  }, /*#__PURE__*/external_vendor_React_default().createElement(esm_N, {\n    href: facebookPageUrl,\n    tabs: fbTabsValues.join(','),\n    width: widthPx,\n    height: heightPx,\n    smallHeader: attrToBool(fbSmallHeader, false),\n    adaptContainerWidth: attrToBool(fbAdaptContainer, true),\n    hideCover: attrToBool(facebookHideCover, false),\n    showFacepile: attrToBool(fbShowFacepile, true),\n    hideCTA: attrToBool(fbHideCta, false),\n    lazy: attrToBool(fbLazy, false)\n  }))));\n}\n/* harmony default export */ const facebook_simple_feed_edit = (facebook_simple_feed_edit_Edit);\n;// ./packages/module-library/facebook-simple-feed/conversion-outline.js\nconst facebook_simple_feed_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    filters: {\n      default: 'module.decoration.filters'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    fb_page_url: 'fb_page_url.innerContent.*',\n    fb_tabs: 'fb_tabs.innerContent.*',\n    fb_hide_cover: 'fb_hide_cover.innerContent.*',\n    fb_small_header: 'fb_small_header.innerContent.*',\n    fb_show_facepile: 'fb_show_facepile.innerContent.*',\n    fb_adapt_container_width: 'fb_adapt_container_width.innerContent.*',\n    fb_hide_cta: 'fb_hide_cta.innerContent.*',\n    fb_lazy: 'fb_lazy.innerContent.*',\n    fb_width: 'fb_width.innerContent.*',\n    fb_height: 'fb_height.innerContent.*',\n    fb_alignment: 'fb_alignment.innerContent.*'\n  }\n};\n;// ./packages/module-library/facebook-simple-feed/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmFacebookSimpleFeed', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/facebook-simple-feed': {\n      name: 'divi-supreme/facebook-simple-feed',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 7.636719 12.28125 C 7.308594 12.28125 7.039062 12.011719 7.039062 11.679688 C 7.039062 11.351562 7.308594 11.078125 7.636719 11.078125 C 7.96875 11.078125 8.238281 11.351562 8.238281 11.679688 C 8.238281 12.011719 7.96875 12.28125 7.636719 12.28125 Z M 7.636719 11.410156 C 7.492188 11.410156 7.367188 11.53125 7.367188 11.679688 C 7.367188 11.828125 7.492188 11.949219 7.636719 11.949219 C 7.785156 11.949219 7.910156 11.828125 7.910156 11.679688 C 7.910156 11.53125 7.785156 11.410156 7.636719 11.410156 Z M 7.636719 11.410156 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.542969 3.867188 C 11.214844 3.867188 10.945312 3.597656 10.945312 3.269531 C 10.945312 2.9375 11.214844 2.667969 11.542969 2.667969 C 11.875 2.667969 12.144531 2.9375 12.144531 3.269531 C 12.144531 3.597656 11.878906 3.867188 11.542969 3.867188 Z M 11.542969 2.996094 C 11.398438 2.996094 11.273438 3.121094 11.273438 3.269531 C 11.273438 3.414062 11.398438 3.539062 11.542969 3.539062 C 11.691406 3.539062 11.816406 3.414062 11.816406 3.269531 C 11.816406 3.121094 11.691406 2.996094 11.542969 2.996094 Z M 11.542969 2.996094 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 10.40625 13.484375 L 4.570312 13.484375 C 4.105469 13.484375 3.734375 13.097656 3.734375 12.628906 L 3.734375 5.019531 C 3.734375 4.550781 4.109375 4.167969 4.570312 4.167969 L 10.40625 4.167969 C 10.871094 4.167969 11.246094 4.554688 11.246094 5.019531 L 11.246094 12.628906 C 11.246094 13.101562 10.867188 13.484375 10.40625 13.484375 Z M 4.570312 4.492188 C 4.285156 4.492188 4.050781 4.730469 4.050781 5.019531 L 4.050781 12.628906 C 4.050781 12.921875 4.285156 13.160156 4.570312 13.160156 L 10.40625 13.160156 C 10.695312 13.160156 10.929688 12.921875 10.929688 12.628906 L 10.929688 5.019531 C 10.929688 4.730469 10.695312 4.492188 10.40625 4.492188 Z M 4.570312 4.492188 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.4375 5.371094 L 10.34375 5.371094 L 10.34375 5.671875 L 6.4375 5.671875 Z M 6.4375 5.371094 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.558594 6.105469 L 9.277344 6.105469 L 9.277344 6.320312 L 6.558594 6.320312 Z M 6.558594 6.105469 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.558594 6.863281 L 10.351562 6.863281 L 10.351562 7.078125 L 6.558594 7.078125 Z M 6.558594 6.863281 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 4.933594 7.320312 L 4.933594 6.144531 L 4.730469 6.144531 L 4.730469 5.796875 L 4.933594 5.796875 L 4.933594 5.738281 C 4.933594 5.554688 4.988281 5.351562 5.125 5.226562 C 5.242188 5.113281 5.410156 5.074219 5.546875 5.074219 C 5.648438 5.074219 5.734375 5.085938 5.796875 5.105469 L 5.78125 5.46875 C 5.738281 5.457031 5.6875 5.449219 5.628906 5.449219 C 5.472656 5.449219 5.40625 5.570312 5.40625 5.722656 L 5.40625 5.800781 L 5.714844 5.800781 L 5.714844 6.144531 L 5.410156 6.144531 L 5.410156 7.320312 Z M 4.933594 7.320312 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 10.644531 10.480469 L 4.636719 10.480469 L 4.636719 8.074219 L 10.644531 8.074219 Z M 4.957031 10.152344 L 10.320312 10.152344 L 10.320312 8.398438 L 4.957031 8.398438 Z M 4.957031 10.152344 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/facebook-simple-feed/index.js\n// External library dependencies.\n\n\n// Wordpress dependencies.\n\n\n\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\nconst facebookSimpleFeedModule = {\n  metadata: facebook_simple_feed_module_namespaceObject,\n  conversionOutline: facebook_simple_feed_conversion_outline_conversionOutline,\n  renderers: {\n    edit: facebook_simple_feed_edit,\n    styles: facebook_simple_feed_module_styles_ModuleStyles\n  },\n  settings: {\n    content: facebook_simple_feed_settings_content,\n    design: facebook_simple_feed_settings_design,\n    advanced: facebook_simple_feed_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    fb_page_url: {\n      innerContent: {\n        desktop: {\n          value: 'https://www.facebook.com/divisupreme/'\n        }\n      }\n    },\n    fb_tabs: {\n      innerContent: {\n        desktop: {\n          value: ['timeline']\n        }\n      }\n    },\n    fb_hide_cover: {\n      innerContent: {\n        desktop: {\n          value: 'false'\n        }\n      }\n    },\n    fb_small_header: {\n      innerContent: {\n        desktop: {\n          value: 'false'\n        }\n      }\n    },\n    fb_show_facepile: {\n      innerContent: {\n        desktop: {\n          value: 'true'\n        }\n      }\n    },\n    fb_adapt_container_width: {\n      innerContent: {\n        desktop: {\n          value: 'true'\n        }\n      }\n    },\n    fb_hide_cta: {\n      innerContent: {\n        desktop: {\n          value: 'false'\n        }\n      }\n    },\n    fb_lazy: {\n      innerContent: {\n        desktop: {\n          value: 'false'\n        }\n      }\n    },\n    fb_width: {\n      innerContent: {\n        desktop: {\n          value: '340px'\n        }\n      }\n    },\n    fb_height: {\n      innerContent: {\n        desktop: {\n          value: '500px'\n        }\n      }\n    },\n    fb_alignment: {\n      innerContent: {\n        desktop: {\n          value: 'center'\n        }\n      }\n    }\n  }\n};\n/* harmony default export */ const facebook_simple_feed = (facebookSimpleFeedModule);\n;// ./packages/module-library/faq/module.json\nconst faq_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/faq\",\"d4Shortcode\":\"dsm_faq\",\"title\":\"Supreme Faq\",\"titles\":\"Supreme Faq\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/faq\",\"childrenName\":[\"dsm/faq-child\"],\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\"},\"header\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"selector\":\"{{selector}} .dsm-faq-item-wrapper.dsm-faq-item-active .dsm-faq-title\",\"default\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"headingLevel\":\"h5\"}}}}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"closed_header\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"selector\":\"{{selector}} .dsm-faq-item-wrapper:not(.dsm-faq-item-active) .dsm-faq-title\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"content\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"selector\":\"{{selector}} .dsm_faq_child .dsm-faq-content\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_accordion_gap\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_make_accordion_toggle\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_open_faq_item\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_enable_schema_markup\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_open_bg_color\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-faq-item-wrapper.dsm-faq-item-active\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"background\":{\"selector\":\"{{selector}} .dsm-faq-item-wrapper.dsm-faq-item-active\",\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-faq-item-wrapper.dsm-faq-item-active\",\"hover\":\"{{selector}} .dsm-faq-item-wrapper.dsm-faq-item-active:hover\"}}}},\"settings\":{\"decoration\":{\"background\":{}}}},\"dsm_open_toggle_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-faq-item-wrapper.dsm-faq-item-active\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_open_toggle_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-faq-item-wrapper.dsm-faq-item-active\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_close_bg_color\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-faq-item-wrapper:not(.dsm-faq-item-active)\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"background\":{\"selector\":\"{{selector}} .dsm-faq-item-wrapper:not(.dsm-faq-item-active)\",\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-faq-item-wrapper:not(.dsm-faq-item-active)\",\"hover\":\"{{selector}} .dsm-faq-item-wrapper:not(.dsm-faq-item-active):hover\"}}}},\"settings\":{\"decoration\":{\"background\":{}}}},\"dsm_closed_toggle_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-faq-item-wrapper:not(.dsm-faq-item-active)\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_closed_toggle_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-faq-item-wrapper:not(.dsm-faq-item-active)\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_use_image\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_open_image\":{\"type\":\"object\",\"inlineEditor\":\"UploadContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_close_image\":{\"type\":\"object\",\"inlineEditor\":\"UploadContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_open_image_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_close_image_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_open_font_icon\":{\"type\":\"object\",\"inlineEditor\":\"IconPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_close_font_icon\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_open_icon_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_open_icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_open_icon_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-faq-item-wrapper .dsm_open_icon\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_open_icon_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-faq-item-wrapper .dsm_open_icon\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_close_icon_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_close_icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_close_icon_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-faq-item-wrapper .dsm_close_icon\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_close_icon_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-faq-item-wrapper .dsm_close_icon\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_open_font_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_close_font_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_animate_icon\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_icon_placement\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_design_tab_title\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"open\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_design_tab_toggle_row\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"open\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_design_tab_toggle_images\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"open\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_design_tab_toggle_icons\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"open\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-faq-item-wrapper .dsm-faq-content\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-faq-item-wrapper .dsm-faq-content\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_open_image_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-faq-item-wrapper.dsm-faq-item-active .dsm_open_image\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_open_image_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-faq-item-wrapper.dsm-faq-item-active .dsm_open_image\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_close_image_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-faq-item-wrapper:not(.dsm-faq-item-active) .dsm_close_image\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_close_image_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-faq-item-wrapper:not(.dsm-faq-item-active) .dsm_close_image\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"toggleOpenStateStyle\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-faq-item-wrapper.dsm-faq-item-active\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-faq-item-wrapper.dsm-faq-item-active\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-faq-item-wrapper.dsm-faq-item-active\",\"useOverlay\":true}}},\"toggleCloseStateStyle\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-faq-item-wrapper:not(.dsm-faq-item-active)\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-faq-item-wrapper:not(.dsm-faq-item-active)\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-faq-item-wrapper:not(.dsm-faq-item-active)\",\"useOverlay\":true}}},\"imageOpenStateStyle\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-faq-item-wrapper.dsm-faq-item-active .dsm_open_image img\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-faq-item-wrapper.dsm-faq-item-active .dsm_open_image img\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-faq-item-wrapper.dsm-faq-item-active .dsm_open_image img\",\"useOverlay\":true}}},\"imageCloseStateStyle\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-faq-item-wrapper:not(.dsm-faq-item-active) .dsm_close_image img\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-faq-item-wrapper:not(.dsm-faq-item-active) .dsm_close_image img\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-faq-item-wrapper:not(.dsm-faq-item-active) .dsm_close_image img\",\"useOverlay\":true}}},\"iconOpenStateStyle\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-faq-item-wrapper .dsm_open_icon\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-faq-item-wrapper .dsm_open_icon\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-faq-item-wrapper .dsm_open_icon\",\"useOverlay\":true}}},\"iconCloseStateStyle\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-faq-item-wrapper .dsm_close_icon\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-faq-item-wrapper .dsm_close_icon\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-faq-item-wrapper .dsm_close_icon\",\"useOverlay\":true}}}}}');\n;// ./packages/module-library/faq/conversion-outline.js\n\n\nconst faq_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    module: 'module.advanced.htmlAttributes',\n    borders: {\n      default: 'module.decoration.border',\n      dsm_toggle_open_border: 'toggleOpenStateStyle.decoration.border',\n      dsm_toggle_closed_border: 'toggleCloseStateStyle.decoration.border',\n      dsm_icon_open_border: 'iconOpenStateStyle.decoration.border',\n      dsm_icon_close_border: 'iconCloseStateStyle.decoration.border',\n      dsm_image_open_border: 'imageOpenStateStyle.decoration.border',\n      dsm_image_close_border: 'imageCloseStateStyle.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow',\n      toggle_open_state_shadow: 'toggleOpenStateStyle.decoration.boxShadow',\n      toggle_closed_state_shadow: 'toggleCloseStateStyle.decoration.boxShadow',\n      icon_open_state_shadow: 'iconOpenStateStyle.decoration.boxShadow',\n      icon_close_state_shadow: 'iconCloseStateStyle.decoration.boxShadow',\n      image_open_state_shadow: 'imageOpenStateStyle.decoration.boxShadow',\n      image_close_state_shadow: 'imageCloseStateStyle.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    margin_padding: 'module.decoration.spacing',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    fonts: {\n      header: 'header.decoration.font',\n      closed_header: 'closed_header.decoration.font',\n      content: 'content.decoration.font'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    dsm_accordion_gap: 'dsm_accordion_gap.innerContent.*',\n    dsm_make_accordion_toggle: 'dsm_make_accordion_toggle.innerContent.*',\n    dsm_open_faq_item: 'dsm_open_faq_item.innerContent.*',\n    dsm_enable_schema_markup: 'dsm_enable_schema_markup.innerContent.*',\n    dsm_open_bg_color: 'dsm_open_bg_color.innerContent.*',\n    dsm_close_bg_color: 'dsm_close_bg_color.innerContent.*',\n    dsm_use_image: 'dsm_use_image.innerContent.*',\n    dsm_open_image: 'dsm_open_image.innerContent.*',\n    dsm_close_image: 'dsm_close_image.innerContent.*',\n    dsm_open_image_width: 'dsm_open_image_width.innerContent.*',\n    dsm_close_font_icon: 'dsm_close_font_icon.innerContent.*',\n    dsm_open_font_icon: 'dsm_open_font_icon.innerContent.*',\n    dsm_open_icon_bg_color: 'dsm_open_icon_bg_color.innerContent.*',\n    dsm_open_icon_color: 'dsm_open_icon_color.innerContent.*',\n    dsm_close_icon_bg_color: 'dsm_close_icon_bg_color.innerContent.*',\n    dsm_close_icon_color: 'dsm_close_icon_color.innerContent.*',\n    dsm_open_font_size: 'dsm_open_font_size.innerContent.*',\n    dsm_close_font_size: 'dsm_close_font_size.innerContent.*',\n    dsm_animate_icon: 'dsm_animate_icon.innerContent.*',\n    dsm_icon_placement: 'dsm_icon_placement.innerContent.*',\n    dsm_design_tab_title: 'dsm_design_tab_title.innerContent.*',\n    dsm_design_tab_toggle_row: 'dsm_design_tab_toggle_row.innerContent.*',\n    dsm_design_tab_toggle_images: 'dsm_design_tab_toggle_images.innerContent.*',\n    dsm_design_tab_toggle_icons: 'dsm_design_tab_toggle_icons.innerContent.*',\n    dsm_close_icon_margin: 'dsm_close_icon_margin.decoration.spacing.*.margin',\n    dsm_open_icon_margin: 'dsm_open_icon_margin.decoration.spacing.*.margin',\n    dsm_open_toggle_margin: 'dsm_open_toggle_margin.decoration.spacing.*.margin',\n    dsm_closed_toggle_margin: 'dsm_closed_toggle_margin.decoration.spacing.*.margin',\n    dsm_closed_toggle_padding: 'dsm_closed_toggle_padding.decoration.spacing.*.padding',\n    dsm_open_toggle_padding: 'dsm_open_toggle_padding.decoration.spacing.*.padding',\n    dsm_close_icon_padding: 'dsm_close_icon_padding.decoration.spacing.*.padding',\n    dsm_open_icon_padding: 'dsm_open_icon_padding.decoration.spacing.*.padding',\n    dsm_content_margin: 'dsm_content_margin.decoration.spacing.*.margin',\n    dsm_content_padding: 'dsm_content_padding.decoration.spacing.*.padding',\n    dsm_open_image_margin: 'dsm_open_image_margin.decoration.spacing.*.margin',\n    dsm_open_image_padding: 'dsm_open_image_padding.decoration.spacing.*.padding',\n    dsm_close_image_margin: 'dsm_close_image_margin.decoration.spacing.*.margin',\n    dsm_close_image_padding: 'dsm_close_image_padding.decoration.spacing.*.padding',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    dsm_open_font_icon: external_divi_conversion_namespaceObject.convertFontIcon,\n    dsm_close_font_icon: external_divi_conversion_namespaceObject.convertFontIcon,\n    dsm_close_icon_margin: external_divi_module_namespaceObject.convertSpacing,\n    dsm_open_icon_margin: external_divi_module_namespaceObject.convertSpacing,\n    dsm_open_toggle_margin: external_divi_module_namespaceObject.convertSpacing,\n    dsm_closed_toggle_margin: external_divi_module_namespaceObject.convertSpacing,\n    dsm_closed_toggle_padding: external_divi_module_namespaceObject.convertSpacing,\n    dsm_open_toggle_padding: external_divi_module_namespaceObject.convertSpacing,\n    dsm_close_icon_padding: external_divi_module_namespaceObject.convertSpacing,\n    dsm_open_icon_padding: external_divi_module_namespaceObject.convertSpacing,\n    dsm_content_margin: external_divi_module_namespaceObject.convertSpacing,\n    dsm_content_padding: external_divi_module_namespaceObject.convertSpacing,\n    dsm_open_image_margin: external_divi_module_namespaceObject.convertSpacing,\n    dsm_open_image_padding: external_divi_module_namespaceObject.convertSpacing,\n    dsm_close_image_margin: external_divi_module_namespaceObject.convertSpacing,\n    dsm_close_image_padding: external_divi_module_namespaceObject.convertSpacing,\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/faq/module-default-render-attributes.json\nconst faq_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"dsm_open_bg_color\":{\"decoration\":{\"background\":{\"desktop\":{\"value\":{\"color\":\"#ffffff\"}}}}},\"dsm_close_bg_color\":{\"decoration\":{\"background\":{\"desktop\":{\"value\":{\"color\":\"#f4f4f4\"}}}}}}');\n;// ./packages/module-library/faq/faq-module-defaults.js\n/**\n * D4-aligned defaults for dsm/faq (see divi-4/includes/modules/Faq/Faq.php).\n */\n\n\nconst faqFd = {\n  dsm_accordion_gap: {\n    desktop: {\n      value: '10px'\n    }\n  },\n  dsm_make_accordion_toggle: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  dsm_open_faq_item: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  dsm_enable_schema_markup: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  dsm_use_image: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  dsm_animate_icon: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  dsm_open_font_icon: {\n    desktop: {\n      value: {\n        type: 'divi',\n        weight: '400',\n        unicode: '&#x4b;'\n      }\n    }\n  },\n  dsm_close_font_icon: {\n    desktop: {\n      value: {\n        type: 'divi',\n        weight: '400',\n        unicode: '&#x4c;'\n      }\n    }\n  },\n  dsm_icon_placement: {\n    desktop: {\n      value: 'left'\n    }\n  },\n  /** Design modal: which Open/Closed sub-tab is active (Visual Builder UI only). */\n  dsm_design_tab_title: {\n    desktop: {\n      value: 'open'\n    }\n  },\n  dsm_design_tab_toggle_row: {\n    desktop: {\n      value: 'open'\n    }\n  },\n  dsm_design_tab_toggle_images: {\n    desktop: {\n      value: 'open'\n    }\n  },\n  dsm_design_tab_toggle_icons: {\n    desktop: {\n      value: 'open'\n    }\n  }\n};\nconst faqDesignOpenImageWidth = {\n  desktop: {\n    value: '32px'\n  }\n};\nconst faqDesignCloseImageWidth = {\n  desktop: {\n    value: '32px'\n  }\n};\nconst faqDesignOpenFontSize = {\n  desktop: {\n    value: '22px'\n  }\n};\nconst faqDesignCloseFontSize = {\n  desktop: {\n    value: '22px'\n  }\n};\n\n/** Matches `header.decoration.font` for FontGroup `defaultGroupAttr`. */\nconst faqHeaderFontDefaultGroupAttr = {\n  font: {\n    desktop: {\n      value: {\n        headingLevel: 'h5'\n      }\n    }\n  }\n};\n\n/** Matches `content.decoration.font` for FontGroup `defaultGroupAttr`. */\nconst faqContentFontDefaultGroupAttr = {\n  font: {\n    desktop: {\n      value: {\n        size: '14px',\n        lineHeight: '1.7em',\n        letterSpacing: '0px'\n      }\n    }\n  }\n};\nconst faqModuleDefaultAttrs = {\n  module: {\n    decoration: {\n      attributes: {},\n      conditions: {},\n      interactions: {}\n    },\n    advanced: {\n      text: {\n        text: {\n          desktop: {\n            value: {\n              color: 'light'\n            }\n          }\n        }\n      }\n    }\n  },\n  header: {\n    decoration: {\n      font: {\n        font: {\n          desktop: {\n            value: {\n              headingLevel: 'h5'\n            }\n          }\n        }\n      }\n    }\n  },\n  closed_header: {\n    decoration: {\n      font: {\n        font: {\n          desktop: {\n            value: {}\n          }\n        }\n      }\n    }\n  },\n  content: {\n    decoration: {\n      font: {\n        font: {\n          desktop: {\n            value: {\n              size: '14px',\n              lineHeight: '1.7em',\n              letterSpacing: '0px'\n            }\n          }\n        }\n      }\n    }\n  },\n  dsm_accordion_gap: {\n    innerContent: faqFd.dsm_accordion_gap\n  },\n  dsm_make_accordion_toggle: {\n    innerContent: faqFd.dsm_make_accordion_toggle\n  },\n  dsm_open_faq_item: {\n    innerContent: faqFd.dsm_open_faq_item\n  },\n  dsm_enable_schema_markup: {\n    innerContent: faqFd.dsm_enable_schema_markup\n  },\n  dsm_use_image: {\n    innerContent: faqFd.dsm_use_image\n  },\n  dsm_animate_icon: {\n    innerContent: faqFd.dsm_animate_icon\n  },\n  dsm_open_font_icon: {\n    innerContent: faqFd.dsm_open_font_icon\n  },\n  dsm_close_font_icon: {\n    innerContent: faqFd.dsm_close_font_icon\n  },\n  dsm_icon_placement: {\n    innerContent: faqFd.dsm_icon_placement\n  },\n  dsm_design_tab_title: {\n    innerContent: faqFd.dsm_design_tab_title\n  },\n  dsm_design_tab_toggle_row: {\n    innerContent: faqFd.dsm_design_tab_toggle_row\n  },\n  dsm_design_tab_toggle_images: {\n    innerContent: faqFd.dsm_design_tab_toggle_images\n  },\n  dsm_design_tab_toggle_icons: {\n    innerContent: faqFd.dsm_design_tab_toggle_icons\n  },\n  dsm_open_bg_color: faq_module_default_render_attributes_namespaceObject.dsm_open_bg_color,\n  dsm_close_bg_color: faq_module_default_render_attributes_namespaceObject.dsm_close_bg_color,\n  dsm_open_image_width: {\n    innerContent: faqDesignOpenImageWidth\n  },\n  dsm_close_image_width: {\n    innerContent: faqDesignCloseImageWidth\n  },\n  dsm_open_font_size: {\n    innerContent: faqDesignOpenFontSize\n  },\n  dsm_close_font_size: {\n    innerContent: faqDesignCloseFontSize\n  }\n};\nconst faqPlaceholderContent = {\n  ...faqModuleDefaultAttrs,\n  module: {\n    ...faqModuleDefaultAttrs.module,\n    decoration: {}\n  }\n};\n;// ./packages/module-library/faq/settings-content.js\n\n// Wordpress dependencies.\n\n\n// Divi package dependencies.\n\n\n\n\n\n\n\nfunction faq_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  var _getAttrByMode;\n  const useImage = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_use_image?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'off';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(ChildDraggableModuleList, {\n    childModuleName: \"dsm/faq-child\",\n    addTitle: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Add New Item', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"general\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Settings', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_accordion_gap.innerContent\",\n    defaultAttr: faqFd.dsm_accordion_gap,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Gap', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    step: 1,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_make_accordion_toggle.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Make Accordion', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    defaultAttr: faqFd.dsm_make_accordion_toggle\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_open_faq_item.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Open First Item', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    defaultAttr: faqFd.dsm_open_faq_item\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_enable_schema_markup.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enable Schema Support', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Adds FAQPage JSON-LD (schema.org) for the questions and answers in this module so search engines can read them. Multiple FAQ modules on the same page are merged into one FAQ script in the footer, with questions in page order. Question titles are plain text; answers keep safe HTML such as links and lists. If the same question title appears twice, the first item is kept. Developers can change the combined list with the dsm_faq_schema_main_entities filter. Rich result eligibility still follows Google’s FAQ policies for your site.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    defaultAttr: faqFd.dsm_enable_schema_markup\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_use_image.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Image', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    defaultAttr: faqFd.dsm_use_image\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_animate_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animate Toggle Icons', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    defaultAttr: faqFd.dsm_animate_icon\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"toggleIcon\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Toggle Icon', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_open_font_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Open Faq Icon', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: faqFd.dsm_open_font_icon\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_close_font_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Close Faq Icon', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: faqFd.dsm_close_font_icon\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_icon_placement.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Placement', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: faqFd.dsm_icon_placement\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"toggleImage\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Toggle Image', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useImage\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_open_image.innerContent\",\n    subName: \"src\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Open Image', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_close_image.innerContent\",\n    subName: \"src\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Close Image', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const faq_settings_content = (faq_settings_content_SettingsContent);\n;// ./packages/module-library/faq/faq-vb-default-attrs.js\n/**\n * FAQ parent: Visual Builder `defaultAttr` slices from `module-default-render-attributes.json`.\n *\n * @package DiviSupreme\n */\n\n\n\n/** `BackgroundGroup` for Open State toggle row background. */\nconst faqToggleOpenBackgroundDefaultAttr = faq_module_default_render_attributes_namespaceObject.dsm_open_bg_color?.decoration?.background;\n\n/** `BackgroundGroup` for Closed State toggle row background. */\nconst faqToggleCloseBackgroundDefaultAttr = faq_module_default_render_attributes_namespaceObject.dsm_close_bg_color?.decoration?.background;\n;// ./packages/module-library/faq/settings-design.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\n\nconst openClosedTabOptions = {\n  open: {\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Open State', 'dsm-supreme-modules-pro-for-divi')\n  },\n  closed: {\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Closed State', 'dsm-supreme-modules-pro-for-divi')\n  }\n};\nfunction faq_settings_design_SettingsDesign({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _getAttrByMode4;\n  const useImage = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_use_image?.innerContent);\n  const titleTab = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_design_tab_title?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'open';\n  const toggleRowTab = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_design_tab_toggle_row?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'open';\n  const toggleImagesTab = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_design_tab_toggle_images?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'open';\n  const toggleIconsTab = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_design_tab_toggle_icons?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : 'open';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"title\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_design_tab_title.innerContent\",\n    defaultAttr: faqFd.dsm_design_tab_title\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: openClosedTabOptions,\n    tabUi: true,\n    showLabel: true\n  })), 'open' === titleTab && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"header.decoration.font\",\n    defaultGroupAttr: faqHeaderFontDefaultGroupAttr,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: true\n      }\n    }\n  }), 'closed' === titleTab && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"closed_header.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"toggleRow\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Toggle', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_design_tab_toggle_row.innerContent\",\n    defaultAttr: faqFd.dsm_design_tab_toggle_row\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: openClosedTabOptions,\n    tabUi: true,\n    showLabel: true\n  })), 'open' === toggleRowTab && /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, {\n    attrName: \"dsm_open_bg_color.decoration.background\",\n    defaultAttr: faqToggleOpenBackgroundDefaultAttr,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    defaultPanel: \"color\",\n    hidePanels: ['video', 'pattern', 'mask']\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_open_toggle_margin.decoration.spacing\",\n    fields: {\n      padding: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_open_toggle_padding.decoration.spacing\",\n    fields: {\n      margin: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"toggleOpenStateStyle.decoration.border\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Border', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"toggleOpenStateStyle.decoration.boxShadow\",\n    grouped: false\n  })), 'closed' === toggleRowTab && /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, {\n    attrName: \"dsm_close_bg_color.decoration.background\",\n    defaultAttr: faqToggleCloseBackgroundDefaultAttr,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    defaultPanel: \"color\",\n    hidePanels: ['video', 'pattern', 'mask']\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_closed_toggle_margin.decoration.spacing\",\n    fields: {\n      padding: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_closed_toggle_padding.decoration.spacing\",\n    fields: {\n      margin: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"toggleCloseStateStyle.decoration.border\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Border', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"toggleCloseStateStyle.decoration.boxShadow\",\n    grouped: false\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"toggleImages\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Toggle Images', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useImage\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_design_tab_toggle_images.innerContent\",\n    defaultAttr: faqFd.dsm_design_tab_toggle_images\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: openClosedTabOptions,\n    tabUi: true,\n    showLabel: true\n  })), 'open' === toggleImagesTab && /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_open_image_width.innerContent\",\n    defaultAttr: faqDesignOpenImageWidth,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Width', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_open_image_margin.decoration.spacing\",\n    fields: {\n      padding: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_open_image_padding.decoration.spacing\",\n    fields: {\n      margin: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"imageOpenStateStyle.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"imageOpenStateStyle.decoration.boxShadow\",\n    grouped: false\n  })), 'closed' === toggleImagesTab && /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_close_image_width.innerContent\",\n    defaultAttr: faqDesignCloseImageWidth,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Width', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_close_image_margin.decoration.spacing\",\n    fields: {\n      padding: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_close_image_padding.decoration.spacing\",\n    fields: {\n      margin: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"imageCloseStateStyle.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"imageCloseStateStyle.decoration.boxShadow\",\n    grouped: false\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"toggleIcons\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Toggle Icons', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_design_tab_toggle_icons.innerContent\",\n    defaultAttr: faqFd.dsm_design_tab_toggle_icons\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: openClosedTabOptions,\n    tabUi: true,\n    showLabel: true\n  })), 'open' === toggleIconsTab && /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_open_icon_bg_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Background', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_open_icon_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Color', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_open_icon_margin.decoration.spacing\",\n    fields: {\n      padding: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_open_icon_padding.decoration.spacing\",\n    fields: {\n      margin: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_open_font_size.innerContent\",\n    defaultAttr: faqDesignOpenFontSize,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Size', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    defaultUnit: 'px',\n    step: 1\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"iconOpenStateStyle.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"iconOpenStateStyle.decoration.boxShadow\",\n    grouped: false\n  })), 'closed' === toggleIconsTab && /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_close_icon_bg_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Background', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_close_icon_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Color', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_close_icon_margin.decoration.spacing\",\n    fields: {\n      padding: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_close_icon_padding.decoration.spacing\",\n    fields: {\n      margin: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_close_font_size.innerContent\",\n    defaultAttr: faqDesignCloseFontSize,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Size', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    defaultUnit: 'px',\n    step: 1\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"iconCloseStateStyle.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"iconCloseStateStyle.decoration.boxShadow\",\n    grouped: false\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_content_margin.decoration.spacing\",\n    fields: {\n      padding: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_content_padding.decoration.spacing\",\n    fields: {\n      margin: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"content.decoration.font\",\n    defaultGroupAttr: faqContentFontDefaultGroupAttr,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Body Text', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const faq_settings_design = (faq_settings_design_SettingsDesign);\n;// ./packages/module-library/faq/settings-advanced.js\n// Wordpress dependencies.\n\n// Divi package dependencies.\n\n\nfunction faq_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_faq\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const faq_settings_advanced = (faq_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/faq/faq-builder-context.js\n\n\n/**\n * Visual Builder FAQ parent context: accordion active state plus parent attrs used by\n * `dsm/faq-child` ModuleStyles when row toggle backgrounds inherit from `dsm/faq`.\n *\n * @type {import('react').Context<{\n *   activeChildIds: string[],\n *   parentAttrs?: Record<string, unknown>,\n * } | null>}\n */\nconst FaqBuilderContext = /*#__PURE__*/(0,external_vendor_React_.createContext)(null);\n;// ./packages/module-library/faq/module-styles.js\n\n\n\n\n\nconst toggleOpenIconCss = buildLegacyPseudoIconFontCss;\nconst toggleCloseIconCss = buildLegacyPseudoIconFontCss;\nconst itemGapCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'margin-bottom': true\n    }\n  });\n  declarations.add('margin-bottom', attrValue);\n  return declarations.value;\n};\n\n/**\n * React function component for rendering module style.\n */\nconst faq_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextStyle, {\n    selector: orderClass,\n    attr: attrs?.module?.advanced?.text\n  }), elements.style({\n    attrName: 'header'\n  }), elements.style({\n    attrName: 'closed_header'\n  }), elements.style({\n    attrName: 'content'\n  }), elements.style({\n    attrName: 'dsm_content_padding'\n  }), elements.style({\n    attrName: 'dsm_content_margin'\n  }), elements.style({\n    attrName: 'toggleOpenStateStyle'\n  }), elements.style({\n    attrName: 'toggleCloseStateStyle'\n  }), elements.style({\n    attrName: 'dsm_close_icon_margin'\n  }), elements.style({\n    attrName: 'dsm_close_icon_padding'\n  }), elements.style({\n    attrName: 'iconOpenStateStyle'\n  }), elements.style({\n    attrName: 'iconCloseStateStyle'\n  }), elements.style({\n    attrName: 'dsm_open_icon_margin'\n  }), elements.style({\n    attrName: 'dsm_open_icon_padding'\n  }), elements.style({\n    attrName: 'iconOpenStateStyle'\n  }), elements.style({\n    attrName: 'imageOpenStateStyle'\n  }), elements.style({\n    attrName: 'imageCloseStateStyle'\n  }), elements.style({\n    attrName: 'dsm_open_image_margin'\n  }), elements.style({\n    attrName: 'dsm_open_image_padding'\n  }), elements.style({\n    attrName: 'dsm_closed_toggle_margin'\n  }), elements.style({\n    attrName: 'dsm_closed_toggle_padding'\n  }), elements.style({\n    attrName: 'dsm_open_toggle_margin'\n  }), elements.style({\n    attrName: 'dsm_open_toggle_padding'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-faq-item-wrapper:not(:last-child)`,\n    attr: attrs?.dsm_accordion_gap?.innerContent,\n    declarationFunction: itemGapCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-title-wrapper .et-pb-icon.dsm_open_icon::before`,\n    attr: attrs?.dsm_open_font_icon?.innerContent,\n    declarationFunction: toggleOpenIconCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-title-wrapper .et-pb-icon.dsm_close_icon::before`,\n    attr: attrs?.dsm_close_font_icon?.innerContent,\n    declarationFunction: toggleCloseIconCss\n  }), elements.style({\n    attrName: 'dsm_close_bg_color'\n  }), elements.style({\n    attrName: 'dsm_open_bg_color'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-faq-item-wrapper .et-pb-icon.dsm_open_icon, ${orderClass} .dsm-faq-item-wrapper .et-pb-icon.dsm_faq-item-open_icon`,\n    attr: attrs?.dsm_open_font_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-faq-item-wrapper .et-pb-icon.dsm_close_icon, ${orderClass} .dsm-faq-item-wrapper .et-pb-icon.dsm_faq-item-close_icon`,\n    attr: attrs?.dsm_close_font_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-faq-item-wrapper .et-pb-icon.dsm_close_icon, ${orderClass} .dsm-faq-item-wrapper .et-pb-icon.dsm_faq-item-close_icon`,\n    attr: attrs?.dsm_close_icon_bg_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-faq-item-wrapper .et-pb-icon.dsm_close_icon, ${orderClass} .dsm-faq-item-wrapper .et-pb-icon.dsm_faq-item-close_icon`,\n    attr: attrs?.dsm_close_icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-faq-item-wrapper .et-pb-icon.dsm_open_icon, ${orderClass} .dsm-faq-item-wrapper .et-pb-icon.dsm_faq-item-open_icon`,\n    attr: attrs?.dsm_open_icon_bg_color?.innerContent,\n    property: \"background\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-faq-item-wrapper .et-pb-icon.dsm_open_icon, ${orderClass} .dsm-faq-item-wrapper .et-pb-icon.dsm_faq-item-open_icon`,\n    attr: attrs?.dsm_open_icon_bg_color?.innerContent,\n    property: \"background\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-faq-item-wrapper .et-pb-icon.dsm_open_icon, ${orderClass} .dsm-faq-item-wrapper .et-pb-icon.dsm_faq-item-open_icon`,\n    attr: attrs?.dsm_open_icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-faq-item-wrapper .dsm_open_image`,\n    attr: attrs?.dsm_open_image_width?.innerContent,\n    property: \"width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-faq-item-wrapper .dsm_open_image`,\n    attr: attrs?.dsm_open_image_width?.innerContent,\n    property: \"height\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-faq-item-wrapper .dsm_close_image`,\n    attr: attrs?.dsm_close_image_width?.innerContent,\n    property: \"width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-faq-item-wrapper .dsm_close_image`,\n    attr: attrs?.dsm_close_image_width?.innerContent,\n    property: \"height\"\n  }));\n};\n;// ./packages/module-library/faq/faq-accordion-shared.js\n/**\n * FAQ accordion / toggle — shared between frontend (`faq-frontend-init.js`) and Visual Builder (`edit.js`).\n * jQuery-aligned slide (height + vertical padding + margin, 400ms swing).\n *\n * @package DiviSupreme\n */\n\nconst DURATION_MS = 400;\n\n/**\n * jQuery `swing` easing.\n *\n * @param {number} p Progress 0–1.\n * @return {number}\n */\nfunction swing(p) {\n  return 0.5 - Math.cos(p * Math.PI) / 2;\n}\n\n/**\n * @typedef {{ h: number, pt: number, pb: number, mt: number, mb: number }} SlideBox\n */\n\n/**\n * @param {HTMLElement} el  Target.\n * @param {SlideBox}    box Content height + vertical padding + margin (px).\n */\nfunction applySlideBox(el, box) {\n  el.style.height = box.h + 'px';\n  el.style.paddingTop = box.pt + 'px';\n  el.style.paddingBottom = box.pb + 'px';\n  el.style.marginTop = box.mt + 'px';\n  el.style.marginBottom = box.mb + 'px';\n}\nfunction clearSlideInlineStyles(el) {\n  el.style.removeProperty('height');\n  el.style.removeProperty('padding-top');\n  el.style.removeProperty('padding-bottom');\n  el.style.removeProperty('margin-top');\n  el.style.removeProperty('margin-bottom');\n  el.style.removeProperty('overflow');\n  el.style.removeProperty('box-sizing');\n  el.style.removeProperty('visibility');\n}\n\n/**\n * @param {HTMLElement} element Panel.\n * @return {SlideBox}\n */\nfunction measureSlideBox(element) {\n  element.style.boxSizing = 'content-box';\n  void element.offsetHeight;\n  const cs = window.getComputedStyle(element);\n  const pt = parseFloat(cs.paddingTop) || 0;\n  const pb = parseFloat(cs.paddingBottom) || 0;\n  const mt = parseFloat(cs.marginTop) || 0;\n  const mb = parseFloat(cs.marginBottom) || 0;\n  const h = element.clientHeight - pt - pb;\n  return {\n    h,\n    pt,\n    pb,\n    mt,\n    mb\n  };\n}\n\n/**\n * @param {HTMLElement} element  Panel.\n * @param {SlideBox}    fromBox Start.\n * @param {SlideBox}    toBox   End.\n * @param {number}      duration Ms.\n * @return {Promise<void>}\n */\nfunction animateSlideBox(element, fromBox, toBox, duration) {\n  return new Promise(function (resolve) {\n    if (duration === 0) {\n      applySlideBox(element, toBox);\n      resolve();\n      return;\n    }\n    element.style.overflow = 'hidden';\n    element.style.boxSizing = 'content-box';\n    applySlideBox(element, fromBox);\n    const start = window.performance.now();\n    function frame(now) {\n      const elapsed = now - start;\n      const t = Math.min(1, elapsed / duration);\n      const e = swing(t);\n      applySlideBox(element, {\n        h: fromBox.h + (toBox.h - fromBox.h) * e,\n        pt: fromBox.pt + (toBox.pt - fromBox.pt) * e,\n        pb: fromBox.pb + (toBox.pb - fromBox.pb) * e,\n        mt: fromBox.mt + (toBox.mt - fromBox.mt) * e,\n        mb: fromBox.mb + (toBox.mb - fromBox.mb) * e\n      });\n      if (t < 1) {\n        window.requestAnimationFrame(frame);\n      } else {\n        applySlideBox(element, toBox);\n        resolve();\n      }\n    }\n    window.requestAnimationFrame(frame);\n  });\n}\nconst ZERO_BOX = {\n  h: 0,\n  pt: 0,\n  pb: 0,\n  mt: 0,\n  mb: 0\n};\n\n/**\n * Respect user OS “reduce motion” preference.\n *\n * @return {number} Duration in ms (0 = instant).\n */\nfunction getSlideDuration() {\n  if (typeof window.matchMedia === 'function' && window.matchMedia('(prefers-reduced-motion: reduce)').matches) {\n    return 0;\n  }\n  return DURATION_MS;\n}\n\n/**\n * @param {HTMLElement} element Panel to collapse.\n * @param {number}        duration Animation length (ms).\n * @return {Promise<void>}\n */\nfunction slideUp(element, duration) {\n  return new Promise(function (resolve) {\n    if (!element) {\n      resolve();\n      return;\n    }\n    if (duration === 0) {\n      element.style.display = 'none';\n      clearSlideInlineStyles(element);\n      resolve();\n      return;\n    }\n    if (window.getComputedStyle(element).display === 'none') {\n      resolve();\n      return;\n    }\n    const fromBox = measureSlideBox(element);\n    void animateSlideBox(element, fromBox, ZERO_BOX, duration).then(function () {\n      element.style.display = 'none';\n      clearSlideInlineStyles(element);\n      resolve();\n    });\n  });\n}\n\n/**\n * @param {HTMLElement} element Panel to expand.\n * @param {number}        duration Animation length (ms).\n * @return {Promise<void>}\n */\nfunction slideDown(element, duration) {\n  return new Promise(function (resolve) {\n    if (!element) {\n      resolve();\n      return;\n    }\n    element.style.removeProperty('display');\n    if (window.getComputedStyle(element).display === 'none') {\n      element.style.display = 'block';\n    }\n    if (duration === 0) {\n      clearSlideInlineStyles(element);\n      resolve();\n      return;\n    }\n    element.style.overflow = 'hidden';\n    element.style.visibility = 'hidden';\n    element.style.height = 'auto';\n    element.style.removeProperty('padding-top');\n    element.style.removeProperty('padding-bottom');\n    element.style.removeProperty('margin-top');\n    element.style.removeProperty('margin-bottom');\n    void element.offsetHeight;\n    const toBox = measureSlideBox(element);\n    element.style.visibility = 'visible';\n    applySlideBox(element, ZERO_BOX);\n    void element.offsetHeight;\n    void animateSlideBox(element, ZERO_BOX, toBox, duration).then(function () {\n      clearSlideInlineStyles(element);\n      resolve();\n    });\n  });\n}\n\n/**\n * @param {HTMLElement} element Panel to toggle.\n * @param {number}        duration Animation length (ms).\n * @return {Promise<void>}\n */\nfunction slideToggle(element, duration) {\n  if (!element) {\n    return Promise.resolve();\n  }\n  const hidden = window.getComputedStyle(element).display === 'none' || element.offsetHeight === 0;\n  if (hidden) {\n    return slideDown(element, duration);\n  }\n  return slideUp(element, duration);\n}\n\n/**\n * @param {HTMLElement} item FAQ row (`.dsm-faq-item-wrapper`).\n */\nfunction syncAria(item) {\n  const title = item.querySelector('.dsm-title-wrapper');\n  const content = item.querySelector('.dsm-faq-content');\n  if (!title || !content) {\n    return;\n  }\n  const expanded = item.classList.contains('dsm-faq-item-active');\n  title.setAttribute('aria-expanded', expanded ? 'true' : 'false');\n  content.setAttribute('aria-hidden', expanded ? 'false' : 'true');\n}\n\n/**\n * @param {HTMLElement} titleEl `.dsm-title-wrapper`\n */\nfunction enhanceTitle(titleEl) {\n  if (!titleEl.getAttribute('role')) {\n    titleEl.setAttribute('role', 'button');\n  }\n  if (!titleEl.hasAttribute('tabindex')) {\n    titleEl.setAttribute('tabindex', '0');\n  }\n}\n\n/**\n * @param {HTMLElement} titleEl   `.dsm-title-wrapper`\n * @param {function(): void} onActivate Click / keyboard activate.\n */\nfunction bindTitle(titleEl, onActivate) {\n  titleEl.addEventListener('click', function () {\n    onActivate();\n  });\n  titleEl.addEventListener('keydown', function (event) {\n    if (event.key === 'Enter' || event.key === ' ') {\n      event.preventDefault();\n      onActivate();\n    }\n  });\n}\n\n/**\n * @param {{\n *   index: number,\n *   isAccordion: string | undefined,\n *   items: NodeListOf<HTMLElement> | HTMLElement[],\n *   duration: number,\n * }} props\n */\nfunction setActiveClass(props) {\n  const index = props.index;\n  const isAccordion = props.isAccordion;\n  const items = props.items;\n  const duration = props.duration;\n  if (isAccordion === 'on') {\n    const targetItemEarly = items[index];\n    if (targetItemEarly && targetItemEarly.classList.contains('dsm-faq-item-active')) {\n      return;\n    }\n    const closePromises = [];\n    Array.prototype.forEach.call(items, function (item, wrapperIndex) {\n      const contentEl = item.querySelector('.dsm-faq-content');\n      if (!contentEl) {\n        return;\n      }\n      if (wrapperIndex !== index) {\n        item.classList.remove('dsm-faq-item-active');\n        closePromises.push(slideUp(contentEl, duration));\n      }\n    });\n    Promise.all(closePromises).then(function () {\n      window.requestAnimationFrame(function () {\n        window.requestAnimationFrame(function () {\n          const targetItem = items[index];\n          if (!targetItem) {\n            Array.prototype.forEach.call(items, syncAria);\n            return;\n          }\n          const targetContent = targetItem.querySelector('.dsm-faq-content');\n          if (!targetContent) {\n            Array.prototype.forEach.call(items, syncAria);\n            return;\n          }\n          targetItem.classList.add('dsm-faq-item-active');\n          void slideDown(targetContent, duration).then(function () {\n            Array.prototype.forEach.call(items, syncAria);\n          });\n        });\n      });\n    });\n    return;\n  }\n  if (isAccordion === 'off') {\n    Array.prototype.forEach.call(items, function (item, wrapperIndex) {\n      const contentEl = item.querySelector('.dsm-faq-content');\n      if (!contentEl) {\n        return;\n      }\n      if (wrapperIndex === index) {\n        item.classList.toggle('dsm-faq-item-active');\n        void slideToggle(contentEl, duration).then(function () {\n          syncAria(item);\n        });\n      }\n    });\n  }\n}\n\n/**\n * @param {HTMLElement} container `.dsm-faq-container`\n * @return {Promise<void>}\n */\nfunction initFaqContainer(container) {\n  const isAccordion = container.dataset.accordion;\n  const openFirstItem = container.dataset.open_first_item;\n  const duration = getSlideDuration();\n  const items = container.querySelectorAll('.dsm-faq-item-wrapper');\n  items.forEach(function (item, index) {\n    const titleEl = item.querySelector('.dsm-title-wrapper');\n    const contentEl = item.querySelector('.dsm-faq-content');\n    if (!titleEl || !contentEl) {\n      return;\n    }\n    enhanceTitle(titleEl);\n    const props = {\n      index,\n      isAccordion,\n      items,\n      duration\n    };\n    bindTitle(titleEl, function () {\n      setActiveClass(props);\n    });\n  });\n  const collapseAll = Array.prototype.map.call(items, function (item) {\n    const contentEl = item.querySelector('.dsm-faq-content');\n    return contentEl ? slideUp(contentEl, duration) : Promise.resolve();\n  });\n  return Promise.all(collapseAll).then(function () {\n    if (openFirstItem === 'on' && items.length > 0) {\n      const first = items[0];\n      const firstContent = first.querySelector('.dsm-faq-content');\n      if (firstContent) {\n        first.classList.add('dsm-faq-item-active');\n        return slideDown(firstContent, duration);\n      }\n    }\n  }).then(function () {\n    Array.prototype.forEach.call(items, syncAria);\n  });\n}\n;// ./packages/module-library/faq/edit.js\n\n\n// Divi package dependencies.\n\n// Custom dependencies.\n\n\n\n\n\n\n/**\n * React function component for registering module script data.\n */\nconst faq_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction faq_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements,\n  childrenIds,\n  childModules\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _getAttrByMode4;\n  const containerRef = (0,external_vendor_React_.useRef)(null);\n  const [activeChildIds, setActiveChildIds] = (0,external_vendor_React_.useState)([]);\n  const makeAccordionToggle = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_make_accordion_toggle?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'off';\n  const openFaqItem = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_open_faq_item?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'off';\n  const dsm_animate_icon = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_animate_icon?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'off';\n  const dsm_open_font_icon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_open_font_icon?.innerContent);\n  const dsm_close_font_icon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_close_font_icon?.innerContent);\n  const isAnimateIcon = 'on' === dsm_animate_icon ? 'dsm-animate-icon' : '';\n  const dsm_icon_placement = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_icon_placement?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : 'left';\n  const iconPlacementClass = 'right' === dsm_icon_placement ? 'dsm-icon-placement-right' : '';\n  (0,external_vendor_React_.useEffect)(() => {\n    if (openFaqItem !== 'on' || !Array.isArray(childrenIds) || !childrenIds.length) {\n      setActiveChildIds([]);\n      return;\n    }\n    setActiveChildIds(prev => {\n      if (prev.length === 0) {\n        return [childrenIds[0]];\n      }\n      return prev;\n    });\n  }, [openFaqItem, childrenIds]);\n  const handleFaqItemActivate = (0,external_vendor_React_.useCallback)(index => {\n    const childId = Array.isArray(childrenIds) ? childrenIds[index] : undefined;\n    if (childId) {\n      setActiveChildIds(prev => {\n        if (makeAccordionToggle === 'on') {\n          return [childId];\n        }\n        const has = prev.includes(childId);\n        return has ? prev.filter(x => x !== childId) : [...prev, childId];\n      });\n    }\n    const accordionWrapper = containerRef.current?.querySelectorAll('.dsm-faq-item-wrapper');\n    if (!accordionWrapper) {\n      return;\n    }\n    setActiveClass({\n      index,\n      isAccordion: makeAccordionToggle === 'on' ? 'on' : 'off',\n      items: accordionWrapper,\n      duration: getSlideDuration()\n    });\n  }, [makeAccordionToggle, childrenIds]);\n  const clickCleanupRef = (0,external_vendor_React_.useRef)(() => {});\n  const faqBuilderContextValue = (0,external_vendor_React_.useMemo)(() => ({\n    activeChildIds,\n    parentAttrs: attrs\n  }), [activeChildIds, attrs]);\n  (0,external_vendor_React_.useEffect)(() => {\n    const container = containerRef.current;\n    if (!container) {\n      return;\n    }\n    const bindAccordion = () => {\n      const accordionWrapper = container.querySelectorAll('.dsm-faq-item-wrapper');\n      if (accordionWrapper.length === 0) {\n        return;\n      }\n      clickCleanupRef.current();\n      const clickHandlers = [];\n      accordionWrapper.forEach((item, index) => {\n        const accordionTitle = item.querySelector('.dsm-title-wrapper');\n        const accordionContent = item.querySelector('.dsm-faq-content');\n        if (!accordionTitle || !accordionContent) {\n          return;\n        }\n        void slideUp(accordionContent, 0);\n        if (openFaqItem === 'on' && accordionWrapper.length > 0 && index === 0) {\n          void slideDown(accordionContent, 0);\n        }\n        const clickHandler = () => handleFaqItemActivate(index);\n        accordionTitle.addEventListener('click', clickHandler);\n        clickHandlers.push({\n          element: accordionTitle,\n          handler: clickHandler\n        });\n      });\n      clickCleanupRef.current = () => {\n        clickHandlers.forEach(({\n          element,\n          handler\n        }) => {\n          element.removeEventListener('click', handler);\n        });\n        clickHandlers.length = 0;\n      };\n    };\n    bindAccordion();\n    return () => {\n      clickCleanupRef.current();\n      clickCleanupRef.current = () => {};\n    };\n  }, [openFaqItem, handleFaqItemActivate, childrenIds]);\n  const isOpenFontIcon = (0,lodash.isEmpty)(dsm_open_font_icon) ? 'dsm-open-font-icon-empty' : '';\n  const isCloseFontIcon = (0,lodash.isEmpty)(dsm_close_font_icon) ? 'dsm-close-font-icon-empty' : '';\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: faq_edit_ModuleScriptData,\n    stylesComponent: faq_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(FaqBuilderContext.Provider, {\n    value: faqBuilderContextValue\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: `dsm-faq-container ${isAnimateIcon} ${isOpenFontIcon} ${isCloseFontIcon} ${iconPlacementClass}`.trim(),\n    ref: containerRef\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ChildModulesContainer, {\n    ids: childrenIds\n  }))));\n}\n/* harmony default export */ const faq_edit = (faq_edit_Edit);\n;// ./packages/module-library/faq/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmFaq', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/faq': {\n      name: 'divi-supreme/faq',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 9.875 9.3125 C 9.761719 9.3125 9.667969 9.40625 9.667969 9.519531 L 9.667969 10.957031 C 9.667969 11.53125 9.199219 12 8.625 12 L 6.375 12 C 6.261719 12 6.167969 12.09375 6.167969 12.207031 L 6.167969 12.621094 L 5.667969 12.125 C 5.636719 12.050781 5.5625 12 5.480469 12 L 4.125 12 C 3.550781 12 3.082031 11.53125 3.082031 10.957031 L 3.082031 7.75 C 3.082031 7.175781 3.550781 6.707031 4.125 6.707031 L 6.230469 6.707031 C 6.34375 6.707031 6.4375 6.613281 6.4375 6.5 C 6.4375 6.386719 6.34375 6.292969 6.230469 6.292969 L 4.125 6.292969 C 3.320312 6.292969 2.667969 6.945312 2.667969 7.75 L 2.667969 10.957031 C 2.667969 11.761719 3.320312 12.417969 4.125 12.417969 L 5.371094 12.417969 L 6.226562 13.273438 C 6.265625 13.3125 6.320312 13.332031 6.375 13.332031 C 6.402344 13.332031 6.429688 13.328125 6.453125 13.316406 C 6.53125 13.285156 6.582031 13.210938 6.582031 13.125 L 6.582031 12.417969 L 8.625 12.417969 C 9.429688 12.417969 10.082031 11.761719 10.082031 10.957031 L 10.082031 9.519531 C 10.082031 9.40625 9.988281 9.3125 9.875 9.3125 Z M 9.875 9.3125 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 10.304688 2.667969 L 9.777344 2.667969 C 8.109375 2.667969 6.75 4.023438 6.75 5.695312 C 6.75 7.363281 8.109375 8.722656 9.777344 8.722656 L 10.304688 8.722656 C 10.566406 8.722656 10.824219 8.691406 11.074219 8.625 L 11.851562 9.402344 C 11.894531 9.441406 11.945312 9.464844 12 9.464844 C 12.027344 9.464844 12.054688 9.457031 12.078125 9.449219 C 12.15625 9.414062 12.207031 9.339844 12.207031 9.253906 L 12.207031 8.050781 C 12.539062 7.78125 12.8125 7.445312 13.003906 7.070312 C 13.222656 6.640625 13.332031 6.179688 13.332031 5.695312 C 13.332031 4.023438 11.976562 2.667969 10.304688 2.667969 Z M 11.875 7.78125 C 11.824219 7.820312 11.792969 7.882812 11.792969 7.949219 L 11.792969 8.753906 L 11.28125 8.242188 C 11.242188 8.203125 11.1875 8.183594 11.132812 8.183594 C 11.113281 8.183594 11.09375 8.183594 11.074219 8.191406 C 10.824219 8.265625 10.566406 8.304688 10.304688 8.304688 L 9.777344 8.304688 C 8.339844 8.304688 7.167969 7.132812 7.167969 5.695312 C 7.167969 4.253906 8.339844 3.082031 9.777344 3.082031 L 10.304688 3.082031 C 11.746094 3.082031 12.917969 4.253906 12.917969 5.695312 C 12.917969 6.523438 12.535156 7.285156 11.875 7.78125 Z M 11.875 7.78125 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 10.980469 4.945312 C 10.949219 4.511719 10.597656 4.160156 10.164062 4.128906 C 9.914062 4.113281 9.679688 4.195312 9.5 4.363281 C 9.320312 4.53125 9.21875 4.765625 9.21875 5.007812 C 9.21875 5.125 9.3125 5.214844 9.425781 5.214844 C 9.542969 5.214844 9.636719 5.125 9.636719 5.007812 C 9.636719 4.878906 9.6875 4.757812 9.785156 4.667969 C 9.878906 4.578125 10.003906 4.535156 10.132812 4.542969 C 10.363281 4.558594 10.550781 4.746094 10.566406 4.976562 C 10.582031 5.207031 10.429688 5.410156 10.203125 5.460938 C 10.019531 5.503906 9.890625 5.664062 9.890625 5.847656 L 9.890625 6.347656 C 9.890625 6.464844 9.984375 6.558594 10.101562 6.558594 C 10.214844 6.558594 10.308594 6.464844 10.308594 6.347656 L 10.308594 5.867188 C 10.730469 5.765625 11.011719 5.378906 10.980469 4.945312 Z M 10.980469 4.945312 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 10.25 7.027344 C 10.210938 6.988281 10.15625 6.964844 10.101562 6.964844 C 10.046875 6.964844 9.992188 6.988281 9.953125 7.027344 C 9.917969 7.066406 9.894531 7.117188 9.894531 7.171875 C 9.894531 7.226562 9.917969 7.28125 9.953125 7.320312 C 9.992188 7.359375 10.046875 7.382812 10.101562 7.382812 C 10.15625 7.382812 10.210938 7.359375 10.25 7.320312 C 10.289062 7.28125 10.308594 7.226562 10.308594 7.171875 C 10.308594 7.117188 10.289062 7.066406 10.25 7.027344 Z M 10.25 7.027344 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 8.394531 9.125 L 4 9.125 C 3.886719 9.125 3.792969 9.21875 3.792969 9.332031 C 3.792969 9.449219 3.886719 9.542969 4 9.542969 L 8.394531 9.542969 C 8.511719 9.542969 8.605469 9.449219 8.605469 9.332031 C 8.605469 9.21875 8.511719 9.125 8.394531 9.125 Z M 8.394531 9.125 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 8.542969 10.351562 C 8.503906 10.3125 8.449219 10.292969 8.394531 10.292969 C 8.339844 10.292969 8.289062 10.3125 8.25 10.351562 C 8.210938 10.390625 8.1875 10.445312 8.1875 10.5 C 8.1875 10.554688 8.210938 10.609375 8.25 10.648438 C 8.289062 10.6875 8.339844 10.707031 8.394531 10.707031 C 8.449219 10.707031 8.503906 10.6875 8.542969 10.648438 C 8.582031 10.609375 8.605469 10.554688 8.605469 10.5 C 8.605469 10.445312 8.582031 10.390625 8.542969 10.351562 Z M 8.542969 10.351562 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 7.578125 10.292969 L 4 10.292969 C 3.886719 10.292969 3.792969 10.386719 3.792969 10.5 C 3.792969 10.613281 3.886719 10.707031 4 10.707031 L 7.578125 10.707031 C 7.691406 10.707031 7.785156 10.613281 7.785156 10.5 C 7.785156 10.386719 7.691406 10.292969 7.578125 10.292969 Z M 7.578125 10.292969 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 7.042969 7.957031 L 4 7.957031 C 3.886719 7.957031 3.792969 8.050781 3.792969 8.167969 C 3.792969 8.28125 3.886719 8.375 4 8.375 L 7.042969 8.375 C 7.15625 8.375 7.25 8.28125 7.25 8.167969 C 7.25 8.050781 7.15625 7.957031 7.042969 7.957031 Z M 7.042969 7.957031 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 14.046875 2.492188 C 13.652344 2.492188 13.332031 2.171875 13.332031 1.777344 C 13.332031 1.386719 13.652344 1.066406 14.046875 1.066406 C 14.4375 1.066406 14.757812 1.386719 14.757812 1.777344 C 14.757812 2.171875 14.4375 2.492188 14.046875 2.492188 Z M 14.046875 1.457031 C 13.871094 1.457031 13.726562 1.601562 13.726562 1.777344 C 13.726562 1.953125 13.871094 2.097656 14.046875 2.097656 C 14.222656 2.097656 14.367188 1.953125 14.367188 1.777344 C 14.367188 1.601562 14.222656 1.457031 14.046875 1.457031 Z M 14.046875 1.457031 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 2.3125 14.757812 C 1.921875 14.757812 1.601562 14.4375 1.601562 14.046875 C 1.601562 13.652344 1.921875 13.332031 2.3125 13.332031 C 2.703125 13.332031 3.023438 13.652344 3.023438 14.046875 C 3.023438 14.4375 2.703125 14.757812 2.3125 14.757812 Z M 2.3125 13.726562 C 2.136719 13.726562 1.992188 13.871094 1.992188 14.046875 C 1.992188 14.222656 2.136719 14.367188 2.3125 14.367188 C 2.488281 14.367188 2.632812 14.222656 2.632812 14.046875 C 2.632812 13.871094 2.488281 13.726562 2.3125 13.726562 Z M 2.3125 13.726562 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/faq/index.js\n// External library dependencies.\n\n\n// Wordpress dependencies.\n\n\n\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\n\n\n\nconst FAQ_CHILD = 'dsm/faq-child';\nconst faqDefaultChildTemplate = buildParentDefaultChildTemplate(FAQ_CHILD, 3, ['Question 1', 'Question 2', 'Question 3'].map(label => ({\n  dsm_title: {\n    innerContent: {\n      desktop: {\n        value: {\n          text: label\n        }\n      }\n    }\n  }\n})));\nconst faqModule = {\n  metadata: faq_module_namespaceObject,\n  conversionOutline: faq_conversion_outline_conversionOutline,\n  renderers: {\n    edit: faq_edit,\n    styles: faq_module_styles_ModuleStyles\n  },\n  defaultAttrs: faqModuleDefaultAttrs,\n  settings: {\n    content: faq_settings_content,\n    design: faq_settings_design,\n    advanced: faq_settings_advanced\n  },\n  placeholderContent: faqPlaceholderContent,\n  childrenName: [FAQ_CHILD],\n  template: faqDefaultChildTemplate,\n  callbacks: buildChildDraggableListCallbacks([FAQ_CHILD])\n};\n/* harmony default export */ const faq = (faqModule);\n;// ./packages/module-library/faq-child/module.json\nconst faq_child_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/faq-child\",\"d4Shortcode\":\"dsm_faq_child\",\"title\":\"Supreme Faq Child\",\"titles\":\"Supreme Faq Child\",\"category\":\"child-module\",\"childrenName\":[],\"allowAllElements\":true,\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"background\":{},\"layout\":{}},\"advanced\":{\"link\":{},\"elements\":{\"groupType\":\"group-item\",\"item\":{\"groupSlug\":\"contentElements\",\"priority\":5,\"render\":true,\"component\":{\"type\":\"group\",\"name\":\"divi/elements\",\"props\":{\"grouped\":false}}}}}},\"styleProps\":{\"layout\":{\"selector\":\"{{selector}} .dsm-faq-nestable\"}}},\"header_item\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper .dsm-faq-title\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"closed_header_item\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper:not(.dsm-faq-item-active) .dsm-faq-title\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"content\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper .dsm-faq-content\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_title\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content\":{\"type\":\"object\",\"inlineEditor\":\"RichTextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_shortcode_content\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_child_use_image\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_open_child_image\":{\"type\":\"object\",\"inlineEditor\":\"UploadContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_open_image_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_open_image_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper .dsm_open_image img\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_open_image_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper .dsm_open_image img\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_close_child_image\":{\"type\":\"object\",\"inlineEditor\":\"UploadContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_close_image_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_close_image_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper .dsm_close_image img\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_close_image_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper .dsm_close_image img\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_child_open_font_icon\":{\"type\":\"object\",\"inlineEditor\":\"IconPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_child_close_font_icon\":{\"type\":\"object\",\"inlineEditor\":\"IconPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_open_bg_color\":{\"type\":\"object\",\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper.dsm-faq-item-active\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"background\":{\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper.dsm-faq-item-active\",\"selectors\":{\"desktop\":{\"value\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper.dsm-faq-item-active\",\"hover\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper.dsm-faq-item-active:hover\"}}}},\"settings\":{\"decoration\":{\"background\":{}}}},\"dsm_open_toggle_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper.dsm-faq-item-active\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_open_toggle_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper.dsm-faq-item-active\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_close_bg_color\":{\"type\":\"object\",\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper:not(.dsm-faq-item-active)\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"background\":{\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper:not(.dsm-faq-item-active)\",\"selectors\":{\"desktop\":{\"value\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper:not(.dsm-faq-item-active)\",\"hover\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper:not(.dsm-faq-item-active):hover\"}}}},\"settings\":{\"decoration\":{\"background\":{}}}},\"dsm_closed_toggle_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper:not(.dsm-faq-item-active)\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_closed_toggle_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper:not(.dsm-faq-item-active)\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_open_icon_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_open_icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_open_icon_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper .dsm_faq-item-open_icon, .dsm-faq-container {{selector}}.dsm-faq-item-wrapper .dsm_open_icon\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_open_icon_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper .dsm_faq-item-open_icon, .dsm-faq-container {{selector}}.dsm-faq-item-wrapper .dsm_open_icon\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_close_icon_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_close_icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_close_icon_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper .dsm_faq-item-close_icon, .dsm-faq-container {{selector}}.dsm-faq-item-wrapper .dsm_close_icon\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_close_icon_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper .dsm_faq-item-close_icon, .dsm-faq-container {{selector}}.dsm-faq-item-wrapper .dsm_close_icon\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_open_font_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_close_font_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_design_tab_title\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"open\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_design_tab_toggle_row\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"open\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_design_tab_toggle_images\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"open\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_design_tab_toggle_icons\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"open\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper .dsm-faq-content\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper .dsm-faq-content\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"toggleOpenStateStyle\":{\"type\":\"object\",\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper.dsm-faq-item-active\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper.dsm-faq-item-active\",\"important\":true},\"boxShadow\":{\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper.dsm-faq-item-active\",\"useOverlay\":true}}},\"toggleCloseStateStyle\":{\"type\":\"object\",\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper:not(.dsm-faq-item-active)\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper:not(.dsm-faq-item-active)\",\"important\":true},\"boxShadow\":{\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper:not(.dsm-faq-item-active)\",\"useOverlay\":true}}},\"iconOpenStateStyle\":{\"type\":\"object\",\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper .dsm_faq-item-open_icon\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper .dsm_faq-item-open_icon\",\"important\":true},\"boxShadow\":{\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper .dsm_faq-item-open_icon\",\"useOverlay\":true}}},\"iconCloseStateStyle\":{\"type\":\"object\",\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper .dsm_faq-item-close_icon\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper .dsm_faq-item-close_icon\",\"important\":true},\"boxShadow\":{\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper .dsm_faq-item-close_icon\",\"useOverlay\":true}}},\"imageOpenStateStyle\":{\"type\":\"object\",\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper.dsm-faq-item-active .dsm_open_image img\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper.dsm-faq-item-active .dsm_open_image img\",\"important\":true},\"boxShadow\":{\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper.dsm-faq-item-active .dsm_open_image img\",\"useOverlay\":true}}},\"imageCloseStateStyle\":{\"type\":\"object\",\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper:not(.dsm-faq-item-active) .dsm_close_image img\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper:not(.dsm-faq-item-active) .dsm_close_image img\",\"important\":true},\"boxShadow\":{\"selector\":\".dsm-faq-container {{selector}}.dsm-faq-item-wrapper:not(.dsm-faq-item-active) .dsm_close_image img\",\"useOverlay\":true}}}},\"settings\":{\"advanced\":\"auto\",\"groups\":{\"contentElements\":{\"panel\":\"content\",\"priority\":5,\"groupName\":\"contentElements\",\"multiElements\":true,\"component\":{\"name\":\"divi/composite\",\"props\":{\"groupLabel\":\"Elements\"}}}}}}');\n;// ./packages/module-library/faq-child/faq-child-module-defaults.js\n/**\n * D4-aligned defaults for dsm/faq-child (see divi-4/includes/modules/FaqChild/FaqChild.php).\n */\n\n/**\n * Toggle row Background elements: intentionally no solid default so parent `dsm/faq` paints rows until the child overrides.\n */\nconst faqChildToggleRowBgNoDefault = {\n  decoration: {\n    background: {}\n  }\n};\n\n/** Default layer / Admin Label (matches module metadata title). */\nconst faqChildDefaultAdminLabel = {\n  desktop: {\n    value: 'Supreme Faq Child'\n  }\n};\nconst faqChildFd = {\n  dsm_content_type: {\n    desktop: {\n      value: 'content'\n    }\n  },\n  dsm_child_use_image: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  /** Design modal: which Open/Closed sub-tab is active (Visual Builder UI only). */\n  dsm_design_tab_title: {\n    desktop: {\n      value: 'open'\n    }\n  },\n  dsm_design_tab_toggle_row: {\n    desktop: {\n      value: 'open'\n    }\n  },\n  dsm_design_tab_toggle_images: {\n    desktop: {\n      value: 'open'\n    }\n  },\n  dsm_design_tab_toggle_icons: {\n    desktop: {\n      value: 'open'\n    }\n  }\n};\n\n/** Persisted canonical default: empty heading (tutorial copy lives in `faqChildPlaceholderContent` only). */\nconst faqChildTitleTextDefault = {\n  desktop: {\n    value: {\n      text: ''\n    }\n  }\n};\n\n/** Persisted canonical default: empty rich text. */\nconst faqChildContentTextDefault = {\n  desktop: {\n    value: {\n      text: ''\n    }\n  }\n};\n\n/** New-insert placeholder for title (VB / `placeholderContent`). */\nconst faqChildTitlePlaceholderInner = {\n  desktop: {\n    value: {\n      text: 'Your Title Goes Here'\n    }\n  }\n};\n\n/** New-insert placeholder for body (VB / `placeholderContent`). */\nconst faqChildContentPlaceholderInner = {\n  desktop: {\n    value: {\n      text: 'Your description goes here. Edit or remove this text inline or in the description settings'\n    }\n  }\n};\nconst faqChildHeaderItemFontDefaultGroupAttr = {\n  font: {\n    desktop: {\n      value: {\n        headingLevel: 'h4'\n      }\n    }\n  }\n};\nconst faqChildContentFontDefaultGroupAttr = {\n  font: {\n    desktop: {\n      value: {\n        size: '14px',\n        lineHeight: '1.7em',\n        letterSpacing: '0px'\n      }\n    }\n  }\n};\nconst faqChildModuleDefaultAttrs = {\n  module: {\n    decoration: {\n      attributes: {},\n      conditions: {},\n      interactions: {}\n    }\n  },\n  header_item: {\n    decoration: {\n      font: {\n        font: {\n          desktop: {\n            value: {\n              headingLevel: 'h4'\n            }\n          }\n        }\n      }\n    }\n  },\n  closed_header_item: {\n    decoration: {\n      font: {\n        font: {\n          desktop: {\n            value: {}\n          }\n        }\n      }\n    }\n  },\n  content: {\n    decoration: {\n      font: {\n        font: {\n          desktop: {\n            value: {\n              size: '14px',\n              lineHeight: '1.7em',\n              letterSpacing: '0px'\n            }\n          }\n        }\n      }\n    }\n  },\n  dsm_title: {\n    innerContent: faqChildTitleTextDefault\n  },\n  dsm_content_type: {\n    innerContent: faqChildFd.dsm_content_type\n  },\n  dsm_content: {\n    innerContent: faqChildContentTextDefault\n  },\n  dsm_child_use_image: {\n    innerContent: faqChildFd.dsm_child_use_image\n  },\n  dsm_design_tab_title: {\n    innerContent: faqChildFd.dsm_design_tab_title\n  },\n  dsm_design_tab_toggle_row: {\n    innerContent: faqChildFd.dsm_design_tab_toggle_row\n  },\n  dsm_design_tab_toggle_images: {\n    innerContent: faqChildFd.dsm_design_tab_toggle_images\n  },\n  dsm_design_tab_toggle_icons: {\n    innerContent: faqChildFd.dsm_design_tab_toggle_icons\n  },\n  dsm_open_bg_color: faqChildToggleRowBgNoDefault,\n  dsm_close_bg_color: faqChildToggleRowBgNoDefault\n};\nconst faqChildPlaceholderContent = {\n  ...faqChildModuleDefaultAttrs,\n  module: {\n    ...faqChildModuleDefaultAttrs.module,\n    decoration: {}\n  },\n  dsm_title: {\n    innerContent: faqChildTitlePlaceholderInner\n  },\n  dsm_content: {\n    innerContent: faqChildContentPlaceholderInner\n  }\n};\n;// ./packages/module-library/faq-child/settings-content.js\n\n// Wordpress dependencies.\n\n\n// Divi package dependencies.\n\n\n\n\n\nfunction faq_child_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs,\n  groupConfiguration\n}) {\n  var _getAttrByMode, _getAttrByMode2, _defaultSettingsAttrs;\n  const contentElements = groupConfiguration?.contentElements;\n  const contentType = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_content_type?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'content';\n  const childUseImage = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_child_use_image?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'off';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"content\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    attrName: \"dsm_title.innerContent\",\n    subName: \"text\",\n    defaultAttr: faqChildTitleTextDefault,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content_type.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content Type', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: faqChildFd.dsm_content_type\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      content: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi')\n      },\n      shortcode: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shortcode', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content.innerContent\",\n    subName: \"text\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can create the content that will be used within the module.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'content' === contentType,\n    defaultAttr: faqChildContentTextDefault,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RichTextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_shortcode_content.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shortcode', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'shortcode' === contentType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"toggleImage\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Toggle Image', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_child_use_image.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Image', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use custom open and close images for this item instead of the parent FAQ images.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: faqChildFd.dsm_child_use_image,\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_open_child_image.innerContent\",\n    subName: \"src\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Open Image', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === childUseImage,\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_close_child_image.innerContent\",\n    subName: \"src\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Close Image', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === childUseImage,\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"toggleIcon\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Toggle Icon', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_child_open_font_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Open Faq Icon', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_child_close_font_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Close Faq Icon', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null))), contentElements ? /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleGroups, {\n    groups: {\n      contentElements\n    }\n  }) : null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: (_defaultSettingsAttrs = defaultSettingsAttrs?.adminLabel) !== null && _defaultSettingsAttrs !== void 0 ? _defaultSettingsAttrs : faqChildDefaultAdminLabel\n  }));\n}\n/* harmony default export */ const faq_child_settings_content = (faq_child_settings_content_SettingsContent);\n;// ./packages/module-library/faq-child/settings-design.js\n\n// Wordpress dependencies.\n\n// Divi package dependencies.\n\n\n\n\n\nconst settings_design_openClosedTabOptions = {\n  open: {\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Open State', 'dsm-supreme-modules-pro-for-divi')\n  },\n  closed: {\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Closed State', 'dsm-supreme-modules-pro-for-divi')\n  }\n};\nfunction faq_child_settings_design_SettingsDesign({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _getAttrByMode4, _getAttrByMode5;\n  const childUseImage = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_child_use_image?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'off';\n  const titleTab = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_design_tab_title?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'open';\n  const toggleRowTab = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_design_tab_toggle_row?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'open';\n  const toggleImagesTab = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_design_tab_toggle_images?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : 'open';\n  const toggleIconsTab = (_getAttrByMode5 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_design_tab_toggle_icons?.innerContent)) !== null && _getAttrByMode5 !== void 0 ? _getAttrByMode5 : 'open';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"title\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_design_tab_title.innerContent\",\n    defaultAttr: faqChildFd.dsm_design_tab_title\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: settings_design_openClosedTabOptions,\n    tabUi: true,\n    showLabel: true\n  })), 'open' === titleTab && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"header_item.decoration.font\",\n    defaultGroupAttr: faqChildHeaderItemFontDefaultGroupAttr,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: true\n      }\n    }\n  }), 'closed' === titleTab && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"closed_header_item.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"toggleRow\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Toggle', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_design_tab_toggle_row.innerContent\",\n    defaultAttr: faqChildFd.dsm_design_tab_toggle_row\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: settings_design_openClosedTabOptions,\n    tabUi: true,\n    showLabel: true\n  })), 'open' === toggleRowTab && /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, {\n    attrName: \"dsm_open_bg_color.decoration.background\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    defaultPanel: \"color\",\n    hidePanels: ['video', 'pattern', 'mask']\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_open_toggle_margin.decoration.spacing\",\n    fields: {\n      padding: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_open_toggle_padding.decoration.spacing\",\n    fields: {\n      margin: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"toggleOpenStateStyle.decoration.border\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Border', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"toggleOpenStateStyle.decoration.boxShadow\",\n    grouped: false\n  })), 'closed' === toggleRowTab && /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, {\n    attrName: \"dsm_close_bg_color.decoration.background\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    defaultPanel: \"color\",\n    hidePanels: ['video', 'pattern', 'mask']\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_closed_toggle_margin.decoration.spacing\",\n    fields: {\n      padding: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_closed_toggle_padding.decoration.spacing\",\n    fields: {\n      margin: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"toggleCloseStateStyle.decoration.border\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Border', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"toggleCloseStateStyle.decoration.boxShadow\",\n    grouped: false\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"toggleImages\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Toggle Images', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_design_tab_toggle_images.innerContent\",\n    defaultAttr: faqChildFd.dsm_design_tab_toggle_images\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: settings_design_openClosedTabOptions,\n    tabUi: true,\n    showLabel: true\n  })), 'open' === toggleImagesTab && /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_open_image_width.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Width', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_open_image_margin.decoration.spacing\",\n    fields: {\n      padding: {\n        render: false\n      }\n    },\n    grouped: false,\n    visible: 'on' === childUseImage\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_open_image_padding.decoration.spacing\",\n    fields: {\n      margin: {\n        render: false\n      }\n    },\n    grouped: false,\n    visible: 'on' === childUseImage\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"imageOpenStateStyle.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"imageOpenStateStyle.decoration.boxShadow\",\n    grouped: false\n  })), 'closed' === toggleImagesTab && /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_close_image_width.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Width', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_close_image_margin.decoration.spacing\",\n    fields: {\n      padding: {\n        render: false\n      }\n    },\n    grouped: false,\n    visible: 'on' === childUseImage\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_close_image_padding.decoration.spacing\",\n    fields: {\n      margin: {\n        render: false\n      }\n    },\n    grouped: false,\n    visible: 'on' === childUseImage\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"imageCloseStateStyle.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"imageCloseStateStyle.decoration.boxShadow\",\n    grouped: false\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"toggleIcons\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Toggle Icons', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_design_tab_toggle_icons.innerContent\",\n    defaultAttr: faqChildFd.dsm_design_tab_toggle_icons\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: settings_design_openClosedTabOptions,\n    tabUi: true,\n    showLabel: true\n  })), 'open' === toggleIconsTab && /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_open_icon_bg_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Background', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_open_icon_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Color', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_open_icon_margin.decoration.spacing\",\n    fields: {\n      padding: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_open_icon_padding.decoration.spacing\",\n    fields: {\n      margin: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_open_font_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Size', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    defaultUnit: 'px',\n    step: 1\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"iconOpenStateStyle.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"iconOpenStateStyle.decoration.boxShadow\",\n    grouped: false\n  })), 'closed' === toggleIconsTab && /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_close_icon_bg_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Background', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_close_icon_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Color', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_close_icon_margin.decoration.spacing\",\n    fields: {\n      padding: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_close_icon_padding.decoration.spacing\",\n    fields: {\n      margin: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_close_font_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Size', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    defaultUnit: 'px',\n    step: 1\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"iconCloseStateStyle.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"iconCloseStateStyle.decoration.boxShadow\",\n    grouped: false\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_content_margin.decoration.spacing\",\n    fields: {\n      padding: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_content_padding.decoration.spacing\",\n    fields: {\n      margin: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"content.decoration.font\",\n    defaultGroupAttr: faqChildContentFontDefaultGroupAttr,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Body Text', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null));\n}\n/* harmony default export */ const faq_child_settings_design = (faq_child_settings_design_SettingsDesign);\n;// ./packages/module-library/faq-child/settings-advanced.js\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\nfunction faq_child_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_faq_child\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const faq_child_settings_advanced = (faq_child_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/faq-child/faq-merge-toggle-bg-from-parent.js\n/**\n * Visual Builder parity with `ConversionAttrs::hydrate_faq_child_toggle_backgrounds_from_parent`:\n * when a FAQ child's row background attrs are empty or only schema placeholders, overlay the\n * parent `dsm/faq` blobs so canvas styles / BackgroundGroup bindings see the same decoration\n * the frontend gets after PHP hydration.\n */\n\n/**\n * @param {unknown} raw innerContent leaf from legacy picker.\n * @returns {string}\n */\nfunction extractLegacyInnerColorString(raw) {\n  if ('string' === typeof raw) {\n    return raw.trim();\n  }\n  if (raw && 'object' === typeof raw) {\n    for (const k of ['hex', 'rgba', 'color', 'value']) {\n      const piece = raw[k];\n      if ('string' === typeof piece && '' !== piece.trim()) {\n        return piece.trim();\n      }\n    }\n  }\n  if (raw !== undefined && raw !== null && '' !== `${raw}`) {\n    return `${raw}`.trim();\n  }\n  return '';\n}\n\n/**\n * @param {Record<string, unknown>|undefined|null} val `decoration.background.*.value`\n * @returns {boolean}\n */\nfunction decorationBackgroundHasNonColorLayers(val) {\n  if (!val || 'object' !== typeof val) {\n    return false;\n  }\n  if (val.gradient && 'object' === typeof val.gradient && Object.keys(val.gradient).length > 0) {\n    return true;\n  }\n  if (val.video && 'object' === typeof val.video && Object.keys(val.video).length > 0) {\n    return true;\n  }\n  if (val.pattern && 'object' === typeof val.pattern && Object.keys(val.pattern).length > 0) {\n    return true;\n  }\n  if (val.mask && 'object' === typeof val.mask && Object.keys(val.mask).length > 0) {\n    return true;\n  }\n  const image = val.image;\n  if (image && 'object' === typeof image) {\n    for (const ik of ['url', 'src']) {\n      const url = image[ik];\n      if ('string' === typeof url && '' !== url.trim()) {\n        return true;\n      }\n    }\n  }\n  return false;\n}\n\n/**\n * Mirrors `ConversionAttrs::faq_toggle_child_row_bg_is_placeholder_or_unused`.\n *\n * @param {Record<string, unknown>|undefined|null} el `dsm_*_bg_color` node.\n * @param {string}                                  placeholderHex\n * @returns {boolean}\n */\nfunction faqToggleChildRowBgIsPlaceholderOrUnused(el, placeholderHex) {\n  if (!el || 'object' !== typeof el) {\n    return true;\n  }\n  const inner = el.innerContent;\n  if (inner && 'object' === typeof inner) {\n    for (const bp of ['desktop', 'tablet', 'phone']) {\n      var _chunk$value;\n      const chunk = inner[bp];\n      if (!chunk || 'object' !== typeof chunk) {\n        continue;\n      }\n      if ('' !== extractLegacyInnerColorString((_chunk$value = chunk.value) !== null && _chunk$value !== void 0 ? _chunk$value : null)) {\n        return false;\n      }\n    }\n  }\n  const bg = el.decoration?.background;\n  if (!bg || 'object' !== typeof bg || Object.keys(bg).length === 0) {\n    return true;\n  }\n  for (const bp of ['desktop', 'tablet', 'phone']) {\n    var _bg$bp$value;\n    const val = (_bg$bp$value = bg[bp]?.value) !== null && _bg$bp$value !== void 0 ? _bg$bp$value : null;\n    if (!val || 'object' !== typeof val) {\n      continue;\n    }\n    if (decorationBackgroundHasNonColorLayers(val)) {\n      return false;\n    }\n    const c = 'string' === typeof val.color ? val.color.trim() : '';\n    if ('' !== c && 0 !== c.localeCompare(placeholderHex, undefined, {\n      sensitivity: 'base'\n    })) {\n      return false;\n    }\n  }\n  return true;\n}\nconst TOGGLE_ROW_BG_KEYS = [{\n  key: 'dsm_open_bg_color',\n  placeholderHex: '#ffffff'\n}, {\n  key: 'dsm_close_bg_color',\n  placeholderHex: '#f4f4f4'\n}];\n\n/**\n * @param {Record<string, unknown>|undefined|null} attrs        Child module attrs.\n * @param {Record<string, unknown>|undefined|null} parentAttrs  Parent FAQ attrs.\n * @returns {Record<string, unknown>}\n */\nfunction mergeFaqChildToggleRowBackgroundAttrsFromParent(attrs, parentAttrs) {\n  if (!attrs || 'object' !== typeof attrs || !parentAttrs || 'object' !== typeof parentAttrs || Object.keys(parentAttrs).length === 0) {\n    return attrs && 'object' === typeof attrs ? attrs : {};\n  }\n  let out = null;\n  for (const {\n    key,\n    placeholderHex\n  } of TOGGLE_ROW_BG_KEYS) {\n    const parentEl = parentAttrs[key];\n    if (!parentEl || 'object' !== typeof parentEl) {\n      continue;\n    }\n    const childEl = attrs[key];\n    const useParent = !childEl || 'object' !== typeof childEl || faqToggleChildRowBgIsPlaceholderOrUnused(childEl, placeholderHex);\n    if (!useParent) {\n      continue;\n    }\n    if (!out) {\n      out = {\n        ...attrs\n      };\n    }\n    try {\n      out[key] = JSON.parse(JSON.stringify(parentEl));\n    } catch {\n      out[key] = {\n        ...parentEl\n      };\n    }\n  }\n  return out !== null && out !== void 0 ? out : attrs;\n}\n;// ./packages/module-library/faq-child/module-styles.js\n\n\n\n\n\n\n\n/**\n * @param {unknown} ctx FAQ builder context value.\n * @returns {boolean}\n */\nfunction faqBuilderHasRenderableParentAttrs(ctx) {\n  return Boolean(ctx && 'object' === typeof ctx && ctx.parentAttrs && 'object' === typeof ctx.parentAttrs && Object.keys(ctx.parentAttrs).length > 0);\n}\nconst module_styles_toggleOpenIconCss = buildLegacyPseudoIconFontCss;\nconst module_styles_toggleCloseIconCss = buildLegacyPseudoIconFontCss;\nconst module_styles_itemGapCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'margin-bottom': true\n    }\n  });\n  declarations.add('margin-bottom', attrValue);\n  return declarations.value;\n};\n\n/**\n * React function component for rendering module style.\n */\nconst faq_child_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  const faqBuilder = (0,external_vendor_React_.useContext)(FaqBuilderContext);\n  const inheritRowBgFromParent = faqBuilderHasRenderableParentAttrs(faqBuilder);\n  const shouldEmitChildCloseToggleRowBg = !inheritRowBgFromParent || !faqToggleChildRowBgIsPlaceholderOrUnused(attrs?.dsm_close_bg_color, '#f4f4f4');\n  const shouldEmitChildOpenToggleRowBg = !inheritRowBgFromParent || !faqToggleChildRowBgIsPlaceholderOrUnused(attrs?.dsm_open_bg_color, '#ffffff');\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextStyle, {\n    selector: orderClass,\n    attr: attrs?.module?.advanced?.text\n  }), elements.style({\n    attrName: 'header_item'\n  }), elements.style({\n    attrName: 'closed_header_item'\n  }), elements.style({\n    attrName: 'dsm_open_toggle_margin'\n  }), elements.style({\n    attrName: 'dsm_open_toggle_padding'\n  }), elements.style({\n    attrName: 'dsm_closed_toggle_margin'\n  }), elements.style({\n    attrName: 'dsm_closed_toggle_padding'\n  }), elements.style({\n    attrName: 'toggleOpenStateStyle'\n  }), elements.style({\n    attrName: 'toggleCloseStateStyle'\n  }), elements.style({\n    attrName: 'dsm_open_icon_margin'\n  }), elements.style({\n    attrName: 'dsm_open_icon_padding'\n  }), elements.style({\n    attrName: 'dsm_close_icon_margin'\n  }), elements.style({\n    attrName: 'dsm_close_icon_padding'\n  }), elements.style({\n    attrName: 'iconOpenStateStyle'\n  }), elements.style({\n    attrName: 'iconCloseStateStyle'\n  }), elements.style({\n    attrName: 'imageOpenStateStyle'\n  }), elements.style({\n    attrName: 'imageCloseStateStyle'\n  }), elements.style({\n    attrName: 'content'\n  }), elements.style({\n    attrName: 'dsm_content_margin'\n  }), elements.style({\n    attrName: 'dsm_content_padding'\n  }), elements.style({\n    attrName: 'dsm_open_image_margin'\n  }), elements.style({\n    attrName: 'dsm_open_image_padding'\n  }), elements.style({\n    attrName: 'dsm_close_image_margin'\n  }), elements.style({\n    attrName: 'dsm_close_image_padding'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-title-wrapper .et-pb-icon.dsm_faq-item-open_icon::before`,\n    attr: attrs?.dsm_child_open_font_icon?.innerContent,\n    declarationFunction: module_styles_toggleOpenIconCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-title-wrapper .et-pb-icon.dsm_faq-item-close_icon::before`,\n    attr: attrs?.dsm_child_close_font_icon?.innerContent,\n    declarationFunction: module_styles_toggleCloseIconCss\n  }), shouldEmitChildCloseToggleRowBg && elements.style({\n    attrName: 'dsm_close_bg_color'\n  }), shouldEmitChildOpenToggleRowBg && elements.style({\n    attrName: 'dsm_open_bg_color'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm-faq-container ${orderClass}.dsm-faq-item-wrapper .et-pb-icon.dsm_faq-item-open_icon, .dsm-faq-container ${orderClass}.dsm-faq-item-wrapper .et-pb-icon.dsm_open_icon`,\n    attr: attrs?.dsm_open_font_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm-faq-container ${orderClass}.dsm-faq-item-wrapper .et-pb-icon.dsm_faq-item-close_icon, .dsm-faq-container ${orderClass}.dsm-faq-item-wrapper .et-pb-icon.dsm_close_icon`,\n    attr: attrs?.dsm_close_font_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm-faq-container ${orderClass}.dsm-faq-item-wrapper .et-pb-icon.dsm_faq-item-close_icon, .dsm-faq-container ${orderClass}.dsm-faq-item-wrapper .et-pb-icon.dsm_close_icon`,\n    attr: attrs?.dsm_close_icon_bg_color?.innerContent,\n    property: \"background\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm-faq-container ${orderClass}.dsm-faq-item-wrapper .et-pb-icon.dsm_faq-item-close_icon, .dsm-faq-container ${orderClass}.dsm-faq-item-wrapper .et-pb-icon.dsm_close_icon`,\n    attr: attrs?.dsm_close_icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm-faq-container ${orderClass}.dsm-faq-item-wrapper .et-pb-icon.dsm_faq-item-open_icon, .dsm-faq-container ${orderClass}.dsm-faq-item-wrapper .et-pb-icon.dsm_open_icon`,\n    attr: attrs?.dsm_open_icon_bg_color?.innerContent,\n    property: \"background\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm-faq-container ${orderClass}.dsm-faq-item-wrapper .et-pb-icon.dsm_faq-item-open_icon, .dsm-faq-container ${orderClass}.dsm-faq-item-wrapper .et-pb-icon.dsm_open_icon`,\n    attr: attrs?.dsm_open_icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm-faq-container ${orderClass}.dsm-faq-item-wrapper .dsm_open_image `,\n    attr: attrs?.dsm_open_image_width?.innerContent,\n    property: \"width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm-faq-container ${orderClass}.dsm-faq-item-wrapper .dsm_open_image `,\n    attr: attrs?.dsm_open_image_width?.innerContent,\n    property: \"height\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm-faq-container ${orderClass}.dsm-faq-item-wrapper .dsm_close_image`,\n    attr: attrs?.dsm_close_image_width?.innerContent,\n    property: \"width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm-faq-container ${orderClass}.dsm-faq-item-wrapper .dsm_close_image`,\n    attr: attrs?.dsm_close_image_width?.innerContent,\n    property: \"height\"\n  }));\n};\n;// ./packages/module-library/faq-child/edit.js\n\n\n\n// Divi package dependencies.\n\n\n\n\n\n\n// Custom dependencies.\n\n\n\n\n\n\n/**\n * @param {Record<string, unknown>|null|undefined} icon Icon picker leaf.\n * @return {boolean}\n */\nconst faqIconHasValue = icon => !(0,lodash.isEmpty)(icon) && !(0,lodash.isEmpty)(icon?.unicode);\n\n/**\n * @param {object} props\n * @param {Record<string, unknown>|null|undefined} props.childIcon       Child icon picker leaf.\n * @param {Record<string, unknown>|null|undefined} props.parentIcon      Parent icon picker leaf.\n * @param {string}                             props.parentClassName Parent toggle icon class.\n * @param {string}                             props.childClassName  Child override icon class.\n * @return {import('react').JSX.Element}\n */\nconst FaqToggleIconHost = ({\n  childIcon,\n  parentIcon,\n  parentClassName,\n  childClassName\n}) => {\n  const useChildClass = faqIconHasValue(childIcon);\n  const effectiveIcon = useChildClass ? childIcon : parentIcon;\n  const className = useChildClass ? childClassName : parentClassName;\n  return /*#__PURE__*/external_vendor_React_default().createElement(ModuleIconHost, {\n    icon: effectiveIcon,\n    className: className\n  });\n};\n\n/**\n * React function component for registering module script data.\n */\n\nconst faq_child_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction faq_child_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements,\n  parentAttrs,\n  childrenIds,\n  canvasId,\n  isLooped,\n  loopIndex\n}) {\n  var _faqBuilder$activeChi, _attrs$header_item$de, _parentAttrs$header$d, _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _getAttrByMode4, _getAttrByMode5;\n  const faqBuilder = (0,external_vendor_React_.useContext)(FaqBuilderContext);\n  const isActiveInBuilder = (_faqBuilder$activeChi = faqBuilder?.activeChildIds?.includes(id)) !== null && _faqBuilder$activeChi !== void 0 ? _faqBuilder$activeChi : false;\n  const {} = attrs;\n  const title = attrs?.dsm_title?.innerContent?.desktop?.value?.text;\n  const content = attrs?.dsm_content?.innerContent?.desktop?.value?.text;\n  const headingLevel = (_attrs$header_item$de = attrs?.header_item?.decoration?.font?.font?.desktop?.value?.headingLevel) !== null && _attrs$header_item$de !== void 0 ? _attrs$header_item$de : '';\n  const parentHeadingLevel = (_parentAttrs$header$d = parentAttrs?.header?.decoration?.font?.font?.desktop?.value?.headingLevel) !== null && _parentAttrs$header$d !== void 0 ? _parentAttrs$header$d : 'h5';\n  const TitleTag = (0,lodash.isEmpty)(headingLevel) ? (0,lodash.isEmpty)(parentHeadingLevel) ? 'h4' : parentHeadingLevel : headingLevel;\n  const iconPlacement = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(parentAttrs?.dsm_icon_placement?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'left';\n  const isLeftIconPlacement = (0,lodash.isEmpty)(iconPlacement) ? 'left' : iconPlacement;\n  const openChildFontIcon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_child_open_font_icon?.innerContent);\n  const closeChildFontIcon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_child_close_font_icon?.innerContent);\n  const parentOpenFontIcon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(parentAttrs?.dsm_open_font_icon?.innerContent);\n  const parentCloseFontIcon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(parentAttrs?.dsm_close_font_icon?.innerContent);\n  const parentUseImage = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(parentAttrs?.dsm_use_image?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'off';\n  const parentOpenImage = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(parentAttrs?.dsm_open_image?.innerContent);\n  const parentCloseImage = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(parentAttrs?.dsm_close_image?.innerContent);\n  const dsm_content_type = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_content_type?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'content';\n  const dsm_shortcode_content = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_shortcode_content?.innerContent);\n  const openChildImage = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_open_child_image?.innerContent);\n  const closeChildImage = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_close_child_image?.innerContent);\n  const childUseImage = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_child_use_image?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : 'off';\n  const useImage = childUseImage;\n  const usesParentToggleImages = parentUseImage === 'on' && childUseImage !== 'on' && (!(0,lodash.isEmpty)(parentOpenImage) || !(0,lodash.isEmpty)(parentCloseImage));\n  const usesChildToggleImages = childUseImage === 'on' && (!(0,lodash.isEmpty)(openChildImage) || !(0,lodash.isEmpty)(closeChildImage));\n  const hasToggleImages = usesParentToggleImages || usesChildToggleImages;\n  const hasNestedModules = Array.isArray(childrenIds) && childrenIds.length > 0;\n  const nestableLayoutDisplay = (_getAttrByMode5 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.module?.decoration?.layout?.desktop?.value?.display)) !== null && _getAttrByMode5 !== void 0 ? _getAttrByMode5 : 'flex';\n  const nestableWrapperClassName = hasNestedModules ? ['dsm-faq-nestable', 'grid' === nestableLayoutDisplay ? 'et_grid_module' : 'et_flex_module'].join(' ') : 'dsm-faq-nestable dsm-faq-nestable--vb-add';\n  const attrsForCanvas = (0,external_vendor_React_.useMemo)(() => mergeFaqChildToggleRowBackgroundAttrsFromParent(attrs, parentAttrs), [attrs, parentAttrs]);\n  const openFontIcon = /*#__PURE__*/external_vendor_React_default().createElement(FaqToggleIconHost, {\n    childIcon: openChildFontIcon,\n    parentIcon: parentOpenFontIcon,\n    parentClassName: \"dsm_open_icon\",\n    childClassName: \"dsm_faq-item-open_icon\"\n  });\n  const closeFontIcon = /*#__PURE__*/external_vendor_React_default().createElement(FaqToggleIconHost, {\n    childIcon: closeChildFontIcon,\n    parentIcon: parentCloseFontIcon,\n    parentClassName: \"dsm_close_icon\",\n    childClassName: \"dsm_faq-item-close_icon\"\n  });\n  const openImage = useImage !== 'on' ? !(0,lodash.isEmpty)(parentOpenImage) && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_open_image\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n    src: parentOpenImage\n  })) : !(0,lodash.isEmpty)(openChildImage) && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_open_image\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n    src: openChildImage\n  }));\n  const closeImage = useImage !== 'on' ? !(0,lodash.isEmpty)(parentCloseImage) && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_close_image\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n    src: parentCloseImage\n  })) : !(0,lodash.isEmpty)(closeChildImage) && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_close_image\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n    src: closeChildImage\n  }));\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrsForCanvas,\n    elements: elements,\n    id: id,\n    name: name,\n    childrenIds: childrenIds,\n    scriptDataComponent: faq_child_edit_ModuleScriptData,\n    stylesComponent: faq_child_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrsForCanvas$modul;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrsForCanvas$modul = attrsForCanvas?.module?.decoration) !== null && _attrsForCanvas$modul !== void 0 ? _attrsForCanvas$modul : {}\n      }));\n      params.classnamesInstance.add('dsm-faq-item-wrapper');\n      if (hasToggleImages) {\n        params.classnamesInstance.add('dsm-faq-item-has-toggle-images');\n      }\n      if (isActiveInBuilder) {\n        params.classnamesInstance.add('dsm-faq-item-active');\n      }\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"et_pb_module_inner\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-title-wrapper\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-title-inner-wrapper\"\n  }, 'left' === isLeftIconPlacement && openFontIcon, 'left' === isLeftIconPlacement && closeFontIcon, 'right' === isLeftIconPlacement && openImage, 'right' === isLeftIconPlacement && closeImage, /*#__PURE__*/external_vendor_React_default().createElement(TitleTag, {\n    className: \"dsm-faq-title\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: title\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-faq-item-inner-wrapper\"\n  }, 'right' === isLeftIconPlacement && openFontIcon, 'right' === isLeftIconPlacement && closeFontIcon, 'left' === isLeftIconPlacement && openImage, 'left' === isLeftIconPlacement && closeImage)), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-faq-content\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", null, hasNestedModules ? /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: nestableWrapperClassName\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ChildModulesContainer, {\n    ids: childrenIds,\n    isLooped: isLooped,\n    loopIndex: loopIndex,\n    canvasId: canvasId\n  })) : /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, 'content' === dsm_content_type ? /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: content\n  }, resolvedContent => /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    dangerouslySetInnerHTML: {\n      __html: 'string' === typeof resolvedContent ? resolvedContent : ''\n    }\n  })) : /*#__PURE__*/external_vendor_React_default().createElement(divi_shortcode_content_renderer, {\n    shortcode: dsm_shortcode_content,\n    previewKey: `dsm-faq-shortcode-${id}`\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: nestableWrapperClassName\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleAdd, {\n    moduleId: id,\n    basicModuleType: \"module\",\n    addChild: true\n  })))))));\n}\n/* harmony default export */ const faq_child_edit = (faq_child_edit_Edit);\n;// ./packages/module-library/faq-child/conversion-outline.js\n\n\nconst faq_child_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border',\n      dsm_toggle_open_border: 'toggleOpenStateStyle.decoration.border',\n      dsm_toggle_closed_border: 'toggleCloseStateStyle.decoration.border',\n      dsm_image_open_border: 'imageOpenStateStyle.decoration.border',\n      dsm_image_close_border: 'imageCloseStateStyle.decoration.border',\n      dsm_icon_open_border: 'iconOpenStateStyle.decoration.border',\n      dsm_icon_close_border: 'iconCloseStateStyle.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow',\n      toggle_open_state_shadow: 'toggleOpenStateStyle.decoration.boxShadow',\n      toggle_closed_state_shadow: 'toggleCloseStateStyle.decoration.boxShadow',\n      image_open_state_shadow: 'imageOpenStateStyle.decoration.boxShadow',\n      image_close_state_shadow: 'imageCloseStateStyle.decoration.boxShadow',\n      icon_open_state_shadow: 'iconOpenStateStyle.decoration.boxShadow',\n      icon_close_state_shadow: 'iconCloseStateStyle.decoration.boxShadow'\n    },\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    text_shadow: {\n      default: 'module.advanced.text.textShadow'\n    },\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    fonts: {\n      header_item: 'header_item.decoration.font',\n      closed_header_item: 'closed_header_item.decoration.font',\n      content: 'content.decoration.font'\n    },\n    margin_padding: 'module.decoration.spacing',\n    link_options: 'module.advanced.link'\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    dsm_title: 'dsm_title.innerContent.*.text',\n    dsm_content_type: 'dsm_content_type.innerContent.*',\n    dsm_content: 'dsm_content.innerContent.*.text',\n    header_item_level: 'header_item_level.innerContent.*',\n    parentOrderClass: 'parentOrderClass.innerContent.*',\n    parentorderclass: 'parentOrderClass.innerContent.*',\n    dsm_shortcode_content: 'dsm_shortcode_content.innerContent.*',\n    dsm_child_use_image: 'dsm_child_use_image.innerContent.*',\n    dsm_design_tab_title: 'dsm_design_tab_title.innerContent.*',\n    dsm_design_tab_toggle_row: 'dsm_design_tab_toggle_row.innerContent.*',\n    dsm_design_tab_toggle_images: 'dsm_design_tab_toggle_images.innerContent.*',\n    dsm_design_tab_toggle_icons: 'dsm_design_tab_toggle_icons.innerContent.*',\n    dsm_open_child_image: 'dsm_open_child_image.innerContent.*',\n    dsm_open_image_width: 'dsm_open_image_width.innerContent.*',\n    dsm_close_child_image: 'dsm_close_child_image.innerContent.*',\n    dsm_close_image_width: 'dsm_close_image_width.innerContent.*',\n    dsm_child_open_font_icon: 'dsm_child_open_font_icon.innerContent.*',\n    dsm_child_close_font_icon: 'dsm_child_close_font_icon.innerContent.*',\n    dsm_open_bg_color: 'dsm_open_bg_color.innerContent.*',\n    dsm_open_toggle_margin: 'dsm_open_toggle_margin.decoration.spacing.*.margin',\n    dsm_closed_toggle_margin: 'dsm_closed_toggle_margin.decoration.spacing.*.margin',\n    dsm_closed_toggle_padding: 'dsm_closed_toggle_padding.decoration.spacing.*.padding',\n    dsm_open_image_margin: 'dsm_open_image_margin.decoration.spacing.*.margin',\n    dsm_open_image_padding: 'dsm_open_image_padding.decoration.spacing.*.padding',\n    dsm_close_image_margin: 'dsm_close_image_margin.decoration.spacing.*.margin',\n    dsm_close_image_padding: 'dsm_close_image_padding.decoration.spacing.*.padding',\n    dsm_open_icon_margin: 'dsm_open_icon_margin.decoration.spacing.*.margin',\n    dsm_open_icon_padding: 'dsm_open_icon_padding.decoration.spacing.*.padding',\n    dsm_close_icon_margin: 'dsm_close_icon_margin.decoration.spacing.*.margin',\n    dsm_close_icon_padding: 'dsm_close_icon_padding.decoration.spacing.*.padding',\n    dsm_content_margin: 'dsm_content_margin.decoration.spacing.*.margin',\n    dsm_content_padding: 'dsm_content_padding.decoration.spacing.*.padding',\n    dsm_close_bg_color: 'dsm_close_bg_color.innerContent.*',\n    dsm_open_icon_bg_color: 'dsm_open_icon_bg_color.innerContent.*',\n    dsm_open_icon_color: 'dsm_open_icon_color.innerContent.*',\n    dsm_close_icon_bg_color: 'dsm_close_icon_bg_color.innerContent.*',\n    dsm_close_icon_color: 'dsm_close_icon_color.innerContent.*',\n    dsm_open_font_size: 'dsm_open_font_size.innerContent.*',\n    dsm_close_font_size: 'dsm_close_font_size.innerContent.*',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    dsm_child_open_font_icon: external_divi_conversion_namespaceObject.convertFontIcon,\n    dsm_child_close_font_icon: external_divi_conversion_namespaceObject.convertFontIcon,\n    dsm_open_toggle_margin: external_divi_module_namespaceObject.convertSpacing,\n    dsm_closed_toggle_margin: external_divi_module_namespaceObject.convertSpacing,\n    dsm_closed_toggle_padding: external_divi_module_namespaceObject.convertSpacing,\n    dsm_open_image_margin: external_divi_module_namespaceObject.convertSpacing,\n    dsm_open_image_padding: external_divi_module_namespaceObject.convertSpacing,\n    dsm_close_image_margin: external_divi_module_namespaceObject.convertSpacing,\n    dsm_close_image_padding: external_divi_module_namespaceObject.convertSpacing,\n    dsm_open_icon_margin: external_divi_module_namespaceObject.convertSpacing,\n    dsm_open_icon_padding: external_divi_module_namespaceObject.convertSpacing,\n    dsm_close_icon_margin: external_divi_module_namespaceObject.convertSpacing,\n    dsm_close_icon_padding: external_divi_module_namespaceObject.convertSpacing,\n    dsm_content_margin: external_divi_module_namespaceObject.convertSpacing,\n    dsm_content_padding: external_divi_module_namespaceObject.convertSpacing,\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/faq-child/index.js\n// External library dependencies.\n\n\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\nconst faqChildModule = {\n  metadata: faq_child_module_namespaceObject,\n  conversionOutline: faq_child_conversion_outline_conversionOutline,\n  renderers: {\n    edit: faq_child_edit,\n    styles: faq_child_module_styles_ModuleStyles\n  },\n  defaultAttrs: faqChildModuleDefaultAttrs,\n  callbacks: {\n    content: {\n      elements: external_divi_moduleUtils_namespaceObject.elementsCallbacks\n    }\n  },\n  settings: {\n    content: faq_child_settings_content,\n    design: faq_child_settings_design,\n    advanced: faq_child_settings_advanced\n  },\n  placeholderContent: faqChildPlaceholderContent,\n  parentsName: ['dsm/faq']\n};\n/* harmony default export */ const faq_child = (faqChildModule);\n;// ./packages/module-library/floating-multi-images/module.json\nconst floating_multi_images_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/floating-multi-images\",\"d4Shortcode\":\"dsm_floating_multi_images\",\"title\":\"Supreme Floating Multi Images\",\"titles\":\"Supreme Floating Multi Images\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/floating-multi-images\",\"childrenName\":[\"dsm/floating-multi-images-child\"],\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}},\"default\":{\"meta\":{\"adminLabel\":{\"desktop\":{\"value\":\"Floating Multi Images\"}}}}},\"floating_height\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"floating_effect\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"floating_delay\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"floating_speed\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/floating-multi-images/settings-content.js\n\n\n\n\nfunction floating_multi_images_settings_content_SettingsContent({\n  defaultSettingsAttrs\n}) {\n  var _defaultSettingsAttrs;\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(ChildDraggableModuleList, {\n    childModuleName: \"dsm/floating-multi-images-child\",\n    addTitle: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Add New Item', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: (_defaultSettingsAttrs = defaultSettingsAttrs?.adminLabel) !== null && _defaultSettingsAttrs !== void 0 ? _defaultSettingsAttrs : {\n      desktop: {\n        value: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Floating Multi Images', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }));\n}\n/* harmony default export */ const floating_multi_images_settings_content = (floating_multi_images_settings_content_SettingsContent);\n;// ./packages/module-library/floating-multi-images/settings-design.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n/**\n * Divi 4 `DSM_FloatingMultiImages` `get_fields()` defaults / `default_on_front`.\n * `floating_height`: default `360px`, `default_on_front` empty — VB uses field default.\n */\nconst floatingMultiImagesInner = {\n  floatingHeight: {\n    desktop: {\n      value: '360px'\n    }\n  },\n  floatingEffect: {\n    desktop: {\n      value: 'up-down'\n    }\n  },\n  floatingDelay: {\n    desktop: {\n      value: '0ms'\n    }\n  },\n  floatingSpeed: {\n    desktop: {\n      value: '5000ms'\n    }\n  }\n};\nfunction floating_multi_images_settings_design_SettingsDesign() {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"sizing\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Sizing', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"floating_height.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Height', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    defaultAttr: floatingMultiImagesInner.floatingHeight\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 1200,\n    defaultUnit: \"px\",\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, {\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"animation\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animation', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"floating_effect.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Floating Effect', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    features: {\n      preset: 'content'\n    },\n    defaultAttr: floatingMultiImagesInner.floatingEffect\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      'up-down': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Up Down', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'left-right': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left Right', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"floating_delay.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Animation Delay Interval (in ms)', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    defaultAttr: floatingMultiImagesInner.floatingDelay\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 5000,\n    defaultUnit: \"ms\",\n    allowedUnits: ['ms']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"floating_speed.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animation Speed (in ms)', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    defaultAttr: floatingMultiImagesInner.floatingSpeed\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 8000,\n    defaultUnit: \"ms\",\n    allowedUnits: ['ms']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, {\n    grouped: false\n  })));\n}\n/* harmony default export */ const floating_multi_images_settings_design = (floating_multi_images_settings_design_SettingsDesign);\n;// ./packages/module-library/floating-multi-images/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction floating_multi_images_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_floating_multi_images\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const floating_multi_images_settings_advanced = (floating_multi_images_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/floating-multi-images/module-styles.js\n\n\n\n/**\n * React function component for rendering module style.\n */\nconst floating_multi_images_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'dsmFontIcon'\n  }), elements.style({\n    attrName: 'dsmIconColor'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_floating_multi_images_container`,\n    attr: attrs?.floating_height?.innerContent,\n    property: \"height\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_floating_multi_images_container .dsm_floating_multi_images_child`,\n    attr: attrs?.floating_speed?.innerContent,\n    property: \"animation-duration\"\n  }));\n};\n;// ./packages/module-library/floating-multi-images/edit.js\n\n\n\n// Divi package dependencies.\n\n\n\n// Custom dependencies.\n\n\n\n\n/**\n * React function component for registering module script data.\n */\nconst floating_multi_images_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction floating_multi_images_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements,\n  childrenIds\n}) {\n  var _getAttrByMode;\n  const {} = attrs;\n  const floating_effect = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.floating_effect?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'up-down';\n  const isFloatingEffect = 'up-down' === floating_effect ? 'dsm_floating_effect_up_down' : 'dsm_floating_effect_left_right';\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: floating_multi_images_edit_ModuleScriptData,\n    stylesComponent: floating_multi_images_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: `dsm_floating_multi_images_container ${isFloatingEffect}`\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ChildModulesContainer, {\n    ids: childrenIds\n  })));\n}\n/* harmony default export */ const floating_multi_images_edit = (floating_multi_images_edit_Edit);\n;// ./packages/module-library/floating-multi-images/conversion-outline.js\nconst floating_multi_images_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    margin_padding: 'module.decoration.spacing',\n    max_width: 'module.decoration.sizing',\n    height: 'module.decoration.sizing',\n    borders: {\n      default: 'module.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    filters: {\n      default: 'module.decoration.filters'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    floating_height: 'floating_height.innerContent.*',\n    floating_effect: 'floating_effect.innerContent.*',\n    floating_delay: 'floating_delay.innerContent.*',\n    floating_speed: 'floating_speed.innerContent.*'\n  }\n};\n;// ./packages/module-library/floating-multi-images/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmFloatingMultiImages', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/floating-multi-images': {\n      name: 'divi-supreme/floating-multi-images',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 3.792969 4.578125 C 3.464844 4.578125 3.199219 4.3125 3.199219 3.984375 C 3.199219 3.660156 3.464844 3.390625 3.792969 3.390625 C 4.117188 3.390625 4.382812 3.65625 4.382812 3.980469 C 4.382812 4.308594 4.121094 4.578125 3.792969 4.578125 Z M 3.792969 3.71875 C 3.644531 3.71875 3.527344 3.839844 3.527344 3.984375 C 3.527344 4.132812 3.644531 4.246094 3.792969 4.246094 C 3.9375 4.246094 4.058594 4.128906 4.058594 3.980469 C 4.058594 3.835938 3.9375 3.71875 3.792969 3.71875 Z M 3.792969 3.71875 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.742188 13.285156 C 11.414062 13.285156 11.148438 13.019531 11.148438 12.691406 C 11.148438 12.367188 11.414062 12.101562 11.742188 12.101562 C 12.066406 12.101562 12.332031 12.367188 12.332031 12.691406 C 12.332031 13.019531 12.066406 13.285156 11.742188 13.285156 Z M 11.742188 12.425781 C 11.59375 12.425781 11.476562 12.546875 11.476562 12.691406 C 11.476562 12.835938 11.59375 12.957031 11.742188 12.957031 C 11.886719 12.957031 12.007812 12.835938 12.007812 12.691406 C 12.007812 12.546875 11.886719 12.425781 11.742188 12.425781 Z M 11.742188 12.425781 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 5.167969 7.515625 L 5.628906 7.515625 L 5.628906 7.847656 L 5.167969 7.847656 Z M 5.167969 7.515625 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 5.167969 9.894531 L 5.628906 9.894531 L 5.628906 10.113281 L 5.167969 10.113281 Z M 5.167969 9.894531 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 5.167969 10.433594 L 5.628906 10.433594 L 5.628906 10.652344 L 5.167969 10.652344 Z M 5.167969 10.433594 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 10.304688 11.488281 L 10.304688 12.109375 C 10.304688 12.335938 10.121094 12.523438 9.886719 12.523438 L 4.929688 12.523438 C 4.703125 12.523438 4.515625 12.339844 4.515625 12.109375 L 4.515625 5.925781 L 5.625 5.925781 L 5.625 5.597656 L 4.554688 5.597656 C 4.617188 5.453125 4.765625 5.347656 4.933594 5.347656 L 5.632812 5.347656 L 5.632812 5.019531 L 4.929688 5.019531 C 4.519531 5.019531 4.191406 5.351562 4.191406 5.761719 L 4.191406 12.109375 C 4.191406 12.519531 4.523438 12.851562 4.929688 12.851562 L 9.886719 12.851562 C 10.300781 12.851562 10.628906 12.515625 10.628906 12.109375 L 10.628906 11.488281 Z M 10.304688 11.488281 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.578125 10.335938 L 11.578125 10.910156 C 11.578125 11.136719 11.390625 11.324219 11.160156 11.324219 L 6.207031 11.324219 C 5.980469 11.324219 5.792969 11.140625 5.792969 10.910156 L 5.792969 4.726562 L 6.96875 4.726562 L 6.96875 4.398438 L 5.832031 4.398438 C 5.894531 4.25 6.039062 4.148438 6.207031 4.148438 L 6.976562 4.148438 L 6.976562 3.820312 L 6.207031 3.820312 C 5.800781 3.820312 5.464844 4.152344 5.464844 4.558594 L 5.464844 10.910156 C 5.464844 11.320312 5.800781 11.652344 6.207031 11.652344 L 11.164062 11.652344 C 11.578125 11.652344 11.90625 11.316406 11.90625 10.910156 L 11.90625 10.335938 Z M 11.578125 10.335938 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.445312 6.316406 L 6.976562 6.316406 L 6.976562 6.648438 L 6.445312 6.648438 Z M 6.445312 6.316406 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.445312 8.691406 L 6.976562 8.691406 L 6.976562 8.910156 L 6.445312 8.910156 Z M 6.445312 8.691406 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.445312 9.234375 L 6.976562 9.234375 L 6.976562 9.453125 L 6.445312 9.453125 Z M 6.445312 9.234375 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.511719 10.503906 L 7.554688 10.503906 C 7.140625 10.503906 6.8125 10.167969 6.8125 9.761719 L 6.8125 3.40625 C 6.8125 2.996094 7.148438 2.667969 7.554688 2.667969 L 12.511719 2.667969 C 12.921875 2.667969 13.25 3 13.25 3.40625 L 13.25 9.757812 C 13.25 10.167969 12.917969 10.503906 12.511719 10.503906 Z M 7.554688 2.996094 C 7.328125 2.996094 7.136719 3.179688 7.136719 3.414062 L 7.136719 9.761719 C 7.136719 9.988281 7.324219 10.175781 7.554688 10.175781 L 12.511719 10.175781 C 12.738281 10.175781 12.925781 9.992188 12.925781 9.761719 L 12.925781 3.40625 C 12.925781 3.179688 12.742188 2.992188 12.511719 2.992188 L 7.554688 2.992188 Z M 7.554688 2.996094 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 7.785156 5.164062 L 12.269531 5.164062 L 12.269531 5.496094 L 7.785156 5.496094 Z M 7.785156 5.164062 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 7.785156 7.539062 L 12.269531 7.539062 L 12.269531 7.757812 L 7.785156 7.757812 Z M 7.785156 7.539062 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 7.785156 8.082031 L 12.269531 8.082031 L 12.269531 8.300781 L 7.785156 8.300781 Z M 7.785156 8.082031 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.972656 3.246094 L 13.085938 3.246094 L 13.085938 3.574219 L 6.972656 3.574219 Z M 6.972656 3.246094 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/floating-multi-images/index.js\n// External library dependencies.\n\n\n// Wordpress dependencies.\n\n\n\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\n\n\nconst FLOATING_MULTI_IMAGES_CHILD = 'dsm/floating-multi-images-child';\n\n/** D4 default first image: 0% / 0%; stagger 2nd and 3rd so images do not stack on insert. */\nconst floatingMultiImagesDefaultChildTemplate = buildParentDefaultChildTemplate(FLOATING_MULTI_IMAGES_CHILD, 3, [{\n  horizontal_align: {\n    innerContent: {\n      desktop: {\n        value: '0%'\n      }\n    }\n  },\n  vertical_align: {\n    innerContent: {\n      desktop: {\n        value: '0%'\n      }\n    }\n  }\n}, {\n  horizontal_align: {\n    innerContent: {\n      desktop: {\n        value: '35%'\n      }\n    }\n  },\n  vertical_align: {\n    innerContent: {\n      desktop: {\n        value: '25%'\n      }\n    }\n  }\n}, {\n  horizontal_align: {\n    innerContent: {\n      desktop: {\n        value: '15%'\n      }\n    }\n  },\n  vertical_align: {\n    innerContent: {\n      desktop: {\n        value: '50%'\n      }\n    }\n  }\n}]);\nconst floatingMultiImagesModule = {\n  metadata: floating_multi_images_module_namespaceObject,\n  childrenName: [FLOATING_MULTI_IMAGES_CHILD],\n  template: floatingMultiImagesDefaultChildTemplate,\n  callbacks: buildChildDraggableListCallbacks([FLOATING_MULTI_IMAGES_CHILD]),\n  renderers: {\n    edit: floating_multi_images_edit,\n    styles: floating_multi_images_module_styles_ModuleStyles\n  },\n  settings: {\n    content: floating_multi_images_settings_content,\n    design: floating_multi_images_settings_design,\n    advanced: floating_multi_images_settings_advanced\n  },\n  placeholderContent: {\n    floating_effect: {\n      innerContent: {\n        desktop: {\n          value: 'up-down'\n        }\n      }\n    }\n  },\n  conversionOutline: floating_multi_images_conversion_outline_conversionOutline\n};\n/* harmony default export */ const floating_multi_images = (floatingMultiImagesModule);\n;// ./packages/module-library/floating-multi-images-child/module.json\nconst floating_multi_images_child_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/floating-multi-images-child\",\"d4Shortcode\":\"dsm_floating_multi_images_child\",\"title\":\"Floating Multi Image\",\"titles\":\"Floating Multi Image\",\"category\":\"child-module\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}},\"default\":{\"meta\":{\"adminLabel\":{\"desktop\":{\"value\":\"Floating Multi Image\"}}}}},\"src\":{\"type\":\"object\",\"label\":\"Image\",\"selector\":\"{{selector}} img\",\"elementType\":\"image\",\"supportsCustomAttributes\":true,\"inlineEditor\":\"UploadContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"show_in_lightbox\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"horizontal_align\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"vertical_align\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/floating-multi-images-child/floating-multi-images-child-vb-default-attrs.js\n/**\n * Visual Builder defaults for Floating Multi Images child (`src` upload shape).\n * Same SVG placeholder as `dsm/blob-image` for consistency.\n *\n * @package DiviSupreme\n */\n\n\n;// ./packages/module-library/floating-multi-images-child/settings-content.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\nfunction floating_multi_images_child_settings_content_SettingsContent({\n  defaultSettingsAttrs\n}) {\n  var _defaultSettingsAttrs;\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"src.innerContent\",\n    subName: \"src\",\n    defaultAttr: blobImageUploadVbDefaultAttr,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Upload an image to display at the top of your blurb.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"link\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Link', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"show_in_lightbox.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Open in Lightbox', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'off'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, {\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: (_defaultSettingsAttrs = defaultSettingsAttrs?.adminLabel) !== null && _defaultSettingsAttrs !== void 0 ? _defaultSettingsAttrs : {\n      desktop: {\n        value: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Floating Multi Image', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }));\n}\n/* harmony default export */ const floating_multi_images_child_settings_content = (floating_multi_images_child_settings_content_SettingsContent);\n;// ./packages/module-library/floating-multi-images-child/settings-design.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n/** Divi 4 `max_width` advanced field default `50%` → `SizingGroup` `fields.maxWidth.defaultAttr`. */\nconst floatingMultiImagesChildMaxWidthDefaultAttr = {\n  desktop: {\n    value: {\n      maxWidth: '50%'\n    }\n  }\n};\n\n/** Divi 4 `DSM_FloatingMultiImagesChild` `horizontal_align` / `vertical_align` default `0%`. */\nconst floatingMultiImagesChildAlign = {\n  desktop: {\n    value: '0%'\n  }\n};\nfunction floating_multi_images_child_settings_design_SettingsDesign() {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"sizing\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Sizing', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"horizontal_align.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Horizontal Align', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: floatingMultiImagesChildAlign\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: -150,\n    max: 150,\n    defaultUnit: \"%\",\n    allowedUnits: ['%']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"vertical_align.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Vertical Align', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: floatingMultiImagesChildAlign\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: -150,\n    max: 150,\n    defaultUnit: \"%\",\n    allowedUnits: ['%']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, {\n    grouped: false,\n    fields: {\n      maxWidth: {\n        defaultAttr: floatingMultiImagesChildMaxWidthDefaultAttr\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null));\n}\n/* harmony default export */ const floating_multi_images_child_settings_design = (floating_multi_images_child_settings_design_SettingsDesign);\n;// ./packages/module-library/floating-multi-images-child/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction floating_multi_images_child_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_floating_multi_images_child\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const floating_multi_images_child_settings_advanced = (floating_multi_images_child_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/floating-multi-images-child/module-styles.js\n\n\n\n/**\n * React function component for rendering module style.\n */\nconst floating_multi_images_child_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), elements.style({\n    attrName: 'horizontal_align'\n  }), elements.style({\n    attrName: 'vertical_align'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}`,\n    attr: attrs?.horizontal_align?.innerContent,\n    property: \"left\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}`,\n    attr: attrs?.vertical_align?.innerContent,\n    property: \"top\"\n  }));\n};\n;// ./packages/module-library/floating-multi-images-child/edit.js\n\n\n\n// Divi package dependencies.\n\n\n\n\n// Custom dependencies.\n\n\n\n/**\n * React function component for registering module script data.\n */\n\nconst floating_multi_images_child_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}), elements.scriptData({\n  attrName: 'src'\n}));\n\n/**\n * Normalize upload innerContent for img src / href (string URL or `{ src, id }` / `{ url }`).\n *\n * @param {*} raw From `getAttrByMode( attrs.src.innerContent )`.\n * @return {string}\n */\nfunction floating_multi_images_child_edit_getUploadValueForDynamicData(raw) {\n  if (raw == null || raw === '') {\n    return '';\n  }\n  if (typeof raw === 'string' || typeof raw === 'number') {\n    return String(raw);\n  }\n  if (typeof raw === 'object') {\n    if (typeof raw.src === 'string' && raw.src !== '') {\n      return raw.src;\n    }\n    if (typeof raw.url === 'string' && raw.url !== '') {\n      return raw.url;\n    }\n  }\n  return '';\n}\nfunction floating_multi_images_child_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  const floatingImageContainer = (0,external_vendor_React_.useRef)();\n  const {} = attrs;\n  const srcLeaf = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.src?.innerContent);\n  const imageUrlAttr = floating_multi_images_child_edit_getUploadValueForDynamicData(srcLeaf);\n  const openLightbox = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_in_lightbox?.innerContent);\n  (0,external_vendor_React_.useEffect)(() => {\n    if ('off' === openLightbox) {\n      return;\n    }\n    jQuery('.dsm-image-lightbox').magnificPopup({\n      type: 'image',\n      //delegate: 'a.dsm-image-lightbox',\n      removalDelay: 500,\n      mainClass: 'mfp-fade',\n      zoom: {\n        enabled: true,\n        duration: 500,\n        opener: function (element) {\n          return element.find('img');\n        }\n      }\n    });\n  }, [openLightbox]);\n  const lightboxMarkup = /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n    ref: floatingImageContainer,\n    href: imageUrlAttr,\n    className: \"et_pb_lightbox_image dsm-image-lightbox\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: imageUrlAttr\n  }, resolvedImage => /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n    src: floating_multi_images_child_edit_getUploadValueForDynamicData(resolvedImage)\n  })));\n  const imageMarkup = /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: imageUrlAttr\n  }, resolvedImage => /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n    src: floating_multi_images_child_edit_getUploadValueForDynamicData(resolvedImage)\n  }));\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    moduleClassName: \"d5_tut_simple_quick_module\",\n    name: name,\n    scriptDataComponent: floating_multi_images_child_edit_ModuleScriptData,\n    stylesComponent: floating_multi_images_child_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), 'on' === openLightbox ? lightboxMarkup : imageMarkup);\n}\n/* harmony default export */ const floating_multi_images_child_edit = (floating_multi_images_child_edit_Edit);\n;// ./packages/module-library/floating-multi-images-child/conversion-outline.js\nconst floating_multi_images_child_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow'\n    },\n    max_width: 'module.decoration.sizing',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    margin_padding: 'module.decoration.spacing',\n    disabled_on: 'module.decoration.disabledOn',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    margin_padding: 'module.decoration.spacing'\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    // D4 `src` is a URL string; D5 upload shape needs the leaf `innerContent.*.value.src` (same as blob / scroll-image).\n    src: 'src.innerContent.*.src',\n    title_text: 'title_text.innerContent.*',\n    horizontal_align: 'horizontal_align.innerContent.*',\n    vertical_align: 'vertical_align.innerContent.*',\n    show_in_lightbox: 'show_in_lightbox.innerContent.*'\n  }\n};\n;// ./packages/module-library/floating-multi-images-child/index.js\n// External library dependencies.\n\n\n// Wordpress dependencies.\n\n\n\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\nconst floatingMultiImagesChildModule = {\n  metadata: floating_multi_images_child_module_namespaceObject,\n  parentsName: ['dsm/floating-multi-images'],\n  renderers: {\n    edit: floating_multi_images_child_edit,\n    styles: floating_multi_images_child_module_styles_ModuleStyles\n  },\n  defaultAttrs: {\n    src: {\n      innerContent: blobImageUploadVbDefaultAttr\n    }\n  },\n  settings: {\n    content: floating_multi_images_child_settings_content,\n    design: floating_multi_images_child_settings_design,\n    advanced: floating_multi_images_child_settings_advanced\n  },\n  placeholderContent: {\n    src: {\n      innerContent: blobImageUploadVbDefaultAttr\n    },\n    show_in_lightbox: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    }\n  },\n  conversionOutline: floating_multi_images_child_conversion_outline_conversionOutline\n};\n/* harmony default export */ const floating_multi_images_child = (floatingMultiImagesChildModule);\n;// ./packages/module-library/glitch-text/module.json\nconst glitch_text_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/glitch-text\",\"d4Shortcode\":\"dsm_glitch_text\",\"title\":\"Supreme Glitch Text\",\"titles\":\"Supreme Glitch Text\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/glitch-text\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"header\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-glitch-text\",\"tagName\":\"h1\",\"inlineEditor\":\"plainText\",\"elementType\":\"heading\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-glitch-text\",\"hover\":\"{{selector}}:hover .dsm-glitch-text\"}}}}},\"glitch_text\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"tagName\":\"span\",\"elementType\":\"headingLink\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"glitch_text_effect\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"glitch_one_color_one\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"glitch_one_color_two\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"glitch_two_color_one\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"glitch_two_color_two\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/glitch-text/module-default-render-attributes.json\nconst glitch_text_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"module\":{\"decoration\":{}},\"header\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"headingLevel\":\"h1\"}}}}}},\"glitch_text\":{\"innerContent\":{\"desktop\":{\"value\":{\"text\":\"Supreme Glitch Text\",\"url\":\"\",\"target\":\"off\"}}}},\"glitch_text_effect\":{\"innerContent\":{\"desktop\":{\"value\":\"one\"}}},\"glitch_one_color_one\":{\"innerContent\":{\"desktop\":{\"value\":\"#FF0000\"}}},\"glitch_one_color_two\":{\"innerContent\":{\"desktop\":{\"value\":\"#0000FF\"}}},\"glitch_two_color_one\":{\"innerContent\":{\"desktop\":{\"value\":\"#a020f0\"}}},\"glitch_two_color_two\":{\"innerContent\":{\"desktop\":{\"value\":\"#008000\"}}}}');\n;// ./packages/module-library/glitch-text/glitch-text-vb-default-attrs.js\n/**\n * Visual Builder `defaultAttr` map from `module-default-render-attributes.json`.\n *\n * @package DiviSupreme\n */\n\n\n\n/** Title Text `FontGroup` (`attrName=\"header.decoration.font\"`). Keep in sync with JSON `header.decoration.font`. */\nconst glitchTextHeaderFontGroupDefaultAttr = glitch_text_module_default_render_attributes_namespaceObject.header.decoration.font;\nconst glitchTextFieldDefaultInnerContent = Object.fromEntries(Object.entries(glitch_text_module_default_render_attributes_namespaceObject).filter(([, attr]) => attr && typeof attr === 'object' && attr.innerContent).map(([key, attr]) => [key, attr.innerContent]));\n\n/** @type {typeof glitchTextFieldDefaultInnerContent} */\nconst glitchTextFd = glitchTextFieldDefaultInnerContent;\n;// ./packages/module-library/glitch-text/settings-content.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\n\nfunction glitch_text_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  const glitchTextEffect = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.glitch_text_effect?.innerContent);\n  const showGlitchOneColors = 'one' === glitchTextEffect || 'three' === glitchTextEffect || 'four' === glitchTextEffect || 'six' === glitchTextEffect;\n  const showGlitchTwoColors = 'two' === glitchTextEffect || 'five' === glitchTextEffect;\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: glitchTextFd.glitch_text,\n    attrName: \"glitch_text.innerContent\",\n    subName: \"text\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Glitch Text', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"glitchEffect\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Glitch Effect', 'dsm-supreme-modules-pro-for-divi'),\n    preset: \"content\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: glitchTextFd.glitch_text_effect,\n    attrName: \"glitch_text_effect.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Glitch Effect', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      one: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Chromatic Split', 'dsm-supreme-modules-pro-for-divi')\n      },\n      two: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Neon Split', 'dsm-supreme-modules-pro-for-divi')\n      },\n      three: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Skew Echo', 'dsm-supreme-modules-pro-for-divi')\n      },\n      four: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Channel Drift', 'dsm-supreme-modules-pro-for-divi')\n      },\n      five: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Digital Flicker', 'dsm-supreme-modules-pro-for-divi')\n      },\n      six: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Triple Echo', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: glitchTextFd.glitch_two_color_one,\n    attrName: \"glitch_two_color_one.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Glitch One Color', 'dsm-supreme-modules-pro-for-divi'),\n    visible: showGlitchTwoColors,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom color for your Glitch One Color.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: glitchTextFd.glitch_two_color_two,\n    attrName: \"glitch_two_color_two.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Glitch Two Color', 'dsm-supreme-modules-pro-for-divi'),\n    visible: showGlitchTwoColors,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom color for your Glitch Two Color.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: glitchTextFd.glitch_one_color_one,\n    attrName: \"glitch_one_color_one.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Glitch One Color', 'dsm-supreme-modules-pro-for-divi'),\n    visible: showGlitchOneColors,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom color for your Glitch One Color.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: glitchTextFd.glitch_one_color_two,\n    attrName: \"glitch_one_color_two.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Glitch Two Color', 'dsm-supreme-modules-pro-for-divi'),\n    visible: showGlitchOneColors,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom color for your Glitch Two Color.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"link\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Link', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, {\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const glitch_text_settings_content = (glitch_text_settings_content_SettingsContent);\n;// ./packages/module-library/glitch-text/settings-design.js\n\n\n// Wordpress dependencies.\n\n\n\n\n\nfunction glitch_text_settings_design_SettingsDesign() {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"text\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextGroup, {\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"titleText\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"header.decoration.font\",\n    defaultAttr: glitchTextHeaderFontGroupDefaultAttr,\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: true\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const glitch_text_settings_design = (glitch_text_settings_design_SettingsDesign);\n;// ./packages/module-library/glitch-text/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction glitch_text_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_glitch_text\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const glitch_text_settings_advanced = (glitch_text_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/glitch-text/module-styles.js\n\n\n\n\n/**\n * @param {object} attr Attr payload.\n * @param {string} template text-shadow template with %s for color.\n * @return {string}\n */\nconst textShadowDeclaration = (attr, template) => {\n  let v = attr?.attrValue;\n  if (v && typeof v === 'object' && v.desktop?.value) {\n    v = v.desktop.value;\n  }\n  v = typeof v === 'string' ? v : '';\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'text-shadow': true\n    }\n  });\n  declarations.add('text-shadow', template.replace('%s', v));\n  return declarations.value;\n};\nconst glitch_text_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  var _attrs$glitch_text_ef;\n  const effect = (_attrs$glitch_text_ef = attrs?.glitch_text_effect?.innerContent?.desktop?.value) !== null && _attrs$glitch_text_ef !== void 0 ? _attrs$glitch_text_ef : 'one';\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextStyle, {\n    selector: orderClass,\n    attr: attrs?.module?.advanced?.text\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'header'\n  }), (effect === 'one' || effect === 'four') && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-glitch-effect-type-${effect}:after`,\n    attr: attrs?.glitch_one_color_one?.innerContent,\n    declarationFunction: a => textShadowDeclaration(a, '-1px 0 %s')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-glitch-effect-type-${effect}:before`,\n    attr: attrs?.glitch_one_color_two?.innerContent,\n    declarationFunction: a => textShadowDeclaration(a, '2px 0 %s')\n  })), (effect === 'two' || effect === 'five') && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-glitch-effect-type-${effect}:after`,\n    attr: attrs?.glitch_two_color_one?.innerContent,\n    declarationFunction: a => textShadowDeclaration(a, '-1px 0 %s')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-glitch-effect-type-${effect}:before`,\n    attr: attrs?.glitch_two_color_two?.innerContent,\n    declarationFunction: a => textShadowDeclaration(a, '2px 0 %s')\n  })), (effect === 'three' || effect === 'six') && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-glitch-effect-type-${effect}>span`,\n    attr: attrs?.glitch_one_color_one?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-glitch-effect-type-${effect}:after`,\n    attr: attrs?.glitch_one_color_two?.innerContent,\n    property: \"color\"\n  })));\n};\n;// ./packages/module-library/glitch-text/edit.js\n\n\n// Divi package dependencies.\n\n\n\n\n// Custom dependencies.\n\n\n\n\n/**\n * Plain string for Divi dynamic data (`useDynamicData`) — tokens live on the text leaf, not the headingLink object.\n *\n * @param {*} raw From getAttrByMode( attrs.glitch_text.innerContent ).\n * @return {string}\n */\nfunction getGlitchTextLeafForDynamic(raw) {\n  if (raw == null || raw === '') {\n    return '';\n  }\n  if (typeof raw === 'string' || typeof raw === 'number') {\n    return String(raw);\n  }\n  if (typeof raw === 'object' && raw !== null && typeof raw.text === 'string') {\n    return raw.text;\n  }\n  return '';\n}\n\n/**\n * React function component for registering module script data.\n */\nconst glitch_text_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}), elements.scriptData({\n  attrName: 'glitch_text'\n}));\n\n/**\n * @param {string} raw Heading tag.\n * @return {keyof JSX.IntrinsicElements}\n */\nfunction edit_sanitizeHeadingTag(raw) {\n  if (typeof raw === 'string' && /^(h[1-6]|p|div)$/i.test(raw.trim())) {\n    return raw.trim().toLowerCase();\n  }\n  return 'h1';\n}\nfunction glitch_text_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  var _attrs$module$advance;\n  const glitchTextEffect = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.glitch_text_effect?.innerContent);\n  const glitchLeaf = getGlitchTextLeafForDynamic((0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.glitch_text?.innerContent));\n  const headingRaw = attrs?.header?.decoration?.font?.font?.desktop?.value?.headingLevel;\n  const Tag = edit_sanitizeHeadingTag(headingRaw);\n  const baseClass = `dsm-glitch-text et_pb_module_header dsm-glitch-effect-type-${glitchTextEffect}`;\n  const usesPseudoChromatic = 'one' === glitchTextEffect || 'two' === glitchTextEffect || 'four' === glitchTextEffect || 'five' === glitchTextEffect;\n  const className = usesPseudoChromatic ? `${baseClass} dsm-glitch-text-effect` : baseClass;\n  const moduleLinkUrl = (_attrs$module$advance = attrs?.module?.advanced?.link?.desktop?.value?.url) !== null && _attrs$module$advance !== void 0 ? _attrs$module$advance : '';\n  const hasModuleLink = typeof moduleLinkUrl === 'string' && '' !== moduleLinkUrl.trim();\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    moduleClassName: \"dsm_glitch_text\",\n    name: name,\n    scriptDataComponent: glitch_text_edit_ModuleScriptData,\n    stylesComponent: glitch_text_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat, _attrs$module$advance2;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: {\n          ...((_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}),\n          link: (_attrs$module$advance2 = attrs?.module?.advanced?.link) !== null && _attrs$module$advance2 !== void 0 ? _attrs$module$advance2 : {}\n        }\n      }));\n      if (hasModuleLink) {\n        params.classnamesInstance.add('dsm-link');\n      }\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: glitchLeaf\n  }, resolvedPlain => {\n    const plainForAttr = resolvedPlain != null ? String(resolvedPlain) : '';\n    const rendered = elements.render({\n      attrName: 'glitch_text'\n    });\n    const inner = 'three' === glitchTextEffect || 'six' === glitchTextEffect ? /*#__PURE__*/external_vendor_React_default().createElement(\"span\", null, rendered) : rendered;\n    return /*#__PURE__*/(0,external_vendor_React_.createElement)(Tag, {\n      className,\n      'data-dsm-glitch-text': plainForAttr\n    }, inner);\n  }));\n}\n/* harmony default export */ const glitch_text_edit = (glitch_text_edit_Edit);\n;// ./packages/module-library/glitch-text/conversion-outline.js\nconst glitch_text_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    margin_padding: 'module.decoration.spacing',\n    max_width: 'module.decoration.sizing',\n    height: 'module.decoration.sizing',\n    link_options: 'module.advanced.link',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    fonts: {\n      header: 'header.decoration.font'\n    },\n    text: 'module.advanced.text'\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    glitch_text: 'glitch_text.innerContent.*.text',\n    glitch_text_effect: 'glitch_text_effect.innerContent.*',\n    glitch_one_color_one: 'glitch_one_color_one.innerContent.*',\n    glitch_one_color_two: 'glitch_one_color_two.innerContent.*',\n    glitch_two_color_one: 'glitch_two_color_one.innerContent.*',\n    glitch_two_color_two: 'glitch_two_color_two.innerContent.*',\n    header_level: 'header.decoration.font.font.*.headingLevel',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/glitch-text/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmGlitchText', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/glitch-text': {\n      name: 'divi-supreme/glitch-text',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 9.464844 12.320312 C 9.5625 12.34375 9.660156 12.359375 9.78125 12.359375 L 9.507812 12.359375 C 9.492188 12.347656 9.476562 12.332031 9.464844 12.320312 Z M 9.464844 12.320312 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 10.953125 7.605469 C 11.070312 7.640625 11.171875 7.699219 11.257812 7.753906 C 11.226562 7.796875 11.15625 7.808594 11.117188 7.761719 C 11.074219 7.714844 11.023438 7.65625 10.953125 7.605469 Z M 10.953125 7.605469 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 7.375 11.367188 C 7.375 11.367188 7.417969 11.808594 7.195312 12.160156 C 7.148438 12.234375 7.09375 12.300781 7.019531 12.359375 L 6.003906 12.359375 C 7.109375 12.359375 7.003906 11.164062 7.003906 11.164062 L 7.003906 7.546875 L 7.375 7.546875 Z M 7.375 11.367188 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.277344 5.589844 L 11.277344 5.792969 L 4.875 5.792969 L 4.875 7.566406 C 4.785156 7.628906 4.71875 7.703125 4.660156 7.765625 C 4.609375 7.824219 4.503906 7.785156 4.503906 7.703125 L 4.503906 5.589844 Z M 11.277344 5.589844 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.257812 7.753906 C 11.171875 7.691406 11.070312 7.640625 10.953125 7.605469 C 10.839844 7.566406 10.714844 7.546875 10.5625 7.546875 L 10.261719 7.546875 C 10.609375 7.566406 10.835938 7.746094 10.964844 7.898438 C 11.042969 7.992188 11.167969 8.015625 11.28125 7.976562 C 11.335938 7.953125 11.378906 7.921875 11.410156 7.886719 C 11.367188 7.839844 11.320312 7.796875 11.257812 7.753906 Z M 9.46875 12.320312 C 9.484375 12.335938 9.492188 12.347656 9.507812 12.359375 L 7.019531 12.359375 C 7.09375 12.300781 7.148438 12.226562 7.195312 12.160156 L 6.925781 12.160156 C 7.234375 11.773438 7.210938 11.242188 7.207031 11.15625 L 7.207031 7.546875 L 6.800781 7.546875 L 6.800781 11.183594 C 6.800781 11.1875 6.835938 11.664062 6.582031 11.945312 C 6.445312 12.09375 6.257812 12.160156 6.003906 12.160156 L 6.003906 12.5625 L 9.78125 12.5625 L 9.78125 12.160156 C 9.550781 12.160156 9.378906 12.101562 9.246094 11.988281 C 9.289062 12.101562 9.363281 12.222656 9.46875 12.320312 Z M 4.304688 5.390625 L 4.304688 7.703125 C 4.304688 7.824219 4.378906 7.933594 4.492188 7.976562 C 4.609375 8.015625 4.734375 7.984375 4.8125 7.898438 C 4.832031 7.875 4.855469 7.847656 4.875 7.828125 L 4.875 7.328125 C 4.8125 7.363281 4.753906 7.40625 4.703125 7.449219 L 4.703125 5.789062 L 11.078125 5.789062 L 11.078125 5.792969 L 11.480469 5.792969 L 11.480469 5.390625 Z M 4.304688 5.390625 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.800781 7.542969 L 5.960938 7.546875 C 5.492188 7.546875 5.191406 7.78125 5.03125 7.96875 C 4.980469 8.03125 4.875 7.992188 4.875 7.90625 L 4.875 7.828125 C 5.019531 7.6875 5.25 7.542969 5.589844 7.542969 Z M 6.800781 7.542969 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 9.78125 12.503906 C 9.886719 12.539062 10.011719 12.554688 10.152344 12.554688 L 6.371094 12.554688 C 6.402344 12.554688 6.429688 12.554688 6.457031 12.550781 C 6.703125 12.535156 6.882812 12.460938 7.015625 12.351562 L 9.503906 12.351562 C 9.582031 12.421875 9.671875 12.46875 9.78125 12.503906 Z M 9.78125 12.503906 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 9.246094 11.980469 C 9.230469 11.964844 9.214844 11.957031 9.203125 11.941406 C 8.945312 11.660156 8.984375 11.183594 8.984375 11.179688 L 8.984375 7.535156 L 10.195312 7.535156 C 10.222656 7.535156 10.242188 7.535156 10.269531 7.542969 C 9.632812 7.542969 9.15625 7.542969 9.15625 7.542969 L 9.15625 11.363281 C 9.152344 11.367188 9.125 11.679688 9.246094 11.980469 Z M 9.246094 11.980469 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 10.152344 12.761719 L 6.371094 12.761719 L 6.371094 12.359375 C 6.628906 12.359375 6.816406 12.285156 6.953125 12.144531 C 7.214844 11.863281 7.175781 11.386719 7.171875 11.382812 L 7.171875 7.746094 L 5.960938 7.746094 C 5.570312 7.746094 5.324219 7.9375 5.183594 8.101562 C 5.105469 8.195312 4.980469 8.226562 4.863281 8.179688 C 4.75 8.136719 4.675781 8.027344 4.675781 7.90625 L 4.675781 5.589844 L 11.851562 5.589844 L 11.851562 7.902344 C 11.851562 8.023438 11.777344 8.132812 11.664062 8.171875 C 11.550781 8.214844 11.425781 8.183594 11.347656 8.09375 C 11.207031 7.933594 10.960938 7.738281 10.570312 7.738281 L 9.359375 7.738281 L 9.359375 11.378906 C 9.359375 11.382812 9.320312 11.855469 9.578125 12.140625 C 9.710938 12.285156 9.902344 12.351562 10.15625 12.351562 L 10.15625 12.761719 Z M 7.296875 12.359375 L 9.234375 12.359375 C 8.925781 11.972656 8.945312 11.441406 8.957031 11.355469 L 8.957031 7.34375 L 10.570312 7.34375 C 10.960938 7.34375 11.253906 7.484375 11.457031 7.644531 L 11.457031 5.992188 L 5.078125 5.992188 L 5.078125 7.644531 C 5.28125 7.484375 5.570312 7.34375 5.964844 7.34375 L 7.578125 7.34375 L 7.578125 11.355469 C 7.578125 11.441406 7.605469 11.972656 7.296875 12.359375 Z M 7.296875 12.359375 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 4.875 4.640625 C 4.476562 4.640625 4.152344 4.316406 4.152344 3.921875 C 4.152344 3.523438 4.476562 3.199219 4.875 3.199219 C 5.269531 3.199219 5.59375 3.523438 5.59375 3.921875 C 5.59375 4.316406 5.269531 4.640625 4.875 4.640625 Z M 4.875 3.597656 C 4.695312 3.597656 4.554688 3.742188 4.554688 3.921875 C 4.554688 4.097656 4.703125 4.242188 4.878906 4.242188 C 5.058594 4.242188 5.203125 4.097656 5.203125 3.921875 C 5.203125 3.742188 5.050781 3.597656 4.875 3.597656 Z M 4.875 3.597656 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.558594 10.871094 C 11.164062 10.871094 10.839844 10.546875 10.839844 10.152344 C 10.839844 9.753906 11.164062 9.429688 11.558594 9.429688 C 11.957031 9.429688 12.28125 9.753906 12.28125 10.152344 C 12.28125 10.546875 11.957031 10.871094 11.558594 10.871094 Z M 11.558594 9.828125 C 11.382812 9.828125 11.234375 9.972656 11.234375 10.152344 C 11.234375 10.328125 11.382812 10.472656 11.558594 10.472656 C 11.738281 10.472656 11.882812 10.328125 11.882812 10.152344 C 11.882812 9.972656 11.738281 9.828125 11.558594 9.828125 Z M 11.558594 9.828125 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 3.199219 7.644531 L 5.199219 7.644531 L 5.199219 8.398438 L 3.199219 8.398438 Z M 3.199219 7.644531 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.089844 9.757812 L 8.089844 9.757812 L 8.089844 10.511719 L 6.089844 10.511719 Z M 6.089844 9.757812 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 4.503906 12.007812 L 6.503906 12.007812 L 6.503906 12.761719 L 4.503906 12.761719 Z M 4.503906 12.007812 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 9.519531 4.191406 L 11.515625 4.191406 L 11.515625 4.941406 L 9.519531 4.941406 Z M 9.519531 4.191406 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 9.65625 11.632812 L 11.65625 11.632812 L 11.65625 12.382812 L 9.65625 12.382812 Z M 9.65625 11.632812 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/glitch-text/index.js\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\nconst glitch_text_defaultAttrs = glitch_text_module_default_render_attributes_namespaceObject;\nconst glitchTextModule = {\n  metadata: glitch_text_module_namespaceObject,\n  conversionOutline: glitch_text_conversion_outline_conversionOutline,\n  renderers: {\n    edit: glitch_text_edit,\n    styles: glitch_text_module_styles_ModuleStyles\n  },\n  defaultAttrs: glitch_text_defaultAttrs,\n  settings: {\n    content: glitch_text_settings_content,\n    design: glitch_text_settings_design,\n    advanced: glitch_text_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    ...glitch_text_module_default_render_attributes_namespaceObject\n  }\n};\n/* harmony default export */ const glitch_text = (glitchTextModule);\n;// ./packages/module-library/gradient-text/module.json\nconst gradient_text_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/gradient-text\",\"d4Shortcode\":\"dsm_gradient_text\",\"title\":\"Supreme Gradient Text\",\"titles\":\"Supreme Gradient Text\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/gradient-text\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-gradient-text\",\"default\":{\"decoration\":{\"background\":{\"desktop\":{\"value\":{\"gradient\":{\"direction\":\"180deg\",\"enabled\":\"on\"}}}}}},\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"gradient_text\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-gradient-text.et_pb_module_header\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":{\"text\":\"Supreme Gradient Text\"}}}},\"attributes\":{\"class\":\"dsm-gradient-text et_pb_module_header\"},\"tagName\":\"h1\",\"inlineEditor\":\"plainText\",\"elementType\":\"headingLink\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-gradient-text.et_pb_module_header\",\"hover\":\"{{selector}}:hover .dsm-gradient-text.et_pb_module_header\"}}}}},\"css\":{\"type\":\"object\",\"inlineEditor\":\"codemirror\",\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/gradient-text/settings-content.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\nfunction gradient_text_settings_content_SettingsContent({\n  defaultSettingsAttrs\n}) {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"gradient_text.innerContent\",\n    subName: \"text\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Gradient Text', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const gradient_text_settings_content = (gradient_text_settings_content_SettingsContent);\n;// ./packages/module-library/gradient-text/settings-design.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\nfunction gradient_text_settings_design_SettingsDesign() {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextGroup, {\n    fields: {\n      color: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"gradient_text.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title Text', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: true\n      },\n      color: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const gradient_text_settings_design = (gradient_text_settings_design_SettingsDesign);\n;// ./packages/module-library/gradient-text/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction gradient_text_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_gradient_text\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const gradient_text_settings_advanced = (gradient_text_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/gradient-text/module-styles.js\n\n\n\n/**\n * React function component for rendering module style.\n */\nconst gradient_text_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextStyle, {\n    selector: orderClass,\n    attr: attrs?.module?.advanced?.text\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'gradient_text'\n  }));\n};\n;// ./packages/module-library/gradient-text/edit.js\n\n\n// Divi package dependencies.\n\n\n\n// Custom dependencies.\n\n\n\n/**\n * React function component for registering module script data.\n */\nconst gradient_text_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction gradient_text_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: gradient_text_edit_ModuleScriptData,\n    stylesComponent: gradient_text_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", null, elements.render({\n    attrName: 'gradient_text'\n  })));\n}\n/* harmony default export */ const gradient_text_edit = (gradient_text_edit_Edit);\n;// ./packages/module-library/gradient-text/conversion-outline.js\nconst gradient_text_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    disabled_on: 'module.decoration.disabledOn',\n    borders: {\n      default: 'module.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow'\n    },\n    module: 'module.advanced.htmlAttributes',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    text: 'module.advanced.text',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    text_shadow: {\n      default: 'module.advanced.text.textShadow'\n    },\n    fonts: {\n      header: 'gradient_text.decoration.font'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    gradient_text: 'gradient_text.innerContent.*.text',\n    header_level: 'gradient_text.decoration.font.font.*.headingLevel',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/gradient-text/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmGradientText', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/gradient-text': {\n      name: 'divi-supreme/gradient-text',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 10.21875 12.273438 L 5.753906 12.273438 L 5.753906 11.800781 C 6.058594 11.800781 6.277344 11.714844 6.4375 11.550781 C 6.746094 11.21875 6.703125 10.660156 6.699219 10.65625 L 6.699219 6.378906 L 5.269531 6.378906 C 4.804688 6.378906 4.515625 6.605469 4.351562 6.792969 C 4.257812 6.90625 4.109375 6.941406 3.972656 6.886719 C 3.839844 6.832031 3.753906 6.710938 3.753906 6.5625 L 3.753906 3.84375 L 12.226562 3.84375 L 12.226562 6.5625 C 12.226562 6.703125 12.140625 6.832031 12.003906 6.878906 C 11.871094 6.929688 11.722656 6.894531 11.628906 6.789062 C 11.460938 6.597656 11.171875 6.371094 10.710938 6.371094 L 9.28125 6.371094 L 9.28125 10.648438 C 9.28125 10.65625 9.238281 11.214844 9.539062 11.542969 C 9.699219 11.714844 9.921875 11.796875 10.222656 11.796875 L 10.222656 12.273438 Z M 6.847656 11.800781 L 9.132812 11.800781 C 8.769531 11.347656 8.792969 10.722656 8.804688 10.625 L 8.804688 5.90625 L 10.710938 5.90625 C 11.171875 5.90625 11.519531 6.070312 11.757812 6.261719 L 11.757812 4.316406 L 4.226562 4.316406 L 4.226562 6.261719 C 4.46875 6.070312 4.804688 5.90625 5.273438 5.90625 L 7.179688 5.90625 L 7.179688 10.625 C 7.179688 10.722656 7.210938 11.347656 6.847656 11.800781 Z M 6.847656 11.800781 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 2.449219 3.292969 C 1.980469 3.292969 1.601562 2.914062 1.601562 2.445312 C 1.601562 1.980469 1.980469 1.601562 2.449219 1.601562 C 2.917969 1.601562 3.300781 1.980469 3.300781 2.445312 C 3.300781 2.914062 2.917969 3.292969 2.449219 3.292969 Z M 2.449219 2.074219 C 2.242188 2.074219 2.070312 2.246094 2.070312 2.453125 C 2.070312 2.660156 2.242188 2.832031 2.449219 2.832031 C 2.660156 2.832031 2.832031 2.660156 2.832031 2.453125 C 2.832031 2.246094 2.660156 2.074219 2.449219 2.074219 Z M 2.449219 2.074219 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 3.984375 13.980469 C 3.515625 13.980469 3.136719 13.601562 3.136719 13.132812 C 3.136719 12.667969 3.515625 12.289062 3.984375 12.289062 C 4.453125 12.289062 4.835938 12.667969 4.835938 13.132812 C 4.835938 13.601562 4.453125 13.980469 3.984375 13.980469 Z M 3.984375 12.753906 C 3.777344 12.753906 3.605469 12.925781 3.605469 13.132812 C 3.605469 13.34375 3.777344 13.515625 3.984375 13.515625 C 4.195312 13.515625 4.367188 13.34375 4.367188 13.132812 C 4.367188 12.925781 4.195312 12.753906 3.984375 12.753906 Z M 3.984375 12.753906 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 13.113281 13.980469 C 12.644531 13.980469 12.261719 13.601562 12.261719 13.132812 C 12.261719 12.667969 12.644531 12.289062 13.113281 12.289062 C 13.582031 12.289062 13.964844 12.667969 13.964844 13.132812 C 13.96875 13.601562 13.585938 13.980469 13.113281 13.980469 Z M 13.113281 12.753906 C 12.902344 12.753906 12.730469 12.925781 12.730469 13.132812 C 12.730469 13.34375 12.902344 13.515625 13.113281 13.515625 C 13.324219 13.515625 13.496094 13.34375 13.496094 13.132812 C 13.496094 12.925781 13.324219 12.753906 13.113281 12.753906 Z M 13.113281 12.753906 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/gradient-text/index.js\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\nconst gradientTextModule = {\n  metadata: gradient_text_module_namespaceObject,\n  conversionOutline: gradient_text_conversion_outline_conversionOutline,\n  renderers: {\n    edit: gradient_text_edit,\n    styles: gradient_text_module_styles_ModuleStyles\n  },\n  settings: {\n    content: gradient_text_settings_content,\n    design: gradient_text_settings_design,\n    advanced: gradient_text_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {\n        background: {\n          desktop: {\n            value: {\n              gradient: {\n                direction: '180deg',\n                enabled: 'on'\n              }\n            }\n          }\n        }\n      }\n    },\n    gradient_text: {\n      decoration: {\n        font: {\n          font: {\n            desktop: {\n              value: {\n                headingLevel: 'h1'\n              }\n            }\n          }\n        }\n      },\n      innerContent: {\n        desktop: {\n          value: {\n            text: 'Supreme Gradient Text'\n          }\n        }\n      }\n    }\n  }\n};\n/* harmony default export */ const gradient_text = (gradientTextModule);\n;// ./packages/module-library/icon-divider/module.json\nconst icon_divider_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/icon-divider\",\"d4Shortcode\":\"dsm_icon_divider\",\"title\":\"Supreme Icon Divider\",\"titles\":\"Supreme Icon Dividers\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/icon-divider\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"use_icon\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"font_icon\":{\"type\":\"object\",\"inlineEditor\":\"IconPickerContainer\",\"selector\":\"{{selector}} .et-pb-icon\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image\":{\"type\":\"object\",\"elementType\":\"image\",\"selector\":\"{{selector}} .dsm-icon-divider-image img\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_circle\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"circle_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_circle_border\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"circle_border_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_icon_font_size\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"icon_font_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_max_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"icon_gap\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"divider_weight\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"divider_style\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"divider_position\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"align\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_icon\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-icon-divider-image .dsm-icon-divider-image-wrap\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"filter\":{\"selector\":\"{{selector}} .dsm-icon-divider-image\"},\"border\":{\"selector\":\"{{selector}} .dsm-icon-divider-image .dsm-icon-divider-image-wrap\",\"important\":false},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-icon-divider-image .dsm-icon-divider-image-wrap\",\"useOverlay\":true}}}}}');\n;// ./packages/module-library/icon-divider/module-default-render-attributes.json\nconst icon_divider_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"module\":{\"decoration\":{}},\"use_icon\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"font_icon\":{\"innerContent\":{\"desktop\":{\"value\":{\"type\":\"divi\",\"unicode\":\"&#xe078;\",\"weight\":\"400\"}}}},\"image\":{\"innerContent\":{\"desktop\":{\"value\":{\"src\":\"\"}}}},\"icon_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"use_circle\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"circle_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"use_circle_border\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"circle_border_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"use_icon_font_size\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"icon_font_size\":{\"innerContent\":{\"desktop\":{\"value\":\"96px\"}}},\"image_max_width\":{\"innerContent\":{\"desktop\":{\"value\":\"50%\"}}},\"icon_gap\":{\"innerContent\":{\"desktop\":{\"value\":\"10px\"}}},\"color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"divider_weight\":{\"innerContent\":{\"desktop\":{\"value\":\"1px\"}}},\"divider_style\":{\"innerContent\":{\"desktop\":{\"value\":\"solid\"}}},\"divider_position\":{\"innerContent\":{\"desktop\":{\"value\":\"center\"}}},\"align\":{\"innerContent\":{\"desktop\":{\"value\":\"center\"}}},\"image_icon\":{\"decoration\":{}}}');\n;// ./packages/module-library/icon-divider/icon-divider-vb-default-attrs.js\n/**\n * Visual Builder `defaultAttr` map from `module-default-render-attributes.json`.\n *\n * @package DiviSupreme\n */\n\n\nconst iconDividerFieldDefaultInnerContent = Object.fromEntries(Object.entries(icon_divider_module_default_render_attributes_namespaceObject).filter(([, attr]) => attr && typeof attr === 'object' && attr.innerContent).map(([key, attr]) => [key, attr.innerContent]));\n\n/** @type {typeof iconDividerFieldDefaultInnerContent} */\nconst iconDividerFd = iconDividerFieldDefaultInnerContent;\n\n/** Must match `index.js` placeholder `image.innerContent`. */\nconst iconDividerImageUploadVbDefaultAttr = {\n  desktop: {\n    value: {\n      src: 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTA4MCIgaGVpZ2h0PSI1NDAiIHZpZXdCb3g9IjAgMCAxMDgwIDU0MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPHBhdGggZmlsbD0iI0VCRUJFQiIgZD0iTTAgMGgxMDgwdjU0MEgweiIvPgogICAgICAgIDxwYXRoIGQ9Ik00NDUuNjQ5IDU0MGgtOTguOTk1TDE0NC42NDkgMzM3Ljk5NSAwIDQ4Mi42NDR2LTk4Ljk5NWwxMTYuMzY1LTExNi4zNjVjMTUuNjItMTUuNjIgNDAuOTQ3LTE1LjYyIDU2LjU2OCAwTDQ0NS42NSA1NDB6IiBmaWxsLW9wYWNpdHk9Ii4xIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgICAgICA8Y2lyY2xlIGZpbGwtb3BhY2l0eT0iLjA1IiBmaWxsPSIjMDAwIiBjeD0iMzMxIiBjeT0iMTQ4IiByPSI3MCIvPgogICAgICAgIDxwYXRoIGQ9Ik0xMDgwIDM3OXYxMTMuMTM3TDcyOC4xNjIgMTQwLjMgMzI4LjQ2MiA1NDBIMjE1LjMyNEw2OTkuODc4IDU1LjQ0NmMxNS42Mi0xNS42MiA0MC45NDgtMTUuNjIgNTYuNTY4IDBMMTA4MCAzNzl6IiBmaWxsLW9wYWNpdHk9Ii4yIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgIDwvZz4KPC9zdmc+Cg=='\n    }\n  }\n};\n;// ./packages/module-library/icon-divider/settings-content.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\n\nfunction icon_divider_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  const useIconImage = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_icon?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image & Icon', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: iconDividerFd.use_icon,\n    attrName: \"use_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Icon', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose whether icon set below should be used.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: iconDividerImageUploadVbDefaultAttr,\n    attrName: \"image.innerContent\",\n    subName: \"src\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Upload an image to display at the top of your blurb.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' !== useIconImage,\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: iconDividerFd.font_icon,\n    attrName: \"font_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Choose an icon to display with your blurb.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useIconImage\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const icon_divider_settings_content = (icon_divider_settings_content_SettingsContent);\n;// ./packages/module-library/icon-divider/settings-design.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\nfunction icon_divider_settings_design_SettingsDesign({\n  attrs\n}) {\n  const useIconImage = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_icon?.innerContent);\n  const useCircle = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_circle?.innerContent);\n  const useCircleBorder = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_circle_border?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"image_icon\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image & Icon', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"icon_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom color for your icon.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useIconImage\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: iconDividerFd.use_circle,\n    attrName: \"use_circle.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Circle Icon', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose whether icon set above should display within a circle.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useIconImage\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: iconDividerFd.circle_color,\n    attrName: \"circle_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Circle Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom color for the icon circle.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useIconImage && 'on' === useCircle\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: iconDividerFd.use_circle_border,\n    attrName: \"use_circle_border.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Circle Border', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose whether if the icon circle border should display.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useIconImage && 'on' === useCircle\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: iconDividerFd.circle_border_color,\n    attrName: \"circle_border_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Circle Border Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom color for the icon circle border.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useIconImage && 'on' === useCircle && 'on' === useCircleBorder\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: iconDividerFd.use_icon_font_size,\n    attrName: \"use_icon_font_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Icon Font Size', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    visible: 'on' === useIconImage\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: iconDividerFd.icon_font_size,\n    attrName: \"icon_font_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Font Size', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    visible: 'on' === useIconImage && 'on' === attrs?.use_icon_font_size?.innerContent?.desktop?.value\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 120,\n    allowedUnits: ['%', 'em', 'rem', 'px', 'cm', 'mm', 'in', 'pt', 'pc', 'ex', 'vh', 'vw']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    attrName: \"image_icon.decoration.border\",\n    grouped: false,\n    visible: 'on' !== useIconImage\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    grouped: false,\n    attrName: \"image_icon.decoration.boxShadow\",\n    visible: 'on' !== useIconImage\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, {\n    attrName: \"image_icon.decoration.filters\",\n    visible: 'on' !== useIconImage,\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"alignment\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: iconDividerFd.align,\n    attrName: \"align.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"color\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Color', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: iconDividerFd.color,\n    attrName: \"color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('This will adjust the color of the 1px divider line.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"style\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Styles', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: iconDividerFd.divider_style,\n    attrName: \"divider_style.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Divider Style', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      solid: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Solid', 'dsm-supreme-modules-pro-for-divi')\n      },\n      dashed: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Dashed', 'dsm-supreme-modules-pro-for-divi')\n      },\n      dotted: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Dotted', 'dsm-supreme-modules-pro-for-divi')\n      },\n      double: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Double', 'dsm-supreme-modules-pro-for-divi')\n      },\n      groove: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Groove', 'dsm-supreme-modules-pro-for-divi')\n      },\n      ridge: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Ridge', 'dsm-supreme-modules-pro-for-divi')\n      },\n      inset: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inset', 'dsm-supreme-modules-pro-for-divi')\n      },\n      outset: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Outset', 'dsm-supreme-modules-pro-for-divi')\n      },\n      none: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('none', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: iconDividerFd.divider_position,\n    attrName: \"divider_position.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Divider Position', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      'flex-start': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Vertically Centered', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'flex-end': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"sizing\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Sizing', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: iconDividerFd.image_max_width,\n    attrName: \"image_max_width.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Width', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    visible: 'on' !== useIconImage\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: \"%\",\n    allowedUnits: ['%', 'px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: iconDividerFd.divider_weight,\n    attrName: \"divider_weight.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Divider Weight', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    allowedUnits: ['%', 'em', 'rem', 'px', 'cm', 'mm', 'in', 'pt', 'pc', 'ex', 'vh', 'vw']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: iconDividerFd.icon_gap,\n    attrName: \"icon_gap.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Gap', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: \"px\",\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, {\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const icon_divider_settings_design = (icon_divider_settings_design_SettingsDesign);\n;// ./packages/module-library/icon-divider/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction icon_divider_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_icon_divider\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const icon_divider_settings_advanced = (icon_divider_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/icon-divider/module-styles.js\n\n\n\n\n/**\n * Match PHP {@see IconDivider::icon_divider_font_icon_style_declaration()}: IconPicker may nest under `settings`.\n * Do not emit `content` — the glyph is inline in the DOM.\n *\n * @param {{ attrValue?: Record<string, unknown> }} attr CommonStyle params.\n * @return {string} CSS declarations.\n */\nconst iconDividerEtIconFontCss = attr => {\n  const raw = attr?.attrValue;\n  let leaf = raw && 'object' === typeof raw ? {\n    ...raw\n  } : {};\n  if (leaf.settings && 'object' === typeof leaf.settings) {\n    leaf = {\n      ...leaf.settings\n    };\n  }\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'font-family': true,\n      'font-weight': true\n    }\n  });\n  if (leaf.type) {\n    const fontFamily = 'fa' === leaf.type ? 'FontAwesome' : 'ETmodules';\n    declarations.add('font-family', `'${fontFamily}'`);\n  }\n  if (leaf.weight) {\n    declarations.add('font-weight', String(leaf.weight));\n  }\n  return declarations.value;\n};\n\n/**\n * React function component for rendering module style.\n */\nconst icon_divider_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  const useIcon = attrs?.use_icon?.innerContent?.desktop?.value;\n  const useIconFontSize = attrs?.use_icon_font_size?.innerContent?.desktop?.value;\n  const useCircle = attrs?.use_circle?.innerContent?.desktop?.value;\n  const useCircleBorder = attrs?.use_circle_border?.innerContent?.desktop?.value;\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-icon-divider-image .et-pb-icon`,\n    attr: attrs?.font_icon?.innerContent,\n    declarationFunction: iconDividerEtIconFontCss\n  }), elements.style({\n    attrName: 'image_icon'\n  }), elements.style({\n    attrName: 'image_max_width'\n  }), elements.style({\n    attrName: 'color'\n  }), elements.style({\n    attrName: 'divider_weight'\n  }), elements.style({\n    attrName: 'divider_style'\n  }), elements.style({\n    attrName: 'icon_gap'\n  }), 'on' === useIcon && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et-pb-icon`,\n    attr: attrs?.icon_color?.innerContent,\n    property: \"color\"\n  }), 'on' === useIcon && 'on' === useIconFontSize && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et-pb-icon`,\n    attr: attrs?.icon_font_size?.innerContent,\n    property: \"font-size\"\n  }), 'on' === useIcon && 'on' === useCircle && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et-pb-icon.et-pb-icon-circle`,\n    attr: attrs?.circle_color?.innerContent,\n    property: \"background-color\"\n  }), 'on' === useIcon && 'on' === useCircle && 'on' === useCircleBorder && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et-pb-icon.et-pb-icon-circle.et-pb-icon-circle-border`,\n    attr: attrs?.circle_border_color?.innerContent,\n    property: \"border-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-icon-divider-image`,\n    attr: attrs?.image_max_width?.innerContent,\n    property: \"max-width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-divider`,\n    attr: attrs?.color?.innerContent,\n    property: \"border-top-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-divider`,\n    attr: attrs?.divider_weight?.innerContent,\n    property: \"border-top-width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-divider`,\n    attr: attrs?.divider_style?.innerContent,\n    property: \"border-top-style\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-icon-divider-wrapper`,\n    attr: attrs?.icon_gap?.innerContent,\n    property: \"gap\"\n  }));\n};\n;// ./packages/module-library/icon-divider/edit.js\n\n\n// Divi package dependencies.\n\n\n// Custom dependencies.\n\n\n\n\n\n\n/**\n * @param {*} raw From getAttrByMode( attrs.image.innerContent ).\n * @return {string}\n */\nfunction icon_divider_edit_getUploadValueForDynamicData(raw) {\n  if (raw == null || raw === '') {\n    return '';\n  }\n  if (typeof raw === 'string' || typeof raw === 'number') {\n    return String(raw);\n  }\n  if (typeof raw === 'object') {\n    if (typeof raw.src === 'string' && raw.src !== '') {\n      return raw.src;\n    }\n    if (typeof raw.url === 'string' && raw.url !== '') {\n      return raw.url;\n    }\n  }\n  return '';\n}\n\n/**\n * React function component for registering module script data.\n */\nconst icon_divider_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction icon_divider_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  const dividerAlignmentAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.align?.innerContent);\n  const dividerPositionAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.divider_position?.innerContent);\n  const dividerAlignment = `dsm-icon-divider-align-${dividerAlignmentAttr}`;\n  const dividerPosition = `dsm-icon-divider-vertical-position-${dividerPositionAttr}`;\n  const useIconImage = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_icon?.innerContent);\n  const imageRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.image?.innerContent);\n  const useCircle = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_circle?.innerContent);\n  const useCircleBorder = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_circle_border?.innerContent);\n  const iconPickerVal = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.font_icon?.innerContent);\n  const hasPickerIcon = 'on' === useIconImage && iconPickerVal && 'object' === typeof iconPickerVal && (iconPickerVal.unicode || iconPickerVal.type);\n  let iconClass = 'et-pb-icon';\n  if ('on' === useCircle) {\n    iconClass += ' et-pb-icon-circle';\n  }\n  if ('on' === useCircle && 'on' === useCircleBorder) {\n    iconClass += ' et-pb-icon-circle-border';\n  }\n  const iconHostClassName = iconClass.split(' ').filter(className => 'et-pb-icon' !== className).join(' ');\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    moduleClassName: \"dsm_icon_divider\",\n    name: name,\n    scriptDataComponent: icon_divider_edit_ModuleScriptData,\n    stylesComponent: icon_divider_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: `dsm-icon-divider-wrapper ${dividerAlignment} ${dividerPosition}`\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-icon-divider-before dsm-divider\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: `dsm-icon-divider-image ${'on' === useIconImage ? '' : 'dsm-image'}`\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm-icon-divider-image-wrap\"\n  }, hasPickerIcon && /*#__PURE__*/external_vendor_React_default().createElement(ModuleIconHost, {\n    icon: iconPickerVal,\n    className: iconHostClassName,\n    nativeRender: \"inline\"\n  }), 'on' !== useIconImage && /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: icon_divider_edit_getUploadValueForDynamicData(imageRaw)\n  }, resolved => resolved ? /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n    src: resolved,\n    alt: \"\"\n  }) : null))), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-icon-divider-after dsm-divider\"\n  })));\n}\n/* harmony default export */ const icon_divider_edit = (icon_divider_edit_Edit);\n;// ./packages/module-library/icon-divider/conversion-outline.js\n\nconst icon_divider_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    disabled_on: 'module.decoration.disabledOn',\n    borders: {\n      default: 'module.decoration.border',\n      image: 'image_icon.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow',\n      image: 'image_icon.decoration.boxShadow'\n    },\n    filters: {\n      default: 'module.decoration.filters',\n      child: 'image_icon.decoration.filters'\n    },\n    link_options: 'module.advanced.link',\n    margin_padding: 'module.decoration.spacing',\n    max_width: 'module.decoration.sizing',\n    height: 'module.decoration.sizing',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex'\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    use_icon: 'use_icon.innerContent.*',\n    font_icon: 'font_icon.innerContent.*',\n    image: 'image.innerContent.*.src',\n    icon_color: 'icon_color.innerContent.*',\n    use_circle: 'use_circle.innerContent.*',\n    circle_color: 'circle_color.innerContent.*',\n    use_circle_border: 'use_circle_border.innerContent.*',\n    circle_border_color: 'circle_border_color.innerContent.*',\n    use_icon_font_size: 'use_icon_font_size.innerContent.*',\n    icon_font_size: 'icon_font_size.innerContent.*',\n    image_max_width: 'image_max_width.innerContent.*',\n    icon_gap: 'icon_gap.innerContent.*',\n    color: 'color.innerContent.*',\n    divider_weight: 'divider_weight.innerContent.*',\n    divider_style: 'divider_style.innerContent.*',\n    divider_position: 'divider_position.innerContent.*',\n    align: 'align.innerContent.*',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    font_icon: external_divi_conversion_namespaceObject.convertFontIcon,\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/icon-divider/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmIconDivider', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/icon-divider': {\n      name: 'divi-supreme/icon-divider',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 3.472656 6.882812 C 3.027344 6.882812 2.667969 6.523438 2.667969 6.078125 C 2.667969 5.636719 3.027344 5.273438 3.472656 5.273438 C 3.914062 5.273438 4.277344 5.636719 4.277344 6.078125 C 4.28125 6.523438 3.921875 6.882812 3.472656 6.882812 Z M 3.472656 5.722656 C 3.273438 5.722656 3.109375 5.886719 3.109375 6.085938 C 3.109375 6.285156 3.273438 6.445312 3.472656 6.445312 C 3.667969 6.445312 3.832031 6.277344 3.832031 6.078125 C 3.832031 5.882812 3.667969 5.722656 3.472656 5.722656 Z M 3.472656 5.722656 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.472656 10.878906 C 12.03125 10.878906 11.667969 10.515625 11.667969 10.074219 C 11.667969 9.628906 12.03125 9.269531 12.472656 9.269531 C 12.917969 9.269531 13.277344 9.628906 13.277344 10.074219 C 13.277344 10.515625 12.917969 10.878906 12.472656 10.878906 Z M 12.472656 9.710938 C 12.273438 9.710938 12.113281 9.875 12.113281 10.074219 C 12.113281 10.269531 12.273438 10.433594 12.472656 10.433594 C 12.671875 10.433594 12.835938 10.269531 12.835938 10.074219 C 12.835938 9.875 12.671875 9.710938 12.472656 9.710938 Z M 12.472656 9.710938 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 8.382812 10.386719 C 8.261719 10.386719 8.152344 10.347656 8.058594 10.265625 C 7.871094 10.101562 7.695312 9.949219 7.539062 9.824219 C 7.066406 9.421875 6.660156 9.070312 6.367188 8.71875 C 6.023438 8.300781 5.859375 7.90625 5.859375 7.460938 C 5.859375 7.03125 6.011719 6.628906 6.285156 6.332031 C 6.566406 6.027344 6.949219 5.859375 7.371094 5.859375 C 7.683594 5.859375 7.976562 5.957031 8.226562 6.15625 C 8.28125 6.195312 8.332031 6.242188 8.382812 6.289062 C 8.429688 6.238281 8.484375 6.195312 8.542969 6.148438 C 8.792969 5.953125 9.085938 5.851562 9.398438 5.851562 C 9.820312 5.851562 10.203125 6.019531 10.484375 6.324219 C 10.757812 6.621094 10.910156 7.023438 10.910156 7.457031 C 10.910156 7.898438 10.746094 8.300781 10.402344 8.714844 C 10.109375 9.0625 9.703125 9.414062 9.234375 9.8125 L 9.210938 9.828125 C 9.0625 9.957031 8.890625 10.101562 8.71875 10.253906 C 8.617188 10.347656 8.5 10.386719 8.382812 10.386719 Z M 7.371094 6.308594 C 7.078125 6.308594 6.8125 6.421875 6.617188 6.632812 C 6.421875 6.847656 6.316406 7.140625 6.316406 7.460938 C 6.316406 7.792969 6.445312 8.101562 6.71875 8.433594 C 6.984375 8.753906 7.375 9.085938 7.832031 9.476562 C 7.992188 9.617188 8.167969 9.769531 8.355469 9.925781 C 8.371094 9.945312 8.402344 9.945312 8.414062 9.925781 C 8.589844 9.769531 8.761719 9.625 8.914062 9.496094 L 8.9375 9.476562 C 9.394531 9.09375 9.785156 8.753906 10.050781 8.433594 C 10.324219 8.101562 10.453125 7.792969 10.453125 7.460938 C 10.453125 7.140625 10.34375 6.84375 10.152344 6.632812 C 9.957031 6.421875 9.691406 6.308594 9.398438 6.308594 C 9.183594 6.308594 8.984375 6.378906 8.816406 6.511719 C 8.722656 6.582031 8.640625 6.667969 8.570312 6.769531 L 8.390625 7.019531 L 8.210938 6.769531 C 8.132812 6.667969 8.050781 6.582031 7.964844 6.511719 C 7.777344 6.371094 7.585938 6.308594 7.371094 6.308594 Z M 7.371094 6.308594 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 4.464844 4.265625 L 12.289062 4.265625 L 12.289062 4.714844 L 4.464844 4.714844 Z M 4.464844 4.265625 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 4.464844 11.640625 L 4.839844 11.640625 L 4.839844 12.089844 L 4.464844 12.089844 Z M 4.464844 11.640625 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.136719 12.089844 L 10.351562 12.089844 L 10.351562 11.640625 L 11.136719 11.640625 Z M 9.5625 12.089844 L 8.777344 12.089844 L 8.777344 11.640625 L 9.5625 11.640625 Z M 7.988281 12.089844 L 7.203125 12.089844 L 7.203125 11.640625 L 7.988281 11.640625 Z M 6.417969 12.089844 L 5.628906 12.089844 L 5.628906 11.640625 L 6.417969 11.640625 Z M 6.417969 12.089844 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.925781 11.640625 L 12.296875 11.640625 L 12.296875 12.089844 L 11.925781 12.089844 Z M 11.925781 11.640625 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/icon-divider/index.js\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\nconst iconDividerPlaceholderSrc = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTA4MCIgaGVpZ2h0PSI1NDAiIHZpZXdCb3g9IjAgMCAxMDgwIDU0MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPHBhdGggZmlsbD0iI0VCRUJFQiIgZD0iTTAgMGgxMDgwdjU0MEgweiIvPgogICAgICAgIDxwYXRoIGQ9Ik00NDUuNjQ5IDU0MGgtOTguOTk1TDE0NC42NDkgMzM3Ljk5NSAwIDQ4Mi42NDR2LTk4Ljk5NWwxMTYuMzY1LTExNi4zNjVjMTUuNjItMTUuNjIgNDAuOTQ3LTE1LjYyIDU2LjU2OCAwTDQ0NS42NSA1NDB6IiBmaWxsLW9wYWNpdHk9Ii4xIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgICAgICA8Y2lyY2xlIGZpbGwtb3BhY2l0eT0iLjA1IiBmaWxsPSIjMDAwIiBjeD0iMzMxIiBjeT0iMTQ4IiByPSI3MCIvPgogICAgICAgIDxwYXRoIGQ9Ik0xMDgwIDM3OXYxMTMuMTM3TDcyOC4xNjIgMTQwLjMgMzI4LjQ2MiA1NDBIMjE1LjMyNEw2OTkuODc4IDU1LjQ0NmMxNS42Mi0xNS42MiA0MC45NDgtMTUuNjIgNTYuNTY4IDBMMTA4MCAzNzl6IiBmaWxsLW9wYWNpdHk9Ii4yIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgIDwvZz4KPC9zdmc+Cg==';\nconst icon_divider_defaultAttrs = {\n  ...icon_divider_module_default_render_attributes_namespaceObject,\n  image: {\n    innerContent: {\n      desktop: {\n        value: {\n          src: iconDividerPlaceholderSrc\n        }\n      }\n    }\n  }\n};\nconst iconDividerModule = {\n  metadata: icon_divider_module_namespaceObject,\n  conversionOutline: icon_divider_conversion_outline_conversionOutline,\n  renderers: {\n    edit: icon_divider_edit,\n    styles: icon_divider_module_styles_ModuleStyles\n  },\n  defaultAttrs: icon_divider_defaultAttrs,\n  settings: {\n    content: icon_divider_settings_content,\n    design: icon_divider_settings_design,\n    advanced: icon_divider_settings_advanced\n  },\n  placeholderContent: {\n    ...icon_divider_defaultAttrs,\n    use_icon: {\n      innerContent: {\n        desktop: {\n          value: 'on'\n        }\n      }\n    },\n    font_icon: {\n      innerContent: {\n        desktop: {\n          value: {\n            type: 'divi',\n            unicode: '&#xe078;',\n            weight: '400'\n          }\n        }\n      }\n    },\n    image: {\n      innerContent: {\n        desktop: {\n          value: {\n            src: iconDividerPlaceholderSrc\n          }\n        }\n      }\n    },\n    align: {\n      innerContent: {\n        desktop: {\n          value: 'center'\n        }\n      }\n    },\n    divider_style: {\n      innerContent: {\n        desktop: {\n          value: 'solid'\n        }\n      }\n    },\n    divider_position: {\n      innerContent: {\n        desktop: {\n          value: 'center'\n        }\n      }\n    },\n    icon_gap: {\n      innerContent: {\n        desktop: {\n          value: '10px'\n        }\n      }\n    },\n    divider_weight: {\n      innerContent: {\n        desktop: {\n          value: '1px'\n        }\n      }\n    }\n  }\n};\n/* harmony default export */ const icon_divider = (iconDividerModule);\n;// ./packages/module-library/image-accordion/module.json\nconst image_accordion_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/image-accordion\",\"d4Shortcode\":\"dsm_image_accordion\",\"title\":\"Supreme Image Accordion\",\"titles\":\"Supreme Image Accordion\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/image-accordion\",\"childrenName\":[\"dsm/image-accordion-child\"],\"childModuleName\":\"dsm/image-accordion-child\",\"childModuleTitle\":\"Supreme Image Accordion\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_image_accordion_wrapper\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}},\"default\":{\"meta\":{\"adminLabel\":{\"desktop\":{\"value\":\"Supreme Image Accordion\"}}},\"decoration\":{\"border\":{\"desktop\":{\"value\":{\"styles\":{\"all\":{\"style\":\"solid\"}}}}}}}},\"image_accordion_title\":{\"type\":\"object\",\"selector\":\"{{selector}} .et_pb_module_header\",\"default\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"headingLevel\":\"h3\"}}}}}},\"tagName\":\"h3\",\"inlineEditor\":\"plainText\",\"elementType\":\"headingLink\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm_image_accordion_title\",\"hover\":\"{{selector}}:hover .dsm_image_accordion_title\"}}}}},\"image_accordion_desc\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_image_accordion_description\",\"inlineEditor\":\"plainText\",\"elementType\":\"headingLink\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm_image_accordion_description\",\"hover\":\"{{selector}}:hover .dsm_image_accordion_description\"}}}}},\"image_accordion_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_accordion_animation\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_accordion_animation_sequence\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"ia_direction\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"ia_height\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"ia_icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPallete\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_ia_icon_font_size\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"ia_icon_font_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"overlay_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPallete\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"ia_overlay_align_horizontal\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"ia_overlay_align_vertical\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"overlay_content_padding\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_icon\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_image_accordion_image_icon_wrapper img, {{selector}} .dsm_image_accordion_image_icon_wrapper .et-pb-icon\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm_image_accordion_image_icon_wrapper img, {{selector}} .dsm_image_accordion_image_icon_wrapper .et-pb-icon\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm_image_accordion_image_icon_wrapper img, {{selector}} .dsm_image_accordion_image_icon_wrapper .et-pb-icon\",\"useOverlay\":true}}},\"button\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_image_accordion_child_content .et_pb_button\",\"default\":{\"decoration\":{\"button\":{\"desktop\":{\"value\":{\"enable\":\"off\",\"icon\":{\"enable\":\"on\",\"onHover\":\"on\"}}}},\"border\":{\"desktop\":{\"value\":{\"styles\":{\"all\":{\"color\":\"\"}}}}},\"font\":{\"font\":{\"desktop\":{\"value\":{\"color\":\"\"}}}}}},\"elementType\":\"button\",\"styleProps\":{\"font\":{\"important\":{\"font\":{\"desktop\":{\"value\":{\"color\":true,\"font-size\":true,\"letter-spacing\":true}}}}},\"spacing\":{\"important\":true}}}}}');\n;// ./packages/module-library/image-accordion/image-accordion-vb-default-attrs.js\n/**\n * D4-aligned `defaultAttr` slices for Image Accordion (parent).\n * Image / upload fields excluded per product request.\n *\n * @package DiviSupreme\n */\n\n/** @type {Record<string, { desktop: { value: string } }>} */\nconst imageAccordionContentDefaultInnerContent = {\n  image_accordion_type: {\n    desktop: {\n      value: 'on_hover'\n    }\n  },\n  image_accordion_animation: {\n    desktop: {\n      value: 'fade_in'\n    }\n  },\n  image_accordion_animation_sequence: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  ia_direction: {\n    desktop: {\n      value: 'horizontal'\n    }\n  },\n  ia_height: {\n    desktop: {\n      value: '380px'\n    }\n  }\n};\n\n/** @type {Record<string, { desktop: { value: string } }>} */\nconst imageAccordionDesignDefaultInnerContent = {\n  ia_icon_color: {\n    desktop: {\n      value: '#ffffff'\n    }\n  },\n  use_ia_icon_font_size: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  ia_icon_font_size: {\n    desktop: {\n      value: '40px'\n    }\n  },\n  ia_overlay_align_horizontal: {\n    desktop: {\n      value: 'center'\n    }\n  },\n  ia_overlay_align_vertical: {\n    desktop: {\n      value: 'center'\n    }\n  }\n};\n;// ./packages/module-library/image-accordion/settings-content.js\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\n\nfunction image_accordion_settings_content_SettingsContent({\n  defaultSettingsAttrs\n}) {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(ChildDraggableModuleList, {\n    childModuleName: \"dsm/image-accordion-child\",\n    addTitle: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Add New Item', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"accordion_setting\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Accordion Settings', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_accordion_type.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Accordion Type', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    defaultAttr: imageAccordionContentDefaultInnerContent.image_accordion_type\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      on_hover: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('By Hover', 'dsm-supreme-modules-pro-for-divi')\n      },\n      on_click: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('By Click', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_accordion_animation.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Accordion Content Animation', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    defaultAttr: imageAccordionContentDefaultInnerContent.image_accordion_animation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      fade_in: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zoom_in: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom In', 'dsm-supreme-modules-pro-for-divi')\n      },\n      push_up: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Push Up', 'dsm-supreme-modules-pro-for-divi')\n      },\n      push_down: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Push Down', 'dsm-supreme-modules-pro-for-divi')\n      },\n      push_left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Push Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      push_right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Push Right', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_accordion_animation_sequence.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Sequenced Animation', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    defaultAttr: imageAccordionContentDefaultInnerContent.image_accordion_animation_sequence\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"ia_direction.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Accordion Direction', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: imageAccordionContentDefaultInnerContent.ia_direction\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      horizontal: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Horizontal', 'dsm-supreme-modules-pro-for-divi')\n      },\n      vertical: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Vertical', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"ia_height.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Accordion Height', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: imageAccordionContentDefaultInnerContent.ia_height\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 1200,\n    step: 10,\n    defaultUnit: \"px\"\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const image_accordion_settings_content = (image_accordion_settings_content_SettingsContent);\n;// ./packages/module-library/image-accordion/settings-design.js\n\n// Wordpress dependencies.\n\n// Divi package dependencies.\n\n\n\n\n\nfunction image_accordion_settings_design_SettingsDesign({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  const useIconFontSizeAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_ia_icon_font_size?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"overlay\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"overlay_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay Color', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"overlay_content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay content', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"ia_overlay_align_horizontal.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Horizontal align', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: imageAccordionDesignDefaultInnerContent.ia_overlay_align_horizontal\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      'flex-start': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'flex-end': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"ia_overlay_align_vertical.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Vertical align', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: imageAccordionDesignDefaultInnerContent.ia_overlay_align_vertical\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      'flex-start': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'flex-end': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"icon\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"ia_icon_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Color', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: imageAccordionDesignDefaultInnerContent.ia_icon_color\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_ia_icon_font_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Icon Font Size', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: imageAccordionDesignDefaultInnerContent.use_ia_icon_font_size\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"ia_icon_font_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Font Size', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useIconFontSizeAttr,\n    defaultAttr: imageAccordionDesignDefaultInnerContent.ia_icon_font_size\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 150,\n    defaultUnit: \"px\"\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"icon_image\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Image', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"image_icon.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"image_icon.decoration.boxShadow\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"image_accordion_title.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"image_accordion_desc.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Description', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Description', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ButtonGroupContainer, {\n    attrName: \"button\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi'),\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      alignment: {\n        render: false\n      },\n      boxShadowGroup: {\n        render: false\n      },\n      fontGroup: {\n        component: {\n          props: {\n            fields: {\n              lineHeight: {\n                render: true\n              },\n              textAlign: {\n                render: false\n              }\n            }\n          }\n        }\n      },\n      spacingGroup: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const image_accordion_settings_design = (image_accordion_settings_design_SettingsDesign);\n;// ./packages/module-library/image-accordion/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction image_accordion_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_image_accordion\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const image_accordion_settings_advanced = (image_accordion_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/image-accordion/module-styles.js\n\n\n\n\n/**\n * React function component for rendering module style.\n */\nconst image_accordion_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'ia_height'\n  }), elements.style({\n    attrName: 'image_accordion_title'\n  }), elements.style({\n    attrName: 'image_accordion_desc'\n  }), elements.style({\n    attrName: 'image_icon'\n  }), elements.style({\n    attrName: 'ia_direction'\n  }), elements.style({\n    attrName: 'overlay_color'\n  }), elements.style({\n    attrName: 'ia_icon_color'\n  }), elements.style({\n    attrName: 'ia_icon_font_size'\n  }), elements.style({\n    attrName: 'button'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_image_accordion_wrapper`,\n    attr: attrs?.ia_height?.innerContent,\n    property: \"height\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_image_accordion_wrapper`,\n    attr: attrs?.ia_direction?.innerContent,\n    declarationFunction: attrValue => {\n      const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n        returnType: 'string',\n        important: {\n          'flex-direction': true\n        }\n      });\n      let direction_value = '';\n      switch (attrValue.attrValue) {\n        case 'horizontal':\n          direction_value = 'row';\n          break;\n        case 'vertical':\n          direction_value = 'column';\n          break;\n      }\n      declarations.add('flex-direction', direction_value);\n      return declarations.value;\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_image_accordion_child:before`,\n    attr: attrs?.overlay_color?.innerContent,\n    property: \"background\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_image_accordion_child_content .et-pb-icon`,\n    attr: attrs?.ia_icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_image_accordion_child_content .dsm_image_accordion_image_icon_wrapper .et-pb-icon`,\n    attr: attrs?.ia_icon_font_size?.innerContent,\n    property: \"font-size\"\n  }));\n};\n;// ./packages/module-library/image-accordion/edit.js\n\n\n\n// Divi package dependencies.\n\n\n\n\n// Custom dependencies.\n\n\n\n/**\n * React function component for registering module script data.\n */\nconst image_accordion_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction image_accordion_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements,\n  childrenIds\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3;\n  const accordionContainer = (0,external_vendor_React_.useRef)(null);\n  const accordionTypeAttr = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.image_accordion_type?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'on_hover';\n  const contentAnimationAttr = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.image_accordion_animation?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'fade_in';\n  const animationSequenceAttr = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.image_accordion_animation_sequence?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'off';\n  (0,external_vendor_React_.useEffect)(() => {\n    let accordion = jQuery(accordionContainer.current);\n    let $this = jQuery(accordion).parents('.dsm_image_accordion');\n    let $image_accordion_children = $this.find('.dsm_image_accordion_child');\n    if (accordionTypeAttr === 'on_hover') {\n      $image_accordion_children.mouseenter(function () {\n        $image_accordion_children.removeClass('dsm_image_accordion_active_item');\n        jQuery(this).addClass('dsm_image_accordion_active_item');\n      });\n      $image_accordion_children.mouseleave(function () {\n        $image_accordion_children.removeClass('dsm_image_accordion_active_item');\n      });\n    }\n    if (accordionTypeAttr === 'on_click') {\n      $this.addClass('dsm_image_accordion_click_item');\n      $image_accordion_children.click(function (e) {\n        $image_accordion_children.removeClass('dsm_image_accordion_active_item');\n        jQuery(this).addClass('dsm_image_accordion_active_item');\n      });\n    }\n  }, [accordionTypeAttr]);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: image_accordion_edit_ModuleScriptData,\n    stylesComponent: image_accordion_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n      params.classnamesInstance.add(`dsm_image_accordion_animation_${contentAnimationAttr}`);\n      params.classnamesInstance.add(`dsm_image_accordion_animation_sequence_${animationSequenceAttr}`);\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_image_accordion_wrapper\",\n    ref: accordionContainer,\n    key: [accordionTypeAttr].join(',')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ChildModulesContainer, {\n    ids: childrenIds\n  })));\n}\n/* harmony default export */ const image_accordion_edit = (image_accordion_edit_Edit);\n;// ./packages/module-library/image-accordion/conversion-outline.js\nconst image_accordion_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    margin_padding: 'module.decoration.spacing',\n    max_width: 'module.decoration.sizing',\n    height: 'module.decoration.sizing',\n    borders: {\n      default: 'module.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    fonts: {\n      title: 'image_accordion_title.decoration.font',\n      desc: 'image_accordion_desc.decoration.font'\n    },\n    button: {\n      button: 'button'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    image_accordion_type: 'image_accordion_type.innerContent.*',\n    image_accordion_animation: 'image_accordion_animation.innerContent.*',\n    image_accordion_animation_sequence: 'image_accordion_animation_sequence.innerContent.*',\n    ia_direction: 'ia_direction.innerContent.*',\n    ia_height: 'ia_height.innerContent.*',\n    ia_icon_color: 'ia_icon_color.innerContent.*',\n    use_ia_icon_font_size: 'use_ia_icon_font_size.innerContent.*',\n    ia_icon_font_size: 'ia_icon_font_size.innerContent.*',\n    overlay_color: 'overlay_color.innerContent.*',\n    ia_overlay_align_horizontal: 'ia_overlay_align_horizontal.innerContent.*',\n    ia_overlay_align_vertical: 'ia_overlay_align_vertical.innerContent.*',\n    overlay_content_padding: 'overlay_content_padding.innerContent.*'\n  }\n};\n;// ./packages/module-library/image-accordion/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmImageAccordion', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/image-accordion': {\n      name: 'divi-supreme/image-accordion',\n      viewBox: '0 0 30 30',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 14.097656 14.582031 C 13.957031 14.582031 13.816406 14.539062 13.699219 14.457031 C 13.578125 14.378906 13.488281 14.265625 13.433594 14.136719 C 13.378906 14.003906 13.363281 13.859375 13.390625 13.71875 C 13.417969 13.578125 13.488281 13.449219 13.589844 13.347656 C 13.6875 13.246094 13.816406 13.179688 13.957031 13.152344 C 14.097656 13.125 14.242188 13.136719 14.375 13.191406 C 14.507812 13.246094 14.621094 13.339844 14.699219 13.457031 C 14.777344 13.578125 14.820312 13.71875 14.820312 13.859375 C 14.820312 14.050781 14.742188 14.234375 14.609375 14.367188 C 14.472656 14.503906 14.289062 14.578125 14.097656 14.582031 Z M 14.097656 13.539062 C 14.035156 13.539062 13.972656 13.554688 13.921875 13.589844 C 13.867188 13.625 13.824219 13.675781 13.800781 13.734375 C 13.777344 13.792969 13.769531 13.859375 13.78125 13.921875 C 13.796875 13.984375 13.824219 14.042969 13.871094 14.085938 C 13.914062 14.132812 13.972656 14.164062 14.035156 14.175781 C 14.097656 14.1875 14.164062 14.179688 14.222656 14.15625 C 14.28125 14.132812 14.332031 14.089844 14.367188 14.039062 C 14.402344 13.984375 14.421875 13.921875 14.421875 13.859375 C 14.421875 13.773438 14.386719 13.691406 14.328125 13.632812 C 14.265625 13.570312 14.183594 13.539062 14.097656 13.539062 Z M 14.097656 13.539062 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 1.898438 11.917969 C 1.839844 11.917969 1.78125 11.898438 1.734375 11.867188 C 1.683594 11.835938 1.644531 11.789062 1.621094 11.734375 C 1.601562 11.679688 1.59375 11.621094 1.605469 11.5625 C 1.617188 11.503906 1.644531 11.449219 1.6875 11.410156 C 1.730469 11.367188 1.78125 11.339844 1.839844 11.328125 C 1.898438 11.316406 1.957031 11.320312 2.011719 11.34375 C 2.066406 11.367188 2.113281 11.402344 2.144531 11.453125 C 2.179688 11.503906 2.195312 11.558594 2.195312 11.621094 C 2.195312 11.699219 2.164062 11.773438 2.109375 11.828125 C 2.054688 11.886719 1.976562 11.917969 1.898438 11.917969 Z M 1.898438 11.488281 C 1.871094 11.488281 1.847656 11.496094 1.824219 11.507812 C 1.804688 11.523438 1.785156 11.542969 1.777344 11.570312 C 1.765625 11.59375 1.761719 11.621094 1.769531 11.644531 C 1.773438 11.671875 1.785156 11.695312 1.804688 11.714844 C 1.824219 11.734375 1.847656 11.746094 1.871094 11.75 C 1.898438 11.757812 1.925781 11.753906 1.949219 11.742188 C 1.972656 11.734375 1.996094 11.714844 2.007812 11.695312 C 2.023438 11.671875 2.03125 11.644531 2.03125 11.621094 C 2.03125 11.585938 2.015625 11.550781 1.992188 11.527344 C 1.96875 11.5 1.933594 11.488281 1.898438 11.488281 Z M 1.898438 11.488281 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 8.738281 2.707031 C 8.628906 2.707031 8.523438 2.675781 8.433594 2.617188 C 8.339844 2.554688 8.269531 2.46875 8.226562 2.367188 C 8.1875 2.265625 8.175781 2.152344 8.195312 2.046875 C 8.21875 1.9375 8.269531 1.839844 8.347656 1.761719 C 8.425781 1.683594 8.523438 1.632812 8.632812 1.609375 C 8.738281 1.589844 8.851562 1.601562 8.953125 1.640625 C 9.054688 1.683594 9.140625 1.753906 9.199219 1.847656 C 9.261719 1.9375 9.292969 2.042969 9.292969 2.15625 C 9.292969 2.300781 9.234375 2.441406 9.132812 2.546875 C 9.027344 2.652344 8.886719 2.707031 8.738281 2.707031 Z M 8.738281 1.90625 C 8.691406 1.90625 8.644531 1.921875 8.601562 1.949219 C 8.5625 1.976562 8.53125 2.015625 8.511719 2.058594 C 8.492188 2.105469 8.488281 2.15625 8.496094 2.203125 C 8.507812 2.25 8.53125 2.292969 8.566406 2.328125 C 8.601562 2.363281 8.644531 2.386719 8.691406 2.398438 C 8.738281 2.40625 8.789062 2.402344 8.835938 2.382812 C 8.878906 2.363281 8.917969 2.332031 8.945312 2.292969 C 8.972656 2.25 8.988281 2.203125 8.988281 2.15625 C 8.988281 2.121094 8.980469 2.089844 8.96875 2.058594 C 8.957031 2.03125 8.9375 2.003906 8.914062 1.980469 C 8.890625 1.957031 8.863281 1.9375 8.835938 1.925781 C 8.804688 1.914062 8.773438 1.90625 8.738281 1.90625 Z M 8.738281 1.90625 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 7.878906 7.300781 L 4.75 7.300781 L 4.75 7.664062 L 7.878906 7.664062 Z M 7.878906 7.300781 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.777344 8.210938 L 4.75 8.210938 L 4.75 8.578125 L 6.777344 8.578125 Z M 6.777344 8.210938 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 7.878906 9.210938 L 4.75 9.210938 L 4.75 9.578125 L 7.878906 9.578125 Z M 7.878906 9.210938 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 14.203125 3.054688 L 7.261719 3.054688 L 7.261719 3.382812 L 9.28125 3.382812 L 9.28125 12.464844 L 3.347656 12.464844 L 3.347656 3.382812 L 4.269531 3.382812 L 4.269531 3.054688 L 3.292969 3.054688 C 3.222656 3.054688 3.152344 3.085938 3.101562 3.136719 C 3.050781 3.1875 3.019531 3.257812 3.019531 3.328125 L 3.019531 12.519531 C 3.019531 12.589844 3.050781 12.660156 3.101562 12.710938 C 3.152344 12.761719 3.222656 12.792969 3.292969 12.792969 L 14.183594 12.792969 C 14.257812 12.792969 14.328125 12.761719 14.378906 12.710938 C 14.429688 12.660156 14.457031 12.589844 14.460938 12.519531 L 14.460938 3.328125 C 14.464844 3.292969 14.457031 3.257812 14.445312 3.226562 C 14.433594 3.191406 14.417969 3.160156 14.394531 3.136719 C 14.367188 3.109375 14.339844 3.089844 14.308594 3.074219 C 14.273438 3.0625 14.238281 3.054688 14.203125 3.054688 Z M 11.695312 12.464844 L 9.628906 12.464844 L 9.628906 3.382812 L 11.695312 3.382812 Z M 14.152344 12.484375 L 12.027344 12.484375 L 12.027344 3.382812 L 14.152344 3.382812 Z M 14.152344 12.484375 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 5.761719 2.90625 C 5.683594 2.90625 5.605469 2.929688 5.542969 2.972656 C 5.476562 3.015625 5.425781 3.078125 5.394531 3.152344 C 5.363281 3.222656 5.355469 3.304688 5.371094 3.378906 C 5.386719 3.457031 5.425781 3.527344 5.480469 3.585938 C 5.535156 3.640625 5.605469 3.679688 5.683594 3.695312 C 5.761719 3.710938 5.839844 3.703125 5.914062 3.671875 C 5.984375 3.640625 6.046875 3.589844 6.09375 3.527344 C 6.136719 3.460938 6.160156 3.382812 6.160156 3.304688 C 6.160156 3.253906 6.148438 3.203125 6.128906 3.152344 C 6.109375 3.105469 6.082031 3.058594 6.042969 3.023438 C 6.007812 2.984375 5.964844 2.957031 5.914062 2.9375 C 5.867188 2.917969 5.816406 2.90625 5.761719 2.90625 Z M 5.761719 3.503906 C 5.722656 3.503906 5.683594 3.492188 5.648438 3.472656 C 5.617188 3.449219 5.589844 3.417969 5.574219 3.378906 C 5.5625 3.34375 5.558594 3.304688 5.566406 3.265625 C 5.574219 3.222656 5.59375 3.1875 5.621094 3.160156 C 5.648438 3.132812 5.683594 3.113281 5.722656 3.105469 C 5.761719 3.097656 5.804688 3.101562 5.839844 3.117188 C 5.878906 3.132812 5.910156 3.160156 5.929688 3.191406 C 5.953125 3.226562 5.964844 3.265625 5.964844 3.304688 C 5.964844 3.359375 5.941406 3.410156 5.902344 3.445312 C 5.867188 3.484375 5.816406 3.503906 5.761719 3.503906 Z M 5.761719 3.503906 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 7.257812 3.191406 L 7.164062 3.140625 L 7.164062 4.542969 C 7.164062 4.609375 7.148438 4.679688 7.121094 4.742188 C 7.097656 4.808594 7.058594 4.867188 7.007812 4.914062 C 6.957031 4.964844 6.898438 5.003906 6.835938 5.03125 C 6.769531 5.054688 6.703125 5.070312 6.632812 5.070312 L 4.890625 5.070312 C 4.75 5.070312 4.617188 5.011719 4.515625 4.914062 C 4.417969 4.816406 4.363281 4.679688 4.363281 4.542969 L 4.363281 2.796875 C 4.363281 2.726562 4.375 2.65625 4.402344 2.59375 C 4.429688 2.53125 4.46875 2.472656 4.515625 2.421875 C 4.566406 2.375 4.625 2.335938 4.6875 2.308594 C 4.753906 2.28125 4.820312 2.269531 4.890625 2.269531 L 6.632812 2.269531 C 6.695312 2.269531 6.761719 2.28125 6.820312 2.304688 L 6.90625 2.128906 C 6.820312 2.089844 6.726562 2.074219 6.632812 2.074219 L 4.890625 2.074219 C 4.695312 2.074219 4.511719 2.148438 4.378906 2.285156 C 4.242188 2.421875 4.164062 2.605469 4.164062 2.796875 L 4.164062 4.542969 C 4.164062 4.734375 4.242188 4.917969 4.375 5.054688 C 4.511719 5.1875 4.695312 5.265625 4.890625 5.265625 L 6.632812 5.265625 C 6.824219 5.265625 7.007812 5.1875 7.144531 5.054688 C 7.28125 4.917969 7.359375 4.734375 7.359375 4.542969 L 7.359375 3.128906 Z M 7.257812 3.191406 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 4.164062 3.128906 L 4.164062 4.542969 C 4.164062 4.734375 4.242188 4.917969 4.378906 5.054688 C 4.511719 5.1875 4.699219 5.265625 4.890625 5.265625 L 6.632812 5.265625 C 6.730469 5.265625 6.824219 5.246094 6.910156 5.210938 C 7 5.175781 7.078125 5.121094 7.144531 5.054688 C 7.214844 4.984375 7.265625 4.90625 7.304688 4.820312 C 7.339844 4.730469 7.359375 4.636719 7.359375 4.542969 L 7.359375 2.796875 C 7.359375 2.605469 7.28125 2.421875 7.144531 2.285156 C 7.011719 2.148438 6.824219 2.074219 6.632812 2.074219 L 4.890625 2.074219 C 4.792969 2.074219 4.699219 2.089844 4.613281 2.128906 L 4.699219 2.304688 C 4.761719 2.28125 4.824219 2.269531 4.886719 2.269531 L 6.632812 2.269531 C 6.773438 2.269531 6.910156 2.324219 7.007812 2.421875 C 7.105469 2.523438 7.164062 2.65625 7.164062 2.796875 L 7.164062 4.542969 C 7.164062 4.679688 7.105469 4.816406 7.007812 4.914062 C 6.910156 5.015625 6.773438 5.070312 6.632812 5.070312 L 4.890625 5.070312 C 4.75 5.070312 4.617188 5.011719 4.515625 4.914062 C 4.417969 4.816406 4.363281 4.679688 4.363281 4.542969 L 4.363281 3.140625 L 4.269531 3.191406 Z M 4.164062 3.128906 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 7.257812 3.199219 L 7.164062 3.257812 L 5.589844 4.21875 L 5.265625 3.75 L 4.363281 4.261719 L 4.167969 4.375 L 4.167969 4.550781 C 4.167969 4.742188 4.242188 4.925781 4.378906 5.0625 C 4.511719 5.199219 4.695312 5.273438 4.890625 5.277344 L 6.632812 5.277344 C 6.824219 5.277344 7.011719 5.199219 7.144531 5.0625 C 7.28125 4.925781 7.359375 4.742188 7.359375 4.550781 L 7.359375 3.144531 Z M 7.164062 4.550781 C 7.164062 4.691406 7.105469 4.824219 7.007812 4.925781 C 6.910156 5.023438 6.773438 5.078125 6.632812 5.078125 L 4.890625 5.078125 C 4.75 5.078125 4.617188 5.023438 4.515625 4.921875 C 4.417969 4.824219 4.363281 4.691406 4.363281 4.550781 L 4.363281 4.488281 L 5.207031 4.007812 L 5.535156 4.484375 L 7.164062 3.488281 Z M 7.164062 4.550781 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/image-accordion/index.js\n// External library dependencies.\n\n\n// Wordpress dependencies.\n\n\n\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\n\n\nconst IMAGE_ACCORDION_CHILD = 'dsm/image-accordion-child';\nconst imageAccordionModule = {\n  metadata: image_accordion_module_namespaceObject,\n  conversionOutline: image_accordion_conversion_outline_conversionOutline,\n  childrenName: [IMAGE_ACCORDION_CHILD],\n  template: buildParentDefaultChildTemplate(IMAGE_ACCORDION_CHILD, 3),\n  callbacks: buildChildDraggableListCallbacks([IMAGE_ACCORDION_CHILD]),\n  renderers: {\n    edit: image_accordion_edit,\n    styles: image_accordion_module_styles_ModuleStyles\n  },\n  settings: {\n    content: image_accordion_settings_content,\n    design: image_accordion_settings_design,\n    advanced: image_accordion_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    image_accordion_type: {\n      innerContent: {\n        desktop: {\n          value: 'on_hover'\n        }\n      }\n    },\n    image_accordion_animation: {\n      innerContent: {\n        desktop: {\n          value: 'fade_in'\n        }\n      }\n    },\n    image_accordion_animation_sequence: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    }\n  }\n};\n/* harmony default export */ const image_accordion = (imageAccordionModule);\n;// ./packages/module-library/image-accordion-child/module.json\nconst image_accordion_child_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/image-accordion-child\",\"d4Shortcode\":\"dsm_image_accordion_child\",\"title\":\"Supreme Image Accordion\",\"titles\":\"Supreme Image Accordion\",\"category\":\"child-module\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"background\":{},\"conditions\":{},\"interactions\":{}}},\"default\":{\"meta\":{\"adminLabel\":{\"desktop\":{\"value\":\"\"}}}}},\"expanded_item\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_accordion_src\":{\"type\":\"object\",\"inlineEditor\":\"UploadContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_accordion_icon\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_accordion_icon\":{\"type\":\"object\",\"inlineEditor\":\"iconPicketControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_accordion_icon_image\":{\"type\":\"object\",\"inlineEditor\":\"UploadContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_accordion_title\":{\"type\":\"object\",\"selector\":\"{{selector}}.et_pb_module .et_pb_module_header\",\"default\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"headingLevel\":\"h3\"}}}}}},\"attributes\":{\"class\":\"dsm_image_accordion_title et_pb_module_header\"},\"tagName\":\"h3\",\"inlineEditor\":\"plainText\",\"elementType\":\"headingLink\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}}.et_pb_module .dsm_image_accordion_title\",\"hover\":\"{{selector}}.et_pb_module:hover .dsm_image_accordion_title\"}}}}},\"image_accordion_desc\":{\"type\":\"object\",\"selector\":\"{{selector}}.et_pb_module .dsm_image_accordion_description\",\"attributes\":{\"class\":\"dsm_image_accordion_description\"},\"inlineEditor\":\"plainText\",\"elementType\":\"headingLink\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}}.et_pb_module .dsm_image_accordion_description\",\"hover\":\"{{selector}}.et_pb_module:hover .dsm_image_accordion_description\"}}}}},\"ia_align_horizontal\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"ia_align_vertical\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"ia_icon_color\":{\"type\":\"object\",\"inlineEditor\":\"colorPallette\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_ia_icon_font_size\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"ia_icon_font_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_icon\":{\"type\":\"object\",\"selector\":\"{{selector}}.et_pb_module .dsm_image_accordion_image_icon_wrapper img\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}}.et_pb_module .dsm_image_accordion_image_icon_wrapper img\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}}.et_pb_module .dsm_image_accordion_image_icon_wrapper img\",\"useOverlay\":true}}},\"overlay_color\":{\"type\":\"object\",\"inlineEditor\":\"colorPallette\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"show_ia_button\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"ia_button_text\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\",\"tagName\":\"span\"},\"ia_button_link\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"ia_button_link_target\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button\":{\"type\":\"object\",\"selector\":\"{{selector}}.et_pb_module .dsm_image_accordion_child_content .et_pb_button\",\"default\":{\"decoration\":{\"button\":{\"desktop\":{\"value\":{\"enable\":\"off\",\"icon\":{\"enable\":\"on\",\"onHover\":\"on\"}}}},\"border\":{\"desktop\":{\"value\":{\"styles\":{\"all\":{\"color\":\"\"}}}}},\"font\":{\"font\":{\"desktop\":{\"value\":{\"color\":\"\"}}}}}},\"elementType\":\"button\",\"styleProps\":{\"font\":{\"important\":{\"font\":{\"desktop\":{\"value\":{\"color\":true,\"font-size\":true,\"letter-spacing\":true}}}}},\"spacing\":{\"important\":true}}}}}');\n;// ./packages/module-library/image-accordion-child/image-accordion-child-vb-default-attrs.js\n/**\n * D4-aligned `defaultAttr` slices for Image Accordion child.\n *\n * @package DiviSupreme\n */\n\n/** Same placeholder SVG as `dsm/blob-image` / `dsm/card` (1080×540). */\nconst imageAccordionPlaceholderSrc = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTA4MCIgaGVpZ2h0PSI1NDAiIHZpZXdCb3g9IjAgMCAxMDgwIDU0MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPHBhdGggZmlsbD0iI0VCRUJFQiIgZD0iTTAgMGgxMDgwdjU0MEgweiIvPgogICAgICAgIDxwYXRoIGQ9Ik00NDUuNjQ5IDU0MGgtOTguOTk1TDE0NC42NDkgMzM3Ljk5NSAwIDQ4Mi42NDR2LTk4Ljk5NWwxMTYuMzY1LTExNi4zNjVjMTUuNjItMTUuNjIgNDAuOTQ3LTE1LjYyIDU2LjU2OCAwTDQ0NS42NSA1NDB6IiBmaWxsLW9wYWNpdHk9Ii4xIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgICAgICA8Y2lyY2xlIGZpbGwtb3BhY2l0eT0iLjA1IiBmaWxsPSIjMDAwIiBjeD0iMzMxIiBjeT0iMTQ4IiByPSI3MCIvPgogICAgICAgIDxwYXRoIGQ9Ik0xMDgwIDM3OXYxMTMuMTM3TDcyOC4xNjIgMTQwLjMgMzI4LjQ2MiA1NDBIMjE1LjMyNEw2OTkuODc4IDU1LjQ0NmMxNS42Mi0xNS42MiA0MC45NDgtMTUuNjIgNTYuNTY4IDBMMTA4MCAzNzl6IiBmaWxsLW9wYWNpdHk9Ii4yIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgIDwvZz4KPC9zdmc+Cg==';\n\n/**\n * @param {unknown} innerContent Upload `innerContent` slice.\n * @return {string}\n */\nconst uploadInnerContentToSrcString = innerContent => {\n  if (typeof innerContent === 'string') {\n    return innerContent;\n  }\n  if (innerContent && typeof innerContent === 'object' && typeof innerContent.src === 'string') {\n    return innerContent.src;\n  }\n  if (innerContent && typeof innerContent === 'object') {\n    const order = ['desktop', 'tablet', 'phone'];\n    for (const bp of order) {\n      const value = innerContent[bp]?.value;\n      if (typeof value === 'string') {\n        return value;\n      }\n      if (value && typeof value === 'object' && typeof value.src === 'string') {\n        return value.src;\n      }\n    }\n  }\n  return '';\n};\n\n/**\n * @param {string} src Image URL or data URI.\n * @return {boolean}\n */\nconst isImageAccordionPlaceholderSrc = src => typeof src === 'string' && src !== '' && src === imageAccordionPlaceholderSrc;\n\n/**\n * Content-tab Image (`image_accordion_src`) set by the user — not empty, not the grey placeholder.\n *\n * @param {Record<string, unknown>|undefined} attrs Module attrs.\n * @return {boolean}\n */\nconst hasUserContentPanelImage = attrs => {\n  const src = uploadInnerContentToSrcString(attrs?.image_accordion_src?.innerContent);\n  return src !== '' && !isImageAccordionPlaceholderSrc(src);\n};\n\n/**\n * `image_accordion_src.innerContent` for new inserts / styles fallback (SVG background).\n * Pass to CommonStyle as `attr` or use under `image_accordion_src: { innerContent: … }` in placeholderContent.\n */\nconst imageAccordionSrcPlaceholderInnerContent = {\n  desktop: {\n    value: {\n      src: imageAccordionPlaceholderSrc\n    }\n  }\n};\n\n/** @type {Record<string, { desktop: { value: unknown } }>} */\nconst imageAccordionChildContentDefaultInnerContent = {\n  expanded_item: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  /**\n   * Empty upload default for FieldContainer — do not use the SVG here or the VB sidebar\n   * shows the dummy preview when migrated `{ src }` is present but omitted from serialized JSON.\n   */\n  image_accordion_src: {\n    desktop: {\n      value: {\n        src: ''\n      }\n    }\n  },\n  use_accordion_icon: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  show_ia_button: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  ia_button_link_target: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  ia_align_horizontal: {\n    desktop: {\n      value: 'center'\n    }\n  },\n  ia_align_vertical: {\n    desktop: {\n      value: 'center'\n    }\n  },\n  image_accordion_title: {\n    desktop: {\n      value: {\n        text: 'Your Title Goes Here'\n      }\n    }\n  },\n  image_accordion_desc: {\n    desktop: {\n      value: {\n        text: 'Your description goes here. Edit or remove this text inline or in the description settings'\n      }\n    }\n  }\n};\n\n/** @type {Record<string, { desktop: { value: string } }>} */\nconst imageAccordionChildDesignDefaultInnerContent = {\n  ia_icon_color: {\n    desktop: {\n      value: '#ffffff'\n    }\n  },\n  use_ia_icon_font_size: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  ia_icon_font_size: {\n    desktop: {\n      value: '40px'\n    }\n  }\n};\n;// ./packages/module-library/image-accordion-child/settings-content.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\n\nfunction image_accordion_child_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  var _getAttrByMode;\n  const useIconAttr = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_accordion_icon?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'off';\n  const showButtonAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_ia_button?.innerContent);\n  const hasContentPanelImage = hasUserContentPanelImage(attrs);\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"expanded_item.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Make Item Expanded', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: imageAccordionChildContentDefaultInnerContent.expanded_item\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_accordion_src.innerContent\",\n    subName: \"src\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Image', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Displays on the accordion panel when set. Takes precedence over the Background group image below.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: imageAccordionChildContentDefaultInnerContent.image_accordion_src,\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_accordion_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Icon', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: imageAccordionChildContentDefaultInnerContent.use_accordion_icon\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_accordion_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useIconAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_accordion_icon_image.innerContent\",\n    subName: \"src\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Image', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'off' === useIconAttr,\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_accordion_title.innerContent\",\n    subName: \"text\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: imageAccordionChildContentDefaultInnerContent.image_accordion_title,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_accordion_desc.innerContent\",\n    subName: \"text\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Description', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: imageAccordionChildContentDefaultInnerContent.image_accordion_desc,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RichTextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"show_ia_button.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Button', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: imageAccordionChildContentDefaultInnerContent.show_ia_button\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"ia_button_text.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Text', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === showButtonAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"ia_button_link.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Link', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === showButtonAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"ia_button_link_target.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Url Opens', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === showButtonAttr,\n    defaultAttr: imageAccordionChildContentDefaultInnerContent.ia_button_link_target\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      off: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The Same Window', 'dsm-supreme-modules-pro-for-divi')\n      },\n      on: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The New Tab', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"ia_align_horizontal.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Horizontal Align', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: imageAccordionChildContentDefaultInnerContent.ia_align_horizontal\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"ia_align_vertical.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Vertical Align', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: imageAccordionChildContentDefaultInnerContent.ia_align_vertical\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      top: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"background\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi')\n  }, hasContentPanelImage && /*#__PURE__*/external_vendor_React_default().createElement(\"p\", {\n    className: \"et-vb-field-description\"\n  }, (0,external_window_vendor_wp_i18n_namespaceObject.__)('A Background Image is set above and will display on the panel instead of the Background group image. Clear it to use Background → Background Image.', 'dsm-supreme-modules-pro-for-divi')), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, {\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const image_accordion_child_settings_content = (image_accordion_child_settings_content_SettingsContent);\n;// ./packages/module-library/image-accordion-child/settings-design.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\nfunction image_accordion_child_settings_design_SettingsDesign({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  var _getAttrByMode;\n  const useIconFontSizeAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_ia_icon_font_size?.innerContent);\n  const useIconAttr = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_accordion_icon?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'off';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"overlay\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"overlay_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay Color', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"image_accordion_title.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: true\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"image_accordion_desc.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Description', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Description', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"icon\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"ia_icon_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Color', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: imageAccordionChildDesignDefaultInnerContent.ia_icon_color\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_ia_icon_font_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Icon Font Size', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: imageAccordionChildDesignDefaultInnerContent.use_ia_icon_font_size\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"ia_icon_font_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Font Size', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useIconFontSizeAttr,\n    defaultAttr: imageAccordionChildDesignDefaultInnerContent.ia_icon_font_size\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 150,\n    defaultUnit: \"px\",\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_width.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Width', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'off' === useIconAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 1000,\n    step: 10\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"image\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    attrName: \"image_icon.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"image_icon.decoration.boxShadow\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ButtonGroupContainer, {\n    attrName: \"button\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi'),\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      alignment: {\n        render: false\n      },\n      boxShadowGroup: {\n        render: false\n      },\n      fontGroup: {\n        component: {\n          props: {\n            fields: {\n              lineHeight: {\n                render: true\n              },\n              textAlign: {\n                render: false\n              }\n            }\n          }\n        }\n      },\n      spacingGroup: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null));\n}\n/* harmony default export */ const image_accordion_child_settings_design = (image_accordion_child_settings_design_SettingsDesign);\n;// ./packages/module-library/image-accordion-child/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction image_accordion_child_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_image_accordion_child\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const image_accordion_child_settings_advanced = (image_accordion_child_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/image-accordion-child/image-accordion-panel-image.js\n/**\n * Content-tab panel image vs Background-group precedence helpers.\n *\n * @package DiviSupreme\n */\n\n\n\n\n/**\n * @param {unknown} color Raw background color string.\n * @return {boolean}\n */\nconst isMeaningfulBackgroundColor = color => {\n  if ('string' !== typeof color) {\n    return false;\n  }\n  const normalized = color.trim().toLowerCase();\n  if ('' === normalized || 'transparent' === normalized) {\n    return false;\n  }\n  return 'rgba(0,0,0,0)' !== normalized && 'rgba(0, 0, 0, 0)' !== normalized;\n};\n\n/**\n * @param {Record<string, unknown>|undefined|null} val `decoration.background.*.value`\n * @return {boolean}\n */\nconst decorationBackgroundValueHasVisibleLayers = val => {\n  if (!val || 'object' !== typeof val) {\n    return false;\n  }\n  if (val.gradient && 'object' === typeof val.gradient && Object.keys(val.gradient).length > 0) {\n    return true;\n  }\n  if (val.video && 'object' === typeof val.video && Object.keys(val.video).length > 0) {\n    return true;\n  }\n  if (val.pattern && 'object' === typeof val.pattern && Object.keys(val.pattern).length > 0) {\n    return true;\n  }\n  if (val.mask && 'object' === typeof val.mask && Object.keys(val.mask).length > 0) {\n    return true;\n  }\n  if (isMeaningfulBackgroundColor(val.color)) {\n    return true;\n  }\n  const image = val.image;\n  if (image && 'object' === typeof image && 'off' !== image.enabled) {\n    for (const imageKey of ['url', 'src']) {\n      const url = image[imageKey];\n      if ('string' === typeof url && '' !== url.trim()) {\n        return true;\n      }\n    }\n  }\n  return false;\n};\n\n/**\n * Whether the native Background group should drive the panel (image, color, gradient, etc.).\n *\n * @param {Record<string, unknown>|undefined} attrs Module attrs.\n * @return {boolean}\n */\nconst hasModuleDecorationPanelBackground = attrs => {\n  const bg = attrs?.module?.decoration?.background;\n  if (!bg || 'object' !== typeof bg) {\n    return false;\n  }\n  for (const breakpoint of ['desktop', 'tablet', 'phone']) {\n    var _breakpointNode$value;\n    const breakpointNode = bg[breakpoint];\n    if (!breakpointNode || 'object' !== typeof breakpointNode) {\n      continue;\n    }\n    const value = (_breakpointNode$value = breakpointNode.value) !== null && _breakpointNode$value !== void 0 ? _breakpointNode$value : null;\n    if (decorationBackgroundValueHasVisibleLayers(value)) {\n      return true;\n    }\n  }\n  return false;\n};\n\n/**\n * Grey SVG placeholder for new/empty child panels when Background group is unused.\n *\n * @param {Record<string, unknown>|undefined} attrs Module attrs.\n * @return {boolean}\n */\nconst shouldShowContentPanelPlaceholder = attrs => !hasUserContentPanelImage(attrs) && !hasModuleDecorationPanelBackground(attrs);\n\n/**\n * Inner content passed to the panel `background-image` CommonStyle.\n *\n * @param {Record<string, unknown>|undefined} attrs Module attrs.\n * @return {Record<string, unknown>}\n */\nconst resolveContentPanelBackgroundImageInnerContent = attrs => {\n  if (hasUserContentPanelImage(attrs)) {\n    var _attrs$image_accordio;\n    return (_attrs$image_accordio = attrs?.image_accordion_src?.innerContent) !== null && _attrs$image_accordio !== void 0 ? _attrs$image_accordio : {};\n  }\n  if (shouldShowContentPanelPlaceholder(attrs)) {\n    return imageAccordionSrcPlaceholderInnerContent;\n  }\n  return {};\n};\n\n/**\n * @param {Record<string, unknown>|undefined} attrs Module attrs.\n * @return {boolean}\n */\nconst shouldApplyContentPanelBackgroundImage = attrs => {\n  const innerContent = resolveContentPanelBackgroundImageInnerContent(attrs);\n  return Object.keys(innerContent).length > 0;\n};\n\n/**\n * Resolve a URL from CommonStyle `declarationFunction` params.\n *\n * @param {{ attrValue?: unknown, defaultAttrValue?: unknown }} params Params from CommonStyle.\n * @return {string}\n */\nconst resolveUploadSrcFromStyleParams = params => {\n  if (!params || typeof params !== 'object') {\n    return '';\n  }\n  let raw = params.attrValue;\n  if ((raw === undefined || raw === null || raw === '' || typeof raw === 'object' && raw !== null && !Array.isArray(raw) && Object.keys(raw).length === 0) && params.defaultAttrValue !== undefined && params.defaultAttrValue !== null) {\n    raw = params.defaultAttrValue;\n  }\n  return uploadInnerContentToSrcString(raw);\n};\n;// ./packages/module-library/image-accordion-child/module-styles.js\n\n\n\n\n\nconst image_accordion_child_module_styles_iconFontCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'font-family': true\n    }\n  });\n  addNativeIconFontFamily(declarations, attrValue);\n  addNativeIconFontContent(declarations, attrValue);\n  return declarations.value;\n};\nconst webfontGlyphSelector = orderClass => `${orderClass} .et-pb-icon.dsm_image_accordion_icon .dsm-webfont-icon-glyph`;\nconst iconHostSelector = orderClass => `${orderClass} .et-pb-icon.dsm_image_accordion_icon`;\n\n/**\n * React function component for rendering module style.\n */\nconst image_accordion_child_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  const contentPanelImageInnerContent = resolveContentPanelBackgroundImageInnerContent(attrs);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'image_accordion_title'\n  }), elements.style({\n    attrName: 'image_accordion_desc'\n  }), elements.style({\n    attrName: 'image_accordion_icon'\n  }), elements.style({\n    attrName: 'ia_icon_color'\n  }), elements.style({\n    attrName: 'ia_icon_font_size'\n  }), elements.style({\n    attrName: 'image_icon'\n  }), elements.style({\n    attrName: 'image_accordion_src'\n  }), elements.style({\n    attrName: 'button'\n  }), elements.style({\n    attrName: 'overlay_color'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et-pb-icon::after`,\n    attr: attrs?.image_accordion_icon?.innerContent,\n    declarationFunction: image_accordion_child_module_styles_iconFontCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et-pb-icon::after`,\n    attr: attrs?.ia_icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et-pb-icon::after`,\n    attr: attrs?.ia_icon_font_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: iconHostSelector(orderClass),\n    attr: attrs?.ia_icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: iconHostSelector(orderClass),\n    attr: attrs?.ia_icon_font_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: webfontGlyphSelector(orderClass),\n    attr: attrs?.ia_icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: webfontGlyphSelector(orderClass),\n    attr: attrs?.ia_icon_font_size?.innerContent,\n    property: \"font-size\"\n  }), shouldApplyContentPanelBackgroundImage(attrs) && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm_image_accordion_child`,\n    attr: contentPanelImageInnerContent,\n    declarationFunction: params => {\n      const url = resolveUploadSrcFromStyleParams(params);\n      if (!url) {\n        return '';\n      }\n      const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n        returnType: 'string',\n        important: {\n          'background-image': true\n        }\n      });\n      declarations.add('background-image', `url(\"${url}\")`);\n      return declarations.value;\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.et_pb_module.dsm_image_accordion_child::before `,\n    attr: attrs?.overlay_color?.innerContent,\n    property: \"background\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.et_pb_module .dsm_image_accordion_image_icon_wrapper img `,\n    attr: attrs?.image_width?.innerContent,\n    property: \"width\"\n  }));\n};\n;// ./packages/module-library/image-accordion-child/edit.js\n\n\n// Divi package dependencies.\n\n\n\n\n// Custom dependencies.\n\n\n\n\n\n\n/**\n * D5 upload field value may be a URL string or `{ src, id? }`.\n *\n * @param {unknown} value Raw innerContent value.\n * @return {string}\n */\nconst uploadValueToSrcString = value => {\n  if (typeof value === 'string') {\n    return value;\n  }\n  if (value && typeof value === 'object' && typeof value.src === 'string') {\n    return value.src;\n  }\n  return '';\n};\n\n/**\n * React function component for registering module script data.\n */\n\nconst image_accordion_child_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction image_accordion_child_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3;\n  const useIconAttr = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_accordion_icon?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'off';\n  const imageUrlAttrRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.image_accordion_icon_image?.innerContent);\n  const iconImageSrc = uploadInnerContentToSrcString(imageUrlAttrRaw);\n  const buttonTextAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.ia_button_text?.innerContent);\n  const showButtonAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_ia_button?.innerContent);\n  // Omitting innerContent (Divi default-on-front) yields null from getAttrByMode; templates would stringify as \"null\".\n  const contentHorizontalAlignAttr = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.ia_align_horizontal?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'center';\n  const contentVerticalAlignAttr = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.ia_align_vertical?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'center';\n  const expandItemAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.expanded_item?.innerContent);\n  const accordionIconAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.image_accordion_icon?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: image_accordion_child_edit_ModuleScriptData,\n    stylesComponent: image_accordion_child_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n      params.classnamesInstance.add(`dsm_image_accordion_horizontal_${contentHorizontalAlignAttr}`);\n      params.classnamesInstance.add(`dsm_image_accordion_vertical_${contentVerticalAlignAttr}`);\n      if ('on' === expandItemAttr) {\n        params.classnamesInstance.add('dsm_image_accordion_active_item');\n      }\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_image_accordion_child_content\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_image_accordion_image_icon_wrapper\"\n  }, 'off' === useIconAttr && '' !== iconImageSrc && /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: imageUrlAttrRaw\n  }, resolvedImage => {\n    const src = uploadValueToSrcString(resolvedImage);\n    if ('' === src) {\n      return null;\n    }\n    return /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n      src: src,\n      alt: \"\"\n    });\n  }), 'on' === useIconAttr && /*#__PURE__*/external_vendor_React_default().createElement(ModuleIconHost, {\n    icon: accordionIconAttr,\n    className: \"dsm_image_accordion_icon\"\n  })), elements.render({\n    attrName: 'image_accordion_title'\n  }), elements.render({\n    attrName: 'image_accordion_desc'\n  }), 'on' === showButtonAttr && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"et_pb_button_module_wrapper dsm_image_accordion_button_wrapper\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n    href: \"#\",\n    className: \"et_pb_button dsm_ia_button\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", null, buttonTextAttr)))));\n}\n/* harmony default export */ const image_accordion_child_edit = (image_accordion_child_edit_Edit);\n;// ./packages/module-library/image-accordion-child/conversion-outline.js\n\n\nconst image_accordion_child_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    height: 'module.decoration.sizing',\n    max_width: 'module.decoration.sizing',\n    margin_padding: 'module.decoration.spacing',\n    link_options: 'module.advanced.link',\n    disabled_on: 'module.decoration.disabledOn',\n    display_conditions: 'module.decoration.conditions',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    text_shadow: {\n      default: 'module.advanced.text.textShadow'\n    },\n    borders: {\n      default: 'module.decoration.border',\n      // Matches D4 Advanced → Icon Image borders (`borders.image`).\n      image: 'image_icon.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow',\n      image: 'image_icon.decoration.boxShadow'\n    },\n    fonts: {\n      title: 'image_accordion_title.decoration.font',\n      desc: 'image_accordion_desc.decoration.font',\n      overlay_title: 'image_accordion_overlay_title.decoration.font'\n    },\n    button: {\n      button: 'button'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    /**\n     * D4 child saves `admin_title=` (toggle `admin_label`); mirrors other DSM children.\n     * Also keep `advanced.admin_label` migration path above for grouped advanced fields.\n     */\n    admin_title: 'module.meta.adminLabel.*',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*',\n    expanded_item: 'expanded_item.innerContent.*',\n    image_accordion_src: 'image_accordion_src.innerContent.*',\n    use_accordion_icon: 'use_accordion_icon.innerContent.*',\n    image_accordion_icon: 'image_accordion_icon.innerContent.*',\n    image_accordion_icon_image: 'image_accordion_icon_image.innerContent.*',\n    alt: 'alt.innerContent.*',\n    title_text: 'title_text.innerContent.*',\n    image_width: 'image_width.innerContent.*',\n    // Main title level from D4 `fonts.title.header_level` → `title_level` shortcode prop.\n    title_level: 'image_accordion_title.decoration.font.font.*.headingLevel',\n    image_accordion_title: 'image_accordion_title.innerContent.*.text',\n    image_accordion_desc: 'image_accordion_desc.innerContent.*.text',\n    show_ia_button: 'show_ia_button.innerContent.*',\n    ia_button_text: 'ia_button_text.innerContent.*',\n    ia_button_link: 'ia_button_link.innerContent.*',\n    ia_button_link_target: 'ia_button_link_target.innerContent.*',\n    ia_align_horizontal: 'ia_align_horizontal.innerContent.*',\n    ia_align_vertical: 'ia_align_vertical.innerContent.*',\n    image_accordion_overlay_title: 'image_accordion_overlay_title.innerContent.*',\n    ia_overlay_align_horizontal: 'ia_overlay_align_horizontal.innerContent.*',\n    ia_overlay_align_vertical: 'ia_overlay_align_vertical.innerContent.*',\n    overlay_content_padding: 'overlay_content_padding.decoration.spacing.*.padding',\n    ia_icon_color: 'ia_icon_color.innerContent.*',\n    use_ia_icon_font_size: 'use_ia_icon_font_size.innerContent.*',\n    ia_icon_font_size: 'ia_icon_font_size.innerContent.*',\n    content_width: 'content_width.innerContent.*',\n    overlay_color: 'overlay_color.innerContent.*'\n  },\n  valueExpansionFunctionMap: {\n    image_accordion_icon: external_divi_conversion_namespaceObject.convertFontIcon,\n    overlay_content_padding: external_divi_module_namespaceObject.convertSpacing,\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/image-accordion-child/index.js\n// External library dependencies.\n\n\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\nconst imageAccordionChildModule = {\n  metadata: image_accordion_child_module_namespaceObject,\n  conversionOutline: image_accordion_child_conversion_outline_conversionOutline,\n  parentsName: ['dsm/image-accordion'],\n  renderers: {\n    edit: image_accordion_child_edit,\n    styles: image_accordion_child_module_styles_ModuleStyles\n  },\n  settings: {\n    content: image_accordion_child_settings_content,\n    design: image_accordion_child_settings_design,\n    advanced: image_accordion_child_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    expanded_item: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    image_accordion_title: {\n      innerContent: {\n        desktop: {\n          value: {\n            text: 'Your Title Goes Here'\n          }\n        }\n      }\n    },\n    image_accordion_desc: {\n      innerContent: {\n        desktop: {\n          value: {\n            text: 'Your description goes here. Edit or remove this text inline or in the description settings'\n          }\n        }\n      }\n    },\n    ia_align_horizontal: {\n      innerContent: {\n        desktop: {\n          value: 'center'\n        }\n      }\n    },\n    ia_align_vertical: {\n      innerContent: {\n        desktop: {\n          value: 'center'\n        }\n      }\n    },\n    image_accordion_src: {\n      innerContent: imageAccordionSrcPlaceholderInnerContent\n    }\n  }\n};\n/* harmony default export */ const image_accordion_child = (imageAccordionChildModule);\n;// ./packages/module-library/image-carousel/module.json\nconst image_carousel_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/image-carousel\",\"d4Shortcode\":\"dsm_image_carousel\",\"title\":\"Supreme Image Carousel\",\"titles\":\"Supreme Image Carousels\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/image-carousel\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}},\"styleProps\":{\"spacing\":{\"selector\":\"{{selector}} .dsm_image_carousel_container:not(.dsm_image_carousel_slideshow)\",\"important\":true}}},\"gallery_ids\":{\"type\":\"object\",\"inlineEditor\":\"UploadGalleryContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"gallery_orderby\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"default\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slider_effect\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"default\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slider_direction\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"ltr\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"centered_slides\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slide_to_show\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"4\"},\"tablet\":{\"value\":\"2\"},\"phone\":{\"value\":\"1\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slide_to_row_show\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"1\"},\"tablet\":{\"value\":\"2\"},\"phone\":{\"value\":\"1\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slide_to_scroll\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"1\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"multiple_slide_row\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slide_row\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"1\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"speed\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"300\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"autoplay\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"autoplay_speed\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"3000\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"pause_on_hover\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"space_between\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"15\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"infinite\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"infinite_smooth_scrolling\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"horizontal_alignment\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"center\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"arrows\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"arrow_position\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"outside\"},\"tablet\":{\"value\":\"outside\"},\"phone\":{\"value\":\"inside\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"arrow_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"40px\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dots\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"touch_move\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"grab\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"show_lightbox\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"show_lightbox_gallery\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"show_lightbox_title\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"show_lightbox_caption\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"arrow_color\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"#666\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"arrow_background_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dots_horizontal_placement\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dots_vertical_placement\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dots_active_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dots_inactive_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"pagi_vertical_position\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_fit\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"cover\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_position\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"center\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"lazyload\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"slider_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"carousel\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slideshow_effect\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"default\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slideshow_height\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"450px\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"thumbs_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm_image_gallery_thumbs\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"slideshow_to_show\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"4\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slideshow_ratio\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"219\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slideshow_image_fit\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"cover\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slideshow_image_position\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"center\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slider_orientation\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"horizontal\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slider_container_height\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"500px\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slider_effect_shadows\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"slider_effect_coverflow_rotate\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"30\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slider_effect_coverflow_depth\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"autoplay_viewport\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"80%\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"mousewheel\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_arrow_custom_position\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"arrow_custom_position\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"arrow_prev\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"arrow_prev_font_icon\":{\"type\":\"object\",\"inlineEditor\":\"IconPickerContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":{\"type\":\"divi\",\"unicode\":\"&#x34;\",\"weight\":\"400\"}}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"arrow_next\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"arrow_next_font_icon\":{\"type\":\"object\",\"inlineEditor\":\"IconPickerContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":{\"type\":\"divi\",\"unicode\":\"&#x35;\",\"weight\":\"400\"}}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"arrow_horizontal_position\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"50%\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"sizes\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"full\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slideshow_sizes\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"lightbox_img_sizes\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"full\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slideshow_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm_image_carousel_slideshow .swiper-slide.dsm_image_carousel_item\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"navi_hori_position\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"50%\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"top_navi_ver_position\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"bottom_navi_ver_position\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"arrowStyle\":{\"type\":\"object\",\"selector\":\"{{selector}}.dsm_carousel .swiper-arrow-button\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}}.dsm_image_carousel .swiper-arrow-button\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}}.dsm_image_carousel .swiper-arrow-button\",\"useOverlay\":true}}},\"carousel_image_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_image_carousel_item img\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm_image_carousel_item img\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm_image_carousel_item img\",\"useOverlay\":true},\"filters\":{\"selector\":\"{{selector}}\",\"important\":true}}},\"slideshow_image_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_image_carousel_item .dsm_image_carousel_slideshow_bg\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm_image_carousel_item .dsm_image_carousel_slideshow_bg\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm_image_carousel_item .dsm_image_carousel_slideshow_bg\",\"useOverlay\":true}}},\"thumbnail_design_tab\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"inactive\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"thumbnail_inactive_opacity\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"0.4\"},\"tablet\":{\"value\":\"0.4\"},\"phone\":{\"value\":\"0.4\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"thumbnail_active_opacity\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"1\"},\"tablet\":{\"value\":\"1\"},\"phone\":{\"value\":\"1\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"thumbnail_inactive_image_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_image_gallery_thumbs .swiper-slide:not(.swiper-slide-thumb-active) .dsm_image_carousel_thumbs_image, {{selector}} .dsm_image_gallery_thumbs .swiper-slide:not(.swiper-slide-active) .dsm_image_carousel_thumbs_image\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm_image_gallery_thumbs .swiper-slide:not(.swiper-slide-thumb-active) .dsm_image_carousel_thumbs_image, {{selector}} .dsm_image_gallery_thumbs .swiper-slide:not(.swiper-slide-active) .dsm_image_carousel_thumbs_image\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm_image_gallery_thumbs .swiper-slide:not(.swiper-slide-thumb-active) .dsm_image_carousel_thumbs_image, {{selector}} .dsm_image_gallery_thumbs .swiper-slide:not(.swiper-slide-active) .dsm_image_carousel_thumbs_image\",\"useOverlay\":true}}},\"thumbnail_active_image_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_image_gallery_thumbs .swiper-slide.swiper-slide-thumb-active .dsm_image_carousel_thumbs_image\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm_image_gallery_thumbs .swiper-slide.swiper-slide-thumb-active .dsm_image_carousel_thumbs_image\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm_image_gallery_thumbs .swiper-slide.swiper-slide-thumb-active .dsm_image_carousel_thumbs_image\",\"useOverlay\":true}}},\"slideshow_thumbs_position\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"bottom\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slideshow_thumbs_offset\":{\"type\":\"object\",\"inlineEditor\":\"\",\"selector\":\"{{selector}} .dsm_image_gallery_thumbs.dsm_ic_slideshow_thumbs_absolute\",\"childrenSanitizer\":\"et_core_esc_previously\",\"settings\":{\"decoration\":{\"spacing\":{}}}},\"slideshow_slide_content_tab\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"title\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slideshow_show_slide_title\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slideshow_show_slide_description\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slideshow_use_overlay\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slideshow_overlay_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_image_carousel_slideshow_overlay\",\"childrenSanitizer\":\"et_core_esc_previously\",\"default\":{\"decoration\":{\"background\":{\"desktop\":{\"value\":{\"color\":\"rgba(0, 0, 0, 0.3)\"}}}}},\"settings\":{\"decoration\":{\"background\":{}}},\"styleProps\":{\"background\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm_image_carousel_slideshow_overlay\",\"hover\":\"{{selector}} .dsm_image_carousel_slideshow_overlay:hover\"}}}}},\"slideshow_slide_title_align_h\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"center\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slideshow_slide_title_align_v\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"center\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slideshow_slide_title_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_image_carousel_slide_title\",\"childrenSanitizer\":\"et_core_esc_previously\",\"settings\":{\"decoration\":{\"font\":{},\"background\":{},\"spacing\":{},\"border\":{},\"boxShadow\":{}}},\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm_image_carousel_slide_title\",\"hover\":\"{{selector}} .dsm_image_carousel_slide_title:hover\"}}},\"background\":{\"selector\":\"{{selector}} .dsm_image_carousel_slide_title\",\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm_image_carousel_slide_title\",\"hover\":\"{{selector}}{{:hover}} .dsm_image_carousel_slide_title\"}}},\"spacing\":{\"selector\":\"{{selector}} .dsm_image_carousel_slide_title\",\"important\":true},\"border\":{\"selector\":\"{{selector}} .dsm_image_carousel_slide_title\",\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm_image_carousel_slide_title\",\"hover\":\"{{selector}}{{:hover}} .dsm_image_carousel_slide_title\"}},\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm_image_carousel_slide_title\",\"useOverlay\":true}}},\"slideshow_slide_description_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_image_carousel_slide_description\",\"childrenSanitizer\":\"et_core_esc_previously\",\"settings\":{\"decoration\":{\"font\":{},\"background\":{},\"spacing\":{},\"border\":{},\"boxShadow\":{}}},\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm_image_carousel_slide_description\",\"hover\":\"{{selector}} .dsm_image_carousel_slide_description:hover\"}}},\"background\":{\"selector\":\"{{selector}} .dsm_image_carousel_slide_description\",\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm_image_carousel_slide_description\",\"hover\":\"{{selector}}{{:hover}} .dsm_image_carousel_slide_description\"}}},\"spacing\":{\"selector\":\"{{selector}} .dsm_image_carousel_slide_description\",\"important\":true},\"border\":{\"selector\":\"{{selector}} .dsm_image_carousel_slide_description\",\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm_image_carousel_slide_description\",\"hover\":\"{{selector}}{{:hover}} .dsm_image_carousel_slide_description\"}},\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm_image_carousel_slide_description\",\"useOverlay\":true}}},\"slideshow_title_animation\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"fadeInUp\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slideshow_title_animation_duration\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"1000\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slideshow_title_animation_delay\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"0\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slideshow_title_animation_out\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"fadeOutDown\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slideshow_title_animation_out_duration\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"1000\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slideshow_title_animation_out_delay\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"0\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slideshow_description_animation\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"fadeInUp\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slideshow_description_animation_duration\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"1000\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slideshow_description_animation_delay\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"0\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slideshow_description_animation_out\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"fadeOutDown\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slideshow_description_animation_out_duration\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"1000\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slideshow_description_animation_out_delay\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"0\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slideshow_wrapper_animation_in\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"none\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slideshow_wrapper_animation_in_duration\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"1000\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slideshow_wrapper_animation_in_delay\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"0\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slideshow_wrapper_animation_out\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"none\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slideshow_wrapper_animation_out_duration\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"1000\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slideshow_wrapper_animation_out_delay\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"0\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/image-carousel/conversion-outline.js\n\n\nconst image_carousel_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    margin_padding: 'module.decoration.spacing',\n    max_width: 'module.decoration.sizing',\n    height: 'module.decoration.sizing',\n    borders: {\n      default: 'module.decoration.border',\n      image: 'carousel_image_style.decoration.border',\n      arrow: 'arrowStyle.decoration.border',\n      slideshow_image: 'slideshow_image_style.decoration.border',\n      slideshow_slide_title: 'slideshow_slide_title_style.decoration.border',\n      thumbnails_inactive_image: 'thumbnail_inactive_image_style.decoration.border',\n      thumbnails_active_image: 'thumbnail_active_image_style.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow',\n      image: 'carousel_image_style.decoration.boxShadow',\n      arrow: 'arrowStyle.decoration.boxShadow',\n      slideshow_image: 'slideshow_image_style.decoration.boxShadow',\n      slideshow_slide_title: 'slideshow_slide_title_style.decoration.boxShadow',\n      thumbnails_inactive_image: 'thumbnail_inactive_image_style.decoration.boxShadow',\n      thumbnails_active_image: 'thumbnail_active_image_style.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    display_conditions: 'module.decoration.conditions',\n    filters: {\n      default: 'module.decoration.filters',\n      image: 'carousel_image_style.decoration.filters'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    gallery_ids: 'gallery_ids.innerContent.*',\n    gallery_orderby: 'gallery_orderby.innerContent.*',\n    slider_effect: 'slider_effect.innerContent.*',\n    slider_direction: 'slider_direction.innerContent.*',\n    centered_slides: 'centered_slides.innerContent.*',\n    slide_to_show: 'slide_to_show.innerContent.*',\n    slide_to_row_show: 'slide_to_row_show.innerContent.*',\n    slide_to_scroll: 'slide_to_scroll.innerContent.*',\n    multiple_slide_row: 'multiple_slide_row.innerContent.*',\n    slide_row: 'slide_row.innerContent.*',\n    speed: 'speed.innerContent.*',\n    autoplay: 'autoplay.innerContent.*',\n    autoplay_speed: 'autoplay_speed.innerContent.*',\n    pause_on_hover: 'pause_on_hover.innerContent.*',\n    space_between: 'space_between.innerContent.*',\n    infinite: 'infinite.innerContent.*',\n    infinite_smooth_scrolling: 'infinite_smooth_scrolling.innerContent.*',\n    horizontal_alignment: 'horizontal_alignment.innerContent.*',\n    arrows: 'arrows.innerContent.*',\n    arrow_position: 'arrow_position.innerContent.*',\n    // D4 mobile-only field → phone breakpoint on responsive arrow_position.\n    arrow_position_mobile: 'arrow_position.innerContent.phone',\n    arrow_size: 'arrow_size.innerContent.*',\n    dots: 'dots.innerContent.*',\n    touch_move: 'touch_move.innerContent.*',\n    grab: 'grab.innerContent.*',\n    show_lightbox: 'show_lightbox.innerContent.*',\n    show_lightbox_gallery: 'show_lightbox_gallery.innerContent.*',\n    show_lightbox_title: 'show_lightbox_title.innerContent.*',\n    show_lightbox_caption: 'show_lightbox_caption.innerContent.*',\n    arrow_color: 'arrow_color.innerContent.*',\n    arrow_background_color: 'arrow_background_color.innerContent.*',\n    dots_horizontal_placement: 'dots_horizontal_placement.innerContent.*',\n    dots_vertical_placement: 'dots_vertical_placement.innerContent.*',\n    dots_active_color: 'dots_active_color.innerContent.*',\n    dots_inactive_color: 'dots_inactive_color.innerContent.*',\n    pagi_vertical_position: 'pagi_vertical_position.innerContent.*',\n    image_fit: 'image_fit.innerContent.*',\n    image_position: 'image_position.innerContent.*',\n    lazyload: 'lazyload.innerContent.*',\n    slider_type: 'slider_type.innerContent.*',\n    slideshow_effect: 'slideshow_effect.innerContent.*',\n    slideshow_height: 'slideshow_height.innerContent.*',\n    slideshow_to_show: 'slideshow_to_show.innerContent.*',\n    slideshow_ratio: 'slideshow_ratio.innerContent.*',\n    slideshow_image_fit: 'slideshow_image_fit.innerContent.*',\n    slideshow_image_position: 'slideshow_image_position.innerContent.*',\n    slider_orientation: 'slider_orientation.innerContent.*',\n    slider_container_height: 'slider_container_height.innerContent.*',\n    slider_effect_shadows: 'slider_effect_shadows.innerContent.*',\n    slider_effect_coverflow_rotate: 'slider_effect_coverflow_rotate.innerContent.*',\n    slider_effect_coverflow_depth: 'slider_effect_coverflow_depth.innerContent.*',\n    autoplay_viewport: 'autoplay_viewport.innerContent.*',\n    mousewheel: 'mousewheel.innerContent.*',\n    use_arrow_custom_position: 'use_arrow_custom_position.innerContent.*',\n    arrow_custom_position: 'arrow_custom_position.innerContent.*',\n    arrow_prev: 'arrow_prev.innerContent.*',\n    arrow_prev_font_icon: 'arrow_prev_font_icon.innerContent.*',\n    arrow_next: 'arrow_next.innerContent.*',\n    arrow_next_font_icon: 'arrow_next_font_icon.innerContent.*',\n    arrow_horizontal_position: 'arrow_horizontal_position.innerContent.*',\n    sizes: 'sizes.innerContent.*',\n    slideshow_sizes: 'slideshow_sizes.innerContent.*',\n    slideshow_slide_content_tab: 'slideshow_slide_content_tab.innerContent.*',\n    slideshow_use_overlay: 'slideshow_use_overlay.innerContent.*',\n    lightbox_img_sizes: 'lightbox_img_sizes.innerContent.*',\n    navi_hori_position: 'navi_hori_position.innerContent.*',\n    top_navi_ver_position: 'top_navi_ver_position.innerContent.*',\n    bottom_navi_ver_position: 'bottom_navi_ver_position.innerContent.*',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*',\n    slideshow_padding: 'slideshow_padding.decoration.spacing.*.padding',\n    thumbs_padding: 'thumbs_padding.decoration.spacing.*.padding',\n    slideshow_thumbs_offset: 'slideshow_thumbs_offset.decoration.spacing.*.padding'\n  },\n  valueExpansionFunctionMap: {\n    arrow_prev_font_icon: external_divi_conversion_namespaceObject.convertFontIcon,\n    arrow_next_font_icon: external_divi_conversion_namespaceObject.convertFontIcon,\n    slideshow_padding: external_divi_module_namespaceObject.convertSpacing,\n    thumbs_padding: external_divi_module_namespaceObject.convertSpacing,\n    slideshow_thumbs_offset: external_divi_module_namespaceObject.convertSpacing,\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/image-carousel/image-carousel-vb-default-attrs.js\n/**\n * D4-aligned `defaultAttr` slices for Image Carousel (content + design).\n *\n * Sources: Divi 4 `ImageCarousel.php` defaults and `index.js` placeholderContent.\n *\n * @package DiviSupreme\n */\n\nconst diviArrowIcon = unicodeHex => ({\n  type: 'divi',\n  unicode: unicodeHex,\n  weight: '400'\n});\n\n/** @type {Record<string, { desktop: { value: unknown } }>} */\nconst imageCarouselContentDefaultInnerContent = {\n  gallery_ids: {\n    desktop: {\n      value: []\n    },\n    tablet: {\n      value: []\n    },\n    phone: {\n      value: []\n    }\n  },\n  gallery_orderby: {\n    desktop: {\n      value: 'default'\n    }\n  },\n  sizes: {\n    desktop: {\n      value: 'full'\n    }\n  },\n  image_fit: {\n    desktop: {\n      value: 'cover'\n    }\n  },\n  image_position: {\n    desktop: {\n      value: 'center'\n    }\n  },\n  lazyload: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  slider_type: {\n    desktop: {\n      value: 'carousel'\n    }\n  },\n  slider_orientation: {\n    desktop: {\n      value: 'horizontal'\n    }\n  },\n  slider_container_height: {\n    desktop: {\n      value: '500px'\n    }\n  },\n  slider_effect: {\n    desktop: {\n      value: 'default'\n    }\n  },\n  slider_effect_shadows: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  slider_effect_coverflow_rotate: {\n    desktop: {\n      value: '30'\n    }\n  },\n  slider_effect_coverflow_depth: {\n    desktop: {\n      value: '0'\n    }\n  },\n  slideshow_effect: {\n    desktop: {\n      value: 'default'\n    }\n  },\n  slideshow_height: {\n    desktop: {\n      value: '450px'\n    }\n  },\n  slider_direction: {\n    desktop: {\n      value: 'ltr'\n    }\n  },\n  centered_slides: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  slide_to_show: {\n    desktop: {\n      value: '4'\n    },\n    tablet: {\n      value: '2'\n    },\n    phone: {\n      value: '1'\n    }\n  },\n  slide_to_row_show: {\n    desktop: {\n      value: '1'\n    },\n    tablet: {\n      value: '2'\n    },\n    phone: {\n      value: '1'\n    }\n  },\n  slide_to_scroll: {\n    desktop: {\n      value: '1'\n    }\n  },\n  multiple_slide_row: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  slide_row: {\n    desktop: {\n      value: '1'\n    }\n  },\n  speed: {\n    desktop: {\n      value: '300'\n    }\n  },\n  autoplay: {\n    desktop: {\n      value: 'on'\n    }\n  },\n  autoplay_speed: {\n    desktop: {\n      value: '3000'\n    }\n  },\n  autoplay_viewport: {\n    desktop: {\n      value: '80%'\n    }\n  },\n  mousewheel: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  pause_on_hover: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  space_between: {\n    desktop: {\n      value: '15'\n    }\n  },\n  infinite: {\n    desktop: {\n      value: 'on'\n    }\n  },\n  infinite_smooth_scrolling: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  arrows: {\n    desktop: {\n      value: 'on'\n    }\n  },\n  dots: {\n    desktop: {\n      value: 'on'\n    }\n  },\n  touch_move: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  grab: {\n    desktop: {\n      value: 'on'\n    }\n  },\n  slideshow_to_show: {\n    desktop: {\n      value: '4'\n    }\n  },\n  slideshow_sizes: {\n    desktop: {\n      value: 'full'\n    }\n  },\n  slideshow_ratio: {\n    desktop: {\n      value: '219'\n    }\n  },\n  slideshow_image_fit: {\n    desktop: {\n      value: 'cover'\n    }\n  },\n  slideshow_image_position: {\n    desktop: {\n      value: 'center'\n    }\n  },\n  slideshow_thumbs_position: {\n    desktop: {\n      value: 'bottom'\n    }\n  },\n  slideshow_slide_content_tab: {\n    desktop: {\n      value: 'title'\n    }\n  },\n  slideshow_show_slide_title: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  slideshow_show_slide_description: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  slideshow_use_overlay: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  slideshow_title_animation: {\n    desktop: {\n      value: 'fadeInUp'\n    }\n  },\n  slideshow_title_animation_duration: {\n    desktop: {\n      value: '1000'\n    }\n  },\n  slideshow_title_animation_delay: {\n    desktop: {\n      value: '0'\n    }\n  },\n  slideshow_title_animation_out: {\n    desktop: {\n      value: 'fadeOutDown'\n    }\n  },\n  slideshow_title_animation_out_duration: {\n    desktop: {\n      value: '1000'\n    }\n  },\n  slideshow_title_animation_out_delay: {\n    desktop: {\n      value: '0'\n    }\n  },\n  slideshow_description_animation: {\n    desktop: {\n      value: 'fadeInUp'\n    }\n  },\n  slideshow_description_animation_duration: {\n    desktop: {\n      value: '1000'\n    }\n  },\n  slideshow_description_animation_delay: {\n    desktop: {\n      value: '0'\n    }\n  },\n  slideshow_description_animation_out: {\n    desktop: {\n      value: 'fadeOutDown'\n    }\n  },\n  slideshow_description_animation_out_duration: {\n    desktop: {\n      value: '1000'\n    }\n  },\n  slideshow_description_animation_out_delay: {\n    desktop: {\n      value: '0'\n    }\n  },\n  slideshow_wrapper_animation_in: {\n    desktop: {\n      value: 'none'\n    }\n  },\n  slideshow_wrapper_animation_in_duration: {\n    desktop: {\n      value: '1000'\n    }\n  },\n  slideshow_wrapper_animation_in_delay: {\n    desktop: {\n      value: '0'\n    }\n  },\n  slideshow_wrapper_animation_out: {\n    desktop: {\n      value: 'none'\n    }\n  },\n  slideshow_wrapper_animation_out_duration: {\n    desktop: {\n      value: '1000'\n    }\n  },\n  slideshow_wrapper_animation_out_delay: {\n    desktop: {\n      value: '0'\n    }\n  },\n  show_lightbox: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  lightbox_img_sizes: {\n    desktop: {\n      value: 'full'\n    }\n  },\n  show_lightbox_gallery: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  show_lightbox_title: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  show_lightbox_caption: {\n    desktop: {\n      value: 'off'\n    }\n  }\n};\n\n/** @type {Record<string, { desktop: { value: unknown } }>} */\nconst imageCarouselDesignDefaultInnerContent = {\n  horizontal_alignment: {\n    desktop: {\n      value: 'center'\n    }\n  },\n  navi_hori_position: {\n    desktop: {\n      value: '50%'\n    }\n  },\n  top_navi_ver_position: {\n    desktop: {\n      value: '0px'\n    }\n  },\n  bottom_navi_ver_position: {\n    desktop: {\n      value: '0px'\n    }\n  },\n  arrow_position: {\n    desktop: {\n      value: 'outside'\n    },\n    tablet: {\n      value: 'outside'\n    },\n    phone: {\n      value: 'inside'\n    }\n  },\n  use_arrow_custom_position: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  arrow_custom_position: {\n    desktop: {\n      value: '-60px'\n    }\n  },\n  arrow_prev: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  arrow_prev_font_icon: {\n    desktop: {\n      value: diviArrowIcon('&#x34;')\n    }\n  },\n  arrow_next: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  arrow_next_font_icon: {\n    desktop: {\n      value: diviArrowIcon('&#x35;')\n    }\n  },\n  arrow_horizontal_position: {\n    desktop: {\n      value: '50%'\n    }\n  },\n  arrow_size: {\n    desktop: {\n      value: '40px'\n    }\n  },\n  arrow_color: {\n    desktop: {\n      value: '#666'\n    }\n  },\n  arrow_background_color: {\n    desktop: {\n      value: ''\n    }\n  },\n  dots_horizontal_placement: {\n    desktop: {\n      value: '-30px'\n    }\n  },\n  dots_vertical_placement: {\n    desktop: {\n      value: '50%'\n    }\n  },\n  dots_active_color: {\n    desktop: {\n      value: 'rgba(0,0,0,0.75)'\n    }\n  },\n  dots_inactive_color: {\n    desktop: {\n      value: 'rgba(0,0,0,0.2)'\n    }\n  },\n  pagi_vertical_position: {\n    desktop: {\n      value: 'right'\n    }\n  },\n  thumbnail_design_tab: {\n    desktop: {\n      value: 'inactive'\n    }\n  },\n  thumbnail_inactive_opacity: {\n    desktop: {\n      value: '0.4'\n    },\n    tablet: {\n      value: '0.4'\n    },\n    phone: {\n      value: '0.4'\n    }\n  },\n  thumbnail_active_opacity: {\n    desktop: {\n      value: '1'\n    },\n    tablet: {\n      value: '1'\n    },\n    phone: {\n      value: '1'\n    }\n  },\n  slideshow_slide_content_tab: {\n    desktop: {\n      value: 'title'\n    }\n  },\n  slideshow_slide_title_align_h: {\n    desktop: {\n      value: 'center'\n    }\n  },\n  slideshow_slide_title_align_v: {\n    desktop: {\n      value: 'center'\n    }\n  }\n};\n\n/**\n * Default `slideshow_thumbs_offset.decoration.spacing` for Content tab `SpacingGroup`.\n * Stored as decoration.spacing.*.padding (Divi pattern); FE/VB map sides to CSS `position` inset.\n * Intentionally empty so users opt in to offsets; no static SCSS defaults for inset.\n *\n * @type {Record<string, { value: { padding: Record<string, string> } }>}\n */\nconst imageCarouselSlideshowThumbsOffsetSpacingDefault = {\n  desktop: {\n    value: {\n      padding: {\n        top: '',\n        right: '',\n        bottom: '',\n        left: ''\n      }\n    }\n  },\n  tablet: {\n    value: {\n      padding: {\n        top: '',\n        right: '',\n        bottom: '',\n        left: ''\n      }\n    }\n  },\n  phone: {\n    value: {\n      padding: {\n        top: '',\n        right: '',\n        bottom: '',\n        left: ''\n      }\n    }\n  }\n};\n;// ./packages/module-library/image-carousel/image-carousel-slideshow-animation-field-options.js\n/**\n * SelectContainer option maps for slideshow Animate.css fields.\n * Kept in sync with Slide Title Animation In/Out options in `settings-content.js`.\n *\n * @param {typeof import('@wordpress/i18n').__} __\n * @returns {Record<string, { label: string }>}\n */\nfunction dsmIcSlideshowAnimInFieldOptions(__) {\n  return {\n    none: {\n      label: __('None', 'dsm-supreme-modules-pro-for-divi')\n    },\n    fadeIn: {\n      label: __('Fade In', 'dsm-supreme-modules-pro-for-divi')\n    },\n    fadeInUp: {\n      label: __('Fade In Up', 'dsm-supreme-modules-pro-for-divi')\n    },\n    fadeInDown: {\n      label: __('Fade In Down', 'dsm-supreme-modules-pro-for-divi')\n    },\n    slideInLeft: {\n      label: __('Slide In Left', 'dsm-supreme-modules-pro-for-divi')\n    },\n    slideInRight: {\n      label: __('Slide In Right', 'dsm-supreme-modules-pro-for-divi')\n    },\n    bounceIn: {\n      label: __('Bounce In', 'dsm-supreme-modules-pro-for-divi')\n    },\n    zoomIn: {\n      label: __('Zoom In', 'dsm-supreme-modules-pro-for-divi')\n    },\n    flipInX: {\n      label: __('Flip In X', 'dsm-supreme-modules-pro-for-divi')\n    },\n    flipInY: {\n      label: __('Flip In Y', 'dsm-supreme-modules-pro-for-divi')\n    },\n    lightSpeedIn: {\n      label: __('Light Speed In', 'dsm-supreme-modules-pro-for-divi')\n    },\n    jackInTheBox: {\n      label: __('Jack In The Box', 'dsm-supreme-modules-pro-for-divi')\n    },\n    rollIn: {\n      label: __('Roll In', 'dsm-supreme-modules-pro-for-divi')\n    },\n    rubberBand: {\n      label: __('Rubber Band', 'dsm-supreme-modules-pro-for-divi')\n    },\n    pulse: {\n      label: __('Pulse', 'dsm-supreme-modules-pro-for-divi')\n    },\n    bounce: {\n      label: __('Bounce', 'dsm-supreme-modules-pro-for-divi')\n    }\n  };\n}\n\n/**\n * @param {typeof import('@wordpress/i18n').__} __\n * @returns {Record<string, { label: string }>}\n */\nfunction dsmIcSlideshowAnimOutFieldOptions(__) {\n  return {\n    none: {\n      label: __('None', 'dsm-supreme-modules-pro-for-divi')\n    },\n    fadeOut: {\n      label: __('Fade Out', 'dsm-supreme-modules-pro-for-divi')\n    },\n    fadeOutUp: {\n      label: __('Fade Out Up', 'dsm-supreme-modules-pro-for-divi')\n    },\n    fadeOutDown: {\n      label: __('Fade Out Down', 'dsm-supreme-modules-pro-for-divi')\n    },\n    fadeOutLeft: {\n      label: __('Fade Out Left', 'dsm-supreme-modules-pro-for-divi')\n    },\n    fadeOutRight: {\n      label: __('Fade Out Right', 'dsm-supreme-modules-pro-for-divi')\n    },\n    slideOutUp: {\n      label: __('Slide Out Up', 'dsm-supreme-modules-pro-for-divi')\n    },\n    slideOutDown: {\n      label: __('Slide Out Down', 'dsm-supreme-modules-pro-for-divi')\n    },\n    slideOutLeft: {\n      label: __('Slide Out Left', 'dsm-supreme-modules-pro-for-divi')\n    },\n    slideOutRight: {\n      label: __('Slide Out Right', 'dsm-supreme-modules-pro-for-divi')\n    },\n    bounceOut: {\n      label: __('Bounce Out', 'dsm-supreme-modules-pro-for-divi')\n    },\n    zoomOut: {\n      label: __('Zoom Out', 'dsm-supreme-modules-pro-for-divi')\n    },\n    flipOutX: {\n      label: __('Flip Out X', 'dsm-supreme-modules-pro-for-divi')\n    },\n    flipOutY: {\n      label: __('Flip Out Y', 'dsm-supreme-modules-pro-for-divi')\n    },\n    lightSpeedOut: {\n      label: __('Light Speed Out', 'dsm-supreme-modules-pro-for-divi')\n    },\n    rollOut: {\n      label: __('Roll Out', 'dsm-supreme-modules-pro-for-divi')\n    }\n  };\n}\n;// ./packages/module-library/image-carousel/settings-content.js\n\n// Wordpress dependencies.\n\n// Divi package dependencies.\n\n\n\n\n\n\nfunction image_carousel_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _getAttrByMode4, _getAttrByMode5, _getAttrByMode6, _getAttrByMode7, _getAttrByMode8, _getAttrByMode9, _getAttrByMode0, _getAttrByMode1, _getAttrByMode10, _getAttrByMode11, _getAttrByMode12, _getAttrByMode13, _getAttrByMode14, _getAttrByMode15, _getAttrByMode16, _getAttrByMode17;\n  // Align with D4 `default` / `default_on_front` when keys are omitted after save.\n  const sliderType = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_type?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'carousel';\n  const sliderOrientation = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_orientation?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'horizontal';\n  const showLightbox = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_lightbox?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'off';\n  const multipleSlideRow = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.multiple_slide_row?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : 'off';\n  const autoPlay = (_getAttrByMode5 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.autoplay?.innerContent)) !== null && _getAttrByMode5 !== void 0 ? _getAttrByMode5 : 'on';\n  const infinite = (_getAttrByMode6 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.infinite?.innerContent)) !== null && _getAttrByMode6 !== void 0 ? _getAttrByMode6 : 'on';\n  const sliderEffect = (_getAttrByMode7 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_effect?.innerContent)) !== null && _getAttrByMode7 !== void 0 ? _getAttrByMode7 : 'default';\n  const touchMove = (_getAttrByMode8 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.touch_move?.innerContent)) !== null && _getAttrByMode8 !== void 0 ? _getAttrByMode8 : 'off';\n  const infiniteSmoothScrolling = (_getAttrByMode9 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.infinite_smooth_scrolling?.innerContent)) !== null && _getAttrByMode9 !== void 0 ? _getAttrByMode9 : 'off';\n  const slideshowThumbsPosition = (_getAttrByMode0 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_thumbs_position?.innerContent)) !== null && _getAttrByMode0 !== void 0 ? _getAttrByMode0 : 'bottom';\n  const slideshowShowSlideTitle = (_getAttrByMode1 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_show_slide_title?.innerContent)) !== null && _getAttrByMode1 !== void 0 ? _getAttrByMode1 : 'off';\n  // Read here always: `visible={ cond && getAttrByMode(...) }` short-circuits and breaks hooks (#310).\n  const slideshowTitleAnimation = (_getAttrByMode10 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_title_animation?.innerContent)) !== null && _getAttrByMode10 !== void 0 ? _getAttrByMode10 : 'fadeInUp';\n  const slideshowTitleAnimationOut = (_getAttrByMode11 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_title_animation_out?.innerContent)) !== null && _getAttrByMode11 !== void 0 ? _getAttrByMode11 : 'fadeOutDown';\n  const slideshowShowSlideDescription = (_getAttrByMode12 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_show_slide_description?.innerContent)) !== null && _getAttrByMode12 !== void 0 ? _getAttrByMode12 : 'off';\n  const slideshowDescriptionAnimation = (_getAttrByMode13 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_description_animation?.innerContent)) !== null && _getAttrByMode13 !== void 0 ? _getAttrByMode13 : 'fadeInUp';\n  const slideshowDescriptionAnimationOut = (_getAttrByMode14 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_description_animation_out?.innerContent)) !== null && _getAttrByMode14 !== void 0 ? _getAttrByMode14 : 'fadeOutDown';\n  const slideshowWrapperAnimationIn = (_getAttrByMode15 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_wrapper_animation_in?.innerContent)) !== null && _getAttrByMode15 !== void 0 ? _getAttrByMode15 : 'none';\n  const slideshowWrapperAnimationOut = (_getAttrByMode16 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_wrapper_animation_out?.innerContent)) !== null && _getAttrByMode16 !== void 0 ? _getAttrByMode16 : 'none';\n  const slideshowSlideContentTab = (_getAttrByMode17 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_slide_content_tab?.innerContent)) !== null && _getAttrByMode17 !== void 0 ? _getAttrByMode17 : 'title';\n  const icSlideshowAnimInOptions = dsmIcSlideshowAnimInFieldOptions(external_window_vendor_wp_i18n_namespaceObject.__);\n  const icSlideshowAnimOutOptions = dsmIcSlideshowAnimOutFieldOptions(external_window_vendor_wp_i18n_namespaceObject.__);\n  const imageSizesOptions = Object.entries(diviSupreme5.imageSizes).reduce((acc, [key, value]) => {\n    acc[key] = {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)(value, 'dsm-supreme-modules-pro-for-divi')\n    };\n    return acc;\n  }, {});\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Carousel', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.gallery_ids,\n    attrName: \"gallery_ids.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Carousel', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      responsive: true\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadGalleryContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.gallery_orderby,\n    attrName: \"gallery_orderby.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Order By', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      default: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Default', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rand: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Random', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.sizes,\n    attrName: \"sizes.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Size', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('You have the option to decide whether the image should be a link. Please note that if you enter a link in the Media settings, that link will be used. Otherwise, the image URL link will be utilized instead.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: imageSizesOptions\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slideshow_use_overlay,\n    attrName: \"slideshow_use_overlay.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Image Overlay', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Adds a tint or gradient over each slide image (carousel or slideshow). For slideshows, overlay sits beneath titles and captions. Style it under Design → Image Overlay.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.image_fit,\n    attrName: \"image_fit.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Fit', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'slideshow' === sliderType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      cover: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Cover', 'dsm-supreme-modules-pro-for-divi')\n      },\n      contain: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Contain', 'dsm-supreme-modules-pro-for-divi')\n      },\n      auto: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Auto', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.image_position,\n    attrName: \"image_position.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Position', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'slideshow' === sliderType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      top_left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      top_center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      top_right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center_left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center_right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom_left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom_center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom_right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Right', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.lazyload,\n    attrName: \"lazyload.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enabled Lazy Load', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('When on, the main carousel uses Swiper lazy preload with native loading=\"lazy\" on slide images; slideshow backgrounds and thumbnail strip load via deferred background URLs. When off, images load immediately. Some performance or caching plugins may alter lazy behavior; test on your stack.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"carousel_settings\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slider Settings', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slider_type,\n    attrName: \"slider_type.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Type', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      carousel: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Carousel', 'dsm-supreme-modules-pro-for-divi')\n      },\n      slideshow: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slideshow', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slider_orientation,\n    attrName: \"slider_orientation.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Carousel Orientation', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'carousel' === sliderType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      horizontal: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Horizontal', 'dsm-supreme-modules-pro-for-divi')\n      },\n      vertical: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Vertical', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slider_container_height,\n    attrName: \"slider_container_height.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Height', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'slideshow' !== sliderType && 'vertical' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 100,\n    max: 2000,\n    step: 10,\n    defaultUnit: 'px'\n  })), 'carousel' === sliderType && 'vertical' === sliderOrientation && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.WarningContainer, {\n    name: \"height-app-id-notice\",\n    value: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Increase Height If the content is being cut.', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slider_effect,\n    attrName: \"slider_effect.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Carousel Effect', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'carousel' === sliderType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      default: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide', 'dsm-supreme-modules-pro-for-divi')\n      },\n      coverflow: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Coverflow', 'dsm-supreme-modules-pro-for-divi')\n      },\n      flip: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Flip', 'dsm-supreme-modules-pro-for-divi')\n      },\n      cube: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Cube', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slider_effect_shadows,\n    attrName: \"slider_effect_shadows.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Shadow', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'default' !== sliderEffect\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slider_effect_coverflow_rotate,\n    attrName: \"slider_effect_coverflow_rotate.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Coverflow Rotate', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'coverflow' === sliderEffect\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 30,\n    max: 100,\n    defaultUnit: \"\",\n    allowedUnits: []\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slider_effect_coverflow_depth,\n    attrName: \"slider_effect_coverflow_depth.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Coverflow Depth', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'coverflow' === sliderEffect\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 500,\n    defaultUnit: \"\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slideshow_effect,\n    attrName: \"slideshow_effect.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slideshow Effect', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'slideshow' === sliderType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      default: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fade: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slideshow_height,\n    attrName: \"slideshow_height.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Height', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'slideshow' === sliderType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 1000,\n    defaultUnit: \"px\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slider_direction,\n    attrName: \"slider_direction.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Carousel Direction', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'horizontal' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      ltr: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left to Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rtl: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right to Left', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.centered_slides,\n    attrName: \"centered_slides.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Centered Mode', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'carousel' === sliderType,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If enable, then active slide will be centered, not always on the left side.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slide_to_show,\n    attrName: \"slide_to_show.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slides To Show', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      responsive: true\n    },\n    visible: 'slideshow' !== sliderType && 'horizontal' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 9,\n    defaultUnit: \"\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slide_to_row_show,\n    attrName: \"slide_to_row_show.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slides To Show', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      responsive: true\n    },\n    visible: 'carousel' === sliderType && 'vertical' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 9,\n    defaultUnit: \"\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slide_to_scroll,\n    attrName: \"slide_to_scroll.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slides To Scroll', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'carousel' === sliderType && 'on' !== infiniteSmoothScrolling\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 9,\n    defaultUnit: \"\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.multiple_slide_row,\n    attrName: \"multiple_slide_row.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Multiple Row', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('To use multirow layout.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'horizontal' === sliderOrientation && 'carousel' === sliderType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slide_row,\n    attrName: \"slide_row.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Row Per Slide', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === multipleSlideRow\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 5,\n    defaultUnit: \"\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.speed,\n    attrName: \"speed.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slider Speed', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 100,\n    max: 5000,\n    defaultUnit: \"\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.autoplay,\n    attrName: \"autoplay.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Autoplay', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If enable, then an arrow will be added to the tooltip.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.autoplay_speed,\n    attrName: \"autoplay_speed.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Autoplay Change Interval', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === autoPlay\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 100,\n    max: 5000,\n    defaultUnit: \"\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.autoplay_viewport,\n    attrName: \"autoplay_viewport.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Autoplay Only On Viewport', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === autoPlay,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Autoplay when in viewport.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: \"%\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.mousewheel,\n    attrName: \"mousewheel.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Mouse Wheel', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('To use mousewheel mousewheel swipes the slides.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.pause_on_hover,\n    attrName: \"pause_on_hover.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pause on Hover', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If enable, slider will pause on hover.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === autoPlay\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.space_between,\n    attrName: \"space_between.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Spacing', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: \"\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.infinite,\n    attrName: \"infinite.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Loop', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'off' === multipleSlideRow\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.infinite_smooth_scrolling,\n    attrName: \"infinite_smooth_scrolling.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Infinite Smooth Scrolling', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === infinite && 'carousel' === sliderType && 'off' === multipleSlideRow\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.arrows,\n    attrName: \"arrows.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Arrow', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show previous/next navigation arrows (hidden when Infinite Smooth Scrolling is on).', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' !== infiniteSmoothScrolling\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.dots,\n    attrName: \"dots.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Pagination', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show dot pagination (carousel mode only; hidden when Infinite Smooth Scrolling is on).', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'carousel' === sliderType && 'on' !== infiniteSmoothScrolling\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.touch_move,\n    attrName: \"touch_move.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Disable Touch/Dragging', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('This option will prevent user to touch/drag the slide.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.grab,\n    attrName: \"grab.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Grab Cursor', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'off' === touchMove\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"slideShowSettings\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slideshow Settings', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'slideshow' === sliderType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slideshow_to_show,\n    attrName: \"slideshow_to_show.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Thumbnail To Show', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 10,\n    defaultUnit: \"\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slideshow_sizes,\n    attrName: \"slideshow_sizes.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Thumbnail Image Size', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('You have the option to decide whether the image should be a link. Please note that if you enter a link in the Media settings, that link will be used. Otherwise, the image URL link will be utilized instead.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: imageSizesOptions\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slideshow_ratio,\n    attrName: \"slideshow_ratio.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Thumbnail Image Ration', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      11: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('1:1', 'dsm-supreme-modules-pro-for-divi')\n      },\n      43: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('4:3', 'dsm-supreme-modules-pro-for-divi')\n      },\n      169: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('16:9', 'dsm-supreme-modules-pro-for-divi')\n      },\n      219: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('21:9', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slideshow_image_fit,\n    attrName: \"slideshow_image_fit.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Thumbnail Image Fit', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      cover: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Cover', 'dsm-supreme-modules-pro-for-divi')\n      },\n      contain: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Contain', 'dsm-supreme-modules-pro-for-divi')\n      },\n      auto: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Auto', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slideshow_image_position,\n    attrName: \"slideshow_image_position.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Thumbnail Image Position', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      top_left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      top_center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      top_right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center_left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center_right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom_left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom_center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom_right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Right', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slideshow_thumbs_position,\n    attrName: \"slideshow_thumbs_position.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Thumbnail Position', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Place the thumbnail strip below the main slideshow, above it, or as an absolutely positioned overlay. When using Custom, set position offsets below.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      bottom: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom', 'dsm-supreme-modules-pro-for-divi')\n      },\n      top: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top', 'dsm-supreme-modules-pro-for-divi')\n      },\n      custom: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Custom (absolute)', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), 'custom' === slideshowThumbsPosition && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"slideshow_thumbs_offset.decoration.spacing\",\n    defaultAttr: imageCarouselSlideshowThumbsOffsetSpacingDefault,\n    defaultGroupAttr: imageCarouselSlideshowThumbsOffsetSpacingDefault,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('CSS position inset for the absolute thumbnail strip (top, right, bottom, left). Values such as px, %, or auto are supported; try auto on bottom to let the browser resolve placement.', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Thumbnail Position Offset', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      },\n      padding: {\n        label: '',\n        top: {\n          placeholder: 'auto'\n        },\n        right: {\n          placeholder: 'auto'\n        },\n        bottom: {\n          placeholder: 'auto'\n        },\n        left: {\n          placeholder: 'auto'\n        }\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"slideshowSlideContent\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slideshow Slide Content', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'slideshow' === sliderType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"slideshow_slide_content_tab.innerContent\",\n    defaultAttr: imageCarouselContentDefaultInnerContent.slideshow_slide_content_tab\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: {\n      title: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi')\n      },\n      description: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Description', 'dsm-supreme-modules-pro-for-divi')\n      },\n      wrapper: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Wrapper', 'dsm-supreme-modules-pro-for-divi')\n      }\n    },\n    tabUi: true,\n    showLabel: true\n  })), 'title' === slideshowSlideContentTab && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slideshow_show_slide_title,\n    attrName: \"slideshow_show_slide_title.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Slide Title', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Displays the attachment title, or alt text if the title is empty, as an overlay on each slide.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slideshow_title_animation,\n    attrName: \"slideshow_title_animation.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide Title Animation In', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Requires Show Slide Title. Plays on the active slide after each transition. Loads Animate.css when Animation In or Animation Out is not None.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === slideshowShowSlideTitle\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      none: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('None', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeIn: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeInUp: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Up', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeInDown: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Down', 'dsm-supreme-modules-pro-for-divi')\n      },\n      slideInLeft: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide In Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      slideInRight: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide In Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bounceIn: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bounce In', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zoomIn: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom In', 'dsm-supreme-modules-pro-for-divi')\n      },\n      flipInX: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Flip In X', 'dsm-supreme-modules-pro-for-divi')\n      },\n      flipInY: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Flip In Y', 'dsm-supreme-modules-pro-for-divi')\n      },\n      lightSpeedIn: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Light Speed In', 'dsm-supreme-modules-pro-for-divi')\n      },\n      jackInTheBox: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Jack In The Box', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rollIn: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Roll In', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rubberBand: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rubber Band', 'dsm-supreme-modules-pro-for-divi')\n      },\n      pulse: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pulse', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bounce: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bounce', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slideshow_title_animation_duration,\n    attrName: \"slideshow_title_animation_duration.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title Animation Duration', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Milliseconds (100–5000).', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === slideshowShowSlideTitle && 'none' !== slideshowTitleAnimation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 100,\n    max: 5000,\n    defaultUnit: \"\",\n    step: 50\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slideshow_title_animation_delay,\n    attrName: \"slideshow_title_animation_delay.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title Animation Delay', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Milliseconds (0–3000).', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === slideshowShowSlideTitle && 'none' !== slideshowTitleAnimation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 3000,\n    defaultUnit: \"\",\n    step: 50\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slideshow_title_animation_out,\n    attrName: \"slideshow_title_animation_out.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide Title Animation Out', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Runs on the current slide title before the next slide transition. Choose None to transition immediately.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === slideshowShowSlideTitle\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      none: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('None', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeOut: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade Out', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeOutUp: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade Out Up', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeOutDown: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade Out Down', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeOutLeft: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade Out Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeOutRight: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade Out Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      slideOutUp: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide Out Up', 'dsm-supreme-modules-pro-for-divi')\n      },\n      slideOutDown: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide Out Down', 'dsm-supreme-modules-pro-for-divi')\n      },\n      slideOutLeft: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide Out Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      slideOutRight: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide Out Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bounceOut: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bounce Out', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zoomOut: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom Out', 'dsm-supreme-modules-pro-for-divi')\n      },\n      flipOutX: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Flip Out X', 'dsm-supreme-modules-pro-for-divi')\n      },\n      flipOutY: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Flip Out Y', 'dsm-supreme-modules-pro-for-divi')\n      },\n      lightSpeedOut: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Light Speed Out', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rollOut: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Roll Out', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slideshow_title_animation_out_duration,\n    attrName: \"slideshow_title_animation_out_duration.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title Animation Out Duration', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Milliseconds (100–5000).', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === slideshowShowSlideTitle && 'none' !== slideshowTitleAnimationOut\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 100,\n    max: 5000,\n    defaultUnit: \"\",\n    step: 50\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slideshow_title_animation_out_delay,\n    attrName: \"slideshow_title_animation_out_delay.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title Animation Out Delay', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Milliseconds (0–3000).', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === slideshowShowSlideTitle && 'none' !== slideshowTitleAnimationOut\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 3000,\n    defaultUnit: \"\",\n    step: 50\n  }))), 'description' === slideshowSlideContentTab && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slideshow_show_slide_description,\n    attrName: \"slideshow_show_slide_description.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Slide Description', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Displays the attachment caption, or the description if the caption is empty, below the slide title in the overlay.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slideshow_description_animation,\n    attrName: \"slideshow_description_animation.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide Description Animation In', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Requires Show Slide Description. Same timing rules as the title animation.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === slideshowShowSlideDescription\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: icSlideshowAnimInOptions\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slideshow_description_animation_duration,\n    attrName: \"slideshow_description_animation_duration.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Description Animation Duration', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Milliseconds (100–5000).', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === slideshowShowSlideDescription && 'none' !== slideshowDescriptionAnimation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 100,\n    max: 5000,\n    defaultUnit: \"\",\n    step: 50\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slideshow_description_animation_delay,\n    attrName: \"slideshow_description_animation_delay.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Description Animation Delay', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Milliseconds (0–3000).', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === slideshowShowSlideDescription && 'none' !== slideshowDescriptionAnimation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 3000,\n    defaultUnit: \"\",\n    step: 50\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slideshow_description_animation_out,\n    attrName: \"slideshow_description_animation_out.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide Description Animation Out', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Runs with the title exit animation; the carousel waits for the longest exit duration.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === slideshowShowSlideDescription\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: icSlideshowAnimOutOptions\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slideshow_description_animation_out_duration,\n    attrName: \"slideshow_description_animation_out_duration.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Description Animation Out Duration', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Milliseconds (100–5000).', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === slideshowShowSlideDescription && 'none' !== slideshowDescriptionAnimationOut\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 100,\n    max: 5000,\n    defaultUnit: \"\",\n    step: 50\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slideshow_description_animation_out_delay,\n    attrName: \"slideshow_description_animation_out_delay.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Description Animation Out Delay', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Milliseconds (0–3000).', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === slideshowShowSlideDescription && 'none' !== slideshowDescriptionAnimationOut\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 3000,\n    defaultUnit: \"\",\n    step: 50\n  }))), 'wrapper' === slideshowSlideContentTab && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slideshow_wrapper_animation_in,\n    attrName: \"slideshow_wrapper_animation_in.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content Wrapper Animation In', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animates the title and description wrapper together after each transition. Runs together with individual title/description “in” animations when enabled.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === slideshowShowSlideTitle || 'on' === slideshowShowSlideDescription\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: icSlideshowAnimInOptions\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slideshow_wrapper_animation_in_duration,\n    attrName: \"slideshow_wrapper_animation_in_duration.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Wrapper Animation In Duration', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Milliseconds (100–5000).', 'dsm-supreme-modules-pro-for-divi'),\n    visible: ('on' === slideshowShowSlideTitle || 'on' === slideshowShowSlideDescription) && 'none' !== slideshowWrapperAnimationIn\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 100,\n    max: 5000,\n    defaultUnit: \"\",\n    step: 50\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slideshow_wrapper_animation_in_delay,\n    attrName: \"slideshow_wrapper_animation_in_delay.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Wrapper Animation In Delay', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Milliseconds (0–3000).', 'dsm-supreme-modules-pro-for-divi'),\n    visible: ('on' === slideshowShowSlideTitle || 'on' === slideshowShowSlideDescription) && 'none' !== slideshowWrapperAnimationIn\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 3000,\n    defaultUnit: \"\",\n    step: 50\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slideshow_wrapper_animation_out,\n    attrName: \"slideshow_wrapper_animation_out.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content Wrapper Animation Out', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animates the wrapper on slide exit alongside title and description when enabled.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === slideshowShowSlideTitle || 'on' === slideshowShowSlideDescription\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: icSlideshowAnimOutOptions\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slideshow_wrapper_animation_out_duration,\n    attrName: \"slideshow_wrapper_animation_out_duration.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Wrapper Animation Out Duration', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Milliseconds (100–5000).', 'dsm-supreme-modules-pro-for-divi'),\n    visible: ('on' === slideshowShowSlideTitle || 'on' === slideshowShowSlideDescription) && 'none' !== slideshowWrapperAnimationOut\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 100,\n    max: 5000,\n    defaultUnit: \"\",\n    step: 50\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.slideshow_wrapper_animation_out_delay,\n    attrName: \"slideshow_wrapper_animation_out_delay.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Wrapper Animation Out Delay', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Milliseconds (0–3000).', 'dsm-supreme-modules-pro-for-divi'),\n    visible: ('on' === slideshowShowSlideTitle || 'on' === slideshowShowSlideDescription) && 'none' !== slideshowWrapperAnimationOut\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 3000,\n    defaultUnit: \"\",\n    step: 50\n  })))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"lightBoxSettings\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Lightbox Settings', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.show_lightbox,\n    attrName: \"show_lightbox.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Open Image in Lightbox', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose whether or not the image should open in Lightbox.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.lightbox_img_sizes,\n    attrName: \"lightbox_img_sizes.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Size', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('You have the option to decide whether the image should be a link. Please note that if you enter a link in the Media settings, that link will be used. Otherwise, the image URL link will be utilized instead.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === showLightbox\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: imageSizesOptions\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.show_lightbox_gallery,\n    attrName: \"show_lightbox_gallery.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Lightbox in Gallery Mode', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === showLightbox,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose whether or not the lightbox should in Gallery Mode.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.show_lightbox_title,\n    attrName: \"show_lightbox_title.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Display Title', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === showLightbox,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose whether or not the lightbox should display the Title.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselContentDefaultInnerContent.show_lightbox_caption,\n    attrName: \"show_lightbox_caption.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Display Caption', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === showLightbox,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose whether or not the lightbox should in have Title or Description.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const image_carousel_settings_content = (image_carousel_settings_content_SettingsContent);\n;// ./packages/module-library/image-carousel/module-default-render-attributes.json\nconst image_carousel_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"module\":{\"decoration\":{\"spacing\":{\"desktop\":{\"value\":{\"margin\":{\"bottom\":\"60px\"}}}}}}}');\n;// ./packages/module-library/image-carousel/settings-design.js\nvar _imageCarouselDefault;\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\n\n\n/**\n * Module spacing (Design → Spacing) — `module-default-render-attributes.json` → `module.decoration.spacing`.\n * D4 targeted `%%order_class%% .dsm_image_carousel_container` with 60px bottom on non-slideshow carousels.\n */\nconst icModuleSpacingDefault = (_imageCarouselDefault = image_carousel_module_default_render_attributes_namespaceObject?.module?.decoration?.spacing) !== null && _imageCarouselDefault !== void 0 ? _imageCarouselDefault : {};\nfunction image_carousel_settings_design_SettingsDesign({\n  attrs\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _getAttrByMode4, _getAttrByMode5, _getAttrByMode6, _getAttrByMode7, _getAttrByMode8, _getAttrByMode9, _getAttrByMode0, _getAttrByMode1, _getAttrByMode10;\n  const slideshowShowSlideDescription = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_show_slide_description?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'off';\n  // Match D4 defaults when attrs are omitted (same as settings-content + module defaults).\n  const sliderOrientation = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_orientation?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'horizontal';\n  const arrows = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.arrows?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'on';\n  const useArrowCustomPosition = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_arrow_custom_position?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : 'off';\n  const arrowPrev = (_getAttrByMode5 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.arrow_prev?.innerContent)) !== null && _getAttrByMode5 !== void 0 ? _getAttrByMode5 : 'off';\n  const arrowNext = (_getAttrByMode6 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.arrow_next?.innerContent)) !== null && _getAttrByMode6 !== void 0 ? _getAttrByMode6 : 'off';\n  const dots = (_getAttrByMode7 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dots?.innerContent)) !== null && _getAttrByMode7 !== void 0 ? _getAttrByMode7 : 'on';\n  const sliderType = (_getAttrByMode8 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_type?.innerContent)) !== null && _getAttrByMode8 !== void 0 ? _getAttrByMode8 : 'carousel';\n  const thumbnailDesignTab = (_getAttrByMode9 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.thumbnail_design_tab?.innerContent)) !== null && _getAttrByMode9 !== void 0 ? _getAttrByMode9 : 'inactive';\n  const slideshowShowSlideTitle = (_getAttrByMode0 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_show_slide_title?.innerContent)) !== null && _getAttrByMode0 !== void 0 ? _getAttrByMode0 : 'off';\n  const slideshowSlideContentTab = (_getAttrByMode1 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_slide_content_tab?.innerContent)) !== null && _getAttrByMode1 !== void 0 ? _getAttrByMode1 : 'title';\n  const slideshowUseOverlay = (_getAttrByMode10 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_use_overlay?.innerContent)) !== null && _getAttrByMode10 !== void 0 ? _getAttrByMode10 : 'off';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"layout\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Layout', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'carousel' === sliderType && 'horizontal' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselDesignDefaultInnerContent.horizontal_alignment,\n    attrName: \"horizontal_alignment.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Vertical Alignment', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      'flex-start': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'flex-end': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"arrow\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Arrow', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselDesignDefaultInnerContent.navi_hori_position,\n    attrName: \"navi_hori_position.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Arrow Horizontal Position', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'vertical' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: '%',\n    step: 1\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselDesignDefaultInnerContent.top_navi_ver_position,\n    attrName: \"top_navi_ver_position.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top Arrow Position', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'vertical' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: -100,\n    max: 100,\n    defaultUnit: 'px',\n    step: 1\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselDesignDefaultInnerContent.bottom_navi_ver_position,\n    attrName: \"bottom_navi_ver_position.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Arrow Position', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'vertical' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: -100,\n    max: 100,\n    defaultUnit: 'px',\n    step: 1\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselDesignDefaultInnerContent.arrow_position,\n    attrName: \"arrow_position.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Arrow Position', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Set inside or outside per breakpoint (desktop, tablet, phone).', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      responsive: true\n    },\n    visible: 'off' === useArrowCustomPosition && 'on' === arrows\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      inside: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inside', 'dsm-supreme-modules-pro-for-divi')\n      },\n      outside: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Outside', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselDesignDefaultInnerContent.use_arrow_custom_position,\n    attrName: \"use_arrow_custom_position.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Arrow Custom Position', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'horizontal' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselDesignDefaultInnerContent.arrow_custom_position,\n    attrName: \"arrow_custom_position.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Arrow Custom Position', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useArrowCustomPosition && 'horizontal' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: -100,\n    max: 100,\n    defaultUnit: \"px\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselDesignDefaultInnerContent.arrow_prev,\n    attrName: \"arrow_prev.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Custom Previous Arrow Icon', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose to use a custom icon on the previous arrow.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselDesignDefaultInnerContent.arrow_prev_font_icon,\n    attrName: \"arrow_prev_font_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Previous Arrow Icon', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === arrowPrev\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselDesignDefaultInnerContent.arrow_next,\n    attrName: \"arrow_next.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Custom Next Arrow Icon', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose to use a custom icon on the next arrow.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselDesignDefaultInnerContent.arrow_next_font_icon,\n    attrName: \"arrow_next_font_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Next Arrow Icon', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === arrowNext\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselDesignDefaultInnerContent.arrow_horizontal_position,\n    attrName: \"arrow_horizontal_position.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Arrow Horizontal Position', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'horizontal' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: \"%\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselDesignDefaultInnerContent.arrow_size,\n    attrName: \"arrow_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Arrow Size', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === arrows\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 20,\n    max: 60,\n    defaultUnit: \"px\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselDesignDefaultInnerContent.arrow_color,\n    attrName: \"arrow_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Arrow Color', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === arrows\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselDesignDefaultInnerContent.arrow_background_color,\n    attrName: \"arrow_background_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Arrow Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === arrows\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"arrowStyle.decoration.border\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Arrow', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"arrowStyle.decoration.boxShadow\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Arrow', 'dsm-supreme-modules-pro-for-divi')\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"pagination\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pagination', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dots && 'carousel' === sliderType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselDesignDefaultInnerContent.dots_horizontal_placement,\n    attrName: \"dots_horizontal_placement.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pagination Horizontal Placement', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dots && 'carousel' === sliderType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: -100,\n    max: 100,\n    defaultUnit: \"px\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselDesignDefaultInnerContent.dots_vertical_placement,\n    attrName: \"dots_vertical_placement.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pagination Vertical Placement', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dots && 'carousel' === sliderType && 'vertical' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    step: 1,\n    defaultUnit: \"%\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselDesignDefaultInnerContent.dots_active_color,\n    attrName: \"dots_active_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pagination Active Color', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dots && 'carousel' === sliderType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselDesignDefaultInnerContent.dots_inactive_color,\n    attrName: \"dots_inactive_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pagination In-Active Color', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dots && 'carousel' === sliderType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselDesignDefaultInnerContent.pagi_vertical_position,\n    attrName: \"pagi_vertical_position.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pagination Position', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'vertical' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"carouselImage\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Carousel Image', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"carousel_image_style.decoration.border\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Carousel Image', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"carousel_image_style.decoration.boxShadow\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Carousel Image', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, {\n    attrName: \"carousel_image_style.decoration.filters\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi')\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"imageOverlay\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Overlay', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === slideshowUseOverlay\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, {\n    attrName: \"slideshow_overlay_style.decoration.background\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Overlay', 'dsm-supreme-modules-pro-for-divi')\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"slideShowImage\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('SlideShow Image', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"slideshow_padding.decoration.spacing\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slideshow', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      margin: {\n        render: false\n      }\n    },\n    visible: 'slideshow' === sliderType\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"slideshow_image_style.decoration.border\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"slideshow_image_style.decoration.boxShadow\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'slideshow' === sliderType\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"slideshowSlideContent\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slideshow Slide Content', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'slideshow' === sliderType && ('on' === slideshowShowSlideTitle || 'on' === slideshowShowSlideDescription)\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"slideshow_slide_content_tab.innerContent\",\n    defaultAttr: imageCarouselDesignDefaultInnerContent.slideshow_slide_content_tab\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: {\n      title: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi')\n      },\n      description: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Description', 'dsm-supreme-modules-pro-for-divi')\n      },\n      wrapper: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Wrapper', 'dsm-supreme-modules-pro-for-divi')\n      }\n    },\n    tabUi: true,\n    showLabel: true\n  })), 'title' === slideshowSlideContentTab && 'on' === slideshowShowSlideTitle && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"slideshow_slide_title_style.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide Title Text', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide Title', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"slideshowSlideTitleBackground\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide Title Background', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, {\n    attrName: \"slideshow_slide_title_style.decoration.background\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide Title', 'dsm-supreme-modules-pro-for-divi')\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"slideshowSlideTitleSpacing\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide Title Spacing', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"slideshow_slide_title_style.decoration.spacing\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide Title', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"slideshowSlideTitleBorder\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide Title Border', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"slideshow_slide_title_style.decoration.border\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide Title', 'dsm-supreme-modules-pro-for-divi')\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"slideshowSlideTitleBoxShadow\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide Title Box Shadow', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"slideshow_slide_title_style.decoration.boxShadow\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide Title', 'dsm-supreme-modules-pro-for-divi')\n  }))), 'description' === slideshowSlideContentTab && 'on' === slideshowShowSlideDescription && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"slideshow_slide_description_style.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide Description Text', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide Description', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"slideshowSlideDescriptionBackground\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide Description Background', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, {\n    attrName: \"slideshow_slide_description_style.decoration.background\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide Description', 'dsm-supreme-modules-pro-for-divi')\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"slideshowSlideDescriptionSpacing\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide Description Spacing', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"slideshow_slide_description_style.decoration.spacing\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide Description', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"slideshowSlideDescriptionBorder\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide Description Border', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"slideshow_slide_description_style.decoration.border\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide Description', 'dsm-supreme-modules-pro-for-divi')\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"slideshowSlideDescriptionBoxShadow\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide Description Box Shadow', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"slideshow_slide_description_style.decoration.boxShadow\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide Description', 'dsm-supreme-modules-pro-for-divi')\n  }))), 'wrapper' === slideshowSlideContentTab && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"slideshowSlideWrapperAlignment\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Wrapper Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === slideshowShowSlideTitle || 'on' === slideshowShowSlideDescription\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselDesignDefaultInnerContent.slideshow_slide_title_align_h,\n    attrName: \"slideshow_slide_title_align_h.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Horizontal', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      'flex-start': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Start', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'flex-end': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('End', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselDesignDefaultInnerContent.slideshow_slide_title_align_v,\n    attrName: \"slideshow_slide_title_align_v.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Vertical', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      'flex-start': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Start', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'flex-end': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('End', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"thumbnailImages\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Thumbnail Images', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'slideshow' === sliderType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"thumbnail_design_tab.innerContent\",\n    defaultAttr: imageCarouselDesignDefaultInnerContent.thumbnail_design_tab\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: {\n      inactive: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inactive', 'dsm-supreme-modules-pro-for-divi')\n      },\n      active: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Active', 'dsm-supreme-modules-pro-for-divi')\n      },\n      general: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Spacing', 'dsm-supreme-modules-pro-for-divi')\n      }\n    },\n    tabUi: true,\n    showLabel: true\n  })), thumbnailDesignTab === 'inactive' && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselDesignDefaultInnerContent.thumbnail_inactive_opacity,\n    attrName: \"thumbnail_inactive_opacity.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inactive Thumbnail Opacity', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Opacity for non-selected thumbnails (0–1). Default 0.4.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      responsive: true\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 1,\n    step: 0.01,\n    defaultUnit: '',\n    allowedUnits: ['']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"thumbnail_inactive_image_style.decoration.border\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Thumbnail Inactive Images', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"thumbnail_inactive_image_style.decoration.boxShadow\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Thumbnail Inactive Images', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  })), thumbnailDesignTab === 'active' && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: imageCarouselDesignDefaultInnerContent.thumbnail_active_opacity,\n    attrName: \"thumbnail_active_opacity.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Active Thumbnail Opacity', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Opacity for the selected thumbnail (0–1). Default 1.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      responsive: true\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 1,\n    step: 0.01,\n    defaultUnit: '',\n    allowedUnits: ['']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"thumbnail_active_image_style.decoration.border\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Thumbnail Active Images', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"thumbnail_active_image_style.decoration.boxShadow\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Thumbnail Active Images', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  })), thumbnailDesignTab === 'general' && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Thumbnail', 'dsm-supreme-modules-pro-for-divi'),\n    attrName: \"thumbs_padding.decoration.spacing\",\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, {\n    fields: {\n      maxHeight: {\n        render: false\n      },\n      minHeight: {\n        render: false\n      },\n      height: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    defaultAttr: icModuleSpacingDefault,\n    defaultGroupAttr: icModuleSpacingDefault\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const image_carousel_settings_design = (image_carousel_settings_design_SettingsDesign);\n;// ./packages/module-library/image-carousel/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction image_carousel_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_image_carousel\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const image_carousel_settings_advanced = (image_carousel_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/shared/carousel-nav-button.js\n/**\n * Empty Swiper navigation button — keeps Swiper nav refs stable.\n *\n * DSM / native carousel arrow glyphs are applied via ::before (native) or the\n * icon-libraries VB DOM enhancer (DSM webfont hosts injected after mount).\n *\n * @package DiviSupreme\n */\n\n/**\n * @param {object} props\n * @param {'prev'|'next'} props.direction Swiper navigation direction.\n * @param {string} [props.className] Additional button classes.\n * @param {import('react').Ref} [props.buttonRef] Ref for Swiper navigation binding.\n * @return {import('react').JSX.Element}\n */\nfunction CarouselNavButton({\n  direction,\n  className = '',\n  buttonRef\n}) {\n  return /*#__PURE__*/React.createElement(\"div\", {\n    ref: buttonRef,\n    className: `swiper-button-${direction} ${className}`.trim()\n  });\n}\n;// ./packages/module-library/shared/carousel-nav-with-dsm-icon.js\n/**\n * Empty Swiper nav button + optional sibling DSM icon overlay (Visual Builder).\n *\n * Swiper navigation elements must stay empty — injecting glyph markup inside\n * `.swiper-button-prev` / `.swiper-button-next` collapses multi-slide layouts.\n *\n * @package DiviSupreme\n */\n\n\n\n\n\n\n/**\n * @param {unknown} value Toggle attr value from getAttrByMode.\n * @return {boolean}\n */\nfunction isToggleEnabled(value) {\n  return 'on' === value || true === value || 1 === value;\n}\n\n/**\n * @param {object} props\n * @param {'prev'|'next'} props.direction Swiper navigation direction.\n * @param {string} [props.className] Additional button classes.\n * @param {import('react').Ref} [props.buttonRef] Ref for Swiper navigation binding.\n * @param {Record<string, unknown>|null|undefined} props.icon Icon picker leaf.\n * @param {unknown} [props.useCustomIcon] Toggle attr (on/off).\n * @return {import('react').JSX.Element}\n */\nfunction CarouselNavWithDsmIcon({\n  direction,\n  className = '',\n  buttonRef,\n  icon,\n  useCustomIcon\n}) {\n  const showDsmOverlay = isToggleEnabled(useCustomIcon) && isDsmIcon(icon);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(CarouselNavButton, {\n    direction: direction,\n    className: className,\n    buttonRef: buttonRef\n  }), showDsmOverlay && /*#__PURE__*/external_vendor_React_default().createElement(ModuleIconHost, {\n    icon: icon,\n    className: `dsm-carousel-nav-icon-overlay dsm-carousel-nav-icon-overlay--${direction}`\n  }));\n}\n;// ./packages/module-library/shared/carousel-swiper-vb.js\n/**\n * Visual Builder Swiper defaults for DSM carousel modules.\n *\n * Mutation observers and resize observers react to icon-library style/DOM\n * changes and recalculate slide widths — that collapses multi-slide layouts\n * to a single full-width slide after picking a custom arrow icon.\n *\n * @package DiviSupreme\n */\n\n/**\n * Swiper observer options safe for Divi VB carousel edit components.\n *\n * @return {{ resizeObserver: boolean, observer: boolean, observeParents: boolean, observeSlideChildren: boolean }}\n */\nfunction getDsmCarouselVbSwiperObserverOptions() {\n  return {\n    resizeObserver: false,\n    observer: false,\n    observeParents: false,\n    observeSlideChildren: false\n  };\n}\n\n/**\n * @param {import('swiper').Swiper|null|undefined} swiper Swiper instance.\n * @return {void}\n */\nfunction scheduleDsmCarouselSwiperLayoutRefresh(swiper) {\n  if (!swiper || typeof swiper !== 'object') {\n    return;\n  }\n  window.requestAnimationFrame(() => {\n    window.requestAnimationFrame(() => {\n      const slidesPerView = swiper.params?.slidesPerView;\n      const spaceBetween = swiper.params?.spaceBetween;\n      if (typeof swiper.updateSize === 'function') {\n        swiper.updateSize();\n      }\n      if (typeof swiper.updateSlides === 'function') {\n        swiper.updateSlides();\n      }\n      if (slidesPerView != null && swiper.params && swiper.params.slidesPerView !== slidesPerView) {\n        swiper.params.slidesPerView = slidesPerView;\n      }\n      if (spaceBetween != null && swiper.params && swiper.params.spaceBetween !== spaceBetween) {\n        swiper.params.spaceBetween = spaceBetween;\n      }\n      if (typeof swiper.updateSlidesClasses === 'function') {\n        swiper.updateSlidesClasses();\n      }\n    });\n  });\n}\n;// ./packages/module-library/shared/swiper-constructor.js\n/**\n * Resolve Swiper from the global registered by `dsm-swiper-library` (Visual Builder + frontend).\n *\n * @package DiviSupreme\n */\n\n/**\n * @return {((...args: unknown[]) => unknown)|null}\n */\nfunction getSwiperConstructor() {\n  if (typeof window === 'undefined') {\n    return null;\n  }\n  const SwiperCtor = window.Swiper;\n  return typeof SwiperCtor === 'function' ? SwiperCtor : null;\n}\n\n/**\n * Run callback once `window.Swiper` is available (polls for late-loaded VB scripts).\n *\n * @param {(SwiperCtor: (...args: unknown[]) => unknown) => void} callback\n * @param {number}                                                       maxAttempts Max rAF polls (~2s at 60fps).\n * @return {() => void} Cancel pending wait.\n */\nfunction whenSwiperConstructorReady(callback, maxAttempts = 120) {\n  const immediate = getSwiperConstructor();\n  if (immediate) {\n    callback(immediate);\n    return () => {};\n  }\n  let cancelled = false;\n  let attempts = 0;\n  let rafId = 0;\n  const tick = () => {\n    if (cancelled) {\n      return;\n    }\n    const SwiperCtor = getSwiperConstructor();\n    if (SwiperCtor) {\n      callback(SwiperCtor);\n      return;\n    }\n    attempts += 1;\n    if (attempts >= maxAttempts) {\n      return;\n    }\n    rafId = window.requestAnimationFrame(tick);\n  };\n  rafId = window.requestAnimationFrame(tick);\n  return () => {\n    cancelled = true;\n    if (rafId) {\n      window.cancelAnimationFrame(rafId);\n    }\n  };\n}\n;// ./packages/module-library/image-carousel/module-styles.js\n\n\n\n\n\nconst prevBtnFontCss = buildLegacyPseudoIconFontCss;\nconst nextBtnFontCss = buildLegacyPseudoIconFontCss;\nconst thumbnailImageRatioCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'aspect-ratio': true\n    }\n  });\n  let ratio_value;\n\n  // Thumb Image Ratio\n  switch (attrValue) {\n    case '11':\n      ratio_value = '1 / 1';\n      break;\n    case '43':\n      ratio_value = '4 / 3';\n      break;\n    case '169':\n      ratio_value = '16 / 9';\n      break;\n    default:\n      ratio_value = '21 / 9';\n  }\n  declarations.add('aspect-ratio', ratio_value);\n  return declarations.value;\n};\nconst thumbnailImagePositionCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'background-position': true\n    }\n  });\n  if (attrValue == null || attrValue === '') {\n    return declarations.value;\n  }\n  declarations.add('background-position', String(attrValue).replace(/_/g, ' '));\n  return declarations.value;\n};\n\n/**\n * Merges `slideshow_thumbs_offset.decoration.spacing` with legacy\n * `slideshow_thumbs_offset_{top,right,left}.innerContent` for CommonStyle input.\n * Padding sides are declared as CSS position longhands in {@see slideshowThumbsOffsetPositionCss}.\n *\n * @param {Object} attrs Module attrs.\n * @return {Object} Spacing-shaped attr (desktop/tablet/phone → value.padding).\n */\nconst buildSlideshowThumbsOffsetSpacingStyleAttr = attrs => {\n  var _attrs$slideshow_thum;\n  const breakpoints = ['desktop', 'tablet', 'phone'];\n  const legacyKeyMap = {\n    top: 'slideshow_thumbs_offset_top',\n    right: 'slideshow_thumbs_offset_right',\n    left: 'slideshow_thumbs_offset_left'\n  };\n  const desktopPad = (_attrs$slideshow_thum = attrs?.slideshow_thumbs_offset?.decoration?.spacing?.desktop?.value?.padding) !== null && _attrs$slideshow_thum !== void 0 ? _attrs$slideshow_thum : {};\n  const out = {};\n  for (const bp of breakpoints) {\n    var _attrs$slideshow_thum2;\n    const padBp = (_attrs$slideshow_thum2 = attrs?.slideshow_thumbs_offset?.decoration?.spacing?.[bp]?.value?.padding) !== null && _attrs$slideshow_thum2 !== void 0 ? _attrs$slideshow_thum2 : {};\n    /** @type {Record<string, string>} */\n    const padding = {};\n    for (const side of ['top', 'right', 'bottom', 'left']) {\n      let raw = padBp?.[side];\n      if (raw === undefined || raw === null || typeof raw === 'string' && raw.trim() === '') {\n        raw = desktopPad?.[side];\n      }\n      if ((raw === undefined || raw === null || typeof raw === 'string' && raw.trim() === '') && side !== 'bottom' && legacyKeyMap[side]) {\n        var _attrs$legKey$innerCo;\n        const legKey = legacyKeyMap[side];\n        const leg = (_attrs$legKey$innerCo = attrs?.[legKey]?.innerContent?.[bp]?.value) !== null && _attrs$legKey$innerCo !== void 0 ? _attrs$legKey$innerCo : attrs?.[legKey]?.innerContent?.desktop?.value;\n        if (leg !== undefined && leg !== null && String(leg).trim() !== '') {\n          raw = String(leg).trim();\n        }\n      }\n      padding[side] = raw !== undefined && raw !== null ? String(raw).trim() : '';\n    }\n    out[bp] = {\n      value: {\n        padding\n      }\n    };\n  }\n  return out;\n};\n\n/**\n * Maps stored spacing.padding sides to CSS position properties (same names).\n *\n * @param {Object} attr CommonStyle params.\n * @return {string}\n */\nconst slideshowThumbsOffsetPositionCss = attr => {\n  const padding = attr?.attrValue?.padding;\n  if (!padding || typeof padding !== 'object') {\n    return '';\n  }\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string'\n  });\n  for (const side of ['top', 'right', 'bottom', 'left']) {\n    const raw = padding[side];\n    if (raw === undefined || raw === null) {\n      continue;\n    }\n    const s = String(raw).trim();\n    if (s === '') {\n      continue;\n    }\n    declarations.add(side, s);\n  }\n  return declarations.value;\n};\n\n/**\n * Parse unitless opacity (0–1) from stored innerContent value.\n *\n * @param {unknown} raw   Attr value for current breakpoint.\n * @param {number}  fallback When empty or invalid.\n * @return {number} Clamped opacity.\n */\nconst parseThumbnailOpacityValue = (raw, fallback) => {\n  if (raw === null || raw === undefined || raw === '') {\n    return fallback;\n  }\n  const s = typeof raw === 'number' ? String(raw) : String(raw).trim();\n  if (s === '' || Number.isNaN(Number.parseFloat(s))) {\n    return fallback;\n  }\n  const n = Number.parseFloat(s);\n  return Math.min(1, Math.max(0, n));\n};\n\n/**\n * @param {Object} attr CommonStyle attr bag.\n * @return {string} CSS declarations.\n */\nconst thumbnailInactiveOpacityCss = attr => {\n  const n = parseThumbnailOpacityValue(attr?.attrValue, 0.4);\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string'\n  });\n  declarations.add('opacity', String(n));\n  return declarations.value;\n};\n\n/**\n * @param {Object} attr CommonStyle attr bag.\n * @return {string} CSS declarations.\n */\nconst thumbnailActiveOpacityCss = attr => {\n  const n = parseThumbnailOpacityValue(attr?.attrValue, 1);\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string'\n  });\n  declarations.add('opacity', String(n));\n  return declarations.value;\n};\n\n/**\n * React function component for rendering module style.\n */\nconst image_carousel_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  var _getAttrByMode;\n  const sliderOrientation = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_orientation?.innerContent);\n  const useArrowCustomPosition = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_arrow_custom_position?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'off';\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'slideshow_padding'\n  }), elements.style({\n    attrName: 'thumbs_padding'\n  }), elements.style({\n    attrName: 'arrowStyle'\n  }), elements.style({\n    attrName: 'carousel_image_style'\n  }), elements.style({\n    attrName: 'slideshow_image_style'\n  }), elements.style({\n    attrName: 'slideshow_slide_title_style'\n  }), elements.style({\n    attrName: 'slideshow_slide_description_style'\n  }), elements.style({\n    attrName: 'slideshow_overlay_style'\n  }), elements.style({\n    attrName: 'thumbnail_inactive_image_style'\n  }), elements.style({\n    attrName: 'thumbnail_active_image_style'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .swiper-button-prev::before`,\n    attr: attrs?.arrow_prev_font_icon?.innerContent,\n    declarationFunction: prevBtnFontCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .swiper-button-next::before`,\n    attr: attrs?.arrow_next_font_icon?.innerContent,\n    declarationFunction: nextBtnFontCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .swiper-button-prev, ${orderClass} .swiper-button-next, ${orderClass} .dsm-carousel-nav-icon-overlay`,\n    attr: attrs?.arrow_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .swiper-button-prev, ${orderClass} .swiper-button-next, ${orderClass} .dsm-carousel-nav-icon-overlay`,\n    attr: attrs?.arrow_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .swiper-button-prev, ${orderClass} .swiper-button-next, ${orderClass} .dsm-carousel-nav-icon-overlay`,\n    attr: attrs?.arrow_background_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm_image_carousel_horizontal .swiper-pagination`,\n    attr: attrs?.dots_horizontal_placement?.innerContent,\n    property: \"bottom\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .swiper-pagination-bullet`,\n    attr: attrs?.dots_inactive_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .swiper-pagination-bullet.swiper-pagination-bullet-active`,\n    attr: attrs?.dots_active_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .swiper-container.swiper-vertical`,\n    attr: attrs?.slider_container_height?.innerContent,\n    property: \"height\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm_image_carousel_horizontal .swiper-arrow-button`,\n    attr: attrs?.arrow_horizontal_position?.innerContent,\n    property: \"top\"\n  }), 'vertical' === sliderOrientation && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm_image_carousel_pagi_placement_right .swiper-pagination`,\n    attr: attrs?.dots_horizontal_placement?.innerContent,\n    property: \"right\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm_image_carousel_pagi_placement_left .swiper-pagination`,\n    attr: attrs?.dots_horizontal_placement?.innerContent,\n    property: \"left\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm_image_carousel_vertical .swiper-pagination`,\n    attr: attrs?.dots_vertical_placement?.innerContent,\n    property: \"top\"\n  }), 'on' === useArrowCustomPosition && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm_image_carousel_horizontal .swiper-button-prev`,\n    attr: attrs?.arrow_custom_position?.innerContent,\n    property: \"left\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm_image_carousel_horizontal .swiper-button-next`,\n    attr: attrs?.arrow_custom_position?.innerContent,\n    property: \"right\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm_image_carousel_vertical .swiper-button-prev, ${orderClass}.dsm_image_carousel_vertical .swiper-button-next`,\n    attr: attrs?.arrow_custom_position?.innerContent,\n    property: \"right\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm_image_carousel_vertical .swiper-button-prev, ${orderClass}.dsm_image_carousel_vertical .swiper-button-next`,\n    attr: attrs?.navi_hori_position?.innerContent,\n    property: \"left\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm_image_carousel_vertical .swiper-button-prev`,\n    attr: attrs?.top_navi_ver_position?.innerContent,\n    property: \"top\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm_image_carousel_vertical .swiper-button-next`,\n    attr: attrs?.bottom_navi_ver_position?.innerContent,\n    property: \"bottom\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .swiper-slide.dsm_image_carousel_item .dsm_image_carousel_slideshow_bg`,\n    attr: attrs?.image_fit?.innerContent,\n    property: \"background-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .swiper-slide.dsm_image_carousel_item .dsm_image_carousel_slideshow_bg`,\n    attr: attrs?.image_position?.innerContent,\n    declarationFunction: thumbnailImagePositionCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_image_gallery_thumbs .dsm_image_carousel_thumbs_image`,\n    attr: attrs?.slideshow_image_fit?.innerContent,\n    property: \"background-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_image_gallery_thumbs .dsm_image_carousel_thumbs_image`,\n    attr: attrs?.slideshow_ratio?.innerContent,\n    declarationFunction: thumbnailImageRatioCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_image_gallery_thumbs .dsm_image_carousel_thumbs_image`,\n    attr: attrs?.slideshow_image_position?.innerContent,\n    declarationFunction: thumbnailImagePositionCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_image_gallery_thumbs .swiper-slide`,\n    attr: attrs?.thumbnail_inactive_opacity?.innerContent,\n    declarationFunction: thumbnailInactiveOpacityCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_image_gallery_thumbs .swiper-slide-thumb-active`,\n    attr: attrs?.thumbnail_active_opacity?.innerContent,\n    declarationFunction: thumbnailActiveOpacityCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_image_carousel_item .dsm_image_carousel_slideshow_bg`,\n    attr: attrs?.slideshow_height?.innerContent,\n    property: \"height\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .swiper-wrapper`,\n    attr: attrs?.horizontal_alignment?.innerContent,\n    property: \"align-items\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_image_gallery_thumbs.dsm_ic_slideshow_thumbs_absolute`,\n    attr: buildSlideshowThumbsOffsetSpacingStyleAttr(attrs),\n    declarationFunction: slideshowThumbsOffsetPositionCss\n  }));\n};\n;// ./packages/module-library/image-carousel/edit.js\n\n\n\n\n// Divi package dependencies.\n\n\n\n\n// Custom dependencies.\n\n\n\n\n\n\n\n/**\n * Stored title timing is plain milliseconds (digits) or legacy `1s` / `0s`. Returns a valid CSS time.\n *\n * @param {unknown} raw              Attribute value from the builder.\n * @param {string}  fallbackDigits  Fallback milliseconds without a unit, e.g. `1000` or `0`.\n * @returns {string}\n */\nfunction dsmIcCssAnimationTime(raw, fallbackDigits) {\n  const s = raw == null ? '' : String(raw).trim();\n  if ('' === s) {\n    return `${fallbackDigits}ms`;\n  }\n  if (/ms$/i.test(s)) {\n    return s;\n  }\n  if (/^-?\\d+(\\.\\d+)?s$/i.test(s)) {\n    return s;\n  }\n  if (/^-?\\d+(\\.\\d+)?$/u.test(s)) {\n    return `${s}ms`;\n  }\n  return `${fallbackDigits}ms`;\n}\n\n/**\n * @param {string|number|undefined|null} cssTime\n * @returns {number}\n */\nfunction dsmIcCssTimeToMs(cssTime) {\n  const s = cssTime == null ? '' : String(cssTime).trim();\n  if ('' === s) {\n    return 0;\n  }\n  if (/ms$/i.test(s)) {\n    return parseFloat(s) || 0;\n  }\n  if (/^-?\\d+(\\.\\d+)?s$/i.test(s) && !/ms$/i.test(s)) {\n    return (parseFloat(s) || 0) * 1000;\n  }\n  const n = parseFloat(s);\n  return Number.isNaN(n) ? 0 : n;\n}\n\n/**\n * React function component for registering module script data.\n */\nconst image_carousel_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nconst getImageUrl = (mediaItem, size) => {\n  if (!mediaItem || !mediaItem.media_details || !mediaItem.media_details.sizes) {\n    return mediaItem?.source_url || '';\n  }\n  if (size === 'full' || !mediaItem.media_details.sizes[size]) {\n    return mediaItem.source_url;\n  }\n  return mediaItem.media_details.sizes[size].source_url || mediaItem.source_url;\n};\n\n/**\n * Random order for VB preview. `GET /wp/v2/media` returns 400 for `orderby=rand`\n * (not allowed on the REST collection); PHP still uses `orderby => rand` on the frontend.\n *\n * @param {Array} items Media objects from the REST API.\n * @return {Array} Shuffled copy.\n */\nconst shuffleDsmMediaArray = items => {\n  const a = [...items];\n  for (let i = a.length - 1; i > 0; i--) {\n    const j = Math.floor(Math.random() * (i + 1));\n    [a[i], a[j]] = [a[j], a[i]];\n  }\n  return a;\n};\n\n/**\n * Plain slideshow description: caption (visible text) then attachment description.\n * Matches PHP `ImageCarousel::slideshow_attachment_description_plain_text`.\n *\n * @param {{ caption?: { rendered?: string }, description?: { rendered?: string } }} item Media REST row.\n * @return {string}\n */\nfunction dsmIcSlideshowSlideDescriptionPlain(item) {\n  const capRendered = item?.caption?.rendered ? String(item.caption.rendered).trim() : '';\n  const descRendered = item?.description?.rendered ? String(item.description.rendered).trim() : '';\n  const capPlain = capRendered ? (0,external_wp_dom_namespaceObject.__unstableStripHTML)(capRendered).trim() : '';\n  if ('' !== capPlain) {\n    return capPlain;\n  }\n  const descPlain = descRendered ? (0,external_wp_dom_namespaceObject.__unstableStripHTML)(descRendered).trim() : '';\n  return descPlain;\n}\nfunction image_carousel_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _getAttrByMode4, _getAttrByMode5, _attrs$arrow_position, _attrs$arrow_position2, _attrs$arrow_position3, _getAttrByMode6, _getAttrByMode7, _getAttrByMode8, _getAttrByMode9, _getAttrByMode0, _getAttrByMode1, _getAttrByMode10, _getAttrByMode11, _getAttrByMode12, _getAttrByMode13, _getAttrByMode14, _getAttrByMode15, _getAttrByMode16, _getAttrByMode17, _getAttrByMode18, _getAttrByMode19, _getAttrByMode20, _getAttrByMode21, _getAttrByMode22, _getAttrByMode23, _getAttrByMode24, _getAttrByMode25, _getAttrByMode26, _getAttrByMode27;\n  const swiperRef = (0,external_vendor_React_.useRef)(null);\n  const thumbSliderRef = (0,external_vendor_React_.useRef)(null);\n  const navigationNextRef = (0,external_vendor_React_.useRef)(null);\n  const navigationPrevRef = (0,external_vendor_React_.useRef)(null);\n  const paginationRef = (0,external_vendor_React_.useRef)(null);\n  const swiperInstanceRef = (0,external_vendor_React_.useRef)(null);\n  const sizes = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.sizes?.innerContent);\n  const slideshow_sizes = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_sizes?.innerContent);\n  const slider_effect = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_effect?.innerContent);\n  const slider_orientation = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_orientation?.innerContent);\n  const infinite = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.infinite?.innerContent);\n  const slider_effect_shadows = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_effect_shadows?.innerContent);\n  // Swiper expects booleans; stored values are Divi on/off strings — 'off' is truthy if passed through.\n  const sliderEffectShadowsOn = 'on' === slider_effect_shadows;\n  const slider_effect_coverflow_rotate = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_effect_coverflow_rotate?.innerContent);\n  const multiple_slide_row = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.multiple_slide_row?.innerContent);\n\n  // Visual Builder: follow Divi responsive tab (getAttrByMode). Swiper breakpoints\n  // use window width, which stays large in the builder, so they never match phone/tablet.\n  const slide_to_show_current = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slide_to_show?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : '4';\n  const slide_to_row_show_current = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slide_to_row_show?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : '1';\n  const slide_to_scroll = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slide_to_scroll?.innerContent);\n  const space_between = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.space_between?.innerContent);\n  const slide_row = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slide_row?.innerContent);\n  const centered_slides = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.centered_slides?.innerContent);\n  const speed = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.speed?.innerContent);\n  const autoplay = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.autoplay?.innerContent);\n  const autoplay_speed = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.autoplay_speed?.innerContent);\n  const touch_move = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.touch_move?.innerContent);\n  const grab = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.grab?.innerContent);\n  const pause_on_hover = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.pause_on_hover?.innerContent);\n  const show_lightbox_gallery = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_lightbox_gallery?.innerContent);\n  const infinite_smooth_scrolling = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.infinite_smooth_scrolling?.innerContent);\n  const slider_effect_coverflow_depth = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_effect_coverflow_depth?.innerContent);\n  const show_lightbox_caption = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_lightbox_caption?.innerContent);\n  const lazyload = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.lazyload?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'off';\n  const lazyLoadEnabled = 'on' === lazyload;\n  const dots = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dots?.innerContent);\n  const arrows = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.arrows?.innerContent);\n  const arrowPrevIcon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.arrow_prev_font_icon?.innerContent);\n  const arrowNextIcon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.arrow_next_font_icon?.innerContent);\n  const useCustomPrevIcon = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.arrow_prev?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : 'off';\n  const useCustomNextIcon = (_getAttrByMode5 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.arrow_next?.innerContent)) !== null && _getAttrByMode5 !== void 0 ? _getAttrByMode5 : 'off';\n  const mousewheel = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.mousewheel?.innerContent);\n  const autoplay_viewport = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.autoplay_viewport?.innerContent);\n  const slider_type = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_type?.innerContent);\n  const slideshow_effect = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_effect?.innerContent);\n  const slideshow_to_show = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_to_show?.innerContent);\n  const show_lightbox_title = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_lightbox_title?.innerContent);\n  const slider_direction = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_direction?.innerContent);\n  const gallery_orderby = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.gallery_orderby?.innerContent);\n  const pagi_vertical_position = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.pagi_vertical_position?.innerContent);\n  const arrow_position = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.arrow_position?.innerContent);\n  const arrow_desktop = (_attrs$arrow_position = attrs?.arrow_position?.innerContent?.desktop?.value) !== null && _attrs$arrow_position !== void 0 ? _attrs$arrow_position : 'outside';\n  const arrow_phone_raw = (_attrs$arrow_position2 = attrs?.arrow_position?.innerContent?.phone?.value) !== null && _attrs$arrow_position2 !== void 0 ? _attrs$arrow_position2 : '';\n  const legacy_arrow_mobile = (_attrs$arrow_position3 = attrs?.arrow_position_mobile?.innerContent?.desktop?.value) !== null && _attrs$arrow_position3 !== void 0 ? _attrs$arrow_position3 : '';\n  const arrow_phone = '' !== arrow_phone_raw ? arrow_phone_raw : '' !== legacy_arrow_mobile ? legacy_arrow_mobile : arrow_desktop;\n  const show_lightbox = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_lightbox?.innerContent);\n  const slideshowThumbsPosition = (_getAttrByMode6 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_thumbs_position?.innerContent)) !== null && _getAttrByMode6 !== void 0 ? _getAttrByMode6 : 'bottom';\n  const slideshowShowSlideTitle = (_getAttrByMode7 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_show_slide_title?.innerContent)) !== null && _getAttrByMode7 !== void 0 ? _getAttrByMode7 : 'off';\n  const slideshowShowSlideDescription = (_getAttrByMode8 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_show_slide_description?.innerContent)) !== null && _getAttrByMode8 !== void 0 ? _getAttrByMode8 : 'off';\n  const slideshowTitleAnimation = (_getAttrByMode9 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_title_animation?.innerContent)) !== null && _getAttrByMode9 !== void 0 ? _getAttrByMode9 : 'fadeInUp';\n  const slideshowTitleAnimationDuration = (_getAttrByMode0 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_title_animation_duration?.innerContent)) !== null && _getAttrByMode0 !== void 0 ? _getAttrByMode0 : '1000';\n  const slideshowTitleAnimationDelay = (_getAttrByMode1 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_title_animation_delay?.innerContent)) !== null && _getAttrByMode1 !== void 0 ? _getAttrByMode1 : '0';\n  const slideshowTitleAnimationOut = (_getAttrByMode10 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_title_animation_out?.innerContent)) !== null && _getAttrByMode10 !== void 0 ? _getAttrByMode10 : 'fadeOutDown';\n  const slideshowTitleAnimationOutDuration = (_getAttrByMode11 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_title_animation_out_duration?.innerContent)) !== null && _getAttrByMode11 !== void 0 ? _getAttrByMode11 : '1000';\n  const slideshowTitleAnimationOutDelay = (_getAttrByMode12 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_title_animation_out_delay?.innerContent)) !== null && _getAttrByMode12 !== void 0 ? _getAttrByMode12 : '0';\n  const slideshowDescriptionAnimation = (_getAttrByMode13 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_description_animation?.innerContent)) !== null && _getAttrByMode13 !== void 0 ? _getAttrByMode13 : 'fadeInUp';\n  const slideshowDescriptionAnimationDuration = (_getAttrByMode14 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_description_animation_duration?.innerContent)) !== null && _getAttrByMode14 !== void 0 ? _getAttrByMode14 : '1000';\n  const slideshowDescriptionAnimationDelay = (_getAttrByMode15 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_description_animation_delay?.innerContent)) !== null && _getAttrByMode15 !== void 0 ? _getAttrByMode15 : '0';\n  const slideshowDescriptionAnimationOut = (_getAttrByMode16 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_description_animation_out?.innerContent)) !== null && _getAttrByMode16 !== void 0 ? _getAttrByMode16 : 'fadeOutDown';\n  const slideshowDescriptionAnimationOutDuration = (_getAttrByMode17 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_description_animation_out_duration?.innerContent)) !== null && _getAttrByMode17 !== void 0 ? _getAttrByMode17 : '1000';\n  const slideshowDescriptionAnimationOutDelay = (_getAttrByMode18 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_description_animation_out_delay?.innerContent)) !== null && _getAttrByMode18 !== void 0 ? _getAttrByMode18 : '0';\n  const slideshowWrapperAnimationIn = (_getAttrByMode19 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_wrapper_animation_in?.innerContent)) !== null && _getAttrByMode19 !== void 0 ? _getAttrByMode19 : 'none';\n  const slideshowWrapperAnimationInDuration = (_getAttrByMode20 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_wrapper_animation_in_duration?.innerContent)) !== null && _getAttrByMode20 !== void 0 ? _getAttrByMode20 : '1000';\n  const slideshowWrapperAnimationInDelay = (_getAttrByMode21 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_wrapper_animation_in_delay?.innerContent)) !== null && _getAttrByMode21 !== void 0 ? _getAttrByMode21 : '0';\n  const slideshowWrapperAnimationOut = (_getAttrByMode22 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_wrapper_animation_out?.innerContent)) !== null && _getAttrByMode22 !== void 0 ? _getAttrByMode22 : 'none';\n  const slideshowWrapperAnimationOutDuration = (_getAttrByMode23 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_wrapper_animation_out_duration?.innerContent)) !== null && _getAttrByMode23 !== void 0 ? _getAttrByMode23 : '1000';\n  const slideshowWrapperAnimationOutDelay = (_getAttrByMode24 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_wrapper_animation_out_delay?.innerContent)) !== null && _getAttrByMode24 !== void 0 ? _getAttrByMode24 : '0';\n  const slideshowTitleAlignH = (_getAttrByMode25 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_slide_title_align_h?.innerContent)) !== null && _getAttrByMode25 !== void 0 ? _getAttrByMode25 : 'center';\n  const slideshowTitleAlignV = (_getAttrByMode26 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_slide_title_align_v?.innerContent)) !== null && _getAttrByMode26 !== void 0 ? _getAttrByMode26 : 'center';\n  const slideshowUseOverlay = (_getAttrByMode27 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slideshow_use_overlay?.innerContent)) !== null && _getAttrByMode27 !== void 0 ? _getAttrByMode27 : 'off';\n\n  /**\n   * Color/gradient layer over carousel slide images (matches PHP `dsm_image_carousel_carousel_media`).\n   *\n   * @param {import('react').ReactNode} innerNode Image-only or `<a>`+image markup.\n   * @returns {import('react').ReactNode}\n   */\n  const wrapCarouselSlideImageOverlay = innerNode => 'carousel' === slider_type && 'on' === slideshowUseOverlay ? /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_image_carousel_carousel_media\"\n  }, innerNode, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_image_carousel_slideshow_overlay\",\n    \"aria-hidden\": \"true\"\n  })) : innerNode;\n  const galleryItems = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.gallery_ids?.innerContent);\n  const parsedGalleryItems = (0,external_vendor_React_.useMemo)(() => {\n    if (!galleryItems || typeof galleryItems !== 'string') {\n      return [];\n    }\n    return galleryItems.split(',').map(id => Number(id)).filter(id => Number.isFinite(id) && id > 0);\n  }, [galleryItems]);\n  const {\n    loading,\n    error,\n    media\n  } = use_media({\n    include: parsedGalleryItems\n  });\n  const displayMedia = (0,external_vendor_React_.useMemo)(() => {\n    if (!Array.isArray(media) || !media.length) {\n      return media;\n    }\n    if ('rand' !== gallery_orderby) {\n      return media;\n    }\n    return shuffleDsmMediaArray(media);\n  }, [media, gallery_orderby]);\n  const isSlideshowSlider = 'slideshow' === slider_type ? 'dsm_image_carousel_slideshow' : '';\n  const swiperDataEffect = 'carousel' === slider_type ? slider_effect : slideshow_effect;\n\n  /**\n   * @param {{ title?: { rendered?: string }, alt_text?: string }} item Media row.\n   */\n  const renderSlideshowCaptionOverlay = item => {\n    const showTitle = 'on' === slideshowShowSlideTitle;\n    const showDesc = 'on' === slideshowShowSlideDescription;\n    let titleHtml = '';\n    if (showTitle) {\n      const fromTitle = item?.title?.rendered && (0,external_wp_dom_namespaceObject.__unstableStripHTML)(item.title.rendered).trim();\n      const fromAlt = (item?.alt_text || '').trim();\n      const titleText = fromTitle || fromAlt;\n      if (titleText) {\n        titleHtml = titleText;\n      }\n    }\n    let descriptionHtml = '';\n    if (showDesc) {\n      descriptionHtml = dsmIcSlideshowSlideDescriptionPlain(item);\n    }\n    if (!titleHtml && !descriptionHtml) {\n      return null;\n    }\n    const jv = ['flex-start', 'center', 'flex-end'].includes(slideshowTitleAlignV) ? slideshowTitleAlignV : 'center';\n    const ha = ['flex-start', 'center', 'flex-end'].includes(slideshowTitleAlignH) ? slideshowTitleAlignH : 'center';\n    return /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"dsm_image_carousel_slide_title_overlay\",\n      style: {\n        justifyContent: jv,\n        alignItems: ha\n      }\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"dsm_image_carousel_slideshow_content\"\n    }, titleHtml ? /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n      className: \"dsm_image_carousel_slide_title\"\n    }, titleHtml) : null, descriptionHtml ? /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n      className: \"dsm_image_carousel_slide_description\"\n    }, descriptionHtml) : null));\n  };\n  const refreshKey = [loading, displayMedia.length, galleryItems, slider_effect, slider_orientation, infinite, slide_to_show_current, slide_to_row_show_current, slider_effect_shadows, slider_effect_coverflow_rotate, slider_effect_coverflow_depth, centered_slides, speed, multiple_slide_row, slide_to_scroll, space_between, slide_row, autoplay, autoplay_speed, pause_on_hover, touch_move, grab, mousewheel, slideshow_to_show, infinite_smooth_scrolling, slider_type, slideshow_effect, slideshow_to_show, show_lightbox_title, slider_direction, gallery_orderby, pagi_vertical_position, arrow_position, arrow_desktop, arrow_phone, show_lightbox, lazyload, slideshowThumbsPosition, slideshowShowSlideTitle, slideshowShowSlideDescription, slideshowTitleAnimation, slideshowTitleAnimationDuration, slideshowTitleAnimationDelay, slideshowTitleAnimationOut, slideshowTitleAnimationOutDuration, slideshowTitleAnimationOutDelay, slideshowDescriptionAnimation, slideshowDescriptionAnimationDuration, slideshowDescriptionAnimationDelay, slideshowDescriptionAnimationOut, slideshowDescriptionAnimationOutDuration, slideshowDescriptionAnimationOutDelay, slideshowWrapperAnimationIn, slideshowWrapperAnimationInDuration, slideshowWrapperAnimationInDelay, slideshowWrapperAnimationOut, slideshowWrapperAnimationOutDuration, slideshowWrapperAnimationOutDelay, slideshowTitleAlignH, slideshowTitleAlignV, slideshowUseOverlay];\n  (0,external_vendor_React_.useEffect)(() => {\n    if (!swiperRef.current || loading || displayMedia.length === 0) {\n      return;\n    }\n    let slideShowSwiper;\n    let swiperInstance;\n    /** @type {(() => void) | null} */\n    let pausePointerEnter = null;\n    /** @type {(() => void) | null} */\n    let pausePointerLeave = null;\n    /** @type {(() => void) | null} */\n    let applySlideCaptionAnimHandler = null;\n    let titleOutBusy = false;\n    /** @type {ReturnType<typeof setTimeout> | null} */\n    let titleOutTimerId = null;\n    const swiperEl = swiperRef.current;\n    const duplicateSlidesIfNeeded = () => {\n      if (infinite_smooth_scrolling === 'on') {\n        const swiperWrapper = swiperRef.current.querySelector('.swiper-wrapper');\n        const slideCount = swiperWrapper.children.length;\n        const minimumSlides = 6;\n        if (slideCount < minimumSlides) {\n          for (let i = 0; i < minimumSlides - slideCount; i++) {\n            const clonedSlide = swiperWrapper.children[i % slideCount].cloneNode(true);\n            clonedSlide.classList.add('swiper-slide-clone');\n            swiperWrapper.appendChild(clonedSlide);\n          }\n        }\n      }\n    };\n    const initializeSwiper = SwiperCtor => {\n      duplicateSlidesIfNeeded();\n      const outPairMs = (durRaw, delRaw) => Math.ceil(dsmIcCssTimeToMs(dsmIcCssAnimationTime(delRaw, '0')) + dsmIcCssTimeToMs(dsmIcCssAnimationTime(durRaw, '1000')) + 50);\n      let captionOutPadMs = 0;\n      if ('slideshow' === slider_type) {\n        let maxPad = 0;\n        const showTitle = 'on' === slideshowShowSlideTitle;\n        const showDesc = 'on' === slideshowShowSlideDescription;\n        let tOut = slideshowTitleAnimationOut;\n        if (showTitle && (!tOut || '' === String(tOut).trim())) {\n          tOut = 'fadeOutDown';\n        }\n        if (showTitle && tOut && 'none' !== tOut) {\n          maxPad = Math.max(maxPad, outPairMs(slideshowTitleAnimationOutDuration, slideshowTitleAnimationOutDelay));\n        }\n        let dOut = slideshowDescriptionAnimationOut;\n        if (showDesc && (!dOut || '' === String(dOut).trim())) {\n          dOut = 'fadeOutDown';\n        }\n        if (showDesc && dOut && 'none' !== dOut) {\n          maxPad = Math.max(maxPad, outPairMs(slideshowDescriptionAnimationOutDuration, slideshowDescriptionAnimationOutDelay));\n        }\n        const wrapOutRaw = slideshowWrapperAnimationOut;\n        if ((showTitle || showDesc) && wrapOutRaw && 'none' !== wrapOutRaw) {\n          maxPad = Math.max(maxPad, outPairMs(slideshowWrapperAnimationOutDuration, slideshowWrapperAnimationOutDelay));\n        }\n        captionOutPadMs = maxPad;\n      }\n      const liveCaptionOutMsFromSlide = fromSlide => {\n        if (!fromSlide) {\n          return 0;\n        }\n        const wrapEl = fromSlide.querySelector('.dsm_image_carousel_slideshow_content');\n        const titleEl = fromSlide.querySelector('.dsm_image_carousel_slide_title');\n        const descEl = fromSlide.querySelector('.dsm_image_carousel_slide_description');\n        let maxLive = 0;\n        const showTitle = 'on' === slideshowShowSlideTitle;\n        const showDesc = 'on' === slideshowShowSlideDescription;\n        let tOutIc = slideshowTitleAnimationOut;\n        if (showTitle && (!tOutIc || '' === String(tOutIc).trim())) {\n          tOutIc = 'fadeOutDown';\n        }\n        if (showTitle && titleEl && tOutIc && 'none' !== tOutIc) {\n          maxLive = Math.max(maxLive, outPairMs(slideshowTitleAnimationOutDuration, slideshowTitleAnimationOutDelay));\n        }\n        let dOutIc = slideshowDescriptionAnimationOut;\n        if (showDesc && (!dOutIc || '' === String(dOutIc).trim())) {\n          dOutIc = 'fadeOutDown';\n        }\n        if (showDesc && descEl && dOutIc && 'none' !== dOutIc) {\n          maxLive = Math.max(maxLive, outPairMs(slideshowDescriptionAnimationOutDuration, slideshowDescriptionAnimationOutDelay));\n        }\n        const wrapLiveOut = slideshowWrapperAnimationOut;\n        if (wrapEl && (showTitle || showDesc) && wrapLiveOut && 'none' !== wrapLiveOut) {\n          maxLive = Math.max(maxLive, outPairMs(slideshowWrapperAnimationOutDuration, slideshowWrapperAnimationOutDelay));\n        }\n        return maxLive;\n      };\n      const swiperParams = {\n        ...getDsmCarouselVbSwiperObserverOptions(),\n        crossFade: true,\n        direction: slider_orientation === 'vertical' ? 'vertical' : 'horizontal',\n        effect: 'carousel' === slider_type ? slider_effect : slideshow_effect,\n        coverflowEffect: {\n          slideShadows: sliderEffectShadowsOn,\n          rotate: slider_effect_coverflow_rotate,\n          depth: slider_effect_coverflow_depth\n        },\n        flipEffect: {\n          rotate: 30,\n          slideShadows: sliderEffectShadowsOn\n        },\n        cubeEffect: {\n          slideShadows: sliderEffectShadowsOn,\n          shadow: sliderEffectShadowsOn,\n          shadowOffset: 20,\n          shadowScale: 0.94\n        },\n        centeredSlides: 'off' !== centered_slides,\n        speed: Number(speed),\n        loop: 'off' !== multiple_slide_row ? false : 'off' !== infinite,\n        mousewheel: 'off' !== mousewheel,\n        pagination: {\n          el: paginationRef.current,\n          type: 'bullets',\n          clickable: true\n        },\n        navigation: {\n          nextEl: navigationNextRef.current,\n          prevEl: navigationPrevRef.current\n        },\n        autoplay: {\n          enabled: 'off' !== autoplay,\n          delay: 'on' === infinite_smooth_scrolling ? 0 : Number(autoplay_speed) + captionOutPadMs,\n          disableOnInteraction: false\n        },\n        grabCursor: 'on' === grab,\n        lazyPreloadPrevNext: lazyLoadEnabled ? 2 : 0,\n        allowTouchMove: touch_move !== 'off',\n        a11y: {\n          enabled: false,\n          slideRole: 'group'\n        },\n        slidesPerView: 'slideshow' === slider_type ? 1 : 'horizontal' === slider_orientation ? Number(slide_to_show_current) : Number(slide_to_row_show_current),\n        slidesPerGroup: Number(slide_to_scroll),\n        spaceBetween: Number(space_between),\n        grid: {\n          rows: Number(slide_row),\n          fill: 'row'\n        }\n      };\n\n      // Initialize slideshow thumbs if applicable\n      if ('slideshow' === slider_type && thumbSliderRef.current) {\n        const thumbParams = {\n          init: true,\n          loop: true,\n          freeMode: false,\n          watchSlidesVisibility: true,\n          watchSlidesProgress: true,\n          resizeObserver: true,\n          observer: true,\n          observeParents: true,\n          observeSlideChildren: true,\n          lazyPreloadPrevNext: lazyLoadEnabled ? 2 : 0,\n          slidesPerView: Number(slideshow_to_show),\n          spaceBetween: Number(space_between)\n        };\n        slideShowSwiper = new SwiperCtor(thumbSliderRef.current, thumbParams);\n        swiperParams.thumbs = {\n          swiper: slideShowSwiper\n        };\n      }\n\n      // Initialize main Swiper\n      swiperInstance = new SwiperCtor(swiperRef.current, swiperParams);\n      swiperInstanceRef.current = swiperInstance;\n      scheduleDsmCarouselSwiperLayoutRefresh(swiperInstance);\n      const dsmIcTitleAnimClasses = ['bounce', 'flash', 'pulse', 'rubberBand', 'shake', 'swing', 'tada', 'wobble', 'jello', 'heartBeat', 'fadeIn', 'fadeInDown', 'fadeInDownBig', 'fadeInLeft', 'fadeInLeftBig', 'fadeInRight', 'fadeInRightBig', 'fadeInUp', 'fadeInUpBig', 'flipInX', 'flipInY', 'lightSpeedIn', 'rotateIn', 'rotateInDownLeft', 'rotateInDownRight', 'rotateInUpLeft', 'rotateInUpRight', 'slideInUp', 'slideInDown', 'slideInLeft', 'slideInRight', 'bounceIn', 'bounceInDown', 'bounceInLeft', 'bounceInRight', 'bounceInUp', 'zoomIn', 'zoomInDown', 'zoomInLeft', 'zoomInRight', 'zoomInUp', 'jackInTheBox', 'rollIn'];\n      const dsmIcTitleAnimOutClasses = ['bounceOut', 'bounceOutDown', 'bounceOutLeft', 'bounceOutRight', 'bounceOutUp', 'fadeOut', 'fadeOutDown', 'fadeOutDownBig', 'fadeOutLeft', 'fadeOutLeftBig', 'fadeOutRight', 'fadeOutRightBig', 'fadeOutUp', 'fadeOutUpBig', 'flipOutX', 'flipOutY', 'lightSpeedOut', 'rollOut', 'slideOutDown', 'slideOutLeft', 'slideOutRight', 'slideOutUp', 'zoomOut', 'zoomOutDown', 'zoomOutLeft', 'zoomOutRight', 'zoomOutUp'];\n      const dsmIcTitleAnimAllClasses = dsmIcTitleAnimClasses.concat(dsmIcTitleAnimOutClasses);\n      const captionOutSlidePatchActive = 'slideshow' === slider_type && captionOutPadMs > 0;\n      const stripIcAnim = el => {\n        if (!el) {\n          return;\n        }\n        el.classList.remove('animated');\n        dsmIcTitleAnimAllClasses.forEach(c => el.classList.remove(c));\n        el.style.animationDuration = '';\n        el.style.animationDelay = '';\n      };\n      if (captionOutSlidePatchActive) {\n        const innerSlideToIc = swiperInstance.slideTo.bind(swiperInstance);\n        swiperInstance.slideTo = (index, speed, runCallbacks, internal, initial) => {\n          if (initial) {\n            return innerSlideToIc(index, speed, runCallbacks, internal, initial);\n          }\n          let speedForBypass = speed;\n          if (typeof speedForBypass === 'undefined') {\n            speedForBypass = swiperInstance.params.speed;\n          }\n          if (internal && Number(speedForBypass) === 0 && runCallbacks === false) {\n            return innerSlideToIc(index, speed, runCallbacks, internal, initial);\n          }\n          if (titleOutBusy) {\n            return undefined;\n          }\n          const tgtSlide = swiperInstance.slides[index];\n          const tgtRi = tgtSlide ? parseInt(tgtSlide.getAttribute('data-swiper-slide-index') || String(index), 10) : index;\n          if (tgtRi === swiperInstance.realIndex) {\n            return innerSlideToIc(index, speed, runCallbacks, internal, initial);\n          }\n          const fromSlideIc = swiperInstance.slides[swiperInstance.activeIndex];\n          const waitOutMs = liveCaptionOutMsFromSlide(fromSlideIc);\n          if (waitOutMs <= 0) {\n            return innerSlideToIc(index, speed, runCallbacks, internal, initial);\n          }\n          const showTitle = 'on' === slideshowShowSlideTitle;\n          const showDesc = 'on' === slideshowShowSlideDescription;\n          let animOutTitle = slideshowTitleAnimationOut;\n          if (showTitle && (!animOutTitle || '' === String(animOutTitle).trim())) {\n            animOutTitle = 'fadeOutDown';\n          }\n          let animOutDesc = slideshowDescriptionAnimationOut;\n          if (showDesc && (!animOutDesc || '' === String(animOutDesc).trim())) {\n            animOutDesc = 'fadeOutDown';\n          }\n          const animOutWrap = slideshowWrapperAnimationOut;\n          const wrapOutEl = fromSlideIc?.querySelector('.dsm_image_carousel_slideshow_content');\n          const titleOutEl = fromSlideIc?.querySelector('.dsm_image_carousel_slide_title');\n          const descOutEl = fromSlideIc?.querySelector('.dsm_image_carousel_slide_description');\n          const doWrapOut = wrapOutEl && animOutWrap && 'none' !== animOutWrap && (showTitle || showDesc);\n          const doTitleOut = showTitle && titleOutEl && animOutTitle && 'none' !== animOutTitle;\n          const doDescOut = showDesc && descOutEl && animOutDesc && 'none' !== animOutDesc;\n          titleOutBusy = true;\n          if (doWrapOut) {\n            stripIcAnim(wrapOutEl);\n          }\n          if (doTitleOut) {\n            stripIcAnim(titleOutEl);\n          }\n          if (doDescOut) {\n            stripIcAnim(descOutEl);\n          }\n          if (doWrapOut) {\n            const wodu = dsmIcCssAnimationTime(slideshowWrapperAnimationOutDuration, '1000');\n            const wodl = dsmIcCssAnimationTime(slideshowWrapperAnimationOutDelay, '0');\n            void wrapOutEl.offsetWidth;\n            wrapOutEl.style.animationDuration = String(wodu);\n            wrapOutEl.style.animationDelay = String(wodl);\n            wrapOutEl.classList.add('animated', String(animOutWrap));\n          }\n          if (doTitleOut) {\n            const oduIc = dsmIcCssAnimationTime(slideshowTitleAnimationOutDuration, '1000');\n            const odlIc = dsmIcCssAnimationTime(slideshowTitleAnimationOutDelay, '0');\n            void titleOutEl.offsetWidth;\n            titleOutEl.style.animationDuration = String(oduIc);\n            titleOutEl.style.animationDelay = String(odlIc);\n            titleOutEl.classList.add('animated', String(animOutTitle));\n          }\n          if (doDescOut) {\n            const dduO = dsmIcCssAnimationTime(slideshowDescriptionAnimationOutDuration, '1000');\n            const ddlO = dsmIcCssAnimationTime(slideshowDescriptionAnimationOutDelay, '0');\n            void descOutEl.offsetWidth;\n            descOutEl.style.animationDuration = String(dduO);\n            descOutEl.style.animationDelay = String(ddlO);\n            descOutEl.classList.add('animated', String(animOutDesc));\n          }\n          if (titleOutTimerId) {\n            window.clearTimeout(titleOutTimerId);\n          }\n          titleOutTimerId = window.setTimeout(() => {\n            titleOutTimerId = null;\n            titleOutBusy = false;\n            innerSlideToIc(index, speed, runCallbacks, internal, initial);\n          }, waitOutMs);\n          return undefined;\n        };\n      }\n      applySlideCaptionAnimHandler = () => {\n        if ('slideshow' !== slider_type) {\n          return;\n        }\n        const root = swiperRef.current?.closest('.dsm_image_carousel');\n        if (!root) {\n          return;\n        }\n        root.querySelectorAll('.dsm_image_carousel_slideshow_content').forEach(el => stripIcAnim(el));\n        root.querySelectorAll('.dsm_image_carousel_slide_title').forEach(el => stripIcAnim(el));\n        root.querySelectorAll('.dsm_image_carousel_slide_description').forEach(el => stripIcAnim(el));\n        const slide = swiperInstance.slides[swiperInstance.activeIndex];\n        const wrapEl = slide?.querySelector('.dsm_image_carousel_slideshow_content');\n        const activeTitle = slide?.querySelector('.dsm_image_carousel_slide_title');\n        const activeDesc = slide?.querySelector('.dsm_image_carousel_slide_description');\n        const showTitle = 'on' === slideshowShowSlideTitle;\n        const showDesc = 'on' === slideshowShowSlideDescription;\n        let wrapAnimIn = slideshowWrapperAnimationIn;\n        if (!wrapAnimIn || '' === String(wrapAnimIn).trim()) {\n          wrapAnimIn = 'none';\n        }\n        if (wrapEl && wrapAnimIn && 'none' !== wrapAnimIn && (showTitle || showDesc)) {\n          void wrapEl.offsetWidth;\n          wrapEl.style.animationDuration = dsmIcCssAnimationTime(slideshowWrapperAnimationInDuration, '1000');\n          wrapEl.style.animationDelay = dsmIcCssAnimationTime(slideshowWrapperAnimationInDelay, '0');\n          wrapEl.classList.add('animated', String(wrapAnimIn));\n        }\n        if (showTitle && activeTitle) {\n          let animIn = slideshowTitleAnimation;\n          if (!animIn || '' === String(animIn).trim()) {\n            animIn = 'fadeInUp';\n          }\n          if ('none' !== animIn) {\n            void activeTitle.offsetWidth;\n            activeTitle.style.animationDuration = dsmIcCssAnimationTime(slideshowTitleAnimationDuration, '1000');\n            activeTitle.style.animationDelay = dsmIcCssAnimationTime(slideshowTitleAnimationDelay, '0');\n            activeTitle.classList.add('animated', String(animIn));\n          }\n        }\n        if (showDesc && activeDesc) {\n          let dAnim = slideshowDescriptionAnimation;\n          if (!dAnim || '' === String(dAnim).trim()) {\n            dAnim = 'fadeInUp';\n          }\n          if ('none' !== dAnim) {\n            void activeDesc.offsetWidth;\n            activeDesc.style.animationDuration = dsmIcCssAnimationTime(slideshowDescriptionAnimationDuration, '1000');\n            activeDesc.style.animationDelay = dsmIcCssAnimationTime(slideshowDescriptionAnimationDelay, '0');\n            activeDesc.classList.add('animated', String(dAnim));\n          }\n        }\n      };\n      swiperInstance.on('slideChangeTransitionEnd', applySlideCaptionAnimHandler);\n      applySlideCaptionAnimHandler();\n\n      // Pause on hover: attach after init so `swiperInstance` is stable; use pointer events\n      // for Visual Builder iframe/canvas compatibility. Cleanup removes listeners before destroy.\n      if (pause_on_hover === 'on' && swiperInstance.autoplay && 'off' !== autoplay) {\n        pausePointerEnter = () => {\n          swiperInstance.autoplay.stop();\n        };\n        pausePointerLeave = () => {\n          swiperInstance.autoplay.start();\n        };\n        swiperEl.addEventListener('pointerenter', pausePointerEnter);\n        swiperEl.addEventListener('pointerleave', pausePointerLeave);\n      }\n    };\n    const cancelWait = whenSwiperConstructorReady(SwiperCtor => {\n      if (!swiperRef.current || loading || displayMedia.length === 0) {\n        return;\n      }\n      initializeSwiper(SwiperCtor);\n    });\n    return () => {\n      cancelWait();\n      titleOutBusy = false;\n      if (titleOutTimerId) {\n        window.clearTimeout(titleOutTimerId);\n        titleOutTimerId = null;\n      }\n      if (pausePointerEnter && pausePointerLeave && swiperEl) {\n        swiperEl.removeEventListener('pointerenter', pausePointerEnter);\n        swiperEl.removeEventListener('pointerleave', pausePointerLeave);\n      }\n      if (swiperInstance) {\n        if (applySlideCaptionAnimHandler) {\n          swiperInstance.off('slideChangeTransitionEnd', applySlideCaptionAnimHandler);\n        }\n        swiperInstance.destroy();\n      }\n      swiperInstanceRef.current = null;\n      if (slideShowSwiper) slideShowSwiper.destroy();\n    };\n  }, refreshKey);\n  (0,external_vendor_React_.useEffect)(() => {\n    jQuery($ => {\n      // Lightbox\n      const lightboxIMG = swiperRef.current;\n\n      /*\n      const getGallary = this.props.__gallery;\n      const renObjData = getGallary.map((item, index) => {\n        return {src: item.image_src_full[0]};\n      });\n      const order_class = this.props.moduleInfo.type + '_' + this.props.moduleInfo.order;\n      */\n      if (show_lightbox === 'on') {\n        var $mfp = $(lightboxIMG);\n        $mfp.on('click', '.dsm_image_carousel_item.swiper-slide-duplicate a.dsm_image_carousel_lightbox', function (event) {\n          event.preventDefault();\n          var self = $(this);\n          $mfp.find('.dsm_image_carousel_item:not(.swiper-slide-duplicate) a.dsm_image_carousel_lightbox').each(function (index) {\n            if ($(this).attr('href') === self.attr('href')) {\n              $mfp.magnificPopup('open', index);\n            }\n          });\n        });\n        $mfp.magnificPopup({\n          type: 'image',\n          delegate: '.dsm_image_carousel_item:not(.swiper-slide-duplicate) a.dsm_image_carousel_lightbox',\n          removalDelay: 500,\n          gallery: {\n            enabled: 'off' !== show_lightbox_gallery ? true : false,\n            navigateByImgClick: false,\n            tCounter: ''\n          },\n          image: {\n            titleSrc: function (item) {\n              var img = 'slideshow' !== slider_type ? item.el.find('img') : item.el.find('.dsm_image_carousel_slideshow_bg');\n              var Title = '',\n                Caption = '';\n              if (show_lightbox_caption === 'on') {\n                Caption = img.attr('data-dsm-image-description') !== '' ? '<small>' + img.attr('data-dsm-image-description').replace(/[^]/g, function (c) {\n                  return '&#' + c.charCodeAt(0) + ';';\n                }) + '</small>' : '';\n              }\n              if (show_lightbox_title === 'on') {\n                Title = img.attr('data-title');\n                if (Title !== '') {\n                  Title = Title.replace(/[^]/g, function (c) {\n                    return '&#' + c.charCodeAt(0) + ';';\n                  });\n                } else {\n                  Title = '';\n                }\n              }\n              return Title + Caption;\n            }\n          },\n          mainClass: 'mfp-fade',\n          zoom: {\n            enabled: true,\n            duration: 500,\n            opener: function (element) {\n              const img = 'slideshow' !== slider_type ? element.find('img') : element.find('.dsm_image_carousel_slideshow_bg');\n              return img;\n            }\n          }\n        });\n      }\n    });\n  }, [show_lightbox, show_lightbox_gallery, show_lightbox_title, show_lightbox_caption]);\n  const thumbsSliderMarkup = (0,external_vendor_React_.useMemo)(() => {\n    if ('slideshow' !== slider_type || !Array.isArray(displayMedia) || !displayMedia.length) {\n      return null;\n    }\n    const thumbsThumbClassSuffix = 'custom' === slideshowThumbsPosition ? ' dsm_ic_slideshow_thumbs_absolute' : '';\n    return /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: `swiper-container dsm_image_gallery_thumbs${thumbsThumbClassSuffix}`,\n      dir: slider_direction,\n      ref: thumbSliderRef\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"swiper-wrapper\"\n    }, displayMedia.map((item, index) => {\n      var _item$id;\n      const thumbnailImageUrl = getImageUrl(item, slideshow_sizes);\n      return /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n        className: \"swiper-slide dsm_image_carousel_item\",\n        key: (_item$id = item.id) !== null && _item$id !== void 0 ? _item$id : index\n      }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n        className: \"dsm_image_carousel_thumbs_image\",\n        role: \"img\",\n        \"aria-label\": item.alt_text,\n        style: {\n          backgroundImage: `url(\"${thumbnailImageUrl}\")`\n        }\n      }));\n    })));\n  }, [slider_type, displayMedia, slideshow_sizes, slider_direction, slideshowThumbsPosition]);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: image_carousel_edit_ModuleScriptData,\n    stylesComponent: image_carousel_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n      params.classnamesInstance.add(`dsm_image_carousel_${slider_orientation}`);\n      params.classnamesInstance.add(`dsm_image_carousel_pagi_placement_${pagi_vertical_position}`);\n      params.classnamesInstance.add(`dsm_image_carousel_arrow_${arrow_position}`);\n      if ('outside' === arrow_position && 'outside' === arrow_desktop && 'inside' === arrow_phone) {\n        params.classnamesInstance.add('dsm_image_carousel_arrow_mobile_inside');\n      }\n      if ('on' === infinite_smooth_scrolling) {\n        params.classnamesInstance.add(`dsm_image_carousel_infinite_scroll`);\n      }\n      if ('on' === slideshowUseOverlay) {\n        params.classnamesInstance.add('dsm_ic_slideshow_use_overlay');\n        params.classnamesInstance.add('dsm_ic_use_slide_image_overlay');\n      }\n      if ('slideshow' === slider_type) {\n        if (['top', 'bottom', 'custom'].includes(slideshowThumbsPosition)) {\n          params.classnamesInstance.add(`dsm_ic_slideshow_thumbs_${slideshowThumbsPosition}`);\n        }\n        if ('on' === slideshowShowSlideTitle) {\n          params.classnamesInstance.add('dsm_ic_slideshow_show_slide_title');\n        }\n        if ('on' === slideshowShowSlideDescription) {\n          params.classnamesInstance.add('dsm_ic_slideshow_show_slide_description');\n        }\n      }\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), loading && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_uiLibrary_namespaceObject.Loading, null), !loading && displayMedia.length > 0 && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, 'slideshow' === slider_type && 'top' === slideshowThumbsPosition && thumbsSliderMarkup, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: `swiper-container dsm_image_carousel_container ${isSlideshowSlider}`,\n    ref: swiperRef,\n    dir: slider_direction,\n    \"data-effect\": swiperDataEffect,\n    \"data-type\": slider_type && 'off' !== slider_type ? slider_type : 'carousel',\n    \"data-slideshow-show-slide-title\": 'on' === slideshowShowSlideTitle ? 'true' : 'false',\n    \"data-slideshow-title-animation\": slideshowTitleAnimation,\n    \"data-slideshow-title-animation-duration\": dsmIcCssAnimationTime(slideshowTitleAnimationDuration, '1000'),\n    \"data-slideshow-title-animation-delay\": dsmIcCssAnimationTime(slideshowTitleAnimationDelay, '0'),\n    \"data-slideshow-title-animation-out\": slideshowTitleAnimationOut,\n    \"data-slideshow-title-animation-out-duration\": dsmIcCssAnimationTime(slideshowTitleAnimationOutDuration, '1000'),\n    \"data-slideshow-title-animation-out-delay\": dsmIcCssAnimationTime(slideshowTitleAnimationOutDelay, '0'),\n    \"data-slideshow-show-slide-description\": 'on' === slideshowShowSlideDescription ? 'true' : 'false',\n    \"data-slideshow-description-animation\": slideshowDescriptionAnimation,\n    \"data-slideshow-description-animation-duration\": dsmIcCssAnimationTime(slideshowDescriptionAnimationDuration, '1000'),\n    \"data-slideshow-description-animation-delay\": dsmIcCssAnimationTime(slideshowDescriptionAnimationDelay, '0'),\n    \"data-slideshow-description-animation-out\": slideshowDescriptionAnimationOut,\n    \"data-slideshow-description-animation-out-duration\": dsmIcCssAnimationTime(slideshowDescriptionAnimationOutDuration, '1000'),\n    \"data-slideshow-description-animation-out-delay\": dsmIcCssAnimationTime(slideshowDescriptionAnimationOutDelay, '0'),\n    \"data-slideshow-wrapper-animation-in\": slideshowWrapperAnimationIn,\n    \"data-slideshow-wrapper-animation-in-duration\": dsmIcCssAnimationTime(slideshowWrapperAnimationInDuration, '1000'),\n    \"data-slideshow-wrapper-animation-in-delay\": dsmIcCssAnimationTime(slideshowWrapperAnimationInDelay, '0'),\n    \"data-slideshow-wrapper-animation-out\": slideshowWrapperAnimationOut,\n    \"data-slideshow-wrapper-animation-out-duration\": dsmIcCssAnimationTime(slideshowWrapperAnimationOutDuration, '1000'),\n    \"data-slideshow-wrapper-animation-out-delay\": dsmIcCssAnimationTime(slideshowWrapperAnimationOutDelay, '0')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"swiper-wrapper\"\n  }, displayMedia.map((item, index) => {\n    var _item$id2;\n    const imageUrl = getImageUrl(item, sizes);\n    const slideDescPlain = dsmIcSlideshowSlideDescriptionPlain(item);\n    const lightboxCarouselMarkup = /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n      className: \"dsm_image_carousel_lightbox\",\n      href: imageUrl,\n      \"data-mfp-src\": imageUrl\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n      src: imageUrl,\n      alt: item.alt_text,\n      \"data-dsm-image-description\": slideDescPlain,\n      \"data-title\": (0,external_wp_dom_namespaceObject.__unstableStripHTML)(item.title.rendered)\n    }));\n    const lightboxSlideshowMarkup = /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n      className: \"dsm_image_carousel_lightbox\",\n      href: imageUrl,\n      \"data-mfp-src\": imageUrl\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"dsm_image_carousel_slideshow_bg\",\n      role: \"img\",\n      style: {\n        backgroundImage: `url(\"${imageUrl}\")`\n      },\n      \"data-dsm-image-description\": slideDescPlain,\n      \"data-title\": (0,external_wp_dom_namespaceObject.__unstableStripHTML)(item.title.rendered)\n    }, 'on' === slideshowUseOverlay && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"dsm_image_carousel_slideshow_overlay\",\n      \"aria-hidden\": \"true\"\n    }), renderSlideshowCaptionOverlay(item)));\n    return 'carousel' === slider_type ? /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"swiper-slide dsm_image_carousel_item\",\n      key: (_item$id2 = item.id) !== null && _item$id2 !== void 0 ? _item$id2 : index\n    }, wrapCarouselSlideImageOverlay('on' === show_lightbox ? lightboxCarouselMarkup : /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n      src: imageUrl,\n      alt: item.alt_text\n    }))) : /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"swiper-slide dsm_image_carousel_item\"\n    }, 'on' === show_lightbox ? lightboxSlideshowMarkup : /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"dsm_image_carousel_slideshow_bg\",\n      role: \"img\",\n      style: {\n        backgroundImage: `url(\"${imageUrl}\")`\n      }\n    }, 'on' === slideshowUseOverlay && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"dsm_image_carousel_slideshow_overlay\",\n      \"aria-hidden\": \"true\"\n    }), renderSlideshowCaptionOverlay(item)));\n  }))), 'on' === arrows && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(CarouselNavWithDsmIcon, {\n    direction: \"prev\",\n    className: \"swiper-arrow-button\",\n    buttonRef: navigationPrevRef,\n    icon: arrowPrevIcon,\n    useCustomIcon: useCustomPrevIcon\n  }), /*#__PURE__*/external_vendor_React_default().createElement(CarouselNavWithDsmIcon, {\n    direction: \"next\",\n    className: \"swiper-arrow-button\",\n    buttonRef: navigationNextRef,\n    icon: arrowNextIcon,\n    useCustomIcon: useCustomNextIcon\n  })), 'on' === dots && 'carousel' === slider_type && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    ref: paginationRef,\n    className: \"swiper-pagination\"\n  }), 'slideshow' === slider_type && 'top' !== slideshowThumbsPosition && thumbsSliderMarkup));\n}\n/* harmony default export */ const image_carousel_edit = (image_carousel_edit_Edit);\n;// ./packages/module-library/image-carousel/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmImageCarousel', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/image-carousel': {\n      name: 'divi-supreme/image-carousel',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 4.667969 4.972656 C 4.328125 4.972656 4.050781 4.691406 4.050781 4.351562 C 4.050781 4.011719 4.328125 3.734375 4.667969 3.734375 C 5.007812 3.734375 5.289062 4.011719 5.289062 4.351562 C 5.289062 4.699219 5.007812 4.972656 4.667969 4.972656 Z M 4.667969 4.078125 C 4.515625 4.078125 4.394531 4.203125 4.394531 4.351562 C 4.394531 4.503906 4.519531 4.625 4.667969 4.625 C 4.816406 4.625 4.941406 4.5 4.941406 4.351562 C 4.941406 4.203125 4.824219 4.078125 4.667969 4.078125 Z M 4.667969 4.078125 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.375 11.824219 C 12.035156 11.824219 11.757812 11.546875 11.757812 11.207031 C 11.757812 10.867188 12.035156 10.585938 12.375 10.585938 C 12.714844 10.585938 12.996094 10.867188 12.996094 11.207031 C 12.996094 11.550781 12.714844 11.824219 12.375 11.824219 Z M 12.375 10.933594 C 12.222656 10.933594 12.101562 11.058594 12.101562 11.207031 C 12.101562 11.355469 12.226562 11.480469 12.375 11.480469 C 12.523438 11.480469 12.648438 11.355469 12.648438 11.207031 C 12.648438 11.058594 12.527344 10.933594 12.375 10.933594 Z M 12.375 10.933594 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 5.558594 7.851562 C 5.21875 7.851562 4.941406 7.574219 4.941406 7.234375 C 4.941406 6.894531 5.21875 6.617188 5.558594 6.617188 C 5.898438 6.617188 6.179688 6.894531 6.179688 7.234375 C 6.179688 7.578125 5.898438 7.851562 5.558594 7.851562 Z M 5.558594 6.960938 C 5.40625 6.960938 5.285156 7.085938 5.285156 7.234375 C 5.285156 7.386719 5.410156 7.507812 5.558594 7.507812 C 5.710938 7.507812 5.832031 7.382812 5.832031 7.234375 C 5.839844 7.085938 5.710938 6.960938 5.558594 6.960938 Z M 5.558594 6.960938 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.863281 10.1875 L 4.261719 10.1875 C 3.652344 10.1875 3.152344 9.6875 3.152344 9.082031 L 3.152344 6.476562 C 3.152344 5.871094 3.648438 5.371094 4.261719 5.371094 L 6.863281 5.371094 C 7.472656 5.371094 7.96875 5.863281 7.96875 6.476562 L 7.96875 9.082031 C 7.964844 9.695312 7.472656 10.1875 6.863281 10.1875 Z M 4.261719 5.722656 C 3.839844 5.722656 3.5 6.0625 3.5 6.484375 L 3.5 9.085938 C 3.5 9.507812 3.839844 9.847656 4.261719 9.847656 L 6.863281 9.847656 C 7.285156 9.847656 7.625 9.507812 7.625 9.085938 L 7.625 6.484375 C 7.625 6.0625 7.285156 5.722656 6.863281 5.722656 Z M 4.261719 5.722656 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.863281 10.1875 L 4.261719 10.1875 C 3.652344 10.1875 3.152344 9.6875 3.152344 9.082031 L 3.152344 8.800781 L 4.832031 7.855469 L 5.3125 8.554688 L 7.964844 6.925781 L 7.964844 9.082031 C 7.964844 9.695312 7.472656 10.1875 6.863281 10.1875 Z M 3.5 9.003906 L 3.5 9.085938 C 3.5 9.507812 3.839844 9.847656 4.261719 9.847656 L 6.863281 9.847656 C 7.285156 9.847656 7.625 9.507812 7.625 9.085938 L 7.625 7.546875 L 5.214844 9.019531 L 4.726562 8.308594 Z M 3.5 9.003906 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.066406 7.851562 C 10.726562 7.851562 10.445312 7.574219 10.445312 7.234375 C 10.445312 6.894531 10.726562 6.617188 11.066406 6.617188 C 11.40625 6.617188 11.683594 6.894531 11.683594 7.234375 C 11.683594 7.578125 11.40625 7.851562 11.066406 7.851562 Z M 11.066406 6.960938 C 10.910156 6.960938 10.789062 7.085938 10.789062 7.234375 C 10.789062 7.386719 10.917969 7.507812 11.066406 7.507812 C 11.21875 7.507812 11.339844 7.382812 11.339844 7.234375 C 11.34375 7.085938 11.21875 6.960938 11.066406 6.960938 Z M 11.066406 6.960938 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.371094 10.1875 L 9.765625 10.1875 C 9.160156 10.1875 8.660156 9.6875 8.660156 9.082031 L 8.660156 6.476562 C 8.660156 5.871094 9.152344 5.371094 9.765625 5.371094 L 12.371094 5.371094 C 12.976562 5.371094 13.476562 5.863281 13.476562 6.476562 L 13.476562 9.082031 C 13.472656 9.695312 12.976562 10.1875 12.371094 10.1875 Z M 9.765625 5.722656 C 9.34375 5.722656 9.003906 6.0625 9.003906 6.484375 L 9.003906 9.085938 C 9.003906 9.507812 9.34375 9.847656 9.765625 9.847656 L 12.371094 9.847656 C 12.792969 9.847656 13.132812 9.507812 13.132812 9.085938 L 13.132812 6.484375 C 13.132812 6.0625 12.792969 5.722656 12.371094 5.722656 Z M 9.765625 5.722656 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.371094 10.1875 L 9.765625 10.1875 C 9.160156 10.1875 8.660156 9.6875 8.660156 9.082031 L 8.660156 8.800781 L 10.335938 7.851562 L 10.820312 8.554688 L 13.472656 6.925781 L 13.472656 9.082031 C 13.472656 9.695312 12.976562 10.1875 12.371094 10.1875 Z M 9.003906 9.003906 L 9.003906 9.085938 C 9.003906 9.507812 9.34375 9.847656 9.765625 9.847656 L 12.371094 9.847656 C 12.792969 9.847656 13.132812 9.507812 13.132812 9.085938 L 13.132812 7.546875 L 10.71875 9.019531 L 10.234375 8.308594 Z M 9.003906 9.003906 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 2.277344 8.9375 L 1.066406 7.851562 L 2.273438 6.632812 L 2.519531 6.871094 L 1.566406 7.835938 L 2.507812 8.6875 Z M 2.277344 8.9375 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 14.253906 8.9375 L 14.023438 8.6875 L 14.964844 7.835938 L 14.011719 6.871094 L 14.257812 6.632812 L 15.464844 7.851562 Z M 14.253906 8.9375 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/image-carousel/index.js\n// External library dependencies.\n\n// Wordpress dependencies.\n\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\nconst imageCarouselModule = {\n  metadata: image_carousel_module_namespaceObject,\n  conversionOutline: image_carousel_conversion_outline_conversionOutline,\n  renderers: {\n    edit: image_carousel_edit,\n    styles: image_carousel_module_styles_ModuleStyles\n  },\n  defaultAttrs: {\n    ...image_carousel_module_default_render_attributes_namespaceObject\n  },\n  settings: {\n    content: image_carousel_settings_content,\n    design: image_carousel_settings_design,\n    advanced: image_carousel_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {\n        ...(image_carousel_module_default_render_attributes_namespaceObject.module?.decoration || {})\n      }\n    },\n    gallery_orderby: {\n      innerContent: {\n        desktop: {\n          value: 'default'\n        }\n      }\n    },\n    slider_effect: {\n      innerContent: {\n        desktop: {\n          value: 'default'\n        }\n      }\n    },\n    slider_direction: {\n      innerContent: {\n        desktop: {\n          value: 'ltr'\n        }\n      }\n    },\n    centered_slides: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    slide_to_show: {\n      innerContent: {\n        desktop: {\n          value: '4'\n        },\n        tablet: {\n          value: '2'\n        },\n        phone: {\n          value: '1'\n        }\n      }\n    },\n    slide_to_row_show: {\n      innerContent: {\n        desktop: {\n          value: '1'\n        },\n        tablet: {\n          value: '2'\n        },\n        phone: {\n          value: '1'\n        }\n      }\n    },\n    slide_to_scroll: {\n      innerContent: {\n        desktop: {\n          value: '1'\n        }\n      }\n    },\n    multiple_slide_row: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    speed: {\n      innerContent: {\n        desktop: {\n          value: '300'\n        }\n      }\n    },\n    autoplay: {\n      innerContent: {\n        desktop: {\n          value: 'on'\n        }\n      }\n    },\n    autoplay_speed: {\n      innerContent: {\n        desktop: {\n          value: '3000'\n        }\n      }\n    },\n    pause_on_hover: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    slide_row: {\n      innerContent: {\n        desktop: {\n          value: '1'\n        }\n      }\n    },\n    space_between: {\n      innerContent: {\n        desktop: {\n          value: '15'\n        }\n      }\n    },\n    infinite: {\n      innerContent: {\n        desktop: {\n          value: 'on'\n        }\n      }\n    },\n    infinite_smooth_scrolling: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    arrows: {\n      innerContent: {\n        desktop: {\n          value: 'on'\n        }\n      }\n    },\n    arrow_next_font_icon: {\n      innerContent: {\n        desktop: {\n          value: {\n            type: 'divi',\n            unicode: '&#x35;',\n            weight: '400'\n          }\n        }\n      }\n    },\n    arrow_prev_font_icon: {\n      innerContent: {\n        desktop: {\n          value: {\n            type: 'divi',\n            unicode: '&#x34;',\n            weight: '400'\n          }\n        }\n      }\n    },\n    dots: {\n      innerContent: {\n        desktop: {\n          value: 'on'\n        }\n      }\n    },\n    touch_move: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    grab: {\n      innerContent: {\n        desktop: {\n          value: 'on'\n        }\n      }\n    },\n    show_lightbox: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    sizes: {\n      innerContent: {\n        desktop: {\n          value: 'full'\n        }\n      }\n    },\n    lightbox_img_sizes: {\n      innerContent: {\n        desktop: {\n          value: 'full'\n        }\n      }\n    },\n    show_lightbox_gallery: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    show_lightbox_title: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    show_lightbox_caption: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    horizontal_alignment: {\n      innerContent: {\n        desktop: {\n          value: 'center'\n        }\n      }\n    },\n    dots_horizontal_placement: {\n      innerContent: {\n        desktop: {\n          value: '-30px'\n        }\n      }\n    },\n    dots_vertical_placement: {\n      innerContent: {\n        desktop: {\n          value: '50%'\n        }\n      }\n    },\n    dots_active_color: {\n      innerContent: {\n        desktop: {\n          value: 'rgba(0,0,0,0.75)'\n        }\n      }\n    },\n    dots_inactive_color: {\n      innerContent: {\n        desktop: {\n          value: 'rgba(0,0,0,0.2)'\n        }\n      }\n    },\n    pagi_vertical_position: {\n      innerContent: {\n        desktop: {\n          value: 'right'\n        }\n      }\n    },\n    navi_hori_position: {\n      innerContent: {\n        desktop: {\n          value: '50%'\n        }\n      }\n    },\n    mousewheel: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    slider_type: {\n      innerContent: {\n        desktop: {\n          value: 'carousel'\n        }\n      }\n    },\n    slideshow_effect: {\n      innerContent: {\n        desktop: {\n          value: 'default'\n        }\n      }\n    },\n    slideshow_height: {\n      innerContent: {\n        desktop: {\n          value: '450px'\n        }\n      }\n    },\n    autoplay_viewport: {\n      innerContent: {\n        desktop: {\n          value: '80%'\n        }\n      }\n    },\n    slideshow_to_show: {\n      innerContent: {\n        desktop: {\n          value: '4'\n        }\n      }\n    },\n    slideshow_ratio: {\n      innerContent: {\n        desktop: {\n          value: '219'\n        }\n      }\n    },\n    slideshow_image_fit: {\n      innerContent: {\n        desktop: {\n          value: 'cover'\n        }\n      }\n    },\n    image_fit: {\n      innerContent: {\n        desktop: {\n          value: 'cover'\n        }\n      }\n    },\n    image_position: {\n      innerContent: {\n        desktop: {\n          value: 'center'\n        }\n      }\n    },\n    slideshow_image_position: {\n      innerContent: {\n        desktop: {\n          value: 'center'\n        }\n      }\n    },\n    slideshow_thumbs_position: {\n      innerContent: {\n        desktop: {\n          value: 'bottom'\n        }\n      }\n    },\n    slideshow_thumbs_offset: {\n      decoration: {\n        spacing: {\n          desktop: {\n            value: {\n              padding: {\n                top: '',\n                right: '',\n                bottom: '',\n                left: ''\n              }\n            }\n          },\n          tablet: {\n            value: {\n              padding: {\n                top: '',\n                right: '',\n                bottom: '',\n                left: ''\n              }\n            }\n          },\n          phone: {\n            value: {\n              padding: {\n                top: '',\n                right: '',\n                bottom: '',\n                left: ''\n              }\n            }\n          }\n        }\n      }\n    },\n    slideshow_slide_content_tab: {\n      innerContent: {\n        desktop: {\n          value: 'title'\n        }\n      }\n    },\n    slideshow_show_slide_title: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    slideshow_show_slide_description: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    slideshow_use_overlay: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    slideshow_slide_title_align_h: {\n      innerContent: {\n        desktop: {\n          value: 'center'\n        }\n      }\n    },\n    slideshow_slide_title_align_v: {\n      innerContent: {\n        desktop: {\n          value: 'center'\n        }\n      }\n    },\n    slideshow_title_animation: {\n      innerContent: {\n        desktop: {\n          value: 'fadeInUp'\n        }\n      }\n    },\n    slideshow_title_animation_duration: {\n      innerContent: {\n        desktop: {\n          value: '1000'\n        }\n      }\n    },\n    slideshow_title_animation_delay: {\n      innerContent: {\n        desktop: {\n          value: '0'\n        }\n      }\n    },\n    slideshow_title_animation_out: {\n      innerContent: {\n        desktop: {\n          value: 'fadeOutDown'\n        }\n      }\n    },\n    slideshow_title_animation_out_duration: {\n      innerContent: {\n        desktop: {\n          value: '1000'\n        }\n      }\n    },\n    slideshow_title_animation_out_delay: {\n      innerContent: {\n        desktop: {\n          value: '0'\n        }\n      }\n    },\n    slideshow_description_animation: {\n      innerContent: {\n        desktop: {\n          value: 'fadeInUp'\n        }\n      }\n    },\n    slideshow_description_animation_duration: {\n      innerContent: {\n        desktop: {\n          value: '1000'\n        }\n      }\n    },\n    slideshow_description_animation_delay: {\n      innerContent: {\n        desktop: {\n          value: '0'\n        }\n      }\n    },\n    slideshow_description_animation_out: {\n      innerContent: {\n        desktop: {\n          value: 'fadeOutDown'\n        }\n      }\n    },\n    slideshow_description_animation_out_duration: {\n      innerContent: {\n        desktop: {\n          value: '1000'\n        }\n      }\n    },\n    slideshow_description_animation_out_delay: {\n      innerContent: {\n        desktop: {\n          value: '0'\n        }\n      }\n    },\n    slideshow_wrapper_animation_in: {\n      innerContent: {\n        desktop: {\n          value: 'none'\n        }\n      }\n    },\n    slideshow_wrapper_animation_in_duration: {\n      innerContent: {\n        desktop: {\n          value: '1000'\n        }\n      }\n    },\n    slideshow_wrapper_animation_in_delay: {\n      innerContent: {\n        desktop: {\n          value: '0'\n        }\n      }\n    },\n    slideshow_wrapper_animation_out: {\n      innerContent: {\n        desktop: {\n          value: 'none'\n        }\n      }\n    },\n    slideshow_wrapper_animation_out_duration: {\n      innerContent: {\n        desktop: {\n          value: '1000'\n        }\n      }\n    },\n    slideshow_wrapper_animation_out_delay: {\n      innerContent: {\n        desktop: {\n          value: '0'\n        }\n      }\n    },\n    arrow_position: {\n      innerContent: {\n        desktop: {\n          value: 'outside'\n        },\n        tablet: {\n          value: 'outside'\n        },\n        phone: {\n          value: 'inside'\n        }\n      }\n    },\n    use_arrow_custom_position: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    arrow_horizontal_position: {\n      innerContent: {\n        desktop: {\n          value: '50%'\n        }\n      }\n    },\n    arrow_custom_position: {\n      innerContent: {\n        desktop: {\n          value: '-60px'\n        }\n      }\n    },\n    slider_effect_coverflow_rotate: {\n      innerContent: {\n        desktop: {\n          value: '30'\n        }\n      }\n    },\n    slider_orientation: {\n      innerContent: {\n        desktop: {\n          value: 'horizontal'\n        }\n      }\n    },\n    slider_container_height: {\n      innerContent: {\n        desktop: {\n          value: '500px'\n        }\n      }\n    },\n    navi_hori_position: {\n      innerContent: {\n        desktop: {\n          value: '50%'\n        }\n      }\n    },\n    thumbnail_design_tab: {\n      innerContent: {\n        desktop: {\n          value: 'inactive'\n        }\n      }\n    },\n    thumbnail_inactive_opacity: {\n      innerContent: {\n        desktop: {\n          value: '0.4'\n        },\n        tablet: {\n          value: '0.4'\n        },\n        phone: {\n          value: '0.4'\n        }\n      }\n    },\n    thumbnail_active_opacity: {\n      innerContent: {\n        desktop: {\n          value: '1'\n        },\n        tablet: {\n          value: '1'\n        },\n        phone: {\n          value: '1'\n        }\n      }\n    },\n    slideshow_overlay_style: {\n      decoration: {\n        background: {\n          desktop: {\n            value: {\n              color: 'rgba(0, 0, 0, 0.3)'\n            }\n          }\n        }\n      }\n    },\n    thumbs_padding: {\n      decoration: {\n        spacing: {\n          desktop: {\n            value: {\n              padding: {\n                top: '10px'\n              }\n            }\n          }\n        }\n      }\n    }\n  }\n};\n/* harmony default export */ const image_carousel = (imageCarouselModule);\n;// ./packages/module-library/card-carousel/module.json\nconst card_carousel_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/card-carousel\",\"d4Shortcode\":\"dsm_card_carousel\",\"title\":\"Supreme Card Carousel\",\"titles\":\"Supreme Card Carousel\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/card-carousel\",\"childrenName\":[\"dsm/card-carousel-child\"],\"childModuleName\":\"dsm/card-carousel-child\",\"childModuleTitle\":\"Supreme Card Carousel\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{},\"transition\":{}}},\"styleProps\":{\"spacing\":{\"selector\":\"{{selector}} .swiper-container\",\"important\":true},\"sizing\":{\"selector\":\"{{selector}} .swiper-container\"}}},\"slider_orientation\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"slider_container_height\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"slider_effect\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"slider_direction\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"centered_slides\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"slide_to_show\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"3\"},\"tablet\":{\"value\":\"2\"},\"phone\":{\"value\":\"1\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slide_to_scroll\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"1\"},\"tablet\":{\"value\":\"1\"},\"phone\":{\"value\":\"1\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"multiple_slide_row\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"slide_row\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"speed\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"autoplay\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"autoplay_speed\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"autoplay_viewport\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"pause_on_hover\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"mousewheel\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"space_between\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"infinite\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"infinite_smooth_scrolling\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"auto_height\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"equal_height\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"arrows\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"navi_hori_position\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"top_navi_ver_position\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"bottom_navi_ver_position\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dots\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dots_horizontal_placement\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dots_vertical_placement\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"pagi_vertical_placement\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dots_active_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPallette\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dots_inactive_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPallette\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"touch_move\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"grab\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"slider_effect_shadows\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"slider_effect_coverflow_rotate\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"slider_effect_coverflow_depth\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_alignment\":{\"type\":\"object\",\"inlineEditor\":\"ButtonGroupContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"stretch_image\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"imageStyle\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_card_carousel_child_image_wrapper .dsm_card_carousel_child_img, {{selector}} .dsm_card_carousel_child_image_wrapper img\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm_card_carousel_child_image_wrapper .dsm_card_carousel_child_img, {{selector}} .dsm_card_carousel_child_image_wrapper img\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm_card_carousel_child_image_wrapper .dsm_card_carousel_child_img, {{selector}} .dsm_card_carousel_child_image_wrapper img\",\"useOverlay\":true}}},\"title\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_card_title\",\"default\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"headingLevel\":\"h4\"}}}}}},\"attributes\":{\"class\":\"dsm_card_title et_pb_module_header\"},\"tagName\":\"h4\",\"inlineEditor\":\"plainText\",\"elementType\":\"headingLink\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm_card_title\",\"hover\":\"{{selector}}:hover .dsm_card_title\"}}}}},\"subtitle\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_card_carousel_child_subtitle\",\"inlineEditor\":\"plainText\",\"elementType\":\"headingLink\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm_card_carousel_child_subtitle\",\"hover\":\"{{selector}}:hover .dsm_card_carousel_child_subtitle\"}}}}},\"content\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_card_carousel_child_description\",\"inlineEditor\":\"richText\",\"styleProps\":{\"bodyFont\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm_card_carousel_child_description\",\"hover\":\"{{selector}}:hover .dsm_card_carousel_child_description\"}}}}},\"badge_position\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"badge_background_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPalette\",\"selector\":\"{{selector}} .dsm_card_carousel_child_badge_text\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"badge_show_on_hover\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"badge\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_card_carousel_child_badge_text\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"spacing\":{\"selector\":\"{{selector}} .dsm_card_carousel_child_badge_text\",\"important\":true},\"border\":{\"selector\":\"{{selector}} .dsm_card_carousel_child_badge_text\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm_card_carousel_child_badge_text\",\"useOverlay\":true}}},\"badgeFont\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_card_carousel_child_badge_text\",\"inlineEditor\":\"plainText\",\"styleProps\":{\"bodyFont\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm_card_carousel_child_badge_text\",\"hover\":\"{{selector}}:hover .dsm_card_carousel_child_badge_text\"}}}}},\"button\":{\"type\":\"object\",\"selector\":\"{{selector}} .et_pb_button_module_wrapper .et_pb_button\",\"default\":{\"decoration\":{\"button\":{\"desktop\":{\"value\":{\"enable\":\"off\",\"icon\":{\"enable\":\"on\",\"onHover\":\"on\"}}}},\"border\":{\"desktop\":{\"value\":{\"styles\":{\"all\":{\"color\":\"\"}}}}},\"font\":{\"font\":{\"desktop\":{\"value\":{\"color\":\"\"}}}}}},\"elementType\":\"button\",\"styleProps\":{\"font\":{\"important\":{\"font\":{\"desktop\":{\"value\":{\"color\":true,\"font-size\":true,\"letter-spacing\":true}}}}},\"spacing\":{\"important\":true},\"alignment\":{\"selector\":\"{{selector}} .et_pb_button_module_wrapper\"},\"sizing\":{\"selector\":\"{{selector}} .et_pb_button_module_wrapper\",\"propertySelectors\":{\"desktop\":{\"value\":{\"margin-left\":\"{{selector}} .et_pb_button_module_wrapper\",\"margin-right\":\"{{selector}} .et_pb_button_module_wrapper\"}},\"tablet\":{\"value\":{\"margin-left\":\"{{selector}} .et_pb_button_module_wrapper\",\"margin-right\":\"{{selector}} .et_pb_button_module_wrapper\"}},\"phone\":{\"value\":{\"margin-left\":\"{{selector}} .et_pb_button_module_wrapper\",\"margin-right\":\"{{selector}} .et_pb_button_module_wrapper\"}}}},\"button\":{\"propertySelectors\":{\"desktop\":{\"value\":{\"text-align\":\"{{selector}} .et_pb_button_module_wrapper\"}},\"tablet\":{\"value\":{\"text-align\":\"{{selector}} .et_pb_button_module_wrapper\"}},\"phone\":{\"value\":{\"text-align\":\"{{selector}} .et_pb_button_module_wrapper\"}}}}}},\"arrow_position\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"arrow_position_mobile\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_arrow_custom_position\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"arrow_custom_position\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"arrow_prev\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"arrow_prev_font_icon\":{\"type\":\"object\",\"inlineEditor\":\"selectIconPicker\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"arrow_next\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"arrow_next_font_icon\":{\"type\":\"object\",\"inlineEditor\":\"selectIconPicker\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"arrow_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"arrow_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPalette\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"arrow_background_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPalette\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"layout\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"layout_inline_image_width\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"layout_inline_order\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_horizontal_alignment\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"content_horizontal_alignment\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"arrowStyle\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_card_carousel_arrow\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm_card_carousel_arrow\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm_card_carousel_arrow\",\"useOverlay\":true}}},\"card\":{\"type\":\"object\",\"selector\":\"{{selector}} .swiper-slide.dsm_card_carousel_child\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .swiper-slide.dsm_card_carousel_child\"},\"boxShadow\":{\"selector\":\"{{selector}} .swiper-slide.dsm_card_carousel_child\",\"useOverlay\":true}}}}}');\n;// ./packages/module-library/card-carousel/settings-content.js\n\n// Wordpress dependencies.\n\n\n// Divi package dependencies.\n\n\n\n\n\n\nfunction card_carousel_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _getAttrByMode4, _getAttrByMode5, _getAttrByMode6;\n  const autoplayAttr = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.autoplay?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'on';\n  const useMultipleAttr = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.multiple_slide_row?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'off';\n  const sliderEffectAttr = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_effect?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'default';\n  const sliderOrientation = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_orientation?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : 'horizontal';\n  const touchMove = (_getAttrByMode5 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.touch_move?.innerContent)) !== null && _getAttrByMode5 !== void 0 ? _getAttrByMode5 : 'off';\n  const loop = (_getAttrByMode6 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.infinite?.innerContent)) !== null && _getAttrByMode6 !== void 0 ? _getAttrByMode6 : 'on';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(ChildDraggableModuleList, {\n    childModuleName: \"dsm/card-carousel-child\",\n    addTitle: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Add New Item', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"carousel_settings\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Carousel Settings', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"slider_orientation.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Carousel Orientation', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'horizontal'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      horizontal: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Horizontal', 'dsm-supreme-modules-pro-for-divi')\n      },\n      vertical: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Vertical', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"slider_container_height.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Height', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'vertical' === sliderOrientation,\n    defaultAttr: {\n      desktop: {\n        value: '500px'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 100,\n    max: 2000,\n    step: 10,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"slider_effect.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Carousel Effect', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'default'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      default: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide', 'dsm-supreme-modules-pro-for-divi')\n      },\n      coverflow: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Coverflow', 'dsm-supreme-modules-pro-for-divi')\n      },\n      flip: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Flip', 'dsm-supreme-modules-pro-for-divi')\n      },\n      cube: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Cube', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"slider_effect_shadows.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Shadow', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'default' !== sliderEffectAttr,\n    defaultAttr: {\n      desktop: {\n        value: 'off'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"slider_effect_coverflow_rotate.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Coverflow Rotate', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'coverflow' === sliderEffectAttr,\n    defaultAttr: {\n      desktop: {\n        value: '30'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 30,\n    max: 100,\n    defaultUnit: \"\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"slider_effect_coverflow_depth.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Coverflow Depth', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'coverflow' === sliderEffectAttr,\n    defaultAttr: {\n      desktop: {\n        value: '0'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 500,\n    defaultUnit: \"\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"slider_direction.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Carousel Direction', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'ltr'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      ltr: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left to Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rtl: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right to Left', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"centered_slides.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Centered Mode', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If enable, then active slide will be centered, not always on the left side.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'off'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"slide_to_show.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slides To Show', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: '3'\n      },\n      tablet: {\n        value: '2'\n      },\n      phone: {\n        value: '1'\n      }\n    },\n    features: {\n      responsive: true\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 9,\n    defaultUnit: \"\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"slide_to_scroll.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slides To Scroll', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: '1'\n      },\n      tablet: {\n        value: '1'\n      },\n      phone: {\n        value: '1'\n      }\n    },\n    features: {\n      responsive: true\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 9,\n    defaultUnit: \"\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"multiple_slide_row.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Multiple Row', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'off'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), 'on' === useMultipleAttr && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"slide_row.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Row Per Slide', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: '1'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 9,\n    defaultUnit: \"\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"speed.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slider Speed', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: '300'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 100,\n    max: 5000,\n    defaultUnit: \"\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"autoplay.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Autoplay', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'on'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), 'on' === autoplayAttr && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"autoplay_speed.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Autoplay Change Interval', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: '3000'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 100,\n    max: 5000,\n    defaultUnit: \"\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"autoplay_viewport.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Autoplay Only On Viewport', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: '80%'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: \"%\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"pause_on_hover.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pause on Hover', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'off'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"mousewheel.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Mouse Wheel', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'off'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"space_between.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Spacing', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: '15'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: \"\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"infinite.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Infinite looping', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'on'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"infinite_smooth_scrolling.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Infinite Smooth Scrolling', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === loop,\n    defaultAttr: {\n      desktop: {\n        value: 'off'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"auto_height.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Auto Height', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'on'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"equal_height.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Equalize Card Heights', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'off'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"arrows.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Arrow', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'on'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dots.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Pagination', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'on'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"touch_move.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Disable Touch/Dragging', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'off'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"grab.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Grab Cursor', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'off' === touchMove,\n    defaultAttr: {\n      desktop: {\n        value: 'on'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const card_carousel_settings_content = (card_carousel_settings_content_SettingsContent);\n;// ./packages/module-library/card-carousel/settings-design.js\n\n// Wordpress dependencies.\n\n// Divi package dependencies.\n\n\n\n\nfunction card_carousel_settings_design_SettingsDesign({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _defaultSettingsAttrs;\n  const useCustomPrevIcon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.arrow_prev?.innerContent);\n  const useCustomNextIcon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.arrow_next?.innerContent);\n  const useArrowCustomPosition = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_arrow_custom_position?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'off';\n  const sliderOrientation = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_orientation?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'horizontal';\n  const layout = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.layout?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'stacked';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"layout_alignment\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Layout & Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    preset: \"content\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"layout.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Layout', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    defaultAttr: {\n      desktop: {\n        value: 'stacked'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      stacked: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Stacked', 'dsm-supreme-modules-pro-for-divi')\n      },\n      inline: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inline', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"layout_inline_image_width.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Width', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    visible: 'inline' === layout,\n    defaultAttr: {\n      desktop: {\n        value: '50%'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 70,\n    step: 1,\n    defaultUnit: '%'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"layout_inline_order.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Order Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    visible: 'inline' === layout,\n    defaultAttr: {\n      desktop: {\n        value: 'left'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_horizontal_alignment.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Horizontal Image Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    visible: 'inline' === layout,\n    defaultAttr: {\n      desktop: {\n        value: 'center'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      top: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"content_horizontal_alignment.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Horizontal Content Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    visible: 'inline' === layout,\n    defaultAttr: {\n      desktop: {\n        value: 'center'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      'flex-start': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'flex-end': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"image\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_width.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Width', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    defaultAttr: {\n      desktop: {\n        value: '100%'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    step: 1,\n    defaultUnit: '%',\n    allowedUnits: ['%']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_alignment.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    defaultAttr: {\n      desktop: {\n        value: 'left'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"stretch_image.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Stretch Image', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('When enabled, slide images stretch to full width of the slide image area when using inline images.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'off'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    attrName: \"imageStyle.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    grouped: false,\n    attrName: \"imageStyle.decoration.boxShadow\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"badge\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Badge', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"badge_position.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Position', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', ''),\n    features: {\n      preset: 'content'\n    },\n    defaultAttr: {\n      desktop: {\n        value: 'top_right'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      top_left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      top_center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      top_right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center_left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center_right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom_left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom_center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom_right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Right', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"badge_background_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"badge.decoration.spacing\",\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"badge_show_on_hover.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Badge On Hover', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    defaultAttr: {\n      desktop: {\n        value: 'off'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontBodyGroup, {\n    grouped: false,\n    attrName: \"badgeFont.decoration.bodyFont\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Badge', 'dsm-supreme-modules-pro-for-divi'),\n    attrName: \"badge.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    grouped: false,\n    attrName: \"badge.decoration.boxShadow\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"arrow_element\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Arrow Element', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"navi_hori_position.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Arrow Horizontal Position', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    visible: 'vertical' === sliderOrientation,\n    defaultAttr: {\n      desktop: {\n        value: '50%'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    step: 1,\n    defaultUnit: '%',\n    allowedUnits: ['%']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"top_navi_ver_position.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top Arrow Position', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    visible: 'vertical' === sliderOrientation,\n    defaultAttr: {\n      desktop: {\n        value: ''\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: -100,\n    max: 100,\n    step: 1,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"bottom_navi_ver_position.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Arrow Position', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    visible: 'vertical' === sliderOrientation,\n    defaultAttr: {\n      desktop: {\n        value: ''\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: -100,\n    max: 100,\n    step: 1,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"arrow_position.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Arrow Position', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    features: {\n      preset: 'content'\n    },\n    defaultAttr: {\n      desktop: {\n        value: 'outside'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      inside: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inside', 'dsm-supreme-modules-pro-for-divi')\n      },\n      outside: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Outside', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"arrow_position_mobile.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Mobile Arrow Position', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    features: {\n      preset: 'content'\n    },\n    defaultAttr: {\n      desktop: {\n        value: 'inside'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      inside: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inside', 'dsm-supreme-modules-pro-for-divi')\n      },\n      outside: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Outside', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_arrow_custom_position.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Arrow Custom Position', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'horizontal' === sliderOrientation,\n    defaultAttr: {\n      desktop: {\n        value: 'off'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"arrow_custom_position.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Arrow Custom Position', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    visible: 'on' === useArrowCustomPosition && 'horizontal' === sliderOrientation,\n    defaultAttr: {\n      desktop: {\n        value: '-60px'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: -100,\n    max: 100,\n    step: 1,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"arrow_prev.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Custom Previous Arrow Icon', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    defaultAttr: {\n      desktop: {\n        value: 'off'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"arrow_prev_font_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Previous Arrow Icon', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useCustomPrevIcon\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"arrow_next.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Custom Next Arrow Icon', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    defaultAttr: {\n      desktop: {\n        value: 'off'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"arrow_next_font_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Next Arrow Icon', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useCustomNextIcon\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"arrow_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Arrow Size', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: '40px'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 60,\n    step: 1,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"arrow_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Arrow Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: '#666666'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"arrow_background_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Arrow Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: ''\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"arrowStyle.decoration.border\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Arrow', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"arrowStyle.decoration.boxShadow\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Arrow', 'dsm-supreme-modules-pro-for-divi')\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"pagination\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pagination Element', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dots_horizontal_placement.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pagination Horizontal Placement', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    defaultAttr: {\n      desktop: {\n        value: '-30px'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: -100,\n    max: 100,\n    defaultUnit: \"px\",\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dots_vertical_placement.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pagination Vertical Placement', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    visible: 'vertical' === sliderOrientation,\n    defaultAttr: {\n      desktop: {\n        value: '50%'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: \"%\",\n    allowedUnits: ['%']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dots_active_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pagination Active Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'rgba(0,0,0,0.75)'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dots_inactive_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pagination In-Active Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'rgba(0,0,0,0.2)'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"pagi_vertical_placement.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pagination Placement', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'vertical' === sliderOrientation,\n    defaultAttr: {\n      desktop: {\n        value: 'right'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"title.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title Text', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: true\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"subtitle.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Subhead Text', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Subhead', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontBodyGroup, {\n    attrName: \"content.decoration.bodyFont\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ButtonGroupContainer, {\n    attrName: \"button\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi'),\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi'),\n    defaultGroupAttr: (_defaultSettingsAttrs = defaultSettingsAttrs?.button?.decoration?.asMutable({\n      deep: true\n    })) !== null && _defaultSettingsAttrs !== void 0 ? _defaultSettingsAttrs : {},\n    fields: {\n      fontGroup: {\n        component: {\n          props: {\n            fields: {\n              lineHeight: {\n                render: true\n              },\n              textAlign: {\n                render: false\n              }\n            }\n          }\n        }\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"border\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Border', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"card.decoration.border\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Card', 'dsm-supreme-modules-pro-for-divi')\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const card_carousel_settings_design = (card_carousel_settings_design_SettingsDesign);\n;// ./packages/module-library/card-carousel/settings-advanced.js\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\nfunction card_carousel_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_card_carousel\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const card_carousel_settings_advanced = (card_carousel_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/card-carousel/module-styles.js\n\n\n\n\n\n\n\nconst arrowPrevFontCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'font-family': true\n    }\n  });\n  if (isDsmIcon(attrValue)) {\n    return '';\n  }\n  addNativeIconFontFamily(declarations, attrValue);\n  addNativeIconFontContent(declarations, attrValue);\n  return declarations.value;\n};\nconst arrowNextFontCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'font-family': true\n    }\n  });\n  if (isDsmIcon(attrValue)) {\n    return '';\n  }\n  addNativeIconFontFamily(declarations, attrValue);\n  addNativeIconFontContent(declarations, attrValue);\n  return declarations.value;\n};\nconst arrowNextPrevWidthHeightCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      width: true,\n      height: true\n    }\n  });\n  let value = parseFloat(attrValue) + 20;\n  declarations.add('width', `${value}px`);\n  declarations.add('height', `${value}px`);\n  return declarations.value;\n};\n\n/**\n * D4/PHP: outside left/right use -(arrow_size + 20) — same as button width.\n * Swiper 12+ bundle reads --swiper-navigation-size / --swiper-navigation-sides-offset on the module.\n *\n * @param {Object} attr Parsed style attr from CommonStyle.\n * @return {string} Declarations string.\n */\nconst swiperNavigationSizeVarCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const n = parseFloat(attrValue);\n  if (Number.isNaN(n)) {\n    return '';\n  }\n  const touch = n + 20;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string'\n  });\n  declarations.add('--swiper-navigation-size', `${touch}px`);\n  return declarations.value;\n};\n\n/**\n * D4 applies the same value to prev `left` and next `right`. Drive Swiper-aligned\n * `--swiper-navigation-sides-offset` on the module so common.scss `left`/`right`\n * (higher specificity than bare `left` on buttons) still receives the custom inset.\n *\n * @param {Object} attr Parsed style attr from CommonStyle.\n * @return {string} Declarations string.\n */\nconst arrowCustomSidesOffsetVarCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  if (attrValue === undefined || attrValue === null || '' === String(attrValue).trim()) {\n    return '';\n  }\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string'\n  });\n  declarations.add('--swiper-navigation-sides-offset', String(attrValue).trim());\n  return declarations.value;\n};\n\n/**\n * Non-empty attr so StyleWrapper prints; duration comes from Advanced → Transition.\n */\nconst DSM_DEFAULT_MODULE_TRANSITION_ATTR = {\n  desktop: {\n    value: {\n      duration: '300ms',\n      delay: '0ms',\n      speedCurve: 'ease'\n    }\n  }\n};\nconst getTransitionAttrForCommonStyle = transition => {\n  if (transition && typeof transition === 'object' && Object.keys(transition).length > 0) {\n    return transition;\n  }\n  return DSM_DEFAULT_MODULE_TRANSITION_ATTR;\n};\nconst normalizeTransitionTimeProperty = (value, defaultValue) => {\n  if (typeof value === 'number' && !Number.isNaN(value)) {\n    return `${Math.round(value)}ms`;\n  }\n  if (typeof value !== 'string') {\n    return defaultValue;\n  }\n  const t = value.trim();\n  if (t === '') {\n    return defaultValue;\n  }\n  if (/[a-z%]/i.test(t)) {\n    return t;\n  }\n  if (!Number.isNaN(Number(t)) && /^-?\\d*\\.?\\d+$/.test(t)) {\n    return `${Math.round(Number(t))}ms`;\n  }\n  return t;\n};\nconst readModuleTransitionLeafAtBreakpoint = (attrs, breakpoint) => {\n  const defaults = {\n    duration: '300ms',\n    delay: '0ms',\n    speedCurve: 'ease'\n  };\n  const trans = attrs?.module?.decoration?.transition;\n  if (!trans || typeof trans !== 'object') {\n    return defaults;\n  }\n  const order = [breakpoint, 'desktop', 'tablet', 'phone'].filter((v, i, a) => a.indexOf(v) === i);\n  for (let i = 0; i < order.length; i++) {\n    const bp = order[i];\n    const node = trans[bp];\n    if (!node || typeof node !== 'object' || !node.value || typeof node.value !== 'object') {\n      continue;\n    }\n    const leaf = node.value;\n    return {\n      duration: 'duration' in leaf && leaf.duration !== undefined ? normalizeTransitionTimeProperty(leaf.duration, defaults.duration) : defaults.duration,\n      delay: 'delay' in leaf && leaf.delay !== undefined ? normalizeTransitionTimeProperty(leaf.delay, defaults.delay) : defaults.delay,\n      speedCurve: typeof leaf.speedCurve === 'string' && leaf.speedCurve !== '' ? leaf.speedCurve : defaults.speedCurve\n    };\n  }\n  return defaults;\n};\nconst d4CardCarouselParentHoverTransitionDeclaration = (attrs, breakpoint) => {\n  const {\n    duration,\n    delay,\n    speedCurve\n  } = readModuleTransitionLeafAtBreakpoint(attrs, breakpoint);\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string'\n  });\n  const triple = `${duration} ${speedCurve} ${delay}`;\n  declarations.add('transition', `background ${triple}, box-shadow ${triple}, border ${triple}, padding ${triple}, border-radius ${triple}, transform ${triple}, color ${triple}`);\n  return declarations.value;\n};\nconst getCarouselResolvedLayout = (attrs, breakpoint) => {\n  var _attrs$layout$innerCo;\n  const inner = (_attrs$layout$innerCo = attrs?.layout?.innerContent) !== null && _attrs$layout$innerCo !== void 0 ? _attrs$layout$innerCo : {};\n  let desktop = typeof inner.desktop?.value === 'string' ? inner.desktop.value.trim() : '';\n  if (!desktop) {\n    desktop = 'stacked';\n  }\n  if ('desktop' === breakpoint) {\n    return desktop;\n  }\n  const tablet = typeof inner.tablet?.value === 'string' ? inner.tablet.value.trim() : '';\n  if ('tablet' === breakpoint) {\n    return tablet || desktop;\n  }\n  const phone = typeof inner.phone?.value === 'string' ? inner.phone.value.trim() : '';\n  if (phone) {\n    return phone;\n  }\n  if (tablet) {\n    return tablet;\n  }\n  return desktop;\n};\n\n/**\n * Matches CardCarousel.php inline image column selector at breakpoint.\n *\n * @param {Record<string, unknown>} attrs Module attrs.\n * @param {string} orderClass Order class.\n * @param {'desktop'|'tablet'|'phone'} breakpoint Breakpoint.\n * @return {string}\n */\nconst getCarouselInlineChildImageWrapperSelector = (attrs, orderClass, breakpoint) => {\n  var _attrs$layout$innerCo2;\n  if ('inline' !== getCarouselResolvedLayout(attrs, breakpoint)) {\n    return '';\n  }\n  const inner = (_attrs$layout$innerCo2 = attrs?.layout?.innerContent) !== null && _attrs$layout$innerCo2 !== void 0 ? _attrs$layout$innerCo2 : {};\n  const tabletRaw = typeof inner.tablet?.value === 'string' ? inner.tablet.value.trim() : '';\n  const phoneRaw = typeof inner.phone?.value === 'string' ? inner.phone.value.trim() : '';\n  const suffix = ' .dsm_card_carousel_child .dsm_card_carousel_child_image_wrapper';\n  if ('desktop' === breakpoint) {\n    return `${orderClass}.dsm_card_carousel_layout_inline${suffix}`;\n  }\n  if ('tablet' === breakpoint) {\n    return tabletRaw !== '' ? `${orderClass}.dsm_card_carousel_layout_tablet_inline${suffix}` : `${orderClass}.dsm_card_carousel_layout_inline${suffix}`;\n  }\n  if (phoneRaw !== '') {\n    return `${orderClass}.dsm_card_carousel_layout_phone_inline${suffix}`;\n  }\n  if (tabletRaw !== '') {\n    return `${orderClass}.dsm_card_carousel_layout_tablet_inline${suffix}`;\n  }\n  return `${orderClass}.dsm_card_carousel_layout_inline${suffix}`;\n};\n\n/**\n * Slide content wrapper for inline vertical alignment (matches PHP).\n *\n * @param {Record<string, unknown>} attrs Module attrs.\n * @param {string} orderClass Order class.\n * @param {'desktop'|'tablet'|'phone'} breakpoint Breakpoint.\n * @return {string}\n */\nconst getCarouselInlineChildWrapperSelector = (attrs, orderClass, breakpoint) => {\n  const img = getCarouselInlineChildImageWrapperSelector(attrs, orderClass, breakpoint);\n  if (!img) {\n    return '';\n  }\n  return img.replace(' .dsm_card_carousel_child_image_wrapper', ' .dsm_card_wrapper');\n};\nconst noopCarouselSelector = orderClass => `${orderClass}.dsm_card_carousel_never_selector`;\n\n/**\n * React function component for rendering module style.\n */\nconst card_carousel_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  var _getAttrByMode;\n  const useArrowCustomPosition = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_arrow_custom_position?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'off';\n  const noop = noopCarouselSelector(orderClass);\n  const carouselInlineImageSelectors = {\n    desktop: {\n      value: getCarouselInlineChildImageWrapperSelector(attrs, orderClass, 'desktop') || noop\n    },\n    tablet: {\n      value: getCarouselInlineChildImageWrapperSelector(attrs, orderClass, 'tablet') || noop\n    },\n    phone: {\n      value: getCarouselInlineChildImageWrapperSelector(attrs, orderClass, 'phone') || noop\n    }\n  };\n  const carouselInlineWrapperSelectors = {\n    desktop: {\n      value: getCarouselInlineChildWrapperSelector(attrs, orderClass, 'desktop') || noop\n    },\n    tablet: {\n      value: getCarouselInlineChildWrapperSelector(attrs, orderClass, 'tablet') || noop\n    },\n    phone: {\n      value: getCarouselInlineChildWrapperSelector(attrs, orderClass, 'phone') || noop\n    }\n  };\n  const buttonAlignAttr = dsmButtonDecorationAlignmentAsInnerContent(attrs?.button?.decoration?.button);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_card_carousel_child > div:first-of-type, ${orderClass} .dsm_card_carousel_arrow, ${orderClass} .dsm_card_carousel_child_badge_text, ${orderClass} .dsm_card_carousel_child_image_background`,\n    attr: getTransitionAttrForCommonStyle(attrs?.module?.decoration?.transition),\n    declarationFunction: () => {\n      const bp = 'tablet' === mode ? 'tablet' : 'phone' === mode ? 'phone' : 'desktop';\n      return d4CardCarouselParentHoverTransitionDeclaration(attrs, bp);\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: orderClass,\n    attr: attrs?.arrow_size?.innerContent,\n    declarationFunction: swiperNavigationSizeVarCss\n  }), elements.style({\n    attrName: 'title'\n  }), elements.style({\n    attrName: 'subtitle'\n  }), elements.style({\n    attrName: 'content'\n  }), elements.style({\n    attrName: 'badgeFont'\n  }), elements.style({\n    attrName: 'badge'\n  }), elements.style({\n    attrName: 'button'\n  }), buttonAlignAttr ? /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et_pb_button_module_wrapper`,\n    attr: buttonAlignAttr,\n    declarationFunction: dsmButtonWrapperAlignDeclaration\n  }) : null, elements.style({\n    attrName: 'imageStyle'\n  }), elements.style({\n    attrName: 'arrowStyle'\n  }), elements.style({\n    attrName: 'card'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextStyle, {\n    selector: [`${orderClass} .dsm_card_wrapper`].join(', '),\n    attr: {\n      ...attrs?.module?.advanced?.text\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_card_carousel_child_badge_text`,\n    attr: attrs?.badge_background_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .swiper-button-prev::before`,\n    attr: attrs?.arrow_prev_font_icon?.innerContent,\n    declarationFunction: arrowPrevFontCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .swiper-button-next::before`,\n    attr: attrs?.arrow_next_font_icon?.innerContent,\n    declarationFunction: arrowNextFontCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .swiper-button-prev, ${orderClass} .swiper-button-next, ${orderClass} .dsm-carousel-nav-icon-overlay`,\n    attr: attrs?.arrow_size?.innerContent,\n    declarationFunction: arrowNextPrevWidthHeightCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .swiper-container.swiper-vertical`,\n    attr: attrs?.slider_container_height?.innerContent,\n    property: \"height\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .swiper-button-prev, ${orderClass} .swiper-button-next, ${orderClass} .dsm-carousel-nav-icon-overlay`,\n    attr: attrs?.arrow_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .swiper-button-prev, ${orderClass} .swiper-button-next, ${orderClass} .dsm-carousel-nav-icon-overlay`,\n    attr: attrs?.arrow_background_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .swiper-button-prev::before, ${orderClass} .swiper-button-next::before, ${orderClass} .dsm-carousel-nav-icon-overlay`,\n    attr: attrs?.arrow_size?.innerContent,\n    property: \"font-size\"\n  }), 'on' === useArrowCustomPosition && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: orderClass,\n    attr: attrs?.arrow_custom_position?.innerContent,\n    declarationFunction: arrowCustomSidesOffsetVarCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm_card_carousel_slider_horizontal .dsm_card_carousel_pagination.swiper-pagination-bullets`,\n    attr: attrs?.dots_horizontal_placement?.innerContent,\n    property: \"bottom\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_card_carousel_pagination .swiper-pagination-bullet.swiper-pagination-bullet-active`,\n    attr: attrs?.dots_active_color?.innerContent,\n    property: \"background\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_card_carousel_pagination .swiper-pagination-bullet`,\n    attr: attrs?.dots_inactive_color?.innerContent,\n    property: \"background\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_card_carousel_child_img, ${orderClass} .dsm_card_carousel_child_image_wrapper img`,\n    attr: attrs?.image_width?.innerContent,\n    property: \"max-width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm_card_carousel_slider_vertical .swiper-button-next, ${orderClass}.dsm_card_carousel_slider_vertical .swiper-button-prev`,\n    attr: attrs?.navi_hori_position?.innerContent,\n    property: \"left\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm_card_carousel_slider_vertical .swiper-button-prev`,\n    attr: attrs?.top_navi_ver_position?.innerContent,\n    property: \"top\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm_card_carousel_slider_vertical .swiper-button-next`,\n    attr: attrs?.bottom_navi_ver_position?.innerContent,\n    property: \"bottom\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_card_carousel_child_image_wrapper`,\n    attr: attrs?.image_alignment?.innerContent,\n    declarationFunction: attrValue => {\n      const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n        returnType: 'string'\n      });\n      let justifyValue = '';\n      switch (attrValue.attrValue) {\n        case 'left':\n          justifyValue = 'flex-start';\n          break;\n        case 'center':\n          justifyValue = 'center';\n          break;\n        case 'right':\n          justifyValue = 'flex-end';\n          break;\n      }\n      declarations.add('display', `flex`);\n      declarations.add('justify-content', justifyValue);\n      return declarations.value;\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm_card_carousel_slider_vertical.dsm_pagi_placement_right .swiper-pagination-bullets`,\n    attr: attrs?.dots_horizontal_placement?.innerContent,\n    property: \"right\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm_card_carousel_slider_vertical.dsm_pagi_placement_left .swiper-pagination-bullets`,\n    attr: attrs?.dots_horizontal_placement?.innerContent,\n    property: \"left\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm_card_carousel_slider_vertical .swiper-pagination-bullets`,\n    attr: attrs?.dots_vertical_placement?.innerContent,\n    property: \"top\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_card_carousel_child .dsm_card_wrapper`,\n    attr: attrs?.content_horizontal_alignment?.innerContent,\n    property: \"justify-content\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: noop,\n    selectors: carouselInlineImageSelectors,\n    orderClass: orderClass,\n    attr: attrs?.layout_inline_image_width?.innerContent,\n    declarationFunction: params => {\n      const bp = params?.breakpoint || 'desktop';\n      if ('inline' !== getCarouselResolvedLayout(attrs, bp)) {\n        return '';\n      }\n      const {\n        attrValue\n      } = params;\n      const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n        returnType: 'string',\n        important: {\n          flex: true\n        }\n      });\n      declarations.add('flex', `0 0 ${attrValue}`);\n      return declarations.value;\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: noop,\n    selectors: carouselInlineImageSelectors,\n    orderClass: orderClass,\n    attr: attrs?.layout_inline_order?.innerContent,\n    declarationFunction: params => {\n      const bp = params?.breakpoint || 'desktop';\n      if ('inline' !== getCarouselResolvedLayout(attrs, bp)) {\n        return '';\n      }\n      const {\n        attrValue\n      } = params;\n      const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n        returnType: 'string',\n        important: {\n          order: true\n        }\n      });\n      const isLeftImageOrder = attrValue === 'left' ? '0' : '1';\n      declarations.add('order', isLeftImageOrder);\n      return declarations.value;\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: noop,\n    selectors: carouselInlineImageSelectors,\n    orderClass: orderClass,\n    attr: attrs?.image_horizontal_alignment?.innerContent,\n    declarationFunction: params => {\n      const bp = params?.breakpoint || 'desktop';\n      if ('inline' !== getCarouselResolvedLayout(attrs, bp)) {\n        return '';\n      }\n      const {\n        attrValue\n      } = params;\n      const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n        returnType: 'string',\n        important: {\n          margin: true\n        }\n      });\n      if ('top' === attrValue) {\n        declarations.add('margin-bottom', `auto`);\n      }\n      if ('center' === attrValue) {\n        declarations.add('margin-top', `auto`);\n        declarations.add('margin-bottom', `auto`);\n      }\n      if ('bottom' === attrValue) {\n        declarations.add('margin-top', `auto`);\n      }\n      return declarations.value;\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: noop,\n    selectors: carouselInlineWrapperSelectors,\n    orderClass: orderClass,\n    attr: attrs?.content_horizontal_alignment?.innerContent,\n    declarationFunction: params => {\n      const bp = params?.breakpoint || 'desktop';\n      if ('inline' !== getCarouselResolvedLayout(attrs, bp)) {\n        return '';\n      }\n      const {\n        attrValue\n      } = params;\n      const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n        returnType: 'string',\n        important: {\n          margin: true\n        }\n      });\n      if ('flex-start' === attrValue) {\n        declarations.add('margin-bottom', `auto`);\n      }\n      if ('center' === attrValue) {\n        declarations.add('margin-top', `auto`);\n        declarations.add('margin-bottom', `auto`);\n      }\n      if ('flex-end' === attrValue) {\n        declarations.add('margin-top', `auto`);\n      }\n      return declarations.value;\n    }\n  }));\n};\n;// ./packages/module-library/card-carousel/edit.js\n\n\n// Divi package dependencies.\n\n\n// Custom dependencies.\n\n\n\n\n\n/**\n * React function component for registering module script data.\n */\n\nconst card_carousel_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction card_carousel_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements,\n  childrenIds\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _getAttrByMode4, _getAttrByMode5, _getAttrByMode6, _getAttrByMode7, _getAttrByMode8, _getAttrByMode9, _getAttrByMode0, _getAttrByMode1, _getAttrByMode10, _getAttrByMode11, _getAttrByMode12, _getAttrByMode13, _getAttrByMode14, _getAttrByMode15, _getAttrByMode16, _getAttrByMode17, _getAttrByMode18, _getAttrByMode19, _getAttrByMode20, _getAttrByMode21, _getAttrByMode22, _getAttrByMode23, _getAttrByMode24, _getAttrByMode25, _getAttrByMode26, _getAttrByMode27, _getAttrByMode28, _getAttrByMode29, _attrs$module$advance;\n  const swiperRef = (0,external_vendor_React_.useRef)(null);\n  const navigationNextRef = (0,external_vendor_React_.useRef)(null);\n  const navigationPrevRef = (0,external_vendor_React_.useRef)(null);\n  const paginationRef = (0,external_vendor_React_.useRef)(null);\n  const useArrows = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.arrows?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'on';\n  const usePagination = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dots?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'on';\n  const sliderDirection = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_direction?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'ltr';\n  const sliderEffect = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_effect?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : 'default';\n  const sliderOrientation = (_getAttrByMode5 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_orientation?.innerContent)) !== null && _getAttrByMode5 !== void 0 ? _getAttrByMode5 : 'horizontal';\n  // Visual Builder: follow Divi responsive tab (getAttrByMode). Swiper breakpoints\n  // use window width, which stays large in the builder, so they never match phone/tablet.\n  const slide_to_show_current = (_getAttrByMode6 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slide_to_show?.innerContent)) !== null && _getAttrByMode6 !== void 0 ? _getAttrByMode6 : '3';\n  const speed = (_getAttrByMode7 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.speed?.innerContent)) !== null && _getAttrByMode7 !== void 0 ? _getAttrByMode7 : '300';\n  const multiple_slide_row = (_getAttrByMode8 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.multiple_slide_row?.innerContent)) !== null && _getAttrByMode8 !== void 0 ? _getAttrByMode8 : 'off';\n  const loop = (_getAttrByMode9 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.infinite?.innerContent)) !== null && _getAttrByMode9 !== void 0 ? _getAttrByMode9 : 'on';\n  const space_between = (_getAttrByMode0 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.space_between?.innerContent)) !== null && _getAttrByMode0 !== void 0 ? _getAttrByMode0 : '15';\n  const centered_slides = (_getAttrByMode1 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.centered_slides?.innerContent)) !== null && _getAttrByMode1 !== void 0 ? _getAttrByMode1 : 'off';\n  const autoplay = (_getAttrByMode10 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.autoplay?.innerContent)) !== null && _getAttrByMode10 !== void 0 ? _getAttrByMode10 : 'on';\n  const autoplay_speed = (_getAttrByMode11 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.autoplay_speed?.innerContent)) !== null && _getAttrByMode11 !== void 0 ? _getAttrByMode11 : '3000';\n  const touch_move = (_getAttrByMode12 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.touch_move?.innerContent)) !== null && _getAttrByMode12 !== void 0 ? _getAttrByMode12 : 'off';\n  const grab = (_getAttrByMode13 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.grab?.innerContent)) !== null && _getAttrByMode13 !== void 0 ? _getAttrByMode13 : 'on';\n  const pause_on_hover = (_getAttrByMode14 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.pause_on_hover?.innerContent)) !== null && _getAttrByMode14 !== void 0 ? _getAttrByMode14 : 'off';\n  const mousewheel = (_getAttrByMode15 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.mousewheel?.innerContent)) !== null && _getAttrByMode15 !== void 0 ? _getAttrByMode15 : 'off';\n  const auto_height = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.auto_height?.innerContent);\n  const slide_to_scroll_current = (_getAttrByMode16 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slide_to_scroll?.innerContent)) !== null && _getAttrByMode16 !== void 0 ? _getAttrByMode16 : '1';\n  const slide_row = (_getAttrByMode17 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slide_row?.innerContent)) !== null && _getAttrByMode17 !== void 0 ? _getAttrByMode17 : '1';\n  const slider_effect_shadows = (_getAttrByMode18 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_effect_shadows?.innerContent)) !== null && _getAttrByMode18 !== void 0 ? _getAttrByMode18 : 'off';\n  const slider_effect_coverflow_rotate = (_getAttrByMode19 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_effect_coverflow_rotate?.innerContent)) !== null && _getAttrByMode19 !== void 0 ? _getAttrByMode19 : '30';\n  const slider_effect_coverflow_depth = (_getAttrByMode20 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_effect_coverflow_depth?.innerContent)) !== null && _getAttrByMode20 !== void 0 ? _getAttrByMode20 : '0';\n  const infinite_smooth_scrolling = (_getAttrByMode21 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.infinite_smooth_scrolling?.innerContent)) !== null && _getAttrByMode21 !== void 0 ? _getAttrByMode21 : 'off';\n  const autoplay_viewport = (_getAttrByMode22 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.autoplay_viewport?.innerContent)) !== null && _getAttrByMode22 !== void 0 ? _getAttrByMode22 : '80%';\n  const badge_show_on_hover = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.badge_show_on_hover?.innerContent);\n  const arrows = (_getAttrByMode23 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.arrows?.innerContent)) !== null && _getAttrByMode23 !== void 0 ? _getAttrByMode23 : 'on';\n  const arrowPrevIcon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.arrow_prev_font_icon?.innerContent);\n  const arrowNextIcon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.arrow_next_font_icon?.innerContent);\n  const useCustomPrevIcon = (_getAttrByMode24 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.arrow_prev?.innerContent)) !== null && _getAttrByMode24 !== void 0 ? _getAttrByMode24 : 'off';\n  const useCustomNextIcon = (_getAttrByMode25 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.arrow_next?.innerContent)) !== null && _getAttrByMode25 !== void 0 ? _getAttrByMode25 : 'off';\n  const arrowPosition = (_getAttrByMode26 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.arrow_position?.innerContent)) !== null && _getAttrByMode26 !== void 0 ? _getAttrByMode26 : 'outside';\n  const useArrowCustomPosition = (_getAttrByMode27 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_arrow_custom_position?.innerContent)) !== null && _getAttrByMode27 !== void 0 ? _getAttrByMode27 : 'off';\n  const layout = (_getAttrByMode28 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.layout?.innerContent)) !== null && _getAttrByMode28 !== void 0 ? _getAttrByMode28 : 'stacked';\n  const layoutTablet = attrs?.layout?.innerContent?.tablet?.value;\n  const layoutPhone = attrs?.layout?.innerContent?.phone?.value;\n  const pagi_vertical_placement = (_getAttrByMode29 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.pagi_vertical_placement?.innerContent)) !== null && _getAttrByMode29 !== void 0 ? _getAttrByMode29 : 'right';\n  const equal_height = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.equal_height?.innerContent);\n\n  /*\n   * Match assets/js/card-carousel.js + D4: when Equal Height is on, Swiper autoHeight\n   * must be false so all slides match the tallest slide. When Equal Height is off,\n   * honor the Auto Slide Height setting.\n   */\n  const swiperAutoHeight = 'on' === multiple_slide_row ? false : 'on' === equal_height ? false : 'on' === auto_height;\n  const isLoop = 'on' === loop ? true : false;\n  const isTouchMove = 'on' === touch_move ? false : true;\n  const textColor = (_attrs$module$advance = attrs?.module?.advanced?.text?.text?.desktop?.value?.color) !== null && _attrs$module$advance !== void 0 ? _attrs$module$advance : '';\n  const showCarouselChrome = 'off' === infinite_smooth_scrolling;\n  const showPaginationEl = showCarouselChrome && usePagination === 'on';\n  const showNavigationEl = showCarouselChrome && useArrows === 'on';\n  const refreshKey = [useArrows, usePagination, sliderDirection, sliderEffect, sliderOrientation, slide_to_show_current, speed, multiple_slide_row, loop, space_between, centered_slides, autoplay, autoplay_speed, touch_move, grab, pause_on_hover, mousewheel, auto_height, equal_height, slide_to_scroll_current, slide_row, slider_effect_shadows, slider_effect_coverflow_rotate, slider_effect_coverflow_depth, infinite_smooth_scrolling, autoplay_viewport, childrenIds.join(',')];\n  (0,external_vendor_React_.useEffect)(() => {\n    if (!swiperRef.current) {\n      return;\n    }\n    let swiperInstance = null;\n    const cancelWait = whenSwiperConstructorReady(SwiperCtor => {\n      if (!swiperRef.current) {\n        return;\n      }\n      const swiperParams = {\n        ...getDsmCarouselVbSwiperObserverOptions(),\n        direction: sliderOrientation,\n        effect: sliderEffect,\n        coverflowEffect: {\n          slideShadows: 'off' !== slider_effect_shadows ? true : false,\n          rotate: slider_effect_coverflow_rotate,\n          depth: slider_effect_coverflow_depth\n        },\n        flipEffect: {\n          rotate: 30,\n          slideShadows: slider_effect_shadows\n        },\n        cubeEffect: {\n          slideShadows: slider_effect_shadows,\n          shadow: slider_effect_shadows,\n          shadowOffset: 20,\n          shadowScale: 0.94\n        },\n        centeredSlides: 'on' === centered_slides ? true : false,\n        speed: Number(speed),\n        loop: isLoop,\n        watchOverflow: true,\n        mousewheel: 'on' === mousewheel ? true : false,\n        autoplay: {\n          enabled: 'off' !== autoplay ? true : false,\n          delay: 'on' === infinite_smooth_scrolling ? 1 : Number(autoplay_speed),\n          disableOnInteraction: false\n        },\n        grabCursor: false === isTouchMove ? false : grab,\n        preloadImages: false,\n        lazy: {\n          loadPrevNext: true\n        },\n        allowTouchMove: isTouchMove,\n        a11y: {\n          enabled: false,\n          slideRole: 'group'\n        },\n        slidesPerView: 'cube' === sliderEffect || 'flip' === sliderEffect ? 1 : Number(slide_to_show_current),\n        slidesPerGroup: Number(slide_to_scroll_current),\n        spaceBetween: Number(space_between),\n        grid: {\n          rows: Number(slide_row),\n          fill: 'row'\n        },\n        autoHeight: swiperAutoHeight,\n        on: {\n          init: function () {\n            if (pause_on_hover === 'on') {\n              swiperRef.current.addEventListener('mouseenter', () => this.autoplay.stop());\n              swiperRef.current.addEventListener('mouseleave', () => this.autoplay.start());\n            }\n          }\n        }\n      };\n      if (showPaginationEl && paginationRef.current) {\n        swiperParams.pagination = {\n          el: paginationRef.current,\n          type: 'bullets',\n          clickable: true\n        };\n      }\n      if (showNavigationEl && navigationPrevRef.current && navigationNextRef.current) {\n        swiperParams.navigation = {\n          nextEl: navigationNextRef.current,\n          prevEl: navigationPrevRef.current\n        };\n      }\n      swiperInstance = new SwiperCtor(swiperRef.current, swiperParams);\n      scheduleDsmCarouselSwiperLayoutRefresh(swiperInstance);\n    });\n    return () => {\n      cancelWait();\n      if (swiperInstance) {\n        swiperInstance.destroy();\n      }\n    };\n  }, refreshKey);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    moduleClassName: \"dsm-divisupreme_container\",\n    name: name,\n    scriptDataComponent: card_carousel_edit_ModuleScriptData,\n    stylesComponent: card_carousel_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n      params.classnamesInstance.add(`dsm_card_carousel_arrow_${arrowPosition}`);\n      if ('on' === useArrowCustomPosition) {\n        params.classnamesInstance.add('dsm_card_carousel_use_arrow_custom_position');\n      }\n      params.classnamesInstance.add(`dsm_card_carousel_slider_${sliderOrientation}`);\n      params.classnamesInstance.add(`dsm_card_carousel_layout_${layout}`);\n      if (layoutTablet && 'string' === typeof layoutTablet && '' !== layoutTablet.trim()) {\n        params.classnamesInstance.add(`dsm_card_carousel_layout_tablet_${layoutTablet.trim()}`);\n      }\n      if (layoutPhone && 'string' === typeof layoutPhone && '' !== layoutPhone.trim()) {\n        params.classnamesInstance.add(`dsm_card_carousel_layout_phone_${layoutPhone.trim()}`);\n      }\n      if ('on' === badge_show_on_hover) {\n        params.classnamesInstance.add('dsm_card_carousel_badge_hover');\n      }\n      if ('vertical' === sliderOrientation) {\n        params.classnamesInstance.add(`dsm_pagi_placement_${pagi_vertical_placement}`);\n      }\n      if ('on' === equal_height) {\n        params.classnamesInstance.add('dsm_card_carousel_equal_height');\n      }\n      if ('on' === infinite_smooth_scrolling) {\n        params.classnamesInstance.add('dsm_card_carousel_infinite_scroll');\n      }\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: `swiper-container dsm_card_carousel_wrapper dsm_card_carousel_container et_pb_bg_layout_${textColor}`,\n    \"data-effect\": sliderEffect,\n    dir: sliderDirection,\n    ref: swiperRef\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"swiper-wrapper\"\n  }, childrenIds.map(childrenId => {\n    return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ChildModulesContainer, {\n      ids: [childrenId]\n    });\n  }))), 'off' === infinite_smooth_scrolling && useArrows === 'on' && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(CarouselNavWithDsmIcon, {\n    direction: \"prev\",\n    className: \"dsm_card_carousel_arrow\",\n    buttonRef: navigationPrevRef,\n    icon: arrowPrevIcon,\n    useCustomIcon: useCustomPrevIcon\n  }), /*#__PURE__*/external_vendor_React_default().createElement(CarouselNavWithDsmIcon, {\n    direction: \"next\",\n    className: \"dsm_card_carousel_arrow\",\n    buttonRef: navigationNextRef,\n    icon: arrowNextIcon,\n    useCustomIcon: useCustomNextIcon\n  })), 'off' === infinite_smooth_scrolling && usePagination === 'on' && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"swiper-pagination dsm_card_carousel_pagination\",\n    ref: paginationRef\n  }));\n}\n/* harmony default export */ const card_carousel_edit = (card_carousel_edit_Edit);\n;// ./packages/module-library/card-carousel/conversion-outline.js\n\n\nconst card_carousel_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    display_conditions: 'module.decoration.conditions',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    margin_padding: 'module.decoration.spacing',\n    max_width: 'module.decoration.sizing',\n    height: 'module.decoration.sizing',\n    borders: {\n      default: 'module.decoration.border',\n      image: 'imageStyle.decoration.border',\n      arrow: 'arrowStyle.decoration.border',\n      badge: 'badge.decoration.border',\n      card: 'card.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow',\n      card: 'card.decoration.boxShadow',\n      badge: 'badge.decoration.boxShadow',\n      image: 'imageStyle.decoration.boxShadow',\n      arrow: 'arrowStyle.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    text_shadow: {\n      default: 'module.advanced.text.textShadow'\n    },\n    text: 'module.advanced.text',\n    button: {\n      button: 'button'\n    },\n    fonts: {\n      badge: 'badge.decoration.font',\n      header: 'title.decoration.font',\n      body: 'content.decoration.font',\n      subhead: 'subtitle.decoration.font'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    header_level: 'title.decoration.font.font.*.headingLevel',\n    slider_orientation: 'slider_orientation.innerContent.*',\n    slider_container_height: 'slider_container_height.innerContent.*',\n    slider_effect: 'slider_effect.innerContent.*',\n    slider_direction: 'slider_direction.innerContent.*',\n    centered_slides: 'centered_slides.innerContent.*',\n    slide_to_show: 'slide_to_show.innerContent.*',\n    slide_to_scroll: 'slide_to_scroll.innerContent.*',\n    multiple_slide_row: 'multiple_slide_row.innerContent.*',\n    slide_row: 'slide_row.innerContent.*',\n    speed: 'speed.innerContent.*',\n    autoplay: 'autoplay.innerContent.*',\n    autoplay_speed: 'autoplay_speed.innerContent.*',\n    autoplay_viewport: 'autoplay_viewport.innerContent.*',\n    pause_on_hover: 'pause_on_hover.innerContent.*',\n    mousewheel: 'mousewheel.innerContent.*',\n    space_between: 'space_between.innerContent.*',\n    infinite: 'infinite.innerContent.*',\n    infinite_smooth_scrolling: 'infinite_smooth_scrolling.innerContent.*',\n    auto_height: 'auto_height.innerContent.*',\n    equal_height: 'equal_height.innerContent.*',\n    button_vertical_alignment_on_off: 'button_vertical_alignment_on_off.innerContent.*',\n    button_vertical_alignment: 'button_vertical_alignment.innerContent.*',\n    arrows: 'arrows.innerContent.*',\n    navi_hori_position: 'navi_hori_position.innerContent.*',\n    top_navi_ver_position: 'top_navi_ver_position.innerContent.*',\n    bottom_navi_ver_position: 'bottom_navi_ver_position.innerContent.*',\n    dots: 'dots.innerContent.*',\n    dots_horizontal_placement: 'dots_horizontal_placement.innerContent.*',\n    dots_vertical_placement: 'dots_vertical_placement.innerContent.*',\n    pagi_vertical_placement: 'pagi_vertical_placement.innerContent.*',\n    dots_active_color: 'dots_active_color.innerContent.*',\n    dots_inactive_color: 'dots_inactive_color.innerContent.*',\n    touch_move: 'touch_move.innerContent.*',\n    grab: 'grab.innerContent.*',\n    slider_effect_shadows: 'slider_effect_shadows.innerContent.*',\n    slider_effect_coverflow_rotate: 'slider_effect_coverflow_rotate.innerContent.*',\n    slider_effect_coverflow_depth: 'slider_effect_coverflow_depth.innerContent.*',\n    image_width: 'image_width.innerContent.*',\n    image_alignment: 'image_alignment.innerContent.*',\n    stretch_image: 'stretch_image.innerContent.*',\n    badge_position: 'badge_position.innerContent.*',\n    badge_background_color: 'badge_background_color.innerContent.*',\n    badge_show_on_hover: 'badge_show_on_hover.innerContent.*',\n    arrow_position: 'arrow_position.innerContent.*',\n    arrow_position_mobile: 'arrow_position_mobile.innerContent.*',\n    use_arrow_custom_position: 'use_arrow_custom_position.innerContent.*',\n    arrow_custom_position: 'arrow_custom_position.innerContent.*',\n    arrow_prev: 'arrow_prev.innerContent.*',\n    arrow_prev_font_icon: 'arrow_prev_font_icon.innerContent.*',\n    arrow_next: 'arrow_next.innerContent.*',\n    arrow_next_font_icon: 'arrow_next_font_icon.innerContent.*',\n    arrow_size: 'arrow_size.innerContent.*',\n    arrow_color: 'arrow_color.innerContent.*',\n    arrow_background_color: 'arrow_background_color.innerContent.*',\n    layout: 'layout.innerContent.*',\n    layout_inline_image_width: 'layout_inline_image_width.innerContent.*',\n    layout_inline_order: 'layout_inline_order.innerContent.*',\n    image_horizontal_alignment: 'image_horizontal_alignment.innerContent.*',\n    content_horizontal_alignment: 'content_horizontal_alignment.innerContent.*',\n    // D4 Content-tab button toggle + icon (parent carousel button element).\n    custom_button: 'button.decoration.button.*.enable',\n    button_use_icon: 'button.decoration.button.*.icon.enable',\n    button_icon: 'button.decoration.button.*.icon.settings',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*',\n    badge_padding: 'badge.decoration.spacing.*.padding'\n  },\n  valueExpansionFunctionMap: {\n    arrow_prev_font_icon: external_divi_conversion_namespaceObject.convertFontIcon,\n    arrow_next_font_icon: external_divi_conversion_namespaceObject.convertFontIcon,\n    badge_padding: external_divi_module_namespaceObject.convertSpacing,\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/card-carousel/module-default-render-attributes.json\nconst card_carousel_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"title\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"headingLevel\":\"h4\"}}}}}},\"layout\":{\"innerContent\":{\"desktop\":{\"value\":\"stacked\"}}},\"slider_orientation\":{\"innerContent\":{\"desktop\":{\"value\":\"horizontal\"}}},\"slider_container_height\":{\"innerContent\":{\"desktop\":{\"value\":\"500px\"}}},\"slider_effect\":{\"innerContent\":{\"desktop\":{\"value\":\"default\"}}},\"slider_effect_shadows\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"slider_effect_coverflow_rotate\":{\"innerContent\":{\"desktop\":{\"value\":\"30\"}}},\"slider_effect_coverflow_depth\":{\"innerContent\":{\"desktop\":{\"value\":\"0\"}}},\"slider_direction\":{\"innerContent\":{\"desktop\":{\"value\":\"ltr\"}}},\"centered_slides\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"slide_to_show\":{\"innerContent\":{\"desktop\":{\"value\":\"3\"},\"tablet\":{\"value\":\"2\"},\"phone\":{\"value\":\"1\"}}},\"slide_to_scroll\":{\"innerContent\":{\"desktop\":{\"value\":\"1\"},\"tablet\":{\"value\":\"1\"},\"phone\":{\"value\":\"1\"}}},\"multiple_slide_row\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"slide_row\":{\"innerContent\":{\"desktop\":{\"value\":\"1\"}}},\"speed\":{\"innerContent\":{\"desktop\":{\"value\":\"300\"}}},\"space_between\":{\"innerContent\":{\"desktop\":{\"value\":\"15\"}}},\"autoplay\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"autoplay_speed\":{\"innerContent\":{\"desktop\":{\"value\":\"3000\"}}},\"autoplay_viewport\":{\"innerContent\":{\"desktop\":{\"value\":\"80%\"}}},\"pause_on_hover\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"mousewheel\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"infinite\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"infinite_smooth_scrolling\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"auto_height\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"equal_height\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"dots_vertical_placement\":{\"innerContent\":{\"desktop\":{\"value\":\"50%\"}}},\"pagi_vertical_placement\":{\"innerContent\":{\"desktop\":{\"value\":\"right\"}}},\"arrows\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"navi_hori_position\":{\"innerContent\":{\"desktop\":{\"value\":\"50%\"}}},\"top_navi_ver_position\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"bottom_navi_ver_position\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"arrow_prev\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"arrow_next\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"arrow_prev_font_icon\":{\"innerContent\":{\"desktop\":{\"value\":{\"type\":\"divi\",\"unicode\":\"&#x34;\",\"weight\":\"400\"}}}},\"arrow_next_font_icon\":{\"innerContent\":{\"desktop\":{\"value\":{\"type\":\"divi\",\"unicode\":\"&#x35;\",\"weight\":\"400\"}}}},\"arrow_size\":{\"innerContent\":{\"desktop\":{\"value\":\"40px\"}}},\"arrow_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#666666\"}}},\"arrow_background_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"dots\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"dots_horizontal_placement\":{\"innerContent\":{\"desktop\":{\"value\":\"-30px\"}}},\"dots_active_color\":{\"innerContent\":{\"desktop\":{\"value\":\"rgba(0,0,0,0.75)\"}}},\"dots_inactive_color\":{\"innerContent\":{\"desktop\":{\"value\":\"rgba(0,0,0,0.2)\"}}},\"arrow_position\":{\"innerContent\":{\"desktop\":{\"value\":\"outside\"}}},\"arrow_position_mobile\":{\"innerContent\":{\"desktop\":{\"value\":\"inside\"}}},\"use_arrow_custom_position\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"arrow_custom_position\":{\"innerContent\":{\"desktop\":{\"value\":\"-60px\"}}},\"badge_position\":{\"innerContent\":{\"desktop\":{\"value\":\"top_right\"}}},\"badge_show_on_hover\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"image_width\":{\"innerContent\":{\"desktop\":{\"value\":\"100%\"}}},\"image_alignment\":{\"innerContent\":{\"desktop\":{\"value\":\"left\"}}},\"stretch_image\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"touch_move\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"grab\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"layout_inline_image_width\":{\"innerContent\":{\"desktop\":{\"value\":\"50%\"}}},\"layout_inline_order\":{\"innerContent\":{\"desktop\":{\"value\":\"left\"}}},\"image_horizontal_alignment\":{\"innerContent\":{\"desktop\":{\"value\":\"center\"}}},\"content_horizontal_alignment\":{\"innerContent\":{\"desktop\":{\"value\":\"center\"}}}}');\n;// ./packages/module-library/card-carousel/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmCardCarousel', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/card-carousel': {\n      name: 'divi-supreme/card-carousel',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 2.121094 5.464844 C 1.789062 5.464844 1.519531 5.199219 1.519531 4.867188 C 1.519531 4.535156 1.789062 4.265625 2.121094 4.265625 C 2.453125 4.265625 2.722656 4.535156 2.722656 4.867188 C 2.722656 5.199219 2.453125 5.464844 2.121094 5.464844 Z M 2.121094 4.597656 C 1.976562 4.597656 1.851562 4.714844 1.851562 4.867188 C 1.851562 5.011719 1.96875 5.132812 2.121094 5.132812 C 2.265625 5.132812 2.386719 5.011719 2.386719 4.867188 C 2.390625 4.722656 2.265625 4.597656 2.121094 4.597656 Z M 2.121094 4.597656 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 8.261719 8.253906 C 7.929688 8.253906 7.664062 7.984375 7.664062 7.652344 C 7.664062 7.324219 7.929688 7.054688 8.261719 7.054688 C 8.59375 7.054688 8.863281 7.324219 8.863281 7.652344 C 8.863281 7.984375 8.59375 8.253906 8.261719 8.253906 Z M 8.261719 7.386719 C 8.117188 7.386719 8 7.503906 8 7.648438 C 8 7.796875 8.117188 7.917969 8.261719 7.917969 C 8.410156 7.917969 8.53125 7.800781 8.53125 7.648438 C 8.53125 7.507812 8.410156 7.386719 8.261719 7.386719 Z M 8.261719 7.386719 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 9.519531 10.511719 L 7.003906 10.511719 C 6.414062 10.511719 5.933594 10.027344 5.933594 9.4375 L 5.933594 6.921875 C 5.933594 6.332031 6.414062 5.855469 7.003906 5.855469 L 9.519531 5.855469 C 10.109375 5.855469 10.589844 6.332031 10.589844 6.921875 L 10.589844 9.4375 C 10.589844 10.027344 10.109375 10.511719 9.519531 10.511719 Z M 7.007812 6.183594 C 6.601562 6.183594 6.273438 6.515625 6.273438 6.921875 L 6.273438 9.4375 C 6.273438 9.847656 6.601562 10.171875 7.007812 10.171875 L 9.523438 10.171875 C 9.933594 10.171875 10.261719 9.839844 10.261719 9.4375 L 10.261719 6.921875 C 10.261719 6.515625 9.929688 6.183594 9.523438 6.183594 Z M 7.007812 6.183594 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 9.519531 10.511719 L 7.003906 10.511719 C 6.414062 10.511719 5.933594 10.027344 5.933594 9.441406 L 5.933594 9.167969 L 7.554688 8.25 L 8.023438 8.925781 L 10.589844 7.359375 L 10.589844 9.441406 C 10.589844 10.027344 10.109375 10.511719 9.519531 10.511719 Z M 6.265625 9.359375 L 6.265625 9.441406 C 6.265625 9.847656 6.597656 10.171875 7.003906 10.171875 L 9.519531 10.171875 C 9.929688 10.171875 10.253906 9.839844 10.253906 9.441406 L 10.253906 7.953125 L 7.921875 9.378906 L 7.449219 8.6875 Z M 6.265625 9.359375 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 3.035156 8.265625 C 2.742188 8.265625 2.507812 8.03125 2.507812 7.738281 C 2.507812 7.449219 2.742188 7.210938 3.035156 7.210938 C 3.328125 7.210938 3.5625 7.449219 3.5625 7.738281 C 3.5625 8.03125 3.328125 8.265625 3.035156 8.265625 Z M 3.035156 7.546875 C 2.929688 7.546875 2.839844 7.636719 2.839844 7.742188 C 2.839844 7.851562 2.929688 7.941406 3.035156 7.941406 C 3.140625 7.941406 3.230469 7.851562 3.230469 7.742188 C 3.230469 7.632812 3.140625 7.546875 3.035156 7.546875 Z M 3.035156 7.546875 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 4.085938 10.148438 L 1.988281 10.148438 C 1.480469 10.148438 1.066406 9.734375 1.066406 9.230469 L 1.066406 7.128906 C 1.066406 6.621094 1.480469 6.207031 1.988281 6.207031 L 4.089844 6.207031 C 4.597656 6.207031 5.011719 6.621094 5.011719 7.128906 L 5.011719 9.230469 C 5.003906 9.742188 4.597656 10.148438 4.085938 10.148438 Z M 1.988281 6.542969 C 1.660156 6.542969 1.398438 6.808594 1.398438 7.132812 L 1.398438 9.238281 C 1.398438 9.5625 1.660156 9.824219 1.988281 9.824219 L 4.089844 9.824219 C 4.414062 9.824219 4.679688 9.5625 4.679688 9.238281 L 4.679688 7.132812 C 4.679688 6.808594 4.414062 6.542969 4.089844 6.542969 Z M 1.988281 6.542969 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 4.085938 10.148438 L 1.988281 10.148438 C 1.480469 10.148438 1.066406 9.734375 1.066406 9.230469 L 1.066406 8.988281 L 2.457031 8.203125 L 2.847656 8.769531 L 5.011719 7.449219 L 5.011719 9.230469 C 5.003906 9.742188 4.597656 10.148438 4.085938 10.148438 Z M 1.398438 9.179688 L 1.398438 9.230469 C 1.398438 9.554688 1.660156 9.820312 1.988281 9.820312 L 4.089844 9.820312 C 4.414062 9.820312 4.679688 9.554688 4.679688 9.230469 L 4.679688 8.035156 L 2.75 9.214844 L 2.355469 8.636719 Z M 1.398438 9.179688 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 13.492188 8.265625 C 13.199219 8.265625 12.964844 8.03125 12.964844 7.738281 C 12.964844 7.449219 13.199219 7.210938 13.492188 7.210938 C 13.785156 7.210938 14.019531 7.449219 14.019531 7.738281 C 14.019531 8.03125 13.785156 8.265625 13.492188 8.265625 Z M 13.492188 7.546875 C 13.386719 7.546875 13.296875 7.636719 13.296875 7.742188 C 13.296875 7.851562 13.386719 7.941406 13.492188 7.941406 C 13.597656 7.941406 13.6875 7.851562 13.6875 7.742188 C 13.6875 7.632812 13.597656 7.546875 13.492188 7.546875 Z M 13.492188 7.546875 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 14.539062 10.148438 L 12.4375 10.148438 C 11.929688 10.148438 11.515625 9.734375 11.515625 9.230469 L 11.515625 7.128906 C 11.515625 6.621094 11.929688 6.207031 12.4375 6.207031 L 14.539062 6.207031 C 15.046875 6.207031 15.460938 6.621094 15.460938 7.128906 L 15.460938 9.230469 C 15.460938 9.742188 15.050781 10.148438 14.539062 10.148438 Z M 12.441406 6.542969 C 12.117188 6.542969 11.855469 6.808594 11.855469 7.132812 L 11.855469 9.238281 C 11.855469 9.5625 12.117188 9.824219 12.441406 9.824219 L 14.546875 9.824219 C 14.871094 9.824219 15.136719 9.5625 15.136719 9.238281 L 15.136719 7.132812 C 15.136719 6.808594 14.871094 6.542969 14.546875 6.542969 Z M 12.441406 6.542969 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 14.539062 10.148438 L 12.4375 10.148438 C 11.929688 10.148438 11.515625 9.734375 11.515625 9.230469 L 11.515625 8.988281 L 12.910156 8.203125 L 13.296875 8.769531 L 15.460938 7.449219 L 15.460938 9.230469 C 15.460938 9.742188 15.050781 10.148438 14.539062 10.148438 Z M 11.855469 9.179688 L 11.855469 9.230469 C 11.855469 9.554688 12.117188 9.820312 12.441406 9.820312 L 14.546875 9.820312 C 14.871094 9.820312 15.136719 9.554688 15.136719 9.230469 L 15.136719 8.035156 L 13.203125 9.214844 L 12.8125 8.636719 Z M 11.855469 9.179688 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 9.957031 12.164062 L 6.570312 12.164062 C 6.222656 12.164062 5.933594 11.878906 5.933594 11.53125 C 5.933594 11.183594 6.222656 10.898438 6.570312 10.898438 L 9.957031 10.898438 C 10.304688 10.898438 10.589844 11.183594 10.589844 11.53125 C 10.589844 11.878906 10.304688 12.164062 9.957031 12.164062 Z M 6.570312 11.226562 C 6.398438 11.226562 6.265625 11.363281 6.265625 11.53125 C 6.265625 11.699219 6.398438 11.832031 6.570312 11.832031 L 9.957031 11.832031 C 10.125 11.832031 10.261719 11.699219 10.261719 11.53125 C 10.261719 11.363281 10.125 11.226562 9.957031 11.226562 Z M 6.570312 11.226562 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 4.363281 11.589844 L 1.703125 11.589844 C 1.40625 11.589844 1.171875 11.351562 1.171875 11.058594 C 1.171875 10.769531 1.414062 10.527344 1.703125 10.527344 L 4.363281 10.527344 C 4.652344 10.527344 4.894531 10.769531 4.894531 11.058594 C 4.894531 11.355469 4.660156 11.589844 4.363281 11.589844 Z M 1.703125 10.859375 C 1.589844 10.859375 1.503906 10.949219 1.503906 11.058594 C 1.503906 11.171875 1.589844 11.261719 1.703125 11.261719 L 4.363281 11.261719 C 4.476562 11.261719 4.566406 11.171875 4.566406 11.058594 C 4.566406 10.949219 4.476562 10.859375 4.363281 10.859375 Z M 1.703125 10.859375 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 14.820312 11.589844 L 12.160156 11.589844 C 11.867188 11.589844 11.628906 11.351562 11.628906 11.058594 C 11.628906 10.769531 11.867188 10.527344 12.160156 10.527344 L 14.820312 10.527344 C 15.109375 10.527344 15.351562 10.769531 15.351562 11.058594 C 15.351562 11.355469 15.117188 11.589844 14.820312 11.589844 Z M 12.160156 10.859375 C 12.046875 10.859375 11.957031 10.949219 11.957031 11.058594 C 11.957031 11.171875 12.046875 11.261719 12.160156 11.261719 L 14.820312 11.261719 C 14.929688 11.261719 15.019531 11.171875 15.019531 11.058594 C 15.019531 10.949219 14.929688 10.859375 14.820312 10.859375 Z M 12.160156 10.859375 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/card-carousel/index.js\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\n\n\nconst CARD_CAROUSEL_CHILD = 'dsm/card-carousel-child';\nconst CardCarouselModule = {\n  metadata: card_carousel_module_namespaceObject,\n  conversionOutline: card_carousel_conversion_outline_conversionOutline,\n  childrenName: [CARD_CAROUSEL_CHILD],\n  template: buildParentDefaultChildTemplate(CARD_CAROUSEL_CHILD, 3),\n  callbacks: buildChildDraggableListCallbacks([CARD_CAROUSEL_CHILD]),\n  renderers: {\n    edit: card_carousel_edit,\n    styles: card_carousel_module_styles_ModuleStyles\n  },\n  defaultAttrs: {\n    ...card_carousel_module_default_render_attributes_namespaceObject\n  },\n  settings: {\n    content: card_carousel_settings_content,\n    design: card_carousel_settings_design,\n    advanced: card_carousel_settings_advanced\n  },\n  placeholderContent: {\n    ...card_carousel_module_default_render_attributes_namespaceObject,\n    module: {\n      decoration: {}\n    }\n  }\n};\n/* harmony default export */ const card_carousel = (CardCarouselModule);\n;// ./packages/module-library/card-carousel-child/module.json\nconst card_carousel_child_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/card-carousel-child\",\"d4Shortcode\":\"dsm_card_carousel_child\",\"title\":\"Card Item\",\"titles\":\"Card Item\",\"category\":\"child-module\",\"childrenName\":[],\"allowAllElements\":true,\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{},\"transition\":{},\"layout\":{}},\"advanced\":{\"elements\":{\"groupType\":\"group-item\",\"item\":{\"groupSlug\":\"contentElements\",\"priority\":5,\"render\":true,\"component\":{\"type\":\"group\",\"name\":\"divi/elements\",\"props\":{\"grouped\":false}}}}}},\"styleProps\":{\"layout\":{\"selector\":\"{{selector}} .dsm-card-nestable\"}}},\"title\":{\"type\":\"object\",\"selector\":\".dsm_card_carousel {{selector}} .dsm_card_title\",\"attributes\":{\"class\":\"dsm_card_title et_pb_module_header\"},\"default\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"headingLevel\":\"h4\"}}}}}},\"tagName\":\"h4\",\"inlineEditor\":\"plainText\",\"elementType\":\"headingLink\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\".dsm_card_carousel {{selector}} .dsm_card_title\",\"hover\":\".dsm_card_carousel {{selector}}:hover .dsm_card_title\"}}}}},\"subtitle\":{\"type\":\"object\",\"selector\":\".dsm_card_carousel {{selector}} .dsm_card_carousel_child_subtitle\",\"inlineEditor\":\"plainText\",\"elementType\":\"headingLink\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\".dsm_card_carousel {{selector}} .dsm_card_carousel_child_subtitle\",\"hover\":\".dsm_card_carousel {{selector}}:hover .dsm_card_carousel_child_subtitle\"}}}}},\"content\":{\"type\":\"object\",\"selector\":\".dsm_card_carousel {{selector}} .dsm_card_carousel_child_description\",\"elementType\":\"content\",\"inlineEditor\":\"richText\",\"styleProps\":{\"bodyFont\":{\"selectors\":{\"desktop\":{\"value\":\".dsm_card_carousel {{selector}} .dsm_card_carousel_child_description\",\"hover\":\".dsm_card_carousel {{selector}}:hover .dsm_card_carousel_child_description\"}}}}},\"image\":{\"type\":\"object\",\"inlineEditor\":\"UploadContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_text\":{\"type\":\"object\",\"tagName\":\"span\",\"inlineEditor\":\"Text\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_url\":{\"type\":\"object\",\"inlineEditor\":\"Text\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_url_new_window\":{\"type\":\"object\",\"inlineEditor\":\"Text\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"custom_button\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button\":{\"type\":\"object\",\"selector\":\".dsm_card_carousel {{selector}} .et_pb_button_module_wrapper .et_pb_button\",\"default\":{\"decoration\":{\"spacing\":{\"desktop\":{\"value\":{\"margin\":{\"top\":\"20px\"}}}},\"button\":{\"desktop\":{\"value\":{\"enable\":\"off\",\"icon\":{\"enable\":\"on\",\"onHover\":\"on\"}}}},\"border\":{\"desktop\":{\"value\":{\"styles\":{\"all\":{\"color\":\"\"}}}}},\"font\":{\"font\":{\"desktop\":{\"value\":{\"color\":\"\"}}}}}},\"elementType\":\"button\",\"styleProps\":{\"font\":{\"important\":{\"font\":{\"desktop\":{\"value\":{\"color\":true,\"font-size\":true,\"letter-spacing\":true}}}}},\"spacing\":{\"important\":true},\"alignment\":{\"selector\":\"{{selector}} .et_pb_button_module_wrapper\"},\"sizing\":{\"selector\":\"{{selector}} .et_pb_button_module_wrapper\",\"propertySelectors\":{\"desktop\":{\"value\":{\"margin-left\":\"{{selector}} .et_pb_button_module_wrapper\",\"margin-right\":\"{{selector}} .et_pb_button_module_wrapper\"}},\"tablet\":{\"value\":{\"margin-left\":\"{{selector}} .et_pb_button_module_wrapper\",\"margin-right\":\"{{selector}} .et_pb_button_module_wrapper\"}},\"phone\":{\"value\":{\"margin-left\":\"{{selector}} .et_pb_button_module_wrapper\",\"margin-right\":\"{{selector}} .et_pb_button_module_wrapper\"}}}},\"button\":{\"propertySelectors\":{\"desktop\":{\"value\":{\"text-align\":\"{{selector}} .et_pb_button_module_wrapper\"}},\"tablet\":{\"value\":{\"text-align\":\"{{selector}} .et_pb_button_module_wrapper\"}},\"phone\":{\"value\":{\"text-align\":\"{{selector}} .et_pb_button_module_wrapper\"}}}}}},\"image_as_background\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_background_height\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_background_size\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_background_position\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_background_repeat\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_background_animation\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_background_animation_speed\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"badge_text\":{\"type\":\"object\",\"inlineEditor\":\"Text\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"badge_position\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_popup\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_popup_src\":{\"type\":\"object\",\"inlineEditor\":\"UploadContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_video_popup\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_video_popup_url\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"badge_custom_position\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"badge_left_position\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"badge_top_position\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"badge_background_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPalette\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_image_popup\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_image_src\":{\"type\":\"object\",\"inlineEditor\":\"UploadContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_video_popup\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"badge\":{\"type\":\"object\",\"selector\":\".dsm_card_carousel {{selector}} .dsm_card_carousel_child_badge_text\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"spacing\":{\"selector\":\".dsm_card_carousel {{selector}} .dsm_card_carousel_child_badge_text\",\"important\":true},\"border\":{\"selector\":\".dsm_card_carousel {{selector}} .dsm_card_carousel_child_badge_text\",\"important\":true},\"boxShadow\":{\"selector\":\".dsm_card_carousel {{selector}} .dsm_card_carousel_child_badge_text\",\"useOverlay\":true}}},\"badgeFont\":{\"type\":\"object\",\"selector\":\".dsm_card_carousel {{selector}} .dsm_card_carousel_child_badge_text\",\"inlineEditor\":\"plainText\",\"styleProps\":{\"bodyFont\":{\"selectors\":{\"desktop\":{\"value\":\".dsm_card_carousel {{selector}} .dsm_card_carousel_child_badge_text\",\"hover\":\".dsm_card_carousel {{selector}}:hover .dsm_card_carousel_child_badge_text\"}}}}},\"image_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_alignment\":{\"type\":\"object\",\"inlineEditor\":\"ButtonGroupContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"stretch_image\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"parent_stretch_image\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_overlay\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"overlay_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPalette\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_icon\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"icon_font_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"overlay_icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPalette\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"hover_icon\":{\"type\":\"object\",\"inlineEditor\":\"iconPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"overlay_on_hover\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"badge_url\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"badge_url_new_window\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"content_padding\":{\"type\":\"object\",\"selector\":\".dsm_card_carousel {{selector}} .dsm_card_wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\",\"default\":{\"decoration\":{\"spacing\":{\"desktop\":{\"value\":{\"padding\":{\"top\":\"20px\",\"right\":\"20px\",\"bottom\":\"20px\",\"left\":\"20px\"}}}}}},\"styleProps\":{\"spacing\":{\"selector\":\".dsm_card_carousel {{selector}} .dsm_card_wrapper\",\"important\":true}}},\"imageStyle\":{\"type\":\"object\",\"selector\":\".dsm_card_carousel {{selector}} .dsm_card_carousel_child_image_wrapper .dsm_card_carousel_child_img, .dsm_card_carousel {{selector}} .dsm_card_carousel_child_image_wrapper img\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\".dsm_card_carousel {{selector}} .dsm_card_carousel_child_image_wrapper .dsm_card_carousel_child_img, .dsm_card_carousel {{selector}} .dsm_card_carousel_child_image_wrapper img\",\"important\":true},\"boxShadow\":{\"selector\":\".dsm_card_carousel {{selector}} .dsm_card_carousel_child_image_wrapper .dsm_card_carousel_child_img, .dsm_card_carousel {{selector}} .dsm_card_carousel_child_image_wrapper img\",\"useOverlay\":true}}},\"overlayIconStyle\":{\"type\":\"object\",\"selector\":\".dsm_card_carousel {{selector}} .dsm_card_carousel_child_image_wrapper .et_overlay.et_pb_inline_icon::before\",\"childrenSanitizer\":\"et_core_esc_previously\",\"settings\":{\"decoration\":{\"border\":{}}},\"styleProps\":{\"border\":{\"selector\":\".dsm_card_carousel {{selector}} .dsm_card_carousel_child_image_wrapper .et_overlay.et_pb_inline_icon::before\",\"important\":true}}}},\"settings\":{\"advanced\":\"auto\",\"groups\":{\"contentElements\":{\"panel\":\"content\",\"priority\":5,\"groupName\":\"contentElements\",\"multiElements\":true,\"component\":{\"name\":\"divi/composite\",\"props\":{\"groupLabel\":\"Elements\"}}}}}}');\n;// ./packages/module-library/card-carousel-child/module-default-render-attributes.json\nconst card_carousel_child_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"stretch_image\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"parent_stretch_image\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"image_as_background\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"image_background_animation\":{\"innerContent\":{\"desktop\":{\"value\":\"none\"}}},\"image_background_animation_speed\":{\"innerContent\":{\"desktop\":{\"value\":\"300ms\"}}},\"image_background_height\":{\"innerContent\":{\"desktop\":{\"value\":\"240px\"}}},\"image_background_position\":{\"innerContent\":{\"desktop\":{\"value\":\"center\"}}},\"image_background_repeat\":{\"innerContent\":{\"desktop\":{\"value\":\"no_repeat\"}}},\"image_background_size\":{\"innerContent\":{\"desktop\":{\"value\":\"cover\"}}},\"overlayIconStyle\":{\"decoration\":{\"border\":{\"desktop\":{\"value\":{\"styles\":{\"all\":{\"color\":\"\"}}}}}}}}');\n;// ./packages/module-library/card-carousel-child/card-carousel-child-vb-default-attrs.js\n/**\n * Visual Builder `defaultAttr` / `defaultGroupAttr` map from\n * `module-default-render-attributes.json` (same pattern as `dsm/card` → `card-vb-default-attrs.js`).\n *\n * @package DiviSupreme\n */\n\n\nconst cardCarouselChildFieldDefaultInnerContent = Object.fromEntries(Object.entries(card_carousel_child_module_default_render_attributes_namespaceObject).filter(([, attr]) => attr && 'object' === typeof attr && null !== attr && 'innerContent' in attr).map(([key, attr]) => [key, attr.innerContent]));\n\n/** Shorthand for Design / Content `FieldContainer` `defaultAttr` (matches `card` → `fd`). */\nconst cccFd = cardCarouselChildFieldDefaultInnerContent;\n\n/** `BorderGroup` on `overlayIconStyle.decoration.border` — decoration slice for `defaultGroupAttr`. */\nconst cardCarouselChildOverlayIconBorderDefaultGroupAttr = card_carousel_child_module_default_render_attributes_namespaceObject.overlayIconStyle.decoration;\n;// ./packages/module-library/card-carousel-child/settings-content.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\n\nfunction card_carousel_child_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs,\n  groupConfiguration\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _getAttrByMode4;\n  const contentElements = groupConfiguration?.contentElements;\n  const useImageBackground = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.image_as_background?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'on';\n  const useImagePopup = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.image_popup?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'off';\n  const useImageVideoPopup = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.image_video_popup?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'off';\n  const useButtonPopup = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_image_popup?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : 'off';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"text_content\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"title.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Text, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"subtitle.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Sub Title', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Text, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"content.innerContent\",\n    subName: \"text\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    },\n    defaultAttr: {\n      desktop: {\n        value: {\n          text: ''\n        }\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RichTextContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"image_badge\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image & Badge', ''),\n    preset: \"content\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image.innerContent\",\n    subName: \"src\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      preset: 'content',\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_as_background.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Image as Background', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: cccFd.image_as_background\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), 'on' === useImageBackground && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_background_height.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Height', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: cccFd.image_background_height\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 800,\n    defaultUnit: 'px',\n    allowedUnits: ['%', 'em', 'rem', 'px', 'cm', 'mm', 'in', 'pt', 'pc', 'ex', 'vh', 'vw']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_background_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Image Size', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"font Icon\",\n    defaultAttr: cccFd.image_background_size\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      cover: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Cover', 'dsm-supreme-modules-pro-for-divi')\n      },\n      contain: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Contain', 'dsm-supreme-modules-pro-for-divi')\n      },\n      initial: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Initial', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_background_position.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Image Position', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"font Icon\",\n    defaultAttr: cccFd.image_background_position\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      top_left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      top: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top', 'dsm-supreme-modules-pro-for-divi')\n      },\n      top_right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center_left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center_right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom_left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom_right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Right', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_background_repeat.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Image Repeat', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"font Icon\",\n    defaultAttr: cccFd.image_background_repeat\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      no_repeat: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('No Repeat', 'dsm-supreme-modules-pro-for-divi')\n      },\n      repeat: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Repeat', 'dsm-supreme-modules-pro-for-divi')\n      },\n      repeat_x: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Repeat X (horizontal)', 'dsm-supreme-modules-pro-for-divi')\n      },\n      repeat_y: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Repeat Y (vertical)', 'divi_supreme')\n      },\n      space: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Space', 'dsm-supreme-modules-pro-for-divi')\n      },\n      round: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Round', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_background_animation.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Image Animation', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    description: \"font Icon\",\n    defaultAttr: cccFd.image_background_animation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      none: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('None', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zoom_in: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom In', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zoom_out: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom Out', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zoom_in_n_rotate: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom In & Rotate', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zoom_out_n_rotate: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom Out & Rotate', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_background_animation_speed.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animation Speed (in ms)', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: cccFd.image_background_animation_speed\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 300,\n    max: 3000,\n    defaultUnit: 'ms',\n    allowedUnits: ['ms']\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_popup.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Open as Image Lightbox', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'off' === useImageVideoPopup,\n    defaultAttr: {\n      desktop: {\n        value: 'off'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_popup_src.innerContent\",\n    subName: \"src\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Lightbox', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useImagePopup && 'off' === useImageVideoPopup\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_video_popup.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Open as Video Lightbox', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'off' === useImagePopup,\n    defaultAttr: {\n      desktop: {\n        value: 'off'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_video_popup_url.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Video Popup URL', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useImageVideoPopup && 'off' === useImagePopup\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"badge_text.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Badge Text', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: ''\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Text, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"button\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', '')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_text.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Text', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    },\n    defaultAttr: {\n      desktop: {\n        value: ''\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Text, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_url.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Url', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'url'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Text, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_url_new_window.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Url Open', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      same_window: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The Same Window', 'dsm-supreme-modules-pro-for-divi')\n      },\n      new_tab: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The New Tab', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"custom_button.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Custom Button Icon', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Off: use the carousel (parent) button icon. On: use the icon set in Design → Button for this slide only.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'off'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_image_popup.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Open as Image Lightbox', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'off'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_image_src.innerContent\",\n    subName: \"src\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'off'\n      }\n    },\n    visible: 'on' === useButtonPopup\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_video_popup.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Open as Video Lightbox', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'off'\n      }\n    },\n    visible: 'on' !== useButtonPopup\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"link\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Link', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"badge_url.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Badge Url', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Text, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"badge_url_new_window.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Badge Link Target', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      off: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The Same Window', 'dsm-supreme-modules-pro-for-divi')\n      },\n      on: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The New Tab', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, {\n    grouped: false\n  })), contentElements ? /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleGroups, {\n    groups: {\n      contentElements\n    }\n  }) : null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const card_carousel_child_settings_content = (card_carousel_child_settings_content_SettingsContent);\n;// ./packages/module-library/card-carousel-child/settings-design.js\n\n// Wordpress dependencies.\n\n// Divi package dependencies.\n\n\n\n\n\nfunction card_carousel_child_settings_design_SettingsDesign({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _defaultSettingsAttrs;\n  const isBadgeCustomPosition = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.badge_custom_position?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'off';\n  const isImageOverlay = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_overlay?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'off';\n  const useIcon = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_icon?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'on';\n  const imageAsBackground = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.image_as_background?.innerContent) || 'on';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"image\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', '')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_width.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Width', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    step: 1,\n    defaultUnit: '%',\n    allowedUnits: ['%']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_alignment.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"stretch_image.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Stretch Image', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Stretch the inline slide image when Cover Image mode is off. Parent carousel “Stretch Image” overrides slides when enabled.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'off' === imageAsBackground,\n    defaultAttr: cccFd.stretch_image\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_overlay.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Overlay', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    features: {\n      preset: 'content'\n    },\n    defaultAttr: {\n      desktop: {\n        value: 'off'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), 'on' === isImageOverlay && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"overlay_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Icon', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    defaultAttr: {\n      desktop: {\n        value: 'on'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), 'on' === useIcon && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"icon_font_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Font Size', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    step: 1,\n    defaultUnit: 'px',\n    allowedUnits: ['%', 'em', 'rem', 'px', 'cm', 'mm', 'in', 'pt', 'pc', 'ex', 'vh', 'vw']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"overlay_icon_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay Icon Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"hover_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Picker', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay Icon', 'dsm-supreme-modules-pro-for-divi'),\n    attrName: \"overlayIconStyle.decoration.border\",\n    grouped: false,\n    defaultGroupAttr: cardCarouselChildOverlayIconBorderDefaultGroupAttr\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"overlay_on_hover.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Overlay On Hover', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    defaultAttr: {\n      desktop: {\n        value: 'on'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', ''),\n    attrName: \"imageStyle.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    grouped: false,\n    attrName: \"imageStyle.decoration.boxShadow\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Badge', '')\n  }, 'off' === isBadgeCustomPosition && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"badge_position.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Position', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      top_left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      top_center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      top_right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center_left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center_right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom_left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom_center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom_right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Right', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"badge_custom_position.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Custom Position', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    defaultAttr: {\n      desktop: {\n        value: 'off'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), 'on' === isBadgeCustomPosition && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"badge_left_position.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left Position', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 30,\n    step: 0.1,\n    allowedUnits: ['%', 'em', 'rem', 'px', 'cm', 'mm', 'in', 'pt', 'pc', 'ex', 'vh', 'vw'],\n    defaultUnit: 'rem'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"badge_top_position.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top Position', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 30,\n    step: 0.1,\n    allowedUnits: ['%', 'em', 'rem', 'px', 'cm', 'mm', 'in', 'pt', 'pc', 'ex', 'vh', 'vw'],\n    defaultUnit: 'rem'\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"badge_background_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"badge.decoration.spacing\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontBodyGroup, {\n    grouped: false,\n    attrName: \"badgeFont.decoration.bodyFont\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Badge', 'dsm-supreme-modules-pro-for-divi'),\n    attrName: \"badge.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    grouped: false,\n    attrName: \"badge.decoration.boxShadow\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"title.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title Text', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: true\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"subtitle.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Subhead Text', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Subhead', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontBodyGroup, {\n    attrName: \"content.decoration.bodyFont\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ButtonGroupContainer, {\n    attrName: \"button\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi'),\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi'),\n    defaultGroupAttr: (_defaultSettingsAttrs = defaultSettingsAttrs?.button?.decoration?.asMutable({\n      deep: true\n    })) !== null && _defaultSettingsAttrs !== void 0 ? _defaultSettingsAttrs : {},\n    fields: {\n      fontGroup: {\n        component: {\n          props: {\n            fields: {\n              lineHeight: {\n                render: true\n              },\n              textAlign: {\n                render: false\n              }\n            }\n          }\n        }\n      },\n      spacingGroup: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"sizing\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Sizing', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, {\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"spacing\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Spacing', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"content_padding.decoration.spacing\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null));\n}\n/* harmony default export */ const card_carousel_child_settings_design = (card_carousel_child_settings_design_SettingsDesign);\n;// ./packages/module-library/card-carousel-child/settings-advanced.js\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\nfunction card_carousel_child_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_card_carousel_child\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const card_carousel_child_settings_advanced = (card_carousel_child_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/card-carousel-child/module-styles.js\n\n\n\n\n\n\n\n\n/**\n * Match dsm/card: smooth background zoom/rotate uses `transition: all {speed} ease` with 300ms fallback.\n */\nconst module_styles_isCardAnimSpeedEmptyOrZero = raw => {\n  if (null == raw || '' === raw) {\n    return true;\n  }\n  if ('number' === typeof raw && 0 === raw) {\n    return true;\n  }\n  if ('string' === typeof raw) {\n    const t = raw.trim().toLowerCase();\n    return ['0', '0px', '0ms', '0.0', '0.0px', '0.0ms'].includes(t);\n  }\n  return false;\n};\nconst module_styles_image_bg_animation_declaration = attr => {\n  var _attrValue$value;\n  const {\n    attrValue\n  } = attr;\n  const raw = 'string' === typeof attrValue ? attrValue : (_attrValue$value = attrValue?.value) !== null && _attrValue$value !== void 0 ? _attrValue$value : '';\n  const speed = module_styles_isCardAnimSpeedEmptyOrZero(raw) ? '300ms' : String(raw);\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      transition: true\n    }\n  });\n  declarations.add('transition', `all ${speed} ease`);\n  return declarations.value;\n};\nconst module_styles_image_bg_position_declaration = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'background-position': true\n    }\n  });\n  declarations.add('background-position', String(attrValue !== null && attrValue !== void 0 ? attrValue : '').replace(/_/g, ' '));\n  return declarations.value;\n};\nconst module_styles_image_bg_repeat_declaration = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'background-repeat': true\n    }\n  });\n  declarations.add('background-repeat', String(attrValue !== null && attrValue !== void 0 ? attrValue : '').replace(/_/g, '-'));\n  return declarations.value;\n};\n\n/**\n * Background image for cover mode (matches dsm/card `imageBgStyleDeclaration`; no hooks — CommonStyle callbacks are not components).\n *\n * @param {{ attrValue?: unknown }} attr Style params from CommonStyle.\n * @return {string}\n */\nconst carouselChildImageBgDeclaration = attr => {\n  const url = resolveCardImageUrl(attr?.attrValue);\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'background-image': true\n    }\n  });\n  if ('string' !== typeof url || '' === url) {\n    return declarations.value;\n  }\n  const safe = String(url).replace(/\\\\/g, '\\\\\\\\').replace(/\"/g, '\\\\\"');\n  declarations.add('background-image', `url(\"${safe}\")`);\n  declarations.add('width', '100%');\n  declarations.add('height', '100%');\n  return declarations.value;\n};\nconst module_styles_DSM_DEFAULT_MODULE_TRANSITION_ATTR = {\n  desktop: {\n    value: {\n      duration: '300ms',\n      delay: '0ms',\n      speedCurve: 'ease'\n    }\n  }\n};\nconst module_styles_getTransitionAttrForCommonStyle = transition => {\n  if (transition && typeof transition === 'object' && Object.keys(transition).length > 0) {\n    return transition;\n  }\n  return module_styles_DSM_DEFAULT_MODULE_TRANSITION_ATTR;\n};\nconst module_styles_normalizeTransitionTimeProperty = (value, defaultValue) => {\n  if (typeof value === 'number' && !Number.isNaN(value)) {\n    return `${Math.round(value)}ms`;\n  }\n  if (typeof value !== 'string') {\n    return defaultValue;\n  }\n  const t = value.trim();\n  if (t === '') {\n    return defaultValue;\n  }\n  if (/[a-z%]/i.test(t)) {\n    return t;\n  }\n  if (!Number.isNaN(Number(t)) && /^-?\\d*\\.?\\d+$/.test(t)) {\n    return `${Math.round(Number(t))}ms`;\n  }\n  return t;\n};\nconst module_styles_readModuleTransitionLeafAtBreakpoint = (attrs, breakpoint) => {\n  const defaults = {\n    duration: '300ms',\n    delay: '0ms',\n    speedCurve: 'ease'\n  };\n  const trans = attrs?.module?.decoration?.transition;\n  if (!trans || typeof trans !== 'object') {\n    return defaults;\n  }\n  const order = [breakpoint, 'desktop', 'tablet', 'phone'].filter((v, i, a) => a.indexOf(v) === i);\n  for (let i = 0; i < order.length; i++) {\n    const bp = order[i];\n    const node = trans[bp];\n    if (!node || typeof node !== 'object' || !node.value || typeof node.value !== 'object') {\n      continue;\n    }\n    const leaf = node.value;\n    return {\n      duration: 'duration' in leaf && leaf.duration !== undefined ? module_styles_normalizeTransitionTimeProperty(leaf.duration, defaults.duration) : defaults.duration,\n      delay: 'delay' in leaf && leaf.delay !== undefined ? module_styles_normalizeTransitionTimeProperty(leaf.delay, defaults.delay) : defaults.delay,\n      speedCurve: typeof leaf.speedCurve === 'string' && leaf.speedCurve !== '' ? leaf.speedCurve : defaults.speedCurve\n    };\n  }\n  return defaults;\n};\nconst d4CardCarouselChildHoverTransitionDeclaration = (attrs, breakpoint) => {\n  const {\n    duration,\n    delay,\n    speedCurve\n  } = module_styles_readModuleTransitionLeafAtBreakpoint(attrs, breakpoint);\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string'\n  });\n  const triple = `${duration} ${speedCurve} ${delay}`;\n  declarations.add('transition', `background ${triple}, box-shadow ${triple}, border ${triple}, padding ${triple}, border-radius ${triple}, transform ${triple}`);\n  return declarations.value;\n};\n\n/**\n * React function component for rendering module style.\n */\n\nconst card_carousel_child_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  var _getAttrByMode;\n  const badgeCustomPositionAttr = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.badge_custom_position?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'off';\n  const useImageAsBackground = getCardImageAsBackgroundMode(attrs?.image_as_background?.innerContent);\n  const showImageBackgroundStyles = 'on' === useImageAsBackground && cardModuleHasImage(attrs);\n  const applyImageWrapperHeight = showImageBackgroundStyles;\n  const buttonAlignAttr = dsmButtonDecorationAlignmentAsInnerContent(attrs?.button?.decoration?.button);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm_card_carousel_child > div:first-of-type, ${orderClass} .dsm_card_carousel_child_badge_text, ${orderClass} .dsm_card_carousel_child_image_background`,\n    attr: module_styles_getTransitionAttrForCommonStyle(attrs?.module?.decoration?.transition),\n    declarationFunction: () => {\n      const bp = 'tablet' === mode ? 'tablet' : 'phone' === mode ? 'phone' : 'desktop';\n      return d4CardCarouselChildHoverTransitionDeclaration(attrs, bp);\n    }\n  }), elements.style({\n    attrName: 'title'\n  }), elements.style({\n    attrName: 'image'\n  }), elements.style({\n    attrName: 'badge_background_color'\n  }), elements.style({\n    attrName: 'badge'\n  }), elements.style({\n    attrName: 'badgeFont'\n  }), elements.style({\n    attrName: 'badge_left_position'\n  }), elements.style({\n    attrName: 'badge_top_position'\n  }), elements.style({\n    attrName: 'button'\n  }), buttonAlignAttr ? /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et_pb_button_module_wrapper`,\n    attr: buttonAlignAttr,\n    declarationFunction: dsmButtonWrapperAlignDeclaration\n  }) : null, elements.style({\n    attrName: 'content_padding'\n  }), elements.style({\n    attrName: 'imageStyle'\n  }), elements.style({\n    attrName: 'overlayIconStyle'\n  }), elements.style({\n    attrName: 'image_width'\n  }), elements.style({\n    attrName: 'image_alignment'\n  }), elements.style({\n    attrName: 'subtitle'\n  }), elements.style({\n    attrName: 'content'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm_card_carousel ${orderClass}.dsm-show-overlay .et_overlay.dsm-icon.et_pb_inline_icon::before`,\n    attr: attrs?.hover_icon?.innerContent,\n    declarationFunction: buildLegacyPseudoIconFontCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm_card_carousel ${orderClass}.dsm-show-overlay .et_overlay.et_pb_inline_icon::before`,\n    attr: attrs?.icon_font_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm_card_carousel ${orderClass}.dsm-show-overlay .et_overlay.et_pb_inline_icon::before`,\n    attr: attrs?.overlay_icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm_card_carousel ${orderClass}.dsm-show-overlay .dsm_card_carousel_child_image_wrapper .et_overlay::before`,\n    attr: attrs?.overlay_color?.innerContent,\n    property: \"background-color\"\n  }), showImageBackgroundStyles ? /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_card_carousel_child_image_background`,\n    attr: attrs?.image?.innerContent,\n    declarationFunction: carouselChildImageBgDeclaration\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_card_carousel_child_image_background`,\n    attr: attrs?.image_background_position?.innerContent,\n    declarationFunction: module_styles_image_bg_position_declaration\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_card_carousel_child_image_background`,\n    attr: attrs?.image_background_repeat?.innerContent,\n    declarationFunction: module_styles_image_bg_repeat_declaration\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_card_carousel_child_image_background`,\n    attr: attrs?.image_background_animation_speed?.innerContent,\n    declarationFunction: module_styles_image_bg_animation_declaration\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_card_carousel_child_image_background`,\n    attr: attrs?.image_background_size?.innerContent,\n    property: \"background-size\"\n  })) : null, applyImageWrapperHeight && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_card_carousel_child_image_wrapper`,\n    attr: attrs?.image_background_height?.innerContent,\n    property: \"height\"\n  }), 'on' === badgeCustomPositionAttr && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_card_carousel_child_badge_text`,\n    attr: attrs?.badge_left_position?.innerContent,\n    property: \"left\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_card_carousel_child_badge_text`,\n    attr: attrs?.badge_top_position?.innerContent,\n    property: \"top\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_card_carousel_child_badge_text`,\n    attr: attrs?.badge_background_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm_card_carousel ${orderClass} .dsm_card_carousel_child_image_wrapper .dsm_card_carousel_child_image_background, .dsm_card_carousel ${orderClass} .dsm_card_carousel_child_image_wrapper img`,\n    attr: attrs?.image_width?.innerContent,\n    property: \"max-width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_card_carousel_child_image_wrapper`,\n    attr: attrs?.image_alignment?.innerContent,\n    declarationFunction: attrValue => {\n      const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n        returnType: 'string'\n      });\n      let justifyValue = '';\n      switch (attrValue.attrValue) {\n        case 'left':\n          justifyValue = 'flex-start';\n          break;\n        case 'center':\n          justifyValue = 'center';\n          break;\n        case 'right':\n          justifyValue = 'flex-end';\n          break;\n      }\n      declarations.add('display', `flex`);\n      declarations.add('justify-content', justifyValue);\n      return declarations.value;\n    }\n  }));\n};\n;// ./packages/module-library/card-carousel-child/merge-card-carousel-child-button-icon.js\n\n\n\n/**\n * @param {unknown} icon `button.decoration.button.*.value.icon`.\n * @return {boolean}\n */\nfunction iconBranchHasRenderableIcon(icon) {\n  if (!icon || typeof icon !== 'object') {\n    return false;\n  }\n  const settings = icon.settings;\n  if (typeof settings === 'string' && settings.trim() !== '') {\n    return true;\n  }\n  if (!settings || typeof settings !== 'object') {\n    return false;\n  }\n  const processed = (0,external_divi_iconLibrary_namespaceObject.processFontIcon)(settings);\n  return typeof processed === 'string' && processed.trim() !== '';\n}\n\n/**\n * Matches {@see CardCarouselChild::inner_content_desktop_toggle_is_on} for `custom_button`.\n *\n * @param {unknown} attrs Module attrs.\n * @return {boolean}\n */\nfunction customButtonIconToggleIsOn(attrs) {\n  const raw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.custom_button?.innerContent);\n  if (true === raw || 1 === raw || '1' === raw) {\n    return true;\n  }\n  return 'on' === raw;\n}\n\n/**\n * True when the child slide owns its button icon (custom toggle or explicit Design → Button glyph).\n *\n * @param {unknown} childAttrs Child module attrs.\n * @return {boolean}\n */\nfunction childUsesOwnButtonIcon(childAttrs) {\n  if (customButtonIconToggleIsOn(childAttrs)) {\n    return true;\n  }\n  const childDec = childAttrs?.button?.decoration?.button;\n  if (!childDec || typeof childDec !== 'object') {\n    return false;\n  }\n  return Object.keys(childDec).some(bp => iconBranchHasRenderableIcon(childDec[bp]?.value?.icon));\n}\n\n/**\n * Parent carousel sets the default button icon; children inherit when they have no renderable icon.\n * D4: child icon applies only when `custom_button` is on and the child has a glyph; otherwise parent icon.\n *\n * @param {unknown} childAttrs  Card item attrs.\n * @param {unknown} parentAttrs Parent carousel attrs (may be undefined).\n * @return {unknown} Child attrs with `button.decoration.button` icon merged from parent when needed.\n */\nfunction mergeCardCarouselChildButtonAttrsForDisplay(childAttrs, parentAttrs) {\n  if (!childAttrs || typeof childAttrs !== 'object') {\n    return childAttrs;\n  }\n  if (childUsesOwnButtonIcon(childAttrs)) {\n    return childAttrs;\n  }\n  if (!parentAttrs || typeof parentAttrs !== 'object') {\n    return childAttrs;\n  }\n  const parentButton = parentAttrs.button;\n  if (!parentButton || typeof parentButton !== 'object') {\n    return childAttrs;\n  }\n  const parentDec = parentButton.decoration?.button;\n  if (!parentDec || typeof parentDec !== 'object') {\n    return childAttrs;\n  }\n  const childButton = childAttrs.button;\n  const childDec = childButton && typeof childButton === 'object' && childButton.decoration && typeof childButton.decoration === 'object' ? childButton.decoration.button : null;\n  const outDec = {\n    ...(childDec && typeof childDec === 'object' ? childDec : {})\n  };\n  Object.keys(parentDec).forEach(bp => {\n    const parentBp = parentDec[bp];\n    const parentIcon = parentBp?.value?.icon;\n    if (!parentIcon || typeof parentIcon !== 'object') {\n      return;\n    }\n    const childBp = outDec[bp];\n    const childIcon = childBp?.value?.icon;\n    if (childIcon && typeof childIcon === 'object' && childIcon.enable === 'off') {\n      return;\n    }\n    if (iconBranchHasRenderableIcon(childIcon)) {\n      return;\n    }\n    const prev = childBp && typeof childBp === 'object' ? childBp : {};\n    const prevVal = prev.value && typeof prev.value === 'object' ? prev.value : {};\n    outDec[bp] = {\n      ...prev,\n      value: {\n        ...prevVal,\n        icon: parentIcon\n      }\n    };\n  });\n  return {\n    ...childAttrs,\n    button: {\n      ...(childButton && typeof childButton === 'object' ? childButton : {}),\n      decoration: {\n        ...(childButton?.decoration && typeof childButton.decoration === 'object' ? childButton.decoration : {}),\n        button: outDec\n      }\n    }\n  };\n}\n;// ./packages/module-library/card-carousel-child/edit.js\nfunction card_carousel_child_edit_extends() {\n  return card_carousel_child_edit_extends = Object.assign ? Object.assign.bind() : function (n) {\n    for (var e = 1; e < arguments.length; e++) {\n      var t = arguments[e];\n      for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n    }\n    return n;\n  }, card_carousel_child_edit_extends.apply(null, arguments);\n}\n\n\n\n\n// Divi package dependencies.\n\n\n\n// Custom dependencies.\n\n\n\n\n\n\n\n\n/**\n * React function component for registering module script data.\n */\n\nconst card_carousel_child_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\n\n/**\n * True when headingLink / plain string has non-whitespace text.\n *\n * @param {unknown} value Raw innerContent value.\n * @return {boolean} Whether text is present.\n */\nfunction plainTextHasContent(value) {\n  if (value == null || value === '') {\n    return false;\n  }\n  if ('string' === typeof value) {\n    return value.trim() !== '';\n  }\n  if ('object' === typeof value && null !== value && 'text' in value && 'string' === typeof value.text) {\n    return value.text.trim() !== '';\n  }\n  return false;\n}\n\n/**\n * True when rich HTML has visible text (ignores empty tags / &nbsp;).\n *\n * @param {string} html HTML string.\n * @return {boolean} Whether body text is present.\n */\nfunction richTextHasContent(html) {\n  if ('string' !== typeof html || '' === html.trim()) {\n    return false;\n  }\n  if ('undefined' !== typeof document) {\n    const tmp = document.createElement('div');\n    tmp.innerHTML = html;\n    return (tmp.textContent || '').trim() !== '';\n  }\n  return html.replace(/<[^>]*>/g, '').replace(/&nbsp;/gi, ' ').trim() !== '';\n}\nfunction card_carousel_child_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements,\n  parentAttrs,\n  childrenIds,\n  canvasId,\n  isLooped,\n  loopIndex\n}) {\n  var _attrs$content$innerC, _rawContentValue$text, _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _getAttrByMode4, _getAttrByMode5, _parentAttrs$module$a, _getAttrByMode6, _getAttrByMode7, _getAttrByMode8, _getAttrByMode9;\n  const subTitleAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.subtitle?.innerContent);\n  const subTitlePlain = subTitleAttr && 'object' === typeof subTitleAttr && null !== subTitleAttr && 'text' in subTitleAttr ? subTitleAttr.text : subTitleAttr;\n  /** Rich text: `value.text` (D5); migrator may leave a bare string at `value` before normalize. */\n  const rawContentValue = (_attrs$content$innerC = attrs?.content?.innerContent?.desktop?.value) !== null && _attrs$content$innerC !== void 0 ? _attrs$content$innerC : null;\n  const contentAttr = typeof rawContentValue === 'string' ? rawContentValue : (_rawContentValue$text = rawContentValue?.text) !== null && _rawContentValue$text !== void 0 ? _rawContentValue$text : '';\n  const badgeTextAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.badge_text?.innerContent);\n  const buttonTextAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_text?.innerContent);\n  const titleAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.title?.innerContent);\n  const hasNestedModules = Array.isArray(childrenIds) && childrenIds.length > 0;\n  const nestableLayoutDisplay = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.module?.decoration?.layout?.desktop?.value?.display)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'flex';\n  const nestableWrapperClassName = ['dsm-card-nestable', 'grid' === nestableLayoutDisplay ? 'et_grid_module' : 'et_flex_module'].join(' ');\n  const hasCardWrapper = hasNestedModules || plainTextHasContent(titleAttr) || plainTextHasContent(subTitlePlain) || richTextHasContent(contentAttr) || plainTextHasContent(buttonTextAttr);\n  const badgePositionAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.badge_position?.innerContent);\n  const useOverlay = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_overlay?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'off';\n  const parentBadgePositionAttr = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(parentAttrs?.badge_position?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'top_right';\n  const badgeCustomPosition = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.badge_custom_position?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : 'off';\n  const imageBgAnimationAttr = (_getAttrByMode5 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.image_background_animation?.innerContent)) !== null && _getAttrByMode5 !== void 0 ? _getAttrByMode5 : 'none';\n  const imageRaw = getCardImageAttrRaw(attrs);\n  const hasCardImage = cardModuleHasImage(attrs);\n  const imageAsBackgroundMode = getCardImageAsBackgroundMode(attrs?.image_as_background?.innerContent);\n  const parentStretchCarousel = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(parentAttrs?.stretch_image?.innerContent) === 'on';\n  const parentStretchInjected = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.parent_stretch_image?.innerContent) === 'on';\n  const childStretchSlide = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.stretch_image?.innerContent) === 'on';\n  const effectiveStretchInlineImg = parentStretchCarousel || parentStretchInjected || childStretchSlide;\n  const textColor = (_parentAttrs$module$a = parentAttrs?.module?.advanced?.text?.text?.desktop?.value?.color) !== null && _parentAttrs$module$a !== void 0 ? _parentAttrs$module$a : 'light';\n  const parentTextAdvanced = parentAttrs?.module?.advanced?.text;\n  let cardTextGroupClasses = '';\n  if (parentTextAdvanced && typeof parentTextAdvanced === 'object') {\n    cardTextGroupClasses = (0,external_divi_module_namespaceObject.textOptionsClassnames)(parentTextAdvanced).trim();\n  }\n  if ('' === cardTextGroupClasses) {\n    cardTextGroupClasses = 'et_pb_bg_layout_light et_pb_text_align_left';\n  } else if (!cardTextGroupClasses.includes('et_pb_bg_layout_')) {\n    var _parentTextAdvanced$t;\n    const c = (_parentTextAdvanced$t = parentTextAdvanced?.text?.desktop?.value?.color) !== null && _parentTextAdvanced$t !== void 0 ? _parentTextAdvanced$t : 'light';\n    const safe = 'dark' === c || 'light' === c ? c : 'light';\n    cardTextGroupClasses = `${cardTextGroupClasses} et_pb_bg_layout_${safe}`.trim();\n  }\n  const isCustomBadgePosition = 'off' === badgeCustomPosition && (0,lodash.isEmpty)(badgePositionAttr) ? `dsm_card_carousel_child_badge_${parentBadgePositionAttr}` : `dsm_card_carousel_child_badge_${badgePositionAttr}`;\n  const isImageBackground = 'on' === imageAsBackgroundMode && hasCardImage ? /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_card_carousel_child_image_background dsm_card_carousel_child_img\"\n  }) : null;\n  const isImage = 'off' === imageAsBackgroundMode && hasCardImage ? /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: imageRaw\n  }, resolvedImage => {\n    const src = resolveCardImageUrl(resolvedImage);\n    return 'string' === typeof src && '' !== src ? /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n      src: src,\n      className: 'off' === imageAsBackgroundMode && effectiveStretchInlineImg ? 'dsm_card_carousel_child_img dsm_card_carousel_image_stretch' : 'dsm_card_carousel_child_img',\n      alt: \"\"\n    }) : null;\n  }) : null;\n  const imagePopup = (_getAttrByMode6 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.image_popup?.innerContent)) !== null && _getAttrByMode6 !== void 0 ? _getAttrByMode6 : 'off';\n  const imagePopupSrc = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.image_popup_src?.innerContent);\n  const imageVideoPopup = (_getAttrByMode7 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.image_video_popup?.innerContent)) !== null && _getAttrByMode7 !== void 0 ? _getAttrByMode7 : 'off';\n  const imageVideoPopupUrl = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.image_video_popup_url?.innerContent);\n  const overlayOnHover = (_getAttrByMode8 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.overlay_on_hover?.innerContent)) !== null && _getAttrByMode8 !== void 0 ? _getAttrByMode8 : 'on';\n  const useIcon = (_getAttrByMode9 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_icon?.innerContent)) !== null && _getAttrByMode9 !== void 0 ? _getAttrByMode9 : 'on';\n  (0,external_vendor_React_.useEffect)(() => {\n    jQuery(function ($) {\n      const uniqueClass = `dsm_card_carousel_child_${id}`;\n      if ('on' === imagePopup && 'off' === imageVideoPopup) {\n        $('.dsm_card_carousel_child_image_wrapper').each(function () {\n          const mfpSrc = $(this).attr('data-mfp-src');\n          if (mfpSrc && mfpSrc !== 'undefined' && mfpSrc !== '') {\n            $(this).magnificPopup({\n              type: 'image',\n              removalDelay: 500,\n              mainClass: 'mfp-fade',\n              items: {\n                src: mfpSrc\n              },\n              image: {\n                verticalFit: true,\n                titleSrc: function () {\n                  return '';\n                }\n              },\n              callbacks: {\n                open: function () {\n                  this.container.addClass(uniqueClass + ' dsm-lightbox-custom');\n                },\n                imageLoadComplete: function () {\n                  const img = this.content.find('img');\n                  if (img.length) {\n                    const maxWidth = Math.min(img[0].naturalWidth, window.innerWidth * 0.9);\n                    const maxHeight = Math.min(img[0].naturalHeight, window.innerHeight * 0.9);\n                    img.css({\n                      'max-width': maxWidth + 'px',\n                      'max-height': maxHeight + 'px'\n                    });\n                  }\n                }\n              }\n            });\n          }\n        });\n      }\n      if ('off' === imagePopup && 'on' === imageVideoPopup) {\n        $('.dsm_card_carousel_child_image_wrapper').each(function () {\n          const videoUrl = $(this).attr('data-mfp-src');\n          if (videoUrl && videoUrl !== 'undefined' && videoUrl !== '' && (videoUrl.includes('youtube.com') || videoUrl.includes('youtu.be') || videoUrl.includes('vimeo.com') || videoUrl.includes('dailymotion.com'))) {\n            $(this).magnificPopup({\n              type: 'iframe',\n              removalDelay: 500,\n              iframe: {\n                markup: '<div class=\"mfp-iframe-scaler dsm-video-popup\">' + '<div class=\"mfp-close\"></div>' + '<iframe class=\"mfp-iframe\" frameborder=\"0\" allowfullscreen allow=\"autoplay\"></iframe>' + '</div>',\n                patterns: {\n                  youtube: {\n                    index: 'youtube.com/',\n                    id: 'v=',\n                    src: '//www.youtube.com/embed/%id%?autoplay=1&rel=0'\n                  },\n                  youtu_be: {\n                    index: 'youtu.be',\n                    id: '/',\n                    src: '//www.youtube.com/embed/%id%?autoplay=1&rel=0'\n                  },\n                  vimeo: {\n                    index: 'vimeo.com/',\n                    id: '/',\n                    src: '//player.vimeo.com/video/%id%?autoplay=1'\n                  },\n                  dailymotion: {\n                    index: 'dailymotion.com',\n                    id: function (url) {\n                      var m = url.match(/^.+dailymotion.com\\/(video|hub)\\/([^_]+)[^#]*(#video=([^_&]+))?/);\n                      if (m !== null) {\n                        if (m[4] !== undefined) {\n                          return m[4];\n                        }\n                        return m[2];\n                      }\n                      return null;\n                    },\n                    src: 'https://www.dailymotion.com/embed/video/%id%'\n                  }\n                },\n                srcAction: 'iframe_src'\n              },\n              mainClass: 'dsm-video-popup-wrap mfp-fade',\n              callbacks: {\n                open: function () {\n                  this.container.addClass(uniqueClass + ' dsm-lightbox-custom');\n                }\n              }\n            });\n          }\n        });\n      }\n    });\n  }, [imagePopup, imagePopupSrc, imageVideoPopup, imageVideoPopupUrl]);\n  const ShowIcon = 'on' === useIcon ? 'dsm-icon' : '';\n  const ShowOverlayOnHover = 'on' === overlayOnHover ? 'dsm_show_hover_overlay' : '';\n  const hasBadgeContent = plainTextHasContent(badgeTextAttr);\n  const showImageFigure = hasCardImage || hasBadgeContent;\n  const imageNBadgeMarkup = showImageFigure ? /*#__PURE__*/external_vendor_React_default().createElement(\"figure\", {\n    className: ['dsm_card_carousel_child_image_wrapper', isCustomBadgePosition].filter(Boolean).join(' '),\n    \"data-mfp-src\": 'on' === imagePopup && 'off' === imageVideoPopup ? imagePopupSrc : 'off' === imagePopup && 'on' === imageVideoPopup ? imageVideoPopupUrl : ''\n  }, isImageBackground, isImage, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: `et_overlay ${ShowIcon} et_pb_inline_icon ${ShowOverlayOnHover}`\n  }), !(0,lodash.isEmpty)(badgeTextAttr) && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_card_carousel_child_badge_text\"\n  }, elements.render({\n    attrName: 'badge_text'\n  }))) : null;\n  const attrsForButtonIcon = (0,external_vendor_React_.useMemo)(() => mergeCardCarouselChildButtonAttrsForDisplay(attrs, parentAttrs), [attrs, parentAttrs]);\n  const buttonIconDataAttrs = getDsmButtonIconDataAttrs(attrsForButtonIcon);\n  const hasButtonIcon = Object.keys(buttonIconDataAttrs).length > 0;\n  const buttonLinkClassName = ['et_pb_button', `et_pb_bg_layout_${textColor}`, hasButtonIcon ? 'et_pb_custom_button_icon' : ''].filter(Boolean).join(' ');\n  const ButtonMarkup = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"et_pb_button_module_wrapper\"\n  }, !(0,lodash.isEmpty)(buttonTextAttr) && /*#__PURE__*/external_vendor_React_default().createElement(\"a\", card_carousel_child_edit_extends({\n    className: buttonLinkClassName\n  }, buttonIconDataAttrs), elements.render(getDsmButtonTextRenderProps('button_text'))));\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    hasModuleClassName: false,\n    id: id,\n    name: name,\n    childrenIds: childrenIds,\n    scriptDataComponent: card_carousel_child_edit_ModuleScriptData,\n    stylesComponent: card_carousel_child_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n      params.classnamesInstance.add('swiper-slide');\n      if (!(0,lodash.isEqual)(imageBgAnimationAttr, 'none')) {\n        params.classnamesInstance.add('dsm_card_carousel_child_image_animation');\n        params.classnamesInstance.add(`dsm_card_carousel_child_image_animation_${imageBgAnimationAttr}`);\n      }\n      if ('on' === useOverlay) {\n        params.classnamesInstance.add('et_pb_has_overlay');\n      }\n      if ('on' === useOverlay && 'off' === overlayOnHover) {\n        params.classnamesInstance.add('dsm-card-overlay-off');\n      }\n      if ('on' === useOverlay && (hasCardImage || plainTextHasContent(badgeTextAttr))) {\n        params.classnamesInstance.add('dsm-show-overlay');\n      }\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), elements.styleComponents({\n    attrName: 'button'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"et_pb_module_inner\"\n  }, imageNBadgeMarkup, hasCardWrapper && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: `dsm_card_wrapper ${cardTextGroupClasses}`.trim()\n  }, elements.render({\n    attrName: 'title'\n  }), plainTextHasContent(subTitlePlain) && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_card_carousel_child_subtitle\"\n  }, elements.render({\n    attrName: 'subtitle'\n  })), richTextHasContent(contentAttr) && /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: contentAttr\n  }, resolvedContent => /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_card_carousel_child_description\",\n    dangerouslySetInnerHTML: {\n      __html: 'string' === typeof resolvedContent ? resolvedContent : ''\n    }\n  })), plainTextHasContent(buttonTextAttr) && ButtonMarkup, hasNestedModules ? /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: nestableWrapperClassName\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ChildModulesContainer, {\n    ids: childrenIds,\n    isLooped: isLooped,\n    loopIndex: loopIndex,\n    canvasId: canvasId\n  })) : /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: nestableWrapperClassName\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleAdd, {\n    moduleId: id,\n    basicModuleType: \"module\",\n    addChild: true\n  })))));\n}\n/* harmony default export */ const card_carousel_child_edit = (card_carousel_child_edit_Edit);\n;// ./packages/module-library/card-carousel-child/conversion-outline.js\n\n\nconst card_carousel_child_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    link_options: 'module.advanced.link',\n    text: 'module.advanced.text',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    margin_padding: 'module.decoration.spacing',\n    max_width: 'module.decoration.sizing',\n    height: 'module.decoration.sizing',\n    borders: {\n      default: 'module.decoration.border',\n      image: 'imageStyle.decoration.border',\n      badge: 'badge.decoration.border',\n      icon: 'overlayIconStyle.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow',\n      image: 'imageStyle.decoration.boxShadow',\n      badge: 'badge.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    fonts: {\n      badge: 'badge.decoration.font',\n      header: 'title.decoration.font',\n      body: 'content.decoration.bodyFont.body',\n      subhead: 'subtitle.decoration.font'\n    },\n    button: {\n      button: 'button'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    title: 'title.innerContent.*',\n    subtitle: 'subtitle.innerContent.*',\n    content: 'content.innerContent.*.text',\n    // Upload fields — map D4 URL to D5 `{ src }` leaf (same pattern as `circle-info-child`, `scroll-image`).\n    image: 'image.innerContent.*.src',\n    button_text: 'button_text.innerContent.*',\n    button_url: 'button_url.innerContent.*',\n    button_url_new_window: 'button_url_new_window.innerContent.*',\n    custom_button: 'custom_button.innerContent.*',\n    // D4 `advanced_fields['button']['button']` + `custom_button` (styles land on `button` element).\n    button_use_icon: 'button.decoration.button.*.icon.enable',\n    button_icon: 'button.decoration.button.*.icon.settings',\n    link_option_url: 'link_option_url.innerContent.*',\n    url_new_window: 'button_url_new_window.innerContent.*',\n    // D4: child `header_level` overrides; VB may only set `parent_header_level` (merged in PHP post-convert).\n    parent_header_level: 'title.decoration.font.font.*.headingLevel',\n    header_level: 'title.decoration.font.font.*.headingLevel',\n    // D4 serializes parent layout/button inheritance on the child shortcode; D5 FE merges from parent attrs in PHP.\n    parent_stretch_image: 'parent_stretch_image.innerContent.*',\n    parent_button: 'parent_button.innerContent.*',\n    parent_button_icon: 'parent_button_icon.innerContent.*',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*',\n    image_as_background: 'image_as_background.innerContent.*',\n    image_background_height: 'image_background_height.innerContent.*',\n    image_background_size: 'image_background_size.innerContent.*',\n    image_background_position: 'image_background_position.innerContent.*',\n    image_background_repeat: 'image_background_repeat.innerContent.*',\n    image_background_animation: 'image_background_animation.innerContent.*',\n    image_background_animation_speed: 'image_background_animation_speed.innerContent.*',\n    badge_text: 'badge_text.innerContent.*',\n    badge_position: 'badge_position.innerContent.*',\n    badge_custom_position: 'badge_custom_position.innerContent.*',\n    badge_left_position: 'badge_left_position.innerContent.*',\n    badge_top_position: 'badge_top_position.innerContent.*',\n    badge_background_color: 'badge_background_color.innerContent.*',\n    image_width: 'image_width.innerContent.*',\n    image_alignment: 'image_alignment.innerContent.*',\n    stretch_image: 'stretch_image.innerContent.*',\n    use_overlay: 'use_overlay.innerContent.*',\n    overlay_color: 'overlay_color.innerContent.*',\n    use_icon: 'use_icon.innerContent.*',\n    icon_font_size: 'icon_font_size.innerContent.*',\n    overlay_icon_color: 'overlay_icon_color.innerContent.*',\n    hover_icon: 'hover_icon.innerContent.*',\n    overlay_on_hover: 'overlay_on_hover.innerContent.*',\n    image_popup: 'image_popup.innerContent.*',\n    image_popup_src: 'image_popup_src.innerContent.*.src',\n    image_video_popup: 'image_video_popup.innerContent.*',\n    image_video_popup_url: 'image_video_popup_url.innerContent.*',\n    badge_url: 'badge_url.innerContent.*',\n    badge_url_new_window: 'badge_url_new_window.innerContent.*',\n    alt: 'alt.innerContent.*',\n    button_image_popup: 'button_image_popup.innerContent.*',\n    button_image_src: 'button_image_src.innerContent.*.src',\n    button_video_popup: 'button_video_popup.innerContent.*',\n    badge_padding: 'badge.decoration.spacing.*.padding',\n    content_padding: 'content_padding.decoration.spacing.*.padding'\n  },\n  valueExpansionFunctionMap: {\n    hover_icon: external_divi_conversion_namespaceObject.convertFontIcon,\n    button_icon: external_divi_conversion_namespaceObject.convertFontIcon,\n    badge_padding: external_divi_module_namespaceObject.convertSpacing,\n    content_padding: external_divi_module_namespaceObject.convertSpacing,\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/card-carousel-child/index.js\n// External library dependencies.\n\n// Wordpress dependencies.\n\n\n\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\nconst contentPaddingDefaultAttrs = {\n  decoration: {\n    spacing: {\n      desktop: {\n        value: {\n          padding: {\n            top: '20px',\n            right: '20px',\n            bottom: '20px',\n            left: '20px'\n          }\n        }\n      }\n    }\n  }\n};\n\n// Must mirror `module.json` → `attributes.button.default` (incl. `decoration.button` icon).\n// A partial `button` in `defaultAttrs` can replace schema defaults and drop icon styling (blank ::after).\nconst buttonDefaultAttrs = {\n  decoration: {\n    spacing: {\n      desktop: {\n        value: {\n          margin: {\n            top: '20px'\n          }\n        }\n      }\n    },\n    button: {\n      desktop: {\n        value: {\n          enable: 'off',\n          icon: {\n            enable: 'on',\n            onHover: 'on'\n          }\n        }\n      }\n    },\n    border: {\n      desktop: {\n        value: {\n          styles: {\n            all: {\n              color: ''\n            }\n          }\n        }\n      }\n    },\n    font: {\n      font: {\n        desktop: {\n          value: {\n            color: ''\n          }\n        }\n      }\n    }\n  }\n};\nconst CardCarouselChildModule = {\n  metadata: card_carousel_child_module_namespaceObject,\n  conversionOutline: card_carousel_child_conversion_outline_conversionOutline,\n  renderers: {\n    edit: card_carousel_child_edit,\n    styles: card_carousel_child_module_styles_ModuleStyles\n  },\n  defaultAttrs: {\n    ...card_carousel_child_module_default_render_attributes_namespaceObject,\n    content_padding: contentPaddingDefaultAttrs,\n    button: buttonDefaultAttrs,\n    custom_button: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    }\n  },\n  parentsName: ['dsm/card-carousel'],\n  callbacks: {\n    content: {\n      elements: external_divi_moduleUtils_namespaceObject.elementsCallbacks\n    }\n  },\n  settings: {\n    content: card_carousel_child_settings_content,\n    design: card_carousel_child_settings_design,\n    advanced: card_carousel_child_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    title: {\n      innerContent: {\n        desktop: {\n          value: 'Your Title Goes Here'\n        }\n      }\n    },\n    content: {\n      innerContent: {\n        desktop: {\n          value: {\n            text: 'Your content goes here. Edit or remove this text inline or in the module Content settings. You can also style every aspect of this content in the module Design settings and even apply custom CSS to this text in the module Advanced settings.'\n          }\n        }\n      }\n    },\n    image: {\n      innerContent: {\n        desktop: {\n          value: 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTA4MCIgaGVpZ2h0PSI1NDAiIHZpZXdCb3g9IjAgMCAxMDgwIDU0MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPHBhdGggZmlsbD0iI0VCRUJFQiIgZD0iTTAgMGgxMDgwdjU0MEgweiIvPgogICAgICAgIDxwYXRoIGQ9Ik00NDUuNjQ5IDU0MGgtOTguOTk1TDE0NC42NDkgMzM3Ljk5NSAwIDQ4Mi42NDR2LTk4Ljk5NWwxMTYuMzY1LTExNi4zNjVjMTUuNjItMTUuNjIgNDAuOTQ3LTE1LjYyIDU2LjU2OCAwTDQ0NS42NSA1NDB6IiBmaWxsLW9wYWNpdHk9Ii4xIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgICAgICA8Y2lyY2xlIGZpbGwtb3BhY2l0eT0iLjA1IiBmaWxsPSIjMDAwIiBjeD0iMzMxIiBjeT0iMTQ4IiByPSI3MCIvPgogICAgICAgIDxwYXRoIGQ9Ik0xMDgwIDM3OXYxMTMuMTM3TDcyOC4xNjIgMTQwLjMgMzI4LjQ2MiA1NDBIMjE1LjMyNEw2OTkuODc4IDU1LjQ0NmMxNS42Mi0xNS42MiA0MC45NDgtMTUuNjIgNTYuNTY4IDBMMTA4MCAzNzl6IiBmaWxsLW9wYWNpdHk9Ii4yIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgIDwvZz4KPC9zdmc+Cg=='\n        }\n      }\n    },\n    badge_text: {\n      innerContent: {\n        desktop: {\n          value: 'Badge Text'\n        }\n      }\n    },\n    button_url_new_window: {\n      innerContent: {\n        desktop: {\n          value: 'same_window'\n        }\n      }\n    },\n    custom_button: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    button_text: {\n      innerContent: {\n        desktop: {\n          value: 'Button'\n        }\n      }\n    },\n    image_as_background: {\n      innerContent: {\n        desktop: {\n          value: 'on'\n        }\n      }\n    },\n    image_background_height: {\n      innerContent: {\n        desktop: {\n          value: '240px'\n        }\n      }\n    },\n    image_background_size: {\n      innerContent: {\n        desktop: {\n          value: 'cover'\n        }\n      }\n    },\n    image_background_position: {\n      innerContent: {\n        desktop: {\n          value: 'center'\n        }\n      }\n    },\n    image_background_repeat: {\n      innerContent: {\n        desktop: {\n          value: 'no_repeat'\n        }\n      }\n    },\n    image_background_animation: {\n      innerContent: {\n        desktop: {\n          value: 'none'\n        }\n      }\n    },\n    image_background_animation_speed: {\n      innerContent: {\n        desktop: {\n          value: '300ms'\n        }\n      }\n    },\n    badge_custom_position: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    use_overlay: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    use_icon: {\n      innerContent: {\n        desktop: {\n          value: 'on'\n        }\n      }\n    },\n    overlay_on_hover: {\n      innerContent: {\n        desktop: {\n          value: 'on'\n        }\n      }\n    },\n    image_popup: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    image_video_popup: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    content_padding: contentPaddingDefaultAttrs,\n    button: buttonDefaultAttrs\n  }\n};\n/* harmony default export */ const card_carousel_child = (CardCarouselChildModule);\n;// ./packages/module-library/post-carousel/module.json\nconst post_carousel_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/post-carousel\",\"d4Shortcode\":\"dsm_post_carousel\",\"title\":\"Supreme Post Carousel\",\"titles\":\"Supreme Post Carousels\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/post-carousel\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}},\"styleProps\":{\"spacing\":{\"selector\":\"{{selector}} .dsm-post-carousel-container\",\"important\":true},\"sizing\":{\"selector\":\"{{selector}} .dsm-post-carousel-container\"}}},\"title\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-entry-title a\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"body\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-post-excerpt\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"date\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-posted-on\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"author\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-posted-by a\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"category\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-posted-category a\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"comments\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-posted-comments a\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"posts_number\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"posts_offset\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_overlay\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"overlay_icon\":{\"type\":\"object\",\"inlineEditor\":\"IconPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"overlay_icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"#ffffff\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"overlay_icon_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"25px\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"hover_overlay_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"#7ebec5\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_thumbnail\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"thumbnail_img_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"cover\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"lazyload\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"thumbnail_height\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_title\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_excerpt\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"excerpt_length\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"include_current_post\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"page_included_categories\":{\"type\":\"object\",\"inlineEditor\":\"checkboxesContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":[\"all\"]}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_date\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"meta_date\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"post_orderby\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"post_sortby\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"meta_seperator\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"|\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_author\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_comments\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_readmore\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"readmore_text\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"Readmore\"}}},\"childrenSanitizer\":\"et_core_esc_previously\",\"tagName\":\"span\"},\"use_bottom\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"bottom_date\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"selector\":\"{{selector}} .dsm-bottom-meta .dsm-posted-on\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"bottom_author\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"selector\":\"{{selector}} .dsm-bottom-meta .dsm-posted-by a\",\"default\":{\"inlineContent\":{\"desktop\":{\"value\":\"on\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slider_effect\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"inlineContent\":{\"desktop\":{\"value\":\"default\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slider_effect_shadows\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slider_effect_coverflow_rotate\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"30\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slider_effect_coverflow_depth\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"100\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"columns\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"3\"},\"tablet\":{\"value\":\"2\"},\"phone\":{\"value\":\"1\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"rows_per_view\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"1\"},\"tablet\":{\"value\":\"2\"},\"phone\":{\"value\":\"1\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slide_to_scroll\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"1\"},\"tablet\":{\"value\":\"1\"},\"phone\":{\"value\":\"1\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"multiple_slide_row\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slide_row\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"1\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"centered_slides\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"spacing\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"30\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"speed\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"500\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"loop\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"autoplay\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"autoplay_speed\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"5000\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"autoplay_viewport\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"50%\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"mousewheel\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"pause_on_hover\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"inlineContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_pagi\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"pagi_position\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"-40\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"pagi_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"#d8d8d8\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"pagi_active_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"#7ebec5\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"pagi_style\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"bullets\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_navi\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"navi_position\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"50%\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"left_navi_position\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"-50px\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"right_navi_position\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"-50px\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"navi_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"40\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_prev_icon\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_next_icon\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"next_icon\":{\"type\":\"object\",\"inlineEditor\":\"IconPickerContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"navi_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"#7ebec5\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"navi_background_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"post_equal_height\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"touch_move\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"grab\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"post_item_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"post_entry_design_tab\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"title\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"bottom_meta_design_tab\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"date\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"meta_alignment\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"left\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"60px\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slider_orientation\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"slider_container_height\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"slider_vertical_height_msg\":{\"type\":\"object\",\"inlineEditor\":\"WarningContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"content_wrapper\":{\"type\":\"object\",\"inlineEditor\":\"\",\"selector\":\"{{selector}} .dsm-post-carousel-item .dsm-entry-wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\",\"settings\":{\"decoration\":{\"spacing\":{}}},\"styleProps\":{\"spacing\":{\"selector\":\"{{selector}} .dsm-post-carousel-item .dsm-entry-wrapper\",\"important\":true}}},\"entryMetaContainer\":{\"type\":\"object\",\"inlineEditor\":\"\",\"selector\":\"{{selector}} .dsm-post-carousel-item .dsm-entry-meta\",\"childrenSanitizer\":\"et_core_esc_previously\",\"settings\":{\"decoration\":{\"spacing\":{},\"background\":{}}},\"styleProps\":{\"spacing\":{\"selector\":\"{{selector}} .dsm-post-carousel-item .dsm-entry-meta\",\"important\":true},\"border\":{\"selector\":\"{{selector}} .dsm-post-carousel-item .dsm-entry-meta\"},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-post-carousel-item .dsm-entry-meta\",\"useOverlay\":true},\"background\":{\"selector\":\"{{selector}} .dsm-post-carousel-item .dsm-entry-meta\"}}},\"pagi_ver_position\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"pagi_ver_placement\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"navi_hori_position\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"50%\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"top_navi_ver_position\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"-50px\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"bottom_navi_ver_position\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"-50px\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"prev_icon\":{\"type\":\"object\",\"inlineEditor\":\"IconPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"post_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"term_ids\":{\"type\":\"object\",\"inlineEditor\":\"CheckboxContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_category\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"post_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-post-carousel-wrapper .dsm-post-carousel-item\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"postItemStyle\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-post-carousel-wrapper .dsm-post-carousel-item\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-post-carousel-wrapper .dsm-post-carousel-item\"},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-post-carousel-wrapper .dsm-post-carousel-item\",\"useOverlay\":true}}},\"thumbnailStyle\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-post-carousel-wrapper .dsm-post-carousel-item .dsm-entry-image img\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-post-carousel-wrapper .dsm-post-carousel-item .dsm-entry-image img\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-post-carousel-wrapper .dsm-post-carousel-item .dsm-entry-image img img\",\"useOverlay\":true},\"filters\":{\"selector\":\"{{selector}} .dsm-post-carousel-wrapper .dsm-post-carousel-item .dsm-entry-image img\",\"important\":true}}},\"navigationStyle\":{\"type\":\"object\",\"selector\":\"{{selector}} .swiper-button-prev, {{selector}} .swiper-button-next\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .swiper-button-prev, {{selector}} .swiper-button-next\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .swiper-button-prev, {{selector}} .swiper-button-next\",\"useOverlay\":true}}},\"bottomStyle\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-post-carousel-wrapper .dsm-post-carousel-item .dsm-bottom-meta .dsm-bottom-meta-image\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-post-carousel-wrapper .dsm-post-carousel-item .dsm-bottom-meta .dsm-bottom-meta-image\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-post-carousel-wrapper .dsm-post-carousel-item .dsm-bottom-meta .dsm-bottom-meta-image\",\"useOverlay\":true}}},\"bottomMetaContainer\":{\"type\":\"object\",\"inlineEditor\":\"\",\"selector\":\"{{selector}} .dsm-post-carousel-item .dsm-bottom-meta\",\"childrenSanitizer\":\"et_core_esc_previously\",\"settings\":{\"decoration\":{\"spacing\":{},\"background\":{}}},\"styleProps\":{\"spacing\":{\"selector\":\"{{selector}} .dsm-post-carousel-item .dsm-bottom-meta\",\"important\":true},\"border\":{\"selector\":\"{{selector}} .dsm-post-carousel-item .dsm-bottom-meta\"},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-post-carousel-item .dsm-bottom-meta\",\"useOverlay\":true},\"background\":{\"selector\":\"{{selector}} .dsm-post-carousel-item .dsm-bottom-meta\"}}},\"readmore\":{\"type\":\"object\",\"label\":\"Read More Button\",\"selector\":\"{{selector}}.et_pb_module .dsm-readmore-wrap .et_pb_button_module_wrapper .dsm-readmore-btn.et_pb_button\",\"supportsCustomAttributes\":true,\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}},\"default\":{\"decoration\":{\"button\":{\"desktop\":{\"value\":{\"enable\":\"off\",\"icon\":{\"enable\":\"on\",\"onHover\":\"on\"}}}},\"border\":{\"desktop\":{\"value\":{\"styles\":{\"all\":{\"color\":\"\"}}}}},\"font\":{\"font\":{\"desktop\":{\"value\":{\"color\":\"\"}}}},\"spacing\":{\"desktop\":{\"value\":{\"margin\":{\"top\":\"15px\"}}}}}},\"elementType\":\"button\",\"styleProps\":{\"alignment\":{\"selector\":\"{{selector}}.et_pb_module .dsm-readmore-wrap .et_pb_button_module_wrapper\"},\"sizing\":{\"selector\":\"{{selector}}.et_pb_module .dsm-readmore-wrap .et_pb_button_module_wrapper\",\"propertySelectors\":{\"desktop\":{\"value\":{\"margin-left\":\"{{selector}}.et_pb_module .dsm-readmore-wrap .et_pb_button_module_wrapper\",\"margin-right\":\"{{selector}}.et_pb_module .dsm-readmore-wrap .et_pb_button_module_wrapper\"}},\"tablet\":{\"value\":{\"margin-left\":\"{{selector}}.et_pb_module .dsm-readmore-wrap .et_pb_button_module_wrapper\",\"margin-right\":\"{{selector}}.et_pb_module .dsm-readmore-wrap .et_pb_button_module_wrapper\"}},\"phone\":{\"value\":{\"margin-left\":\"{{selector}}.et_pb_module .dsm-readmore-wrap .et_pb_button_module_wrapper\",\"margin-right\":\"{{selector}}.et_pb_module .dsm-readmore-wrap .et_pb_button_module_wrapper\"}}}},\"button\":{\"propertySelectors\":{\"desktop\":{\"value\":{\"text-align\":\"{{selector}}.et_pb_module .dsm-readmore-wrap .et_pb_button_module_wrapper\"}},\"tablet\":{\"value\":{\"text-align\":\"{{selector}}.et_pb_module .dsm-readmore-wrap .et_pb_button_module_wrapper\"}},\"phone\":{\"value\":{\"text-align\":\"{{selector}}.et_pb_module .dsm-readmore-wrap .et_pb_button_module_wrapper\"}}}},\"font\":{\"important\":{\"font\":{\"desktop\":{\"value\":{\"color\":true,\"font-size\":true,\"letter-spacing\":true}}}}},\"spacing\":{\"important\":true}}}}}');\n;// ./packages/module-library/post-carousel/module-default-render-attributes.json\nconst post_carousel_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"module\":{\"decoration\":{\"spacing\":{\"desktop\":{\"value\":{\"margin\":{\"bottom\":\"60px\"}}}}}},\"title\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"headingLevel\":\"h2\"}}}}}},\"post_type\":{\"innerContent\":{\"desktop\":{\"value\":\"page\"}}},\"posts_number\":{\"innerContent\":{\"desktop\":{\"value\":\"10\"}}},\"posts_offset\":{\"innerContent\":{\"desktop\":{\"value\":\"0\"}}},\"post_orderby\":{\"innerContent\":{\"desktop\":{\"value\":\"date\"}}},\"post_sortby\":{\"innerContent\":{\"desktop\":{\"value\":\"desc\"}}},\"meta_date\":{\"innerContent\":{\"desktop\":{\"value\":\"M j, Y\"}}},\"use_thumbnail\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"use_title\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"use_excerpt\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"excerpt_length\":{\"innerContent\":{\"desktop\":{\"value\":\"50\"}}},\"include_current_post\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"page_included_categories\":{\"innerContent\":{\"desktop\":{\"value\":[\"all\"]}}},\"use_category\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"use_date\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"meta_seperator\":{\"innerContent\":{\"desktop\":{\"value\":\"|\"}}},\"use_author\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"use_comments\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"use_readmore\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"readmore_text\":{\"innerContent\":{\"desktop\":{\"value\":\"Readmore\"}}},\"use_bottom\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"bottom_date\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"bottom_author\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"slider_orientation\":{\"innerContent\":{\"desktop\":{\"value\":\"horizontal\"}}},\"slider_container_height\":{\"innerContent\":{\"desktop\":{\"value\":\"300px\"}}},\"slider_effect\":{\"innerContent\":{\"desktop\":{\"value\":\"default\"}}},\"slider_effect_shadows\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"content_wrapper\":{\"decoration\":{\"spacing\":{\"desktop\":{\"value\":{\"padding\":{\"top\":\"20px\",\"right\":\"20px\",\"bottom\":\"20px\",\"left\":\"20px\"}}}}}},\"entryMetaContainer\":{\"decoration\":{\"spacing\":{\"desktop\":{\"value\":{\"padding\":{\"top\":\"0px\",\"right\":\"0px\",\"bottom\":\"0px\",\"left\":\"0px\"}}}}}},\"bottomMetaContainer\":{\"decoration\":{\"spacing\":{\"desktop\":{\"value\":{\"padding\":{\"top\":\"0px\",\"right\":\"0px\",\"bottom\":\"0px\",\"left\":\"0px\"}}}}}},\"columns\":{\"innerContent\":{\"desktop\":{\"value\":\"3\"},\"tablet\":{\"value\":\"2\"},\"phone\":{\"value\":\"1\"}}},\"rows_per_view\":{\"innerContent\":{\"desktop\":{\"value\":\"1\"},\"tablet\":{\"value\":\"2\"},\"phone\":{\"value\":\"1\"}}},\"slide_to_scroll\":{\"innerContent\":{\"desktop\":{\"value\":\"1\"},\"tablet\":{\"value\":\"1\"},\"phone\":{\"value\":\"1\"}}},\"slide_row\":{\"innerContent\":{\"desktop\":{\"value\":\"1\"}}},\"spacing\":{\"innerContent\":{\"desktop\":{\"value\":\"30\"}}},\"speed\":{\"innerContent\":{\"desktop\":{\"value\":\"500\"}}},\"loop\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"autoplay\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"autoplay_speed\":{\"innerContent\":{\"desktop\":{\"value\":\"5000\"}}},\"autoplay_viewport\":{\"innerContent\":{\"desktop\":{\"value\":\"50%\"}}},\"mousewheel\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"pause_on_hover\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"use_pagi\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"use_navi\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"grab\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"slider_effect_coverflow_rotate\":{\"innerContent\":{\"desktop\":{\"value\":\"30\"}}},\"slider_effect_coverflow_depth\":{\"innerContent\":{\"desktop\":{\"value\":\"100\"}}},\"multiple_slide_row\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"touch_move\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"centered_slides\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"thumbnail_img_type\":{\"innerContent\":{\"desktop\":{\"value\":\"cover\"}}},\"thumbnail_height\":{\"innerContent\":{\"desktop\":{\"value\":\"250px\"}}},\"lazyload\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"meta_alignment\":{\"innerContent\":{\"desktop\":{\"value\":\"left\"}}},\"navi_hori_position\":{\"innerContent\":{\"desktop\":{\"value\":\"50%\"}}},\"top_navi_ver_position\":{\"innerContent\":{\"desktop\":{\"value\":\"-50px\"}}},\"bottom_navi_ver_position\":{\"innerContent\":{\"desktop\":{\"value\":\"-50px\"}}},\"navi_position\":{\"innerContent\":{\"desktop\":{\"value\":\"50%\"}}},\"left_navi_position\":{\"innerContent\":{\"desktop\":{\"value\":\"-50px\"}}},\"right_navi_position\":{\"innerContent\":{\"desktop\":{\"value\":\"-50px\"}}},\"navi_size\":{\"innerContent\":{\"desktop\":{\"value\":\"40px\"}}},\"use_prev_icon\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"prev_icon\":{\"innerContent\":{\"desktop\":{\"value\":{\"type\":\"divi\",\"unicode\":\"&#x34;\",\"weight\":\"400\"}}}},\"use_next_icon\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"next_icon\":{\"innerContent\":{\"desktop\":{\"value\":{\"type\":\"divi\",\"unicode\":\"&#x35;\",\"weight\":\"400\"}}}},\"navi_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#7ebec5\"}}},\"pagi_position\":{\"innerContent\":{\"desktop\":{\"value\":\"-40px\"}}},\"pagi_ver_position\":{\"innerContent\":{\"desktop\":{\"value\":\"50%\"}}},\"pagi_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#d8d8d8\"}}},\"pagi_active_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#7ebec5\"}}},\"pagi_ver_placement\":{\"innerContent\":{\"desktop\":{\"value\":\"right\"}}},\"pagi_style\":{\"innerContent\":{\"desktop\":{\"value\":\"bullets\"}}},\"use_overlay\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"overlay_icon\":{\"innerContent\":{\"desktop\":{\"value\":{\"type\":\"divi\",\"unicode\":\"L\",\"weight\":\"400\"}}}},\"overlay_icon_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#ffffff\"}}},\"overlay_icon_size\":{\"innerContent\":{\"desktop\":{\"value\":\"25px\"}}},\"hover_overlay_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#7ebec5\"}}},\"image_width\":{\"innerContent\":{\"desktop\":{\"value\":\"60px\"}}},\"post_equal_height\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"post_entry_design_tab\":{\"innerContent\":{\"desktop\":{\"value\":\"title\"}}},\"bottom_meta_design_tab\":{\"innerContent\":{\"desktop\":{\"value\":\"date\"}}},\"readmore\":{\"decoration\":{\"button\":{\"desktop\":{\"value\":{\"enable\":\"off\"}}},\"spacing\":{\"desktop\":{\"value\":{\"margin\":{\"top\":\"15px\"}}}}}}}');\n;// ./packages/module-library/post-carousel/pc-attr-helpers.js\n\n\n/**\n * Whether a module \"on/off\" innerContent value is on (matches PHP `PostCarousel::pc_toggle_is_on`).\n *\n * @param {unknown} raw Attribute value from attrs / getAttrByMode.\n * @return {boolean}\n */\nconst isPcToggleOn = raw => true === raw || 1 === raw || '1' === raw || 'on' === raw;\n\n/**\n * @param {unknown} node Builder attr node (may be Immutable).\n * @return {unknown}\n */\nconst toPlain = node => {\n  if (node == null) {\n    return node;\n  }\n  if (typeof node === 'object' && typeof node.toJS === 'function') {\n    return node.toJS();\n  }\n  return node;\n};\n\n/**\n * @param {unknown} obj Plain object or Immutable Map-like.\n * @param {string}  key\n * @return {unknown}\n */\nconst pickKey = (obj, key) => {\n  if (obj == null) {\n    return undefined;\n  }\n  if (typeof obj.get === 'function') {\n    const v = obj.get(key);\n    if (v !== undefined) {\n      return v;\n    }\n  }\n  return obj[key];\n};\n\n/**\n * `attrs[attrKey].innerContent.desktop.value` (Immutable-safe for Visual Builder).\n *\n * @param {Object|undefined} attrs   Module attrs root.\n * @param {string}             attrKey Attribute name (e.g. `include_current_post`).\n * @return {unknown}\n */\nconst getInnerContentDesktopValue = (attrs, attrKey) => {\n  let node = pickKey(attrs, attrKey);\n  node = toPlain(node);\n  if (!node || typeof node !== 'object') {\n    return undefined;\n  }\n  let ic = pickKey(node, 'innerContent');\n  ic = toPlain(ic);\n  if (!ic || typeof ic !== 'object') {\n    return undefined;\n  }\n  let desktop = pickKey(ic, 'desktop');\n  desktop = toPlain(desktop);\n  if (!desktop || typeof desktop !== 'object') {\n    return undefined;\n  }\n  return pickKey(desktop, 'value');\n};\n\n/**\n * `readmore.decoration.button` subtree (plain object) for breakpoint iteration.\n *\n * @param {Object|undefined} attrs Module attrs (often Immutable in the Visual Builder).\n * @return {Object|undefined}\n */\nconst getReadmoreDecorationButton = attrs => {\n  let readmore = pickKey(attrs, 'readmore');\n  readmore = toPlain(readmore);\n  if (!readmore || typeof readmore !== 'object') {\n    return undefined;\n  }\n  let decoration = pickKey(readmore, 'decoration');\n  decoration = toPlain(decoration);\n  if (!decoration || typeof decoration !== 'object') {\n    return undefined;\n  }\n  let button = pickKey(decoration, 'button');\n  button = toPlain(button);\n  return button && typeof button === 'object' ? button : undefined;\n};\n\n/**\n * Post type slug for REST / taxonomy UI (desktop leaf) when omitted after migration.\n *\n * @param {Object} attrs Module attrs.\n * @return {string|undefined}\n */\nconst getPostTypeDesktopSlug = attrs => {\n  var _attrs$post_type$inne;\n  return (_attrs$post_type$inne = attrs?.post_type?.innerContent?.desktop?.value) !== null && _attrs$post_type$inne !== void 0 ? _attrs$post_type$inne : post_carousel_module_default_render_attributes_namespaceObject.post_type?.innerContent?.desktop?.value;\n};\n;// ./packages/module-library/post-carousel/settings-content.js\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\n\n\n\n\nconst pcIc = key => post_carousel_module_default_render_attributes_namespaceObject[key]?.innerContent;\nfunction post_carousel_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _getAttrByMode4, _getAttrByMode5, _getAttrByMode6, _getAttrByMode7, _getAttrByMode8, _getAttrByMode9, _getAttrByMode0, _getAttrByMode1, _getAttrByMode10, _getAttrByMode11, _getAttrByMode12;\n  const useThumbnail = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_thumbnail?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'on';\n  const sliderOrientation = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_orientation?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'horizontal';\n  const useReadMore = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_readmore?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'off';\n  const useDate = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_date?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : 'on';\n  const useExcerpt = (_getAttrByMode5 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_excerpt?.innerContent)) !== null && _getAttrByMode5 !== void 0 ? _getAttrByMode5 : 'on';\n  const useCategory = (_getAttrByMode6 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_category?.innerContent)) !== null && _getAttrByMode6 !== void 0 ? _getAttrByMode6 : 'off';\n  const useComments = (_getAttrByMode7 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_comments?.innerContent)) !== null && _getAttrByMode7 !== void 0 ? _getAttrByMode7 : 'off';\n  const useBottom = (_getAttrByMode8 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_bottom?.innerContent)) !== null && _getAttrByMode8 !== void 0 ? _getAttrByMode8 : 'off';\n  const sliderEffect = (_getAttrByMode9 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_effect?.innerContent)) !== null && _getAttrByMode9 !== void 0 ? _getAttrByMode9 : 'default';\n  const multipleSlideRow = (_getAttrByMode0 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.multiple_slide_row?.innerContent)) !== null && _getAttrByMode0 !== void 0 ? _getAttrByMode0 : 'off';\n  const centeredSlides = (_getAttrByMode1 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.centered_slides?.innerContent)) !== null && _getAttrByMode1 !== void 0 ? _getAttrByMode1 : 'off';\n  const autoPlay = (_getAttrByMode10 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.autoplay?.innerContent)) !== null && _getAttrByMode10 !== void 0 ? _getAttrByMode10 : 'on';\n  const touchMove = (_getAttrByMode11 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.touch_move?.innerContent)) !== null && _getAttrByMode11 !== void 0 ? _getAttrByMode11 : 'off';\n  const postTypeDesktopSlug = getPostTypeDesktopSlug(attrs);\n  const isPagePostType = 'page' === postTypeDesktopSlug;\n  const currentPostType = get_post_type(postTypeDesktopSlug);\n  const post_type = (_getAttrByMode12 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.post_type?.innerContent)) !== null && _getAttrByMode12 !== void 0 ? _getAttrByMode12 : 'page';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"content\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(post_type_control, {\n    attrName: \"post_type.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Post Type', 'dsm-supreme-modules-pro-for-divi')\n  }), isPagePostType && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"page_included_categories.innerContent\",\n    defaultAttr: pcIc('page_included_categories'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Included Categories', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Same options as Divi Blog when the post type is Pages.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.CheckboxesContainer, {\n    options: [{\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('All Categories', 'dsm-supreme-modules-pro-for-divi'),\n      value: 'all'\n    }, {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Current Category', 'dsm-supreme-modules-pro-for-divi'),\n      value: 'current'\n    }]\n  })), !isPagePostType && currentPostType && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, currentPostType.taxonomies.map((taxonomyType, index) => {\n    return /*#__PURE__*/external_vendor_React_default().createElement(taxonomy_control, {\n      key: index,\n      type: taxonomyType.name,\n      attrName: \"term_ids.innerContent\",\n      label: taxonomyType.label\n    });\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"include_current_post.innerContent\",\n    defaultAttr: pcIc('include_current_post'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Include Current Post', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('On singular pages, the post you are viewing is normally hidden in this carousel (same as Divi Blog). Enable to show it as a slide. If excerpts are on, nested carousel output is skipped while generating text to avoid infinite loops.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"posts_number.innerContent\",\n    defaultAttr: pcIc('posts_number'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Post Count', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"posts_offset.innerContent\",\n    defaultAttr: pcIc('posts_offset'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Post Offset Number', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"meta_date.innerContent\",\n    defaultAttr: pcIc('meta_date'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Date Format', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If you would like to adjust the date format, input the appropriate PHP date format here.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"post_orderby.innerContent\",\n    defaultAttr: pcIc('post_orderby'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Post Date Orderby', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      date: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Published Post Date', 'dsm-supreme-modules-pro-for-divi')\n      },\n      modified: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Modified Post Date', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"post_sortby.innerContent\",\n    defaultAttr: pcIc('post_sortby'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Sortby', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      asc: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Older Post (Ascending Order)', 'dsm-supreme-modules-pro-for-divi')\n      },\n      desc: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Latest Post (Descending Order)', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"element\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Elements', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_thumbnail.innerContent\",\n    defaultAttr: pcIc('use_thumbnail'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Featured Image', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"lazyload.innerContent\",\n    defaultAttr: pcIc('lazyload'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enabled Lazy Load', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If enable, images will be lazy loaded (Lazy loading images can improve performance, but it may not work with all performance caching plugins. Please test your settings before enabling this option).', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useThumbnail\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_title.innerContent\",\n    defaultAttr: pcIc('use_title'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Title', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_excerpt.innerContent\",\n    defaultAttr: pcIc('use_excerpt'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Excerpt', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"excerpt_length.innerContent\",\n    defaultAttr: pcIc('excerpt_length'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Excerpt Text', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useExcerpt,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Maximum number of words in the excerpt (matches the builder preview). Leave blank for default (50).', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_category.innerContent\",\n    defaultAttr: pcIc('use_category'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Category', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'page' !== post_type\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_date.innerContent\",\n    defaultAttr: pcIc('use_date'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Date', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"meta_seperator.innerContent\",\n    defaultAttr: pcIc('meta_seperator'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Meta Seperator', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useDate || 'on' === useCategory || 'on' === useComments,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_author.innerContent\",\n    defaultAttr: pcIc('use_author'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Author', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_comments.innerContent\",\n    defaultAttr: pcIc('use_comments'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Comments', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Display the comment count in the post meta row with a link to comments.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_readmore.innerContent\",\n    defaultAttr: pcIc('use_readmore'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Readmore Button', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"readmore_text.innerContent\",\n    defaultAttr: pcIc('readmore_text'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Readmore Text', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useReadMore,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_bottom.innerContent\",\n    defaultAttr: pcIc('use_bottom'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Bottom Meta Elements', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"bottom_date.innerContent\",\n    defaultAttr: pcIc('bottom_date'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Date', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useBottom\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"bottom_author.innerContent\",\n    defaultAttr: pcIc('bottom_author'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Author', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useBottom\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"carouselSettings\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Carousel Settings', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"slider_orientation.innerContent\",\n    defaultAttr: pcIc('slider_orientation'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Carousel Orientation', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      horizontal: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Horizontal', 'dsm-supreme-modules-pro-for-divi')\n      },\n      vertical: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Vertical', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"slider_container_height.innerContent\",\n    defaultAttr: pcIc('slider_container_height'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Height', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'vertical' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 100,\n    max: 2000,\n    step: 10,\n    defaultUnit: 'px'\n  })), 'vertical' === sliderOrientation && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.WarningContainer, {\n    name: \"height-app-id-notice\",\n    value: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Increase Height If the content is being cut.', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"slider_effect.innerContent\",\n    defaultAttr: pcIc('slider_effect'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Carousel Effect', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'horizontal' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      default: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide', 'dsm-supreme-modules-pro-for-divi')\n      },\n      coverflow: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Coverflow', 'dsm-supreme-modules-pro-for-divi')\n      },\n      flip: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Flip', 'dsm-supreme-modules-pro-for-divi')\n      },\n      cube: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Cube', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"slider_effect_shadows.innerContent\",\n    defaultAttr: pcIc('slider_effect_shadows'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Shadow', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'default' !== sliderEffect\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"slider_effect_coverflow_rotate.innerContent\",\n    defaultAttr: pcIc('slider_effect_coverflow_rotate'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Coverflow Rotate', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'coverflow' === sliderEffect\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 30,\n    max: 100,\n    step: 1,\n    defaultUnit: ''\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"slider_effect_coverflow_depth.innerContent\",\n    defaultAttr: pcIc('slider_effect_coverflow_depth'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Coverflow Depth', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'coverflow' === sliderEffect\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 500,\n    step: 1,\n    defaultUnit: ''\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"columns.innerContent\",\n    defaultAttr: {\n      desktop: {\n        value: '3'\n      },\n      tablet: {\n        value: '2'\n      },\n      phone: {\n        value: '1'\n      }\n    },\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slides To Show', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      responsive: true\n    },\n    visible: 'horizontal' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 12,\n    step: 1,\n    defaultUnit: ''\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"rows_per_view.innerContent\",\n    defaultAttr: {\n      desktop: {\n        value: '1'\n      },\n      tablet: {\n        value: '2'\n      },\n      phone: {\n        value: '1'\n      }\n    },\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slides To Show', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      responsive: true\n    },\n    visible: 'vertical' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 12,\n    step: 1,\n    defaultUnit: ''\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"slide_to_scroll.innerContent\",\n    defaultAttr: pcIc('slide_to_scroll'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slides To Scroll', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      responsive: true\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 9,\n    step: 1,\n    defaultUnit: ''\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"multiple_slide_row.innerContent\",\n    defaultAttr: pcIc('multiple_slide_row'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Multiple Row', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('To use multirow layout.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'horizontal' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"slide_row.innerContent\",\n    defaultAttr: pcIc('slide_row'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Row Per Slide', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === multipleSlideRow\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 5,\n    step: 1,\n    defaultUnit: ''\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"centered_slides.innerContent\",\n    defaultAttr: pcIc('centered_slides'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Centered Mode', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If enable, then active slide will be centered, not always on the left side.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"spacing.innerContent\",\n    defaultAttr: pcIc('spacing'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Spacing', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 5,\n    max: 100,\n    step: 1,\n    defaultUnit: ''\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"speed.innerContent\",\n    defaultAttr: pcIc('speed'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Transition Duration', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    max: 5000,\n    step: 100,\n    min: 1,\n    defaultUnit: ''\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"loop.innerContent\",\n    defaultAttr: pcIc('loop'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Infinite Loop', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'off' === centeredSlides && 'off' === multipleSlideRow\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"autoplay.innerContent\",\n    defaultAttr: pcIc('autoplay'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Autoplay', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"autoplay_speed.innerContent\",\n    defaultAttr: pcIc('autoplay_speed'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Autoplay Speed', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === autoPlay\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 10000,\n    step: 500,\n    defaultUnit: ''\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"autoplay_viewport.innerContent\",\n    defaultAttr: pcIc('autoplay_viewport'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Autoplay Only On Viewport', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Autoplay when in viewport.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === autoPlay\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    step: 1,\n    defaultUnit: '%'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"mousewheel.innerContent\",\n    defaultAttr: pcIc('mousewheel'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Mouse Wheel', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('To use mousewheel mousewheel swipes the slides.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"pause_on_hover.innerContent\",\n    defaultAttr: pcIc('pause_on_hover'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pause on Hover', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If enable, blog carousel will pause on hover.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === autoPlay\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_pagi.innerContent\",\n    defaultAttr: pcIc('use_pagi'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pagination', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_navi.innerContent\",\n    defaultAttr: pcIc('use_navi'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Navigation', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"post_equal_height.innerContent\",\n    defaultAttr: pcIc('post_equal_height'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Equal Height', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('This will make all post item equal height.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"touch_move.innerContent\",\n    defaultAttr: pcIc('touch_move'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Disable Touch/Dragging', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('This option will prevent user to touch/drag the slide.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"grab.innerContent\",\n    defaultAttr: pcIc('grab'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Grab Cursor', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('This option will prevent user to touch/drag the slide.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'off' === touchMove\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const post_carousel_settings_content = (post_carousel_settings_content_SettingsContent);\n;// ./packages/module-library/post-carousel/settings-design.js\nvar _pcDefaults$content_w, _pcDefaults$entryMeta, _pcDefaults$bottomMet, _pcDefaults$module$de;\n\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\n\nconst settings_design_pcIc = key => post_carousel_module_default_render_attributes_namespaceObject[key]?.innerContent;\n\n/**\n * Content wrapper spacing — must match `module-default-render-attributes.json` → `content_wrapper.decoration.spacing`.\n * `defaultGroupAttr` drives per-side placeholders / reset (same idea as Post Count `defaultAttr` + TextContainer).\n */\nconst pcContentWrapperSpacingDefault = (_pcDefaults$content_w = post_carousel_module_default_render_attributes_namespaceObject?.content_wrapper?.decoration?.spacing) !== null && _pcDefaults$content_w !== void 0 ? _pcDefaults$content_w : {};\n\n/**\n * Entry meta container (Post Entry → Container) — `module-default-render-attributes.json` → `entryMetaContainer.decoration.spacing`.\n */\nconst pcEntryMetaContainerSpacingDefault = (_pcDefaults$entryMeta = post_carousel_module_default_render_attributes_namespaceObject?.entryMetaContainer?.decoration?.spacing) !== null && _pcDefaults$entryMeta !== void 0 ? _pcDefaults$entryMeta : {};\n\n/**\n * Bottom meta container (Bottom Meta Items → Container) — `module-default-render-attributes.json` → `bottomMetaContainer.decoration.spacing`.\n */\nconst pcBottomMetaContainerSpacingDefault = (_pcDefaults$bottomMet = post_carousel_module_default_render_attributes_namespaceObject?.bottomMetaContainer?.decoration?.spacing) !== null && _pcDefaults$bottomMet !== void 0 ? _pcDefaults$bottomMet : {};\n\n/**\n * Module spacing (Design → Spacing group) — `module-default-render-attributes.json` → `module.decoration.spacing`\n * (e.g. margin bottom placeholder / reset).\n */\nconst pcModuleSpacingDefault = (_pcDefaults$module$de = post_carousel_module_default_render_attributes_namespaceObject?.module?.decoration?.spacing) !== null && _pcDefaults$module$de !== void 0 ? _pcDefaults$module$de : {};\nfunction post_carousel_settings_design_SettingsDesign({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _getAttrByMode4, _getAttrByMode5, _getAttrByMode6, _getAttrByMode7, _getAttrByMode8, _getAttrByMode9, _getAttrByMode0, _getAttrByMode1, _defaultSettingsAttrs, _pcDefaults$readmore$;\n  const useThumbnail = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_thumbnail?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'on';\n  const thumbnailImgType = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.thumbnail_img_type?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'cover';\n  const sliderOrientation = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_orientation?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'horizontal';\n  const useNavi = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_navi?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : 'on';\n  const usePagination = (_getAttrByMode5 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_pagi?.innerContent)) !== null && _getAttrByMode5 !== void 0 ? _getAttrByMode5 : 'on';\n  const useOverlay = (_getAttrByMode6 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_overlay?.innerContent)) !== null && _getAttrByMode6 !== void 0 ? _getAttrByMode6 : 'off';\n  const useBottomOn = isPcToggleOn((_getAttrByMode7 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_bottom?.innerContent)) !== null && _getAttrByMode7 !== void 0 ? _getAttrByMode7 : getInnerContentDesktopValue(attrs, 'use_bottom'));\n  const usePrevIcon = (_getAttrByMode8 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_prev_icon?.innerContent)) !== null && _getAttrByMode8 !== void 0 ? _getAttrByMode8 : 'off';\n  const useNextIcon = (_getAttrByMode9 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_next_icon?.innerContent)) !== null && _getAttrByMode9 !== void 0 ? _getAttrByMode9 : 'off';\n  const postEntryDesignTabRaw = (_getAttrByMode0 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.post_entry_design_tab?.innerContent)) !== null && _getAttrByMode0 !== void 0 ? _getAttrByMode0 : 'title';\n  const postEntryDesignTab = ['title', 'excerpt', 'meta', 'container'].includes(postEntryDesignTabRaw) ? postEntryDesignTabRaw : 'title';\n  const bottomMetaDesignTabRaw = (_getAttrByMode1 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.bottom_meta_design_tab?.innerContent)) !== null && _getAttrByMode1 !== void 0 ? _getAttrByMode1 : 'date';\n  const bottomMetaDesignTab = ['date', 'author', 'image', 'container'].includes(bottomMetaDesignTabRaw) ? bottomMetaDesignTabRaw : 'date';\n  const readmoreButtonDecorationDefaults = (0,lodash.merge)({}, (_defaultSettingsAttrs = defaultSettingsAttrs?.readmore?.decoration?.asMutable?.({\n    deep: true\n  })) !== null && _defaultSettingsAttrs !== void 0 ? _defaultSettingsAttrs : {}, (_pcDefaults$readmore$ = post_carousel_module_default_render_attributes_namespaceObject?.readmore?.decoration) !== null && _pcDefaults$readmore$ !== void 0 ? _pcDefaults$readmore$ : {});\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"postitem\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Post Item', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"post_padding.decoration.spacing\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Post Item', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"post_item_bg_color.innerContent\",\n    defaultAttr: settings_design_pcIc('post_item_bg_color'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Color', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"postItemStyle.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"postItemStyle.decoration.boxShadow\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"postThumbnail\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Post Thumbnail', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"thumbnail_img_type.innerContent\",\n    defaultAttr: settings_design_pcIc('thumbnail_img_type'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Thumbnail Type', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'off' !== useThumbnail\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      cover: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Cover Fit', 'dsm-supreme-modules-pro-for-divi')\n      },\n      contain: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Contain', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"thumbnail_height.innerContent\",\n    defaultAttr: settings_design_pcIc('thumbnail_height'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Thumbnail Height', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'off' !== useThumbnail && 'cover' === thumbnailImgType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 500,\n    defaultUnit: 'px',\n    step: 10\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"thumbnailStyle.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"thumbnailStyle.decoration.boxShadow\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, {\n    attrName: \"thumbnailStyle.decoration.filters\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi')\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"postEntry\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Post Entry', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"post_entry_design_tab.innerContent\",\n    defaultAttr: settings_design_pcIc('post_entry_design_tab')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: {\n      title: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi')\n      },\n      excerpt: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Excerpt', 'dsm-supreme-modules-pro-for-divi')\n      },\n      meta: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Meta', 'dsm-supreme-modules-pro-for-divi')\n      },\n      container: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Container', 'dsm-supreme-modules-pro-for-divi')\n      }\n    },\n    tabUi: true,\n    showLabel: true\n  })), postEntryDesignTab === 'title' && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"title.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: true\n      }\n    }\n  }), postEntryDesignTab === 'excerpt' && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"body.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Excerpt', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), postEntryDesignTab === 'meta' && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"meta_alignment.innerContent\",\n    defaultAttr: settings_design_pcIc('meta_alignment'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"date.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Date', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Date', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true,\n    fields: {\n      headingLevel: {\n        render: false\n      },\n      textAlign: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"author.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Author', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Author', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true,\n    fields: {\n      headingLevel: {\n        render: false\n      },\n      textAlign: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"category.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Category', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Category', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true,\n    fields: {\n      headingLevel: {\n        render: false\n      },\n      textAlign: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"comments.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Comments', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Comments', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true,\n    fields: {\n      headingLevel: {\n        render: false\n      },\n      textAlign: {\n        render: false\n      }\n    }\n  })), postEntryDesignTab === 'container' && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"entryMetaContainer.decoration.spacing\",\n    defaultAttr: pcEntryMetaContainerSpacingDefault,\n    defaultGroupAttr: pcEntryMetaContainerSpacingDefault,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Meta Container', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Spacing around the post meta line (date, author, category, comments).', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, {\n    attrName: \"entryMetaContainer.decoration.background\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"entryMetaContainer.decoration.border\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Border', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"entryMetaContainer.decoration.boxShadow\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Box Shadow', 'dsm-supreme-modules-pro-for-divi')\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ButtonGroupContainer, {\n    attrName: \"readmore\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Read More Button', 'dsm-supreme-modules-pro-for-divi'),\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Read More Button', 'dsm-supreme-modules-pro-for-divi'),\n    defaultGroupAttr: readmoreButtonDecorationDefaults,\n    fields: {\n      fontGroup: {\n        component: {\n          props: {\n            fields: {\n              lineHeight: {\n                render: true\n              },\n              textAlign: {\n                render: false\n              }\n            }\n          }\n        }\n      },\n      alignment: {\n        render: true\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"navigation\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Navigation', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"navi_hori_position.innerContent\",\n    defaultAttr: settings_design_pcIc('navi_hori_position'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Navi Horizontal Position', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useNavi && 'vertical' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    step: 1,\n    defaultUnit: '%'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"top_navi_ver_position.innerContent\",\n    defaultAttr: settings_design_pcIc('top_navi_ver_position'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top Navigation Position', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useNavi && 'vertical' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: -100,\n    max: 100,\n    step: 1,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"bottom_navi_ver_position.innerContent\",\n    defaultAttr: settings_design_pcIc('bottom_navi_ver_position'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Navigation Position', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useNavi && 'vertical' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: -100,\n    max: 100,\n    step: 1,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"navi_position.innerContent\",\n    defaultAttr: settings_design_pcIc('navi_position'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Navi Horizontal Position', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useNavi && 'horizontal' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    step: 1,\n    defaultUnit: '%'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"left_navi_position.innerContent\",\n    defaultAttr: settings_design_pcIc('left_navi_position'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left Navigation Position', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useNavi && 'horizontal' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: -100,\n    max: 100,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"right_navi_position.innerContent\",\n    defaultAttr: settings_design_pcIc('right_navi_position'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right Navigation Position', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useNavi && 'horizontal' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: -100,\n    max: 100,\n    step: 1,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"navi_size.innerContent\",\n    defaultAttr: settings_design_pcIc('navi_size'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Navi Arrow Icon Size', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useNavi\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    step: 1,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_prev_icon.innerContent\",\n    defaultAttr: settings_design_pcIc('use_prev_icon'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Custom Prev Arrow Icon ', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"prev_icon.innerContent\",\n    defaultAttr: settings_design_pcIc('prev_icon'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Select Prev Icon', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === usePrevIcon\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_next_icon.innerContent\",\n    defaultAttr: settings_design_pcIc('use_next_icon'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Custom Next Arrow Icon', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"next_icon.innerContent\",\n    defaultAttr: settings_design_pcIc('next_icon'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Select Next Icon', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useNextIcon\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"navi_color.innerContent\",\n    defaultAttr: settings_design_pcIc('navi_color'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Arrow Color', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useNavi\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"navi_background_color.innerContent\",\n    defaultAttr: settings_design_pcIc('navi_background_color'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Arrow Background Color', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"navigationStyle.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"navigationStyle.decoration.boxShadow\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"pagination\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pagination', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === usePagination\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"pagi_position.innerContent\",\n    defaultAttr: settings_design_pcIc('pagi_position'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pagination Postion', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === usePagination\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: -200,\n    max: 200,\n    step: 1,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"pagi_ver_position.innerContent\",\n    defaultAttr: settings_design_pcIc('pagi_ver_position'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Vertical Pagination Position', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === usePagination && 'vertical' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    step: 1,\n    defaultUnit: '%'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"pagi_color.innerContent\",\n    defaultAttr: settings_design_pcIc('pagi_color'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pagination Color', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === usePagination\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"pagi_active_color.innerContent\",\n    defaultAttr: settings_design_pcIc('pagi_active_color'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pagination Active Color', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === usePagination\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"pagi_ver_placement.innerContent\",\n    defaultAttr: settings_design_pcIc('pagi_ver_placement'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pagination Placement', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === usePagination && 'vertical' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"pagi_style.innerContent\",\n    defaultAttr: settings_design_pcIc('pagi_style'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pagination Button Style', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === usePagination\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      bullets: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Default', 'dsm-supreme-modules-pro-for-divi')\n      },\n      dynamic: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Dynamic', 'dsm-supreme-modules-pro-for-divi')\n      },\n      progressbar: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Progress Bar', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"bottomMetaItems\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Meta Items', 'dsm-supreme-modules-pro-for-divi'),\n    visible: useBottomOn\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"bottom_meta_design_tab.innerContent\",\n    defaultAttr: settings_design_pcIc('bottom_meta_design_tab')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: {\n      date: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Date', 'dsm-supreme-modules-pro-for-divi')\n      },\n      author: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Author', 'dsm-supreme-modules-pro-for-divi')\n      },\n      image: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi')\n      },\n      container: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Container', 'dsm-supreme-modules-pro-for-divi')\n      }\n    },\n    tabUi: true,\n    showLabel: true\n  })), bottomMetaDesignTab === 'date' && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"bottom_date.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Date', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      },\n      textAlign: {\n        render: false\n      }\n    }\n  }), bottomMetaDesignTab === 'author' && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"bottom_author.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Author', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      },\n      textAlign: {\n        render: false\n      }\n    }\n  }), bottomMetaDesignTab === 'image' && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_width.innerContent\",\n    defaultAttr: settings_design_pcIc('image_width'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Width', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 500,\n    step: 1,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"bottomStyle.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"bottomStyle.decoration.boxShadow\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Author Image', 'dsm-supreme-modules-pro-for-divi')\n  })), bottomMetaDesignTab === 'container' && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"bottomMetaContainer.decoration.spacing\",\n    defaultAttr: pcBottomMetaContainerSpacingDefault,\n    defaultGroupAttr: pcBottomMetaContainerSpacingDefault,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Meta Container', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Spacing around the bottom meta row (image, date, author).', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, {\n    attrName: \"bottomMetaContainer.decoration.background\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"bottomMetaContainer.decoration.border\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Border', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"bottomMetaContainer.decoration.boxShadow\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Box Shadow', 'dsm-supreme-modules-pro-for-divi')\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"Overlay\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay', 'dsm-supreme-modules-pro-for-divi'),\n    preset: \"content\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_overlay.innerContent\",\n    defaultAttr: settings_design_pcIc('use_overlay'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Overlay', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"overlay_icon.innerContent\",\n    defaultAttr: settings_design_pcIc('overlay_icon'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay Icon', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useOverlay\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"overlay_icon_color.innerContent\",\n    defaultAttr: settings_design_pcIc('overlay_icon_color'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay Icon Color', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useOverlay,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom color for the overlay icon', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"overlay_icon_size.innerContent\",\n    defaultAttr: settings_design_pcIc('overlay_icon_size'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay Icon Size', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useOverlay\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 500,\n    step: 1\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"hover_overlay_color.innerContent\",\n    defaultAttr: settings_design_pcIc('hover_overlay_color'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useOverlay,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom color for the overlay icon', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"spacing\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Spacing', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"content_wrapper.decoration.spacing\",\n    defaultAttr: pcContentWrapperSpacingDefault,\n    defaultGroupAttr: pcContentWrapperSpacingDefault,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content Wrapper', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Spacing for the text area (title, meta, excerpt, read more) inside each slide.', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    grouped: false,\n    defaultAttr: pcModuleSpacingDefault,\n    defaultGroupAttr: pcModuleSpacingDefault\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const post_carousel_settings_design = (post_carousel_settings_design_SettingsDesign);\n;// ./packages/module-library/post-carousel/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction post_carousel_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_post_carousel\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const post_carousel_settings_advanced = (post_carousel_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/post-carousel/module-styles.js\n\n\n\n\n\n\n\n\n/**\n * Map `readmore.decoration.button` alignment to innerContent so CommonStyle can emit `text-align`\n * on `.dsm-readmore-wrap .et_pb_button_module_wrapper` (elements.style + propertySelectors often skip this for non-`button` attrs).\n *\n * @param {Object|undefined} buttonDec Plain `decoration.button` subtree.\n * @return {Object|undefined} `{ innerContent: { desktop|tablet|phone: { value } } }` or undefined.\n */\nconst readmoreButtonAlignmentAsInnerContent = buttonDec => {\n  if (!buttonDec || 'object' !== typeof buttonDec) {\n    return undefined;\n  }\n  const innerContent = {};\n  for (const bp of ['desktop', 'tablet', 'phone']) {\n    var _valObj$textAlign;\n    const branch = buttonDec[bp];\n    if (!branch || 'object' !== typeof branch) {\n      continue;\n    }\n    const valObj = branch.value;\n    const raw = valObj && 'object' === typeof valObj ? (_valObj$textAlign = valObj.textAlign) !== null && _valObj$textAlign !== void 0 ? _valObj$textAlign : valObj.alignment : undefined;\n    if ('string' !== typeof raw) {\n      continue;\n    }\n    const t = raw.trim().toLowerCase();\n    if ('left' === t || 'center' === t || 'right' === t || 'justify' === t) {\n      innerContent[bp] = {\n        value: t\n      };\n    }\n  }\n  return Object.keys(innerContent).length > 0 ? {\n    innerContent\n  } : undefined;\n};\n\n/**\n * React function component for rendering module style.\n */\n\nconst prevIconFontCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'font-family': true\n    }\n  });\n  if (isDsmIcon(attrValue)) {\n    return '';\n  }\n  addNativeIconFontFamily(declarations, attrValue);\n  addNativeIconFontContent(declarations, attrValue);\n  return declarations.value;\n};\nconst nextIconFontCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'font-family': true\n    }\n  });\n  if (isDsmIcon(attrValue)) {\n    return '';\n  }\n  addNativeIconFontFamily(declarations, attrValue);\n  addNativeIconFontContent(declarations, attrValue);\n  return declarations.value;\n};\n\n/**\n * Swiper 12+: `--swiper-navigation-size` from arrow box (D4: nav size + 20px touch area).\n *\n * @param {Object} attr Parsed style attr from CommonStyle.\n * @return {string} Declarations string.\n */\n/**\n * Append `px` when D4 / migrated range stored a unitless number (e.g. `40`).\n *\n * @param {string|number|undefined|null} value Raw innerContent value.\n * @return {string} Normalized length or empty string.\n */\nconst ensureCssLengthUnit = value => {\n  if (value === null || value === undefined) {\n    return '';\n  }\n  const s = String(value).trim();\n  if (!s) {\n    return '';\n  }\n  if (/calc\\s*\\(/i.test(s) || s.startsWith('var(')) {\n    return s;\n  }\n  const m = s.match(/^([-+]?\\d*\\.?\\d+)([a-z%]*)$/i);\n  if (!m) {\n    return s;\n  }\n  if (m[2]) {\n    return s;\n  }\n  return `${m[1]}px`;\n};\nconst module_styles_swiperNavigationSizeVarCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const n = parseFloat(attrValue);\n  if (Number.isNaN(n)) {\n    return '';\n  }\n  const touch = n + 20;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string'\n  });\n  declarations.add('--swiper-navigation-size', `${touch}px`);\n  return declarations.value;\n};\n\n/**\n * `font-size` for nav arrows — same unit normalization as `--swiper-navigation-size`.\n *\n * @param {Object} attr Parsed style attr from CommonStyle.\n * @return {string} Declarations string.\n */\nconst naviArrowFontSizeCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const normalized = ensureCssLengthUnit(attrValue);\n  if (!normalized) {\n    return '';\n  }\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string'\n  });\n  declarations.add('font-size', normalized);\n  return declarations.value;\n};\nconst pagiPositionBottomCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const normalized = ensureCssLengthUnit(attrValue);\n  if (!normalized) {\n    return '';\n  }\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string'\n  });\n  declarations.add('bottom', normalized);\n  return declarations.value;\n};\n\n/**\n * Vertical carousel: pagination horizontal offset (`left` / `right`) with px fallback.\n *\n * @param {string} placement `pagi_ver_placement` (left|right).\n * @return {Function} CommonStyle declarationFunction.\n */\nconst makePagiVerticalSideCss = placement => attr => {\n  const {\n    attrValue\n  } = attr;\n  const normalized = ensureCssLengthUnit(attrValue);\n  if (!normalized) {\n    return '';\n  }\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: true\n  });\n  if ('left' === placement) {\n    declarations.add('right', 'auto');\n    declarations.add('left', normalized);\n  }\n  if ('right' === placement) {\n    declarations.add('right', normalized);\n    declarations.add('left', 'auto');\n  }\n  return declarations.value;\n};\nconst overlayIconFontCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'font-family': true\n    }\n  });\n  if (isDsmIcon(attrValue)) {\n    return '';\n  }\n  addNativeIconFontFamily(declarations, attrValue);\n  addNativeIconFontContent(declarations, attrValue);\n  return declarations.value;\n};\n\n/**\n * `.dsm-entry-thumbnail img`: cover fills tile; contain uses max-width/height + auto size for picture-bound overlay.\n *\n * @param {Object} attr Parsed CommonStyle attr (`attrValue` = cover|contain).\n * @return {string} CSS declarations.\n */\nconst thumbnailEntryImageObjectFitCss = attr => {\n  const raw = attr?.attrValue;\n  const imageType = 'string' === typeof raw && raw.trim() ? raw.trim().toLowerCase() : 'cover';\n  const fit = 'contain' === imageType ? 'contain' : 'cover';\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string'\n  });\n  declarations.add('object-fit', fit);\n  if ('contain' === fit) {\n    declarations.add('max-width', '100%');\n    declarations.add('max-height', '100%');\n    declarations.add('width', 'auto');\n    declarations.add('height', 'auto');\n  } else {\n    declarations.add('width', '100%');\n    declarations.add('height', '100%');\n  }\n  return declarations.value;\n};\nconst post_carousel_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  var _getAttrByMode, _getAttrByMode2, _attrs$thumbnail_img_;\n  const pagi_ver_placement = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.pagi_ver_placement?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'right';\n  const pagiVerticalSideCss = makePagiVerticalSideCss(pagi_ver_placement);\n  const thumbnailImageType = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.thumbnail_img_type?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'cover';\n  const readmoreButtonAlignAttr = readmoreButtonAlignmentAsInnerContent(getReadmoreDecorationButton(attrs));\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextStyle, {\n    selector: orderClass,\n    attr: attrs?.module?.advanced?.text\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: orderClass,\n    attr: attrs?.navi_size?.innerContent,\n    declarationFunction: module_styles_swiperNavigationSizeVarCss\n  }), elements.style({\n    attrName: 'post_padding'\n  }), elements.style({\n    attrName: 'postItemStyle'\n  }), elements.style({\n    attrName: 'thumbnailStyle'\n  }), elements.style({\n    attrName: 'navigationStyle'\n  }), elements.style({\n    attrName: 'bottomStyle'\n  }), elements.style({\n    attrName: 'title'\n  }), elements.style({\n    attrName: 'body'\n  }), elements.style({\n    attrName: 'date'\n  }), elements.style({\n    attrName: 'author'\n  }), elements.style({\n    attrName: 'category'\n  }), elements.style({\n    attrName: 'comments'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-entry-meta`,\n    attr: attrs?.meta_alignment?.innerContent,\n    property: \"text-align\"\n  }), elements.style({\n    attrName: 'bottom_date'\n  }), elements.style({\n    attrName: 'bottom_author'\n  }), elements.style({\n    attrName: 'bottomStyle'\n  }), elements.style({\n    attrName: 'readmore'\n  }), readmoreButtonAlignAttr ? /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-readmore-wrap .et_pb_button_module_wrapper`,\n    attr: readmoreButtonAlignAttr,\n    property: \"text-align\"\n  }) : null, elements.style({\n    attrName: 'content_wrapper'\n  }), elements.style({\n    attrName: 'entryMetaContainer'\n  }), elements.style({\n    attrName: 'bottomMetaContainer'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .swiper-button-prev::before`,\n    attr: attrs?.prev_icon?.innerContent,\n    declarationFunction: prevIconFontCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .swiper-button-next::before`,\n    attr: attrs?.next_icon?.innerContent,\n    declarationFunction: nextIconFontCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm-overlay-enabled .dsm-entry-image .dsm-entry-thumbnail > a::before`,\n    attr: attrs?.overlay_icon?.innerContent,\n    declarationFunction: overlayIconFontCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .swiper-button-next, ${orderClass} .swiper-button-prev, ${orderClass} .dsm-carousel-nav-icon-overlay`,\n    attr: attrs?.navi_size?.innerContent,\n    declarationFunction: naviArrowFontSizeCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .swiper-button-next::before, ${orderClass} .swiper-button-prev::before, ${orderClass} .dsm-carousel-nav-icon-overlay`,\n    attr: attrs?.navi_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .swiper-button-next, ${orderClass} .swiper-button-prev, ${orderClass} .dsm-carousel-nav-icon-overlay`,\n    attr: attrs?.navi_background_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm-post-carousel-slider-horizontal .swiper-pagination-bullets, ${orderClass}.dsm-post-carousel-slider-horizontal .swiper-pagination-fraction, ${orderClass}.dsm-post-carousel-slider-horizontal .swiper-pagination-custom`,\n    attr: attrs?.pagi_position?.innerContent,\n    declarationFunction: pagiPositionBottomCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .swiper-pagination-bullet, ${orderClass} .swiper-pagination-progressbar`,\n    attr: attrs?.pagi_color?.innerContent,\n    property: \"background\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .swiper-pagination-bullet.swiper-pagination-bullet-active, ${orderClass} .swiper-pagination-progressbar .swiper-pagination-progressbar-fill`,\n    attr: attrs?.pagi_active_color?.innerContent,\n    property: \"background\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-post-carousel-item`,\n    attr: attrs?.post_item_bg_color?.innerContent,\n    property: \"background\"\n  }), 'cover' === thumbnailImageType && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-entry-image .dsm-entry-thumbnail`,\n    attr: attrs?.thumbnail_height?.innerContent,\n    property: \"height\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-entry-image .dsm-entry-thumbnail img`,\n    attr: (_attrs$thumbnail_img_ = attrs?.thumbnail_img_type?.innerContent) !== null && _attrs$thumbnail_img_ !== void 0 ? _attrs$thumbnail_img_ : {\n      desktop: {\n        value: 'cover'\n      }\n    },\n    declarationFunction: thumbnailEntryImageObjectFitCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-bottom-meta .dsm-bottom-meta-image img`,\n    attr: attrs?.image_width?.innerContent,\n    property: \"width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-entry-image .dsm-entry-thumbnail > a::before`,\n    attr: attrs?.hover_overlay_color?.innerContent,\n    property: \"background\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-entry-image .dsm-entry-thumbnail > a::before`,\n    attr: attrs?.overlay_icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-entry-image .dsm-entry-thumbnail > a::before`,\n    attr: attrs?.overlay_icon_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm_post_carousel.dsm-post-carousel-slider-vertical .swiper-container`,\n    attr: attrs?.slider_container_height?.innerContent,\n    property: \"height\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm-post-carousel-slider-horizontal .swiper-button-next, ${orderClass}.dsm-post-carousel-slider-horizontal .swiper-button-prev`,\n    attr: attrs?.navi_position?.innerContent,\n    property: \"top\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm-post-carousel-slider-horizontal .swiper-button-prev`,\n    attr: attrs?.left_navi_position?.innerContent,\n    property: \"left\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm-post-carousel-slider-horizontal .swiper-button-next`,\n    attr: attrs?.right_navi_position?.innerContent,\n    property: \"right\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm-post-carousel-slider-vertical .swiper-button-next, ${orderClass}.dsm-post-carousel-slider-vertical .swiper-button-prev`,\n    attr: attrs?.navi_hori_position?.innerContent,\n    property: \"left\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm-post-carousel-slider-vertical .swiper-button-prev`,\n    attr: attrs?.top_navi_ver_position?.innerContent,\n    property: \"top\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm-post-carousel-slider-vertical .swiper-button-next`,\n    attr: attrs?.bottom_navi_ver_position?.innerContent,\n    property: \"bottom\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm-post-carousel-slider-vertical .swiper-pagination`,\n    attr: attrs?.pagi_position?.innerContent,\n    declarationFunction: pagiVerticalSideCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .swiper-pagination.swiper-pagination-vertical`,\n    attr: attrs?.pagi_ver_position?.innerContent,\n    property: \"top\"\n  }));\n};\n;// ./packages/module-library/post-carousel/edit.js\nfunction post_carousel_edit_extends() {\n  return post_carousel_edit_extends = Object.assign ? Object.assign.bind() : function (n) {\n    for (var e = 1; e < arguments.length; e++) {\n      var t = arguments[e];\n      for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n    }\n    return n;\n  }, post_carousel_edit_extends.apply(null, arguments);\n}\n\n\n\n\n\n\n\n\n// Divi package dependencies.\n\n\n\n// Custom dependencies.\n\n\n\n\n\n\n\n/**\n * React function component for registering module script data.\n */\nconst post_carousel_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\n\n// Limit excerpt by word count (matches legacy Post Carousel PHP + divi-supreme-pro package).\nconst limitExcerpt = (content, wordLimit = 50) => {\n  wordLimit = Math.max(1, parseInt(wordLimit, 10) || 55);\n  const strippedContent = content.replace(/<[^>]+(>|$)/g, '');\n  const words = strippedContent.trim().split(/\\s+/);\n  if (words.length > wordLimit) {\n    return words.slice(0, wordLimit).join(' ') + '...';\n  }\n  return strippedContent;\n};\n\n/**\n * Comment count label for entry meta (matches PHP `PostCarousel` output).\n *\n * @param {number|string|undefined} count Raw comment count from REST.\n * @return {string} Localized label.\n */\nconst formatPostCarouselCommentsLabel = count => {\n  const n = Math.max(0, parseInt(String(count), 10) || 0);\n  return (0,external_window_vendor_wp_i18n_namespaceObject.sprintf)((0,external_window_vendor_wp_i18n_namespaceObject._nx)('%s Comment', '%s Comments', n, 'number of comments', 'dsm-supreme-modules-pro-for-divi'), String(n));\n};\n\n/**\n * Parse classic editor / admin `post`, `page_id`, or Divi-style query args.\n *\n * @param {string} href Full URL.\n * @return {number}\n */\nfunction parsePostIdFromQuery(href) {\n  if (!href || typeof href !== 'string') {\n    return 0;\n  }\n  try {\n    const u = new URL(href);\n    const raw = u.searchParams.get('post') || u.searchParams.get('page_id') || u.searchParams.get('et_pb_post');\n    if (raw) {\n      const n = parseInt(raw, 10);\n      return n > 0 ? n : 0;\n    }\n  } catch (e) {\n    // Invalid URL.\n  }\n  return 0;\n}\n\n/**\n * Post ID localized from PHP when the VB script loads in admin (`?post=`).\n * Canvas iframes often lack that URL but share origin with `parent` / `top`.\n *\n * @return {number}\n */\nfunction getDiviSupremeLocalizedBuilderPostId() {\n  if (typeof window === 'undefined') {\n    return 0;\n  }\n  const wins = [window, window.parent, window.top];\n  for (const w of wins) {\n    try {\n      if (!w?.diviSupreme5?.builderEditedPostId) {\n        continue;\n      }\n      const n = parseInt(String(w.diviSupreme5.builderEditedPostId), 10);\n      if (n > 0) {\n        return n;\n      }\n    } catch (err) {\n      // Cross-origin.\n    }\n  }\n  return 0;\n}\n\n/**\n * Edited post ID in block editor / Divi 5 Visual Builder (iframe-safe).\n *\n * Divi’s preview iframe often has no `core/editor` store; fall back to parent/top\n * windows, URL query (`post=`), and `ETBuilderBackend` (D4/D5 builder payload).\n *\n * @return {number}\n */\nfunction getVisualBuilderEditedPostId() {\n  if (typeof window === 'undefined') {\n    return 0;\n  }\n  const localizedId = getDiviSupremeLocalizedBuilderPostId();\n  if (localizedId > 0) {\n    return localizedId;\n  }\n  const tryCoreEditor = win => {\n    try {\n      const select = win?.wp?.data?.select;\n      if (typeof select !== 'function') {\n        return 0;\n      }\n      const editorSelect = select('core/editor');\n      if (!editorSelect) {\n        return 0;\n      }\n      if (typeof editorSelect.getCurrentPostId === 'function') {\n        const id = editorSelect.getCurrentPostId();\n        if (id) {\n          const n = parseInt(id, 10);\n          return n > 0 ? n : 0;\n        }\n      }\n      const post = editorSelect.getCurrentPost?.();\n      if (post?.id) {\n        const n = parseInt(post.id, 10);\n        return n > 0 ? n : 0;\n      }\n    } catch (err) {\n      // Missing store or cross-origin.\n    }\n    return 0;\n  };\n  const candidateWins = [window];\n  if (window.parent && window.parent !== window) {\n    candidateWins.push(window.parent);\n  }\n  if (window.top && window.top !== window) {\n    candidateWins.push(window.top);\n  }\n  for (const w of candidateWins) {\n    const id = tryCoreEditor(w);\n    if (id > 0) {\n      return id;\n    }\n  }\n  for (const w of candidateWins) {\n    try {\n      const href = w?.location?.href;\n      if (href) {\n        const id = parsePostIdFromQuery(href);\n        if (id > 0) {\n          return id;\n        }\n      }\n    } catch (err) {\n      // Cross-origin `location`.\n    }\n  }\n  try {\n    const be = window.ETBuilderBackend || window.parent?.ETBuilderBackend || window.top?.ETBuilderBackend;\n    if (be && typeof be === 'object') {\n      const raw = be.postId || be.post_id || be.pageId || be.page_id || be.currentPage?.id;\n      if (raw) {\n        const n = parseInt(raw, 10);\n        if (n > 0) {\n          return n;\n        }\n      }\n    }\n  } catch (err) {\n    // Ignore.\n  }\n  const fromPreviewDom = getPreviewedPostIdFromDom();\n  if (fromPreviewDom > 0) {\n    return fromPreviewDom;\n  }\n  return 0;\n}\n\n/**\n * Singular post ID from the preview document (VB canvas is a frontend URL without `?post=`).\n *\n * @return {number}\n */\nfunction getPreviewedPostIdFromDom() {\n  if (typeof document === 'undefined') {\n    return 0;\n  }\n  const bodyClass = document.body?.className;\n  if (typeof bodyClass === 'string') {\n    let m = bodyClass.match(/\\bpage-id-(\\d+)\\b/);\n    if (m) {\n      const n = parseInt(m[1], 10);\n      if (n > 0) {\n        return n;\n      }\n    }\n    m = bodyClass.match(/\\bpostid-(\\d+)\\b/);\n    if (m) {\n      const n = parseInt(m[1], 10);\n      if (n > 0) {\n        return n;\n      }\n    }\n  }\n  const article = document.querySelector('article[id^=\"post-\"]');\n  if (article?.id) {\n    const m = article.id.match(/^post-(\\d+)$/);\n    if (m) {\n      const n = parseInt(m[1], 10);\n      if (n > 0) {\n        return n;\n      }\n    }\n  }\n  return 0;\n}\n\n/**\n * Category term IDs for the post open in the editor (pages only when categories are enabled).\n *\n * @return {number[]}\n */\nfunction getVisualBuilderEditedCategoryIds() {\n  if (typeof window === 'undefined') {\n    return [];\n  }\n  const tryCategories = win => {\n    try {\n      const select = win?.wp?.data?.select;\n      if (typeof select !== 'function') {\n        return null;\n      }\n      const editorSelect = select('core/editor');\n      if (!editorSelect?.getEditedPostAttribute) {\n        return null;\n      }\n      const cats = editorSelect.getEditedPostAttribute('categories');\n      if (!Array.isArray(cats)) {\n        return [];\n      }\n      return cats.map(id => parseInt(id, 10)).filter(id => id > 0);\n    } catch (err) {\n      return null;\n    }\n  };\n  const candidateWins = [window];\n  if (window.parent && window.parent !== window) {\n    candidateWins.push(window.parent);\n  }\n  if (window.top && window.top !== window) {\n    candidateWins.push(window.top);\n  }\n  for (const w of candidateWins) {\n    const ids = tryCategories(w);\n    if (null !== ids) {\n      return ids;\n    }\n  }\n  return [];\n}\n\n/**\n * Pages \"Included Categories\" checkbox values (`all` / `current`), including legacy string saves.\n *\n * @param {unknown} raw\n * @return {string[]}\n */\nfunction normalizePageIncludedCategories(raw) {\n  if (Array.isArray(raw)) {\n    const next = [...new Set(raw.filter(v => v === 'all' || v === 'current'))];\n    return next.length ? next : ['all'];\n  }\n  if (raw === 'current') {\n    return ['current'];\n  }\n  return ['all'];\n}\n\n/**\n * `data-icon` / `data-icon-tablet` / `data-icon-phone` on readmore (matches core ButtonModule).\n *\n * @param {Object} attrs Module attrs.\n * @return {Record<string, string>}\n */\nfunction getReadmoreIconDataAttrs(attrs) {\n  var _dec$desktop$value, _desktopVal$icon$enab;\n  const dec = getReadmoreDecorationButton(attrs);\n  if (!dec || typeof dec !== 'object') {\n    return {};\n  }\n  const desktopVal = (_dec$desktop$value = dec.desktop?.value) !== null && _dec$desktop$value !== void 0 ? _dec$desktop$value : dec.desktop;\n  const isIconEnabled = 'on' === ((_desktopVal$icon$enab = desktopVal?.icon?.enable) !== null && _desktopVal$icon$enab !== void 0 ? _desktopVal$icon$enab : 'off');\n  const out = {};\n  const breakpointToDataAttr = bp => 'desktop' === bp ? 'data-icon' : 'data-icon-' + bp.replace(/([A-Z])/g, ch => '-' + ch).toLowerCase();\n  Object.keys(dec).forEach(bp => {\n    const bv = dec[bp];\n    const settings = bv?.value?.icon?.settings;\n    if (!isIconEnabled || !settings) {\n      return;\n    }\n    const processed = (0,external_divi_iconLibrary_namespaceObject.processFontIcon)(settings);\n    if (null == processed || '' === processed) {\n      return;\n    }\n    out[breakpointToDataAttr(bp)] = processed;\n  });\n  return out;\n}\nfunction post_carousel_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _getAttrByMode4, _getAttrByMode5, _getInnerContentDeskt, _getAttrByMode6, _getAttrByMode7, _getAttrByMode8, _getAttrByMode9, _getAttrByMode0, _getAttrByMode1, _getAttrByMode10, _getAttrByMode11, _getAttrByMode12, _getAttrByMode13, _getAttrByMode14, _getAttrByMode15, _getAttrByMode16, _getAttrByMode17, _getAttrByMode18, _getAttrByMode19, _getAttrByMode20, _getAttrByMode21, _getAttrByMode22, _attrs$columns$innerC, _attrs$columns$innerC2, _getAttrByMode23, _attrs$rows_per_view$, _attrs$rows_per_view$2, _getAttrByMode24, _getAttrByMode25, _getAttrByMode26, _getAttrByMode27, _getAttrByMode28, _getAttrByMode29, _getAttrByMode30, _getAttrByMode31, _getAttrByMode32, _getAttrByMode33, _getAttrByMode34, _getAttrByMode35, _getAttrByMode36, _getAttrByMode37, _getAttrByMode38, _getAttrByMode39, _getAttrByMode40, _getAttrByMode41, _getAttrByMode42, _getAttrByMode43, _getAttrByMode44, _getAttrByMode45, _getAttrByMode46;\n  const {} = attrs;\n  const swiperRef = (0,external_vendor_React_.useRef)(null);\n  const navigationPrevRef = (0,external_vendor_React_.useRef)(null);\n  const navigationNextRef = (0,external_vendor_React_.useRef)(null);\n  const paginationRef = (0,external_vendor_React_.useRef)(null);\n  const post_type = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.post_type?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'page';\n  const posts_number = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.posts_number?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : '10';\n  const posts_offset = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.posts_offset?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : '0';\n  const post_orderby = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.post_orderby?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : 'date';\n  const post_sortby = (_getAttrByMode5 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.post_sortby?.innerContent)) !== null && _getAttrByMode5 !== void 0 ? _getAttrByMode5 : 'desc';\n  const currentPostType = get_post_type(getPostTypeDesktopSlug(attrs));\n  const getTaxFilterQuery = () => {\n    const termIds = attrs?.term_ids?.innerContent?.desktop?.value;\n    if (!Array.isArray(termIds)) {\n      return {};\n    }\n    let filters = {};\n    termIds.forEach(term => {\n      const [taxonomyName, termId] = term.split(':');\n      const restKey = getTaxonomyRestBase(taxonomyName);\n      if (restKey in filters) {\n        filters[restKey].push(Number(termId));\n      } else {\n        filters[restKey] = [Number(termId)];\n      }\n    });\n    return filters;\n  };\n  const include_current_post_raw = (_getInnerContentDeskt = getInnerContentDesktopValue(attrs, 'include_current_post')) !== null && _getInnerContentDeskt !== void 0 ? _getInnerContentDeskt : (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.include_current_post?.innerContent);\n  const include_current_post_on = isPcToggleOn(include_current_post_raw !== null && include_current_post_raw !== void 0 ? include_current_post_raw : 'off');\n  const editedPostId = getVisualBuilderEditedPostId();\n  const page_cat_list = normalizePageIncludedCategories((0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.page_included_categories?.innerContent));\n  const postsQuery = {\n    per_page: Number(posts_number),\n    offset: Number(posts_offset),\n    order: post_sortby,\n    orderby: post_orderby\n  };\n  const pageUsesCurrentTermsOnly = 'page' === post_type && page_cat_list.includes('current') && !page_cat_list.includes('all');\n  if (pageUsesCurrentTermsOnly && editedPostId > 0) {\n    const catIds = getVisualBuilderEditedCategoryIds();\n    if (catIds.length) {\n      postsQuery.categories = catIds;\n    }\n  } else if ('page' !== post_type) {\n    Object.assign(postsQuery, getTaxFilterQuery());\n  }\n  const excludeEditedPost = editedPostId > 0 && (!include_current_post_on || 'page' === post_type && page_cat_list.includes('current'));\n  if (excludeEditedPost) {\n    postsQuery.exclude = [editedPostId];\n  }\n  const postsFetchIdentity = {\n    include_current_post_on,\n    editedPostId,\n    excludeEditedPost\n  };\n  const {\n    loading,\n    error,\n    posts\n  } = use_posts(post_type || 'page', postsQuery, postsFetchIdentity);\n  const use_date = (_getAttrByMode6 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_date?.innerContent)) !== null && _getAttrByMode6 !== void 0 ? _getAttrByMode6 : 'on';\n  const use_author = (_getAttrByMode7 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_author?.innerContent)) !== null && _getAttrByMode7 !== void 0 ? _getAttrByMode7 : 'on';\n  const use_title = (_getAttrByMode8 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_title?.innerContent)) !== null && _getAttrByMode8 !== void 0 ? _getAttrByMode8 : 'on';\n  const use_excerpt = (_getAttrByMode9 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_excerpt?.innerContent)) !== null && _getAttrByMode9 !== void 0 ? _getAttrByMode9 : 'on';\n  const use_thumbnail = (_getAttrByMode0 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_thumbnail?.innerContent)) !== null && _getAttrByMode0 !== void 0 ? _getAttrByMode0 : 'on';\n  const thumbnailImageType = (_getAttrByMode1 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.thumbnail_img_type?.innerContent)) !== null && _getAttrByMode1 !== void 0 ? _getAttrByMode1 : 'cover';\n  const meta_seperator = (_getAttrByMode10 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.meta_seperator?.innerContent)) !== null && _getAttrByMode10 !== void 0 ? _getAttrByMode10 : '|';\n  const use_bottom = (_getAttrByMode11 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_bottom?.innerContent)) !== null && _getAttrByMode11 !== void 0 ? _getAttrByMode11 : 'off';\n  const bottom_date = (_getAttrByMode12 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.bottom_date?.innerContent)) !== null && _getAttrByMode12 !== void 0 ? _getAttrByMode12 : 'on';\n  const bottom_author = (_getAttrByMode13 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.bottom_author?.innerContent)) !== null && _getAttrByMode13 !== void 0 ? _getAttrByMode13 : 'on';\n  const excerpt_length = (_getAttrByMode14 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.excerpt_length?.innerContent)) !== null && _getAttrByMode14 !== void 0 ? _getAttrByMode14 : '50';\n  const post_equal_height = (_getAttrByMode15 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.post_equal_height?.innerContent)) !== null && _getAttrByMode15 !== void 0 ? _getAttrByMode15 : 'off';\n  const use_category = (_getAttrByMode16 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_category?.innerContent)) !== null && _getAttrByMode16 !== void 0 ? _getAttrByMode16 : 'off';\n  const use_comments = (_getAttrByMode17 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_comments?.innerContent)) !== null && _getAttrByMode17 !== void 0 ? _getAttrByMode17 : 'off';\n  const slider_effect = (_getAttrByMode18 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_effect?.innerContent)) !== null && _getAttrByMode18 !== void 0 ? _getAttrByMode18 : 'default';\n  const slider_effect_shadows = (_getAttrByMode19 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_effect_shadows?.innerContent)) !== null && _getAttrByMode19 !== void 0 ? _getAttrByMode19 : 'off';\n  const slider_effect_coverflow_rotate = (_getAttrByMode20 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_effect_coverflow_rotate?.innerContent)) !== null && _getAttrByMode20 !== void 0 ? _getAttrByMode20 : '30';\n  const slider_effect_coverflow_depth = (_getAttrByMode21 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_effect_coverflow_depth?.innerContent)) !== null && _getAttrByMode21 !== void 0 ? _getAttrByMode21 : '100';\n  const columns = (_getAttrByMode22 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.columns?.innerContent)) !== null && _getAttrByMode22 !== void 0 ? _getAttrByMode22 : '3';\n  const columns_tablet = (_attrs$columns$innerC = attrs?.columns?.innerContent?.tablet?.value) !== null && _attrs$columns$innerC !== void 0 ? _attrs$columns$innerC : 2;\n  const columns_phone = (_attrs$columns$innerC2 = attrs?.columns?.innerContent?.phone?.value) !== null && _attrs$columns$innerC2 !== void 0 ? _attrs$columns$innerC2 : 1;\n  const rows_per_view = (_getAttrByMode23 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.rows_per_view?.innerContent)) !== null && _getAttrByMode23 !== void 0 ? _getAttrByMode23 : '1';\n  const rows_per_view_tablet = (_attrs$rows_per_view$ = attrs?.rows_per_view?.innerContent?.tablet?.value) !== null && _attrs$rows_per_view$ !== void 0 ? _attrs$rows_per_view$ : 2;\n  const rows_per_view_phone = (_attrs$rows_per_view$2 = attrs?.rows_per_view?.innerContent?.phone?.value) !== null && _attrs$rows_per_view$2 !== void 0 ? _attrs$rows_per_view$2 : 1;\n  const slide_to_scroll = (_getAttrByMode24 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slide_to_scroll?.innerContent)) !== null && _getAttrByMode24 !== void 0 ? _getAttrByMode24 : '1';\n  const slide_to_scroll_tablet = attrs?.slide_to_scroll?.innerContent?.tablet?.value;\n  const slide_to_scroll_phone = attrs?.slide_to_scroll?.innerContent?.phone?.value;\n  const multiple_slide_row = (_getAttrByMode25 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.multiple_slide_row?.innerContent)) !== null && _getAttrByMode25 !== void 0 ? _getAttrByMode25 : 'off';\n  const slide_row = (_getAttrByMode26 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slide_row?.innerContent)) !== null && _getAttrByMode26 !== void 0 ? _getAttrByMode26 : '1';\n  const centered_slides = (_getAttrByMode27 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.centered_slides?.innerContent)) !== null && _getAttrByMode27 !== void 0 ? _getAttrByMode27 : 'off';\n  const spacing = (_getAttrByMode28 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.spacing?.innerContent)) !== null && _getAttrByMode28 !== void 0 ? _getAttrByMode28 : '30';\n  const speed = (_getAttrByMode29 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.speed?.innerContent)) !== null && _getAttrByMode29 !== void 0 ? _getAttrByMode29 : '500';\n  const loop = (_getAttrByMode30 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.loop?.innerContent)) !== null && _getAttrByMode30 !== void 0 ? _getAttrByMode30 : 'on';\n  const autoplay = (_getAttrByMode31 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.autoplay?.innerContent)) !== null && _getAttrByMode31 !== void 0 ? _getAttrByMode31 : 'on';\n  const autoplay_speed = (_getAttrByMode32 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.autoplay_speed?.innerContent)) !== null && _getAttrByMode32 !== void 0 ? _getAttrByMode32 : '5000';\n  const autoplay_viewport = (_getAttrByMode33 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.autoplay_viewport?.innerContent)) !== null && _getAttrByMode33 !== void 0 ? _getAttrByMode33 : '50%';\n  const mousewheel = (_getAttrByMode34 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.mousewheel?.innerContent)) !== null && _getAttrByMode34 !== void 0 ? _getAttrByMode34 : 'off';\n  const pause_on_hover = (_getAttrByMode35 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.pause_on_hover?.innerContent)) !== null && _getAttrByMode35 !== void 0 ? _getAttrByMode35 : 'off';\n  const use_pagi = (_getAttrByMode36 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_pagi?.innerContent)) !== null && _getAttrByMode36 !== void 0 ? _getAttrByMode36 : 'on';\n  const use_navi = (_getAttrByMode37 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_navi?.innerContent)) !== null && _getAttrByMode37 !== void 0 ? _getAttrByMode37 : 'on';\n  const prevIcon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.prev_icon?.innerContent);\n  const nextIcon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.next_icon?.innerContent);\n  const useCustomPrevIcon = (_getAttrByMode38 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_prev_icon?.innerContent)) !== null && _getAttrByMode38 !== void 0 ? _getAttrByMode38 : 'off';\n  const useCustomNextIcon = (_getAttrByMode39 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_next_icon?.innerContent)) !== null && _getAttrByMode39 !== void 0 ? _getAttrByMode39 : 'off';\n  const touch_move = (_getAttrByMode40 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.touch_move?.innerContent)) !== null && _getAttrByMode40 !== void 0 ? _getAttrByMode40 : 'off';\n  const grab = (_getAttrByMode41 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.grab?.innerContent)) !== null && _getAttrByMode41 !== void 0 ? _getAttrByMode41 : 'on';\n  const slider_orientation = (_getAttrByMode42 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_orientation?.innerContent)) !== null && _getAttrByMode42 !== void 0 ? _getAttrByMode42 : 'horizontal';\n  const pagi_style = (_getAttrByMode43 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.pagi_style?.innerContent)) !== null && _getAttrByMode43 !== void 0 ? _getAttrByMode43 : 'bullets';\n  const use_readmore = (_getAttrByMode44 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_readmore?.innerContent)) !== null && _getAttrByMode44 !== void 0 ? _getAttrByMode44 : 'off';\n  const readmore_text = (_getAttrByMode45 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.readmore_text?.innerContent)) !== null && _getAttrByMode45 !== void 0 ? _getAttrByMode45 : 'Readmore';\n  const useOverlay = (_getAttrByMode46 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_overlay?.innerContent)) !== null && _getAttrByMode46 !== void 0 ? _getAttrByMode46 : 'off';\n  const readmoreIconDataAttrs = getReadmoreIconDataAttrs(attrs);\n  const readmoreIconCssClass = Object.keys(readmoreIconDataAttrs).length > 0 ? ' et_pb_custom_button_icon' : '';\n  const refreshKey = [posts.length, loading, post_type, posts_number, posts_offset, post_orderby, post_sortby, use_date, use_author, use_title, use_excerpt, use_thumbnail, thumbnailImageType, meta_seperator, use_bottom, bottom_date, bottom_author, excerpt_length, slider_effect, slider_effect_shadows, slider_effect_coverflow_rotate, slider_effect_coverflow_depth, columns, rows_per_view, slide_to_scroll, multiple_slide_row, slide_row, centered_slides, spacing, speed, loop, autoplay, autoplay_speed, mousewheel, pause_on_hover, touch_move, grab, slider_orientation, pagi_style, use_readmore, readmore_text];\n  (0,external_vendor_React_.useEffect)(() => {\n    if (!swiperRef.current || loading || posts.length === 0) {\n      return;\n    }\n    let swiperInstance = null;\n    const cancelWait = whenSwiperConstructorReady(SwiperCtor => {\n      if (!swiperRef.current || loading || posts.length === 0) {\n        return;\n      }\n      const swiperParams = {\n        ...getDsmCarouselVbSwiperObserverOptions(),\n        effect: slider_effect,\n        slidesPerView: slider_effect === 'cube' || slider_effect === 'flip' ? 1 : 'vertical' === slider_orientation ? Number(rows_per_view) : Number(columns),\n        slidesPerGroup: slider_effect === 'cube' || slider_effect === 'flip' ? 1 : Number(slide_to_scroll),\n        spaceBetween: Number(spacing),\n        speed: Number(speed),\n        loop: loop === 'on',\n        autoplay: autoplay === 'on' ? {\n          delay: Number(autoplay_speed),\n          disableOnInteraction: false\n        } : false,\n        navigation: use_navi === 'on' ? {\n          nextEl: navigationNextRef.current,\n          prevEl: navigationPrevRef.current\n        } : false,\n        pagination: use_pagi === 'on' ? {\n          el: paginationRef.current,\n          clickable: true,\n          type: 'progressbar' !== pagi_style ? 'bullets' : 'progressbar',\n          dynamicBullets: 'dynamic' === pagi_style ? true : false\n        } : false,\n        direction: slider_orientation,\n        centeredSlides: centered_slides === 'on',\n        mousewheel: mousewheel === 'on' ? true : false,\n        allowTouchMove: touch_move === 'off' ? true : false,\n        grabCursor: grab === 'on' ? true : false,\n        coverflowEffect: {\n          rotate: Number(slider_effect_coverflow_rotate),\n          stretch: 0,\n          depth: Number(slider_effect_coverflow_depth),\n          modifier: 1,\n          slideShadows: slider_effect_shadows === 'on'\n        },\n        cubeEffect: {\n          shadow: slider_effect_shadows === 'on',\n          slideShadows: slider_effect_shadows === 'on',\n          shadowOffset: 20,\n          shadowScale: 0.94\n        },\n        flipEffect: {\n          slideShadows: slider_effect_shadows === 'on',\n          limitRotation: true\n        },\n        breakpoints: {\n          320: {\n            slidesPerView: slider_effect === 'cube' || slider_effect === 'flip' ? 1 : 'vertical' === slider_orientation ? (0,lodash.isEmpty)(rows_per_view_phone) ? 1 : Number(rows_per_view) : (0,lodash.isEmpty)(columns_phone) ? 1 : Number(columns),\n            slidesPerGroup: slider_effect === 'cube' || slider_effect === 'flip' ? 1 : (0,lodash.isEmpty)(slide_to_scroll_phone) ? 1 : Number(slide_to_scroll_phone),\n            spaceBetween: 10\n          },\n          768: {\n            slidesPerView: slider_effect === 'cube' || slider_effect === 'flip' ? 1 : 'vertical' === slider_orientation ? (0,lodash.isEmpty)(rows_per_view_tablet) ? 2 : Number(rows_per_view) : (0,lodash.isEmpty)(columns_tablet) ? 2 : Number(columns),\n            slidesPerGroup: slider_effect === 'cube' || slider_effect === 'flip' ? 1 : (0,lodash.isEmpty)(slide_to_scroll_tablet) ? 1 : Number(slide_to_scroll_tablet),\n            spaceBetween: 10\n          },\n          981: {\n            slidesPerView: slider_effect === 'cube' || slider_effect === 'flip' ? 1 : 'vertical' === slider_orientation ? Number(rows_per_view) : Number(columns),\n            slidesPerGroup: slider_effect === 'cube' || slider_effect === 'flip' ? 1 : Number(slide_to_scroll),\n            spaceBetween: Number(spacing),\n            grid: {\n              rows: Number(slide_row),\n              fill: 'row'\n            }\n          }\n        },\n        on: {\n          init: function () {\n            if (pause_on_hover === 'on') {\n              swiperRef.current.addEventListener('mouseenter', () => this.autoplay.stop());\n              swiperRef.current.addEventListener('mouseleave', () => this.autoplay.start());\n            }\n          }\n        }\n      };\n      swiperInstance = new SwiperCtor(swiperRef.current, swiperParams);\n      scheduleDsmCarouselSwiperLayoutRefresh(swiperInstance);\n    });\n    return () => {\n      cancelWait();\n      if (swiperInstance) {\n        swiperInstance.destroy();\n      }\n    };\n  }, refreshKey);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: post_carousel_edit_ModuleScriptData,\n    stylesComponent: post_carousel_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n      params.classnamesInstance.add(`dsm-post-carousel-slider-${slider_orientation} `);\n      if ('on' === post_equal_height) {\n        params.classnamesInstance.add('dsm-post-item-equal-height');\n      }\n      if ('on' === useOverlay) {\n        params.classnamesInstance.add('dsm-overlay-enabled');\n      }\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-post-carousel\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"swiper-container dsm-post-carousel-container\",\n    \"data-effect\": slider_effect,\n    ref: swiperRef\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"swiper-wrapper dsm-post-carousel-wrapper\"\n  }, posts.map((item, index) => {\n    var _item$dsm_comment_cou;\n    const formattedDate = new Date(item?.date).toLocaleDateString('en-US', {\n      month: 'short',\n      day: 'numeric',\n      year: 'numeric'\n    });\n    return /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"dsm-post-carousel-item swiper-slide\",\n      key: index\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"dsm-grid-post-holder-inner\"\n    }, 'on' === use_thumbnail && !(0,lodash.isEmpty)(item?.dsm_featured_image?.full) && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"dsm-entry-image\"\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: `dsm-entry-thumbnail dsm-thumbnail-fit-${'contain' === thumbnailImageType ? 'contain' : 'cover'}`\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n      href: \"#\"\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n      src: item?.dsm_featured_image?.full\n    })))), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"dsm-entry-wrapper\"\n    }, 'on' === use_title && /*#__PURE__*/external_vendor_React_default().createElement(\"header\", {\n      className: \"dsm-entry-header\"\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"h2\", {\n      className: \"dsm-entry-title\"\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n      href: \"#\"\n    }, item?.title?.rendered))), ('on' === use_author || 'on' === use_date || 'on' === use_category || 'on' === use_comments) && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"dsm-entry-meta\"\n    }, 'on' === use_author && /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n      className: \"dsm-posted-by\"\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n      href: \"#\"\n    }, item?.dsm_author?.name)), 'on' === use_author && ('on' === use_date || 'on' === use_category && !(0,lodash.isEmpty)(item?.dsm_categories) || 'on' === use_comments) && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, ' ', /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n      className: \"dsm-meta-seperator\"\n    }, meta_seperator), ' '), 'on' === use_date && /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n      className: \"dsm-posted-on\"\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"time\", {\n      dateTime: formattedDate\n    }, formattedDate)), 'on' === use_category && ('on' === use_author || 'on' === use_date) && !(0,lodash.isEmpty)(item?.dsm_categories) && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, ' ', /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n      className: \"dsm-meta-seperator\"\n    }, meta_seperator), ' '), 'on' === use_category && /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n      className: \"dsm-posted-category\"\n    }, item?.dsm_categories?.map((category, index) => /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, index > 0 && ', ', /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n      href: category.term_link\n    }, category.term_name)))), 'on' === use_comments && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, ('on' === use_author || 'on' === use_date || 'on' === use_category && !(0,lodash.isEmpty)(item?.dsm_categories)) && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, ' ', /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n      className: \"dsm-meta-seperator\"\n    }, meta_seperator), ' '), /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n      className: \"dsm-posted-comments\"\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n      href: `${item?.link || '#'}#comments`\n    }, formatPostCarouselCommentsLabel((_item$dsm_comment_cou = item?.dsm_comment_count) !== null && _item$dsm_comment_cou !== void 0 ? _item$dsm_comment_cou : item?.comment_count))))), 'on' === use_excerpt && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"dsm-entry-content\"\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"dsm-post-excerpt\"\n    }, (0,external_wp_dom_namespaceObject.safeHTML)(decodeEntities(limitExcerpt(item.content.rendered, excerpt_length))))), 'on' === use_readmore && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"dsm-readmore-wrap et_pb_bg_layout_light\"\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"et_pb_button_module_wrapper\"\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"a\", post_carousel_edit_extends({\n      className: `dsm-readmore-btn et_pb_button${readmoreIconCssClass}`\n    }, readmoreIconDataAttrs), elements.render(getDsmButtonTextRenderProps('readmore_text'))))), 'on' === use_bottom && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"dsm-bottom-meta\"\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n      className: \"dsm-bottom-meta-image\"\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n      src: item?.dsm_author?.avatar_url\n    })), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"dsm-bottom-meta-right\"\n    }, 'on' === bottom_date && /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n      className: \"dsm-posted-by\"\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n      href: \"#\"\n    }, item?.dsm_author?.name)), 'on' === bottom_author && /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n      className: \"dsm-posted-on\"\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"time\", null, formattedDate)))))));\n  }))), use_navi === 'on' && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(CarouselNavWithDsmIcon, {\n    direction: \"prev\",\n    className: \"swiper-arrow-button\",\n    buttonRef: navigationPrevRef,\n    icon: prevIcon,\n    useCustomIcon: useCustomPrevIcon\n  }), /*#__PURE__*/external_vendor_React_default().createElement(CarouselNavWithDsmIcon, {\n    direction: \"next\",\n    className: \"swiper-arrow-button\",\n    buttonRef: navigationNextRef,\n    icon: nextIcon,\n    useCustomIcon: useCustomNextIcon\n  })), use_pagi === 'on' && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"swiper-pagination dsm-pagination\",\n    ref: paginationRef\n  })));\n}\n/* harmony default export */ const post_carousel_edit = (post_carousel_edit_Edit);\n;// ./packages/module-library/post-carousel/conversion-outline.js\n\n\nconst post_carousel_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'postItemStyle.decoration.border',\n      post_box: 'postItemStyle.decoration.border',\n      image: 'thumbnailStyle.decoration.border',\n      navi_arrow: 'navigationStyle.decoration.border',\n      bottom_author_image: 'bottomStyle.decoration.border'\n    },\n    box_shadow: {\n      default: 'postItemStyle.decoration.boxShadow',\n      post_box: 'postItemStyle.decoration.boxShadow',\n      image: 'thumbnailStyle.decoration.boxShadow',\n      navi_arrow: 'navigationStyle.decoration.boxShadow',\n      bottom_author_image: 'bottomStyle.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    display_conditions: 'module.decoration.conditions',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    margin_padding: 'module.decoration.spacing',\n    max_width: 'module.decoration.sizing',\n    height: 'module.decoration.sizing',\n    link_options: 'module.advanced.link',\n    // D4 `advanced_fields['button']['readmore']` — required or dozens of attrs (colors, borders, spacing, icon) become unknownAttributes.\n    button: {\n      readmore: 'readmore'\n    },\n    filters: {\n      default: 'module.decoration.filters',\n      image: 'thumbnailStyle.decoration.filters'\n    },\n    fonts: {\n      title: 'title.decoration.font',\n      body: 'body.decoration.font',\n      date: 'date.decoration.font',\n      author: 'author.decoration.font',\n      category: 'category.decoration.font',\n      comments: 'comments.decoration.font',\n      readmore: 'readmore.decoration.font',\n      bottom_date: 'bottom_date.decoration.font',\n      bottom_author: 'bottom_author.decoration.font'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    post_type: 'post_type.innerContent.*',\n    posts_number: 'posts_number.innerContent.*',\n    posts_offset: 'posts_offset.innerContent.*',\n    use_overlay: 'use_overlay.innerContent.*',\n    overlay_icon: 'overlay_icon.innerContent.*',\n    overlay_icon_color: 'overlay_icon_color.innerContent.*',\n    overlay_icon_size: 'overlay_icon_size.innerContent.*',\n    hover_overlay_color: 'hover_overlay_color.innerContent.*',\n    use_thumbnail: 'use_thumbnail.innerContent.*',\n    thumbnail_img_type: 'thumbnail_img_type.innerContent.*',\n    lazyload: 'lazyload.innerContent.*',\n    thumbnail_height: 'thumbnail_height.innerContent.*',\n    use_title: 'use_title.innerContent.*',\n    use_excerpt: 'use_excerpt.innerContent.*',\n    excerpt_length: 'excerpt_length.innerContent.*',\n    include_current_post: 'include_current_post.innerContent.*',\n    page_included_categories: 'page_included_categories.innerContent.*',\n    use_date: 'use_date.innerContent.*',\n    meta_date: 'meta_date.innerContent.*',\n    post_orderby: 'post_orderby.innerContent.*',\n    post_sortby: 'post_sortby.innerContent.*',\n    meta_seperator: 'meta_seperator.innerContent.*',\n    use_author: 'use_author.innerContent.*',\n    use_comments: 'use_comments.innerContent.*',\n    use_readmore: 'use_readmore.innerContent.*',\n    readmore_text: 'readmore_text.innerContent.*',\n    // D4 Content-tab fields (shortcode attrs), not only `advanced_fields['button']['readmore']` sub-keys.\n    // Mirrors core Button: `custom_button` → `button.decoration.button.*.enable`.\n    custom_readmore: 'readmore.decoration.button.*.enable',\n    readmore_use_icon: 'readmore.decoration.button.*.icon.enable',\n    readmore_icon: 'readmore.decoration.button.*.icon.settings',\n    use_bottom: 'use_bottom.innerContent.*',\n    bottom_date: 'bottom_date.innerContent.*',\n    bottom_author: 'bottom_author.innerContent.*',\n    use_category: 'use_category.innerContent.*',\n    slider_orientation: 'slider_orientation.innerContent.*',\n    slider_container_height: 'slider_container_height.innerContent.*',\n    slider_vertical_height_msg: 'slider_vertical_height_msg.innerContent.*',\n    slider_effect: 'slider_effect.innerContent.*',\n    slider_effect_shadows: 'slider_effect_shadows.innerContent.*',\n    slider_effect_coverflow_rotate: 'slider_effect_coverflow_rotate.innerContent.*',\n    slider_effect_coverflow_depth: 'slider_effect_coverflow_depth.innerContent.*',\n    columns: 'columns.innerContent.*',\n    rows_per_view: 'rows_per_view.innerContent.*',\n    slide_to_scroll: 'slide_to_scroll.innerContent.*',\n    multiple_slide_row: 'multiple_slide_row.innerContent.*',\n    slide_row: 'slide_row.innerContent.*',\n    centered_slides: 'centered_slides.innerContent.*',\n    spacing: 'spacing.innerContent.*',\n    speed: 'speed.innerContent.*',\n    loop: 'loop.innerContent.*',\n    autoplay: 'autoplay.innerContent.*',\n    autoplay_speed: 'autoplay_speed.innerContent.*',\n    autoplay_viewport: 'autoplay_viewport.innerContent.*',\n    mousewheel: 'mousewheel.innerContent.*',\n    pause_on_hover: 'pause_on_hover.innerContent.*',\n    use_pagi: 'use_pagi.innerContent.*',\n    pagi_position: 'pagi_position.innerContent.*',\n    pagi_ver_position: 'pagi_ver_position.innerContent.*',\n    pagi_color: 'pagi_color.innerContent.*',\n    pagi_active_color: 'pagi_active_color.innerContent.*',\n    pagi_ver_placement: 'pagi_ver_placement.innerContent.*',\n    pagi_style: 'pagi_style.innerContent.*',\n    use_navi: 'use_navi.innerContent.*',\n    navi_position: 'navi_position.innerContent.*',\n    left_navi_position: 'left_navi_position.innerContent.*',\n    right_navi_position: 'right_navi_position.innerContent.*',\n    navi_hori_position: 'navi_hori_position.innerContent.*',\n    top_navi_ver_position: 'top_navi_ver_position.innerContent.*',\n    bottom_navi_ver_position: 'bottom_navi_ver_position.innerContent.*',\n    navi_size: 'navi_size.innerContent.*',\n    use_prev_icon: 'use_prev_icon.innerContent.*',\n    prev_icon: 'prev_icon.innerContent.*',\n    use_next_icon: 'use_next_icon.innerContent.*',\n    next_icon: 'next_icon.innerContent.*',\n    navi_color: 'navi_color.innerContent.*',\n    navi_background_color: 'navi_background_color.innerContent.*',\n    post_padding: 'post_padding.decoration.spacing.*.padding',\n    post_equal_height: 'post_equal_height.innerContent.*',\n    post_entry_design_tab: 'post_entry_design_tab.innerContent.*',\n    bottom_meta_design_tab: 'bottom_meta_design_tab.innerContent.*',\n    touch_move: 'touch_move.innerContent.*',\n    grab: 'grab.innerContent.*',\n    post_item_bg_color: 'post_item_bg_color.innerContent.*',\n    meta_alignment: 'meta_alignment.innerContent.*',\n    image_width: 'image_width.innerContent.*',\n    content_wrapper: 'content_wrapper.decoration.spacing.*.padding',\n    title_level: 'title.decoration.font.font.*.headingLevel',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  // Dynamic D4 keys `dsm_include_*` are deprecated in PHP so migrator skips unknownAttributes; term_ids filled in postConvert.\n  valueExpansionFunctionMap: {\n    overlay_icon: external_divi_conversion_namespaceObject.convertFontIcon,\n    prev_icon: external_divi_conversion_namespaceObject.convertFontIcon,\n    next_icon: external_divi_conversion_namespaceObject.convertFontIcon,\n    readmore_icon: external_divi_conversion_namespaceObject.convertFontIcon,\n    post_padding: external_divi_module_namespaceObject.convertSpacing,\n    content_wrapper: external_divi_module_namespaceObject.convertSpacing,\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/post-carousel/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmPostCarousel', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/post-carousel': {\n      name: 'divi-supreme/post-carousel',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        stroke: \"none\",\n        \"fill-opacity\": \"1\",\n        fill: \"#5C1DB0\",\n        \"fill-rule\": \"nonzero\",\n        d: \"M 13.589844 2.851562 C 13.519531 2.851562 13.449219 2.832031 13.390625 2.792969 C 13.328125 2.753906 13.285156 2.695312 13.257812 2.632812 C 13.230469 2.566406 13.222656 2.492188 13.234375 2.421875 C 13.25 2.351562 13.285156 2.289062 13.335938 2.238281 C 13.386719 2.1875 13.449219 2.152344 13.519531 2.140625 C 13.589844 2.125 13.660156 2.132812 13.726562 2.160156 C 13.792969 2.1875 13.847656 2.234375 13.886719 2.292969 C 13.929688 2.351562 13.949219 2.421875 13.949219 2.492188 C 13.949219 2.589844 13.910156 2.679688 13.84375 2.746094 C 13.777344 2.816406 13.683594 2.851562 13.589844 2.851562 Z M 13.589844 2.332031 C 13.558594 2.332031 13.527344 2.34375 13.5 2.359375 C 13.472656 2.378906 13.453125 2.402344 13.441406 2.433594 C 13.429688 2.460938 13.425781 2.492188 13.433594 2.523438 C 13.4375 2.554688 13.453125 2.585938 13.476562 2.605469 C 13.5 2.628906 13.527344 2.644531 13.558594 2.652344 C 13.589844 2.65625 13.621094 2.652344 13.652344 2.640625 C 13.679688 2.628906 13.703125 2.609375 13.722656 2.582031 C 13.738281 2.554688 13.75 2.523438 13.75 2.492188 C 13.75 2.449219 13.734375 2.410156 13.703125 2.378906 C 13.671875 2.351562 13.632812 2.332031 13.589844 2.332031 Z M 13.589844 2.332031 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        stroke: \"none\",\n        \"fill-opacity\": \"1\",\n        fill: \"#5C1DB0\",\n        \"fill-rule\": \"nonzero\",\n        d: \"M 1.585938 5.300781 C 1.550781 5.300781 1.515625 5.292969 1.484375 5.273438 C 1.453125 5.253906 1.429688 5.222656 1.417969 5.191406 C 1.402344 5.15625 1.398438 5.121094 1.40625 5.085938 C 1.410156 5.050781 1.429688 5.015625 1.453125 4.988281 C 1.480469 4.964844 1.511719 4.945312 1.546875 4.9375 C 1.582031 4.929688 1.621094 4.933594 1.652344 4.945312 C 1.6875 4.960938 1.714844 4.984375 1.738281 5.011719 C 1.757812 5.042969 1.769531 5.078125 1.769531 5.113281 C 1.769531 5.136719 1.765625 5.164062 1.757812 5.183594 C 1.75 5.207031 1.734375 5.230469 1.71875 5.246094 C 1.703125 5.265625 1.679688 5.277344 1.660156 5.289062 C 1.636719 5.296875 1.613281 5.300781 1.585938 5.300781 Z M 1.585938 5.035156 C 1.570312 5.035156 1.554688 5.042969 1.542969 5.050781 C 1.527344 5.058594 1.519531 5.070312 1.511719 5.085938 C 1.503906 5.101562 1.503906 5.117188 1.507812 5.132812 C 1.511719 5.148438 1.519531 5.164062 1.527344 5.175781 C 1.539062 5.1875 1.554688 5.195312 1.570312 5.199219 C 1.585938 5.203125 1.601562 5.199219 1.617188 5.195312 C 1.632812 5.1875 1.644531 5.175781 1.65625 5.164062 C 1.664062 5.148438 1.667969 5.132812 1.667969 5.117188 C 1.667969 5.097656 1.660156 5.074219 1.644531 5.058594 C 1.628906 5.042969 1.609375 5.035156 1.585938 5.035156 Z M 1.585938 5.035156 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        stroke: \"none\",\n        \"fill-opacity\": \"1\",\n        fill: \"#5C1DB0\",\n        \"fill-rule\": \"nonzero\",\n        d: \"M 1.761719 13.9375 C 1.621094 13.9375 1.488281 13.898438 1.375 13.820312 C 1.261719 13.746094 1.171875 13.636719 1.121094 13.511719 C 1.066406 13.382812 1.054688 13.242188 1.078125 13.109375 C 1.105469 12.976562 1.171875 12.851562 1.269531 12.753906 C 1.367188 12.65625 1.488281 12.589844 1.625 12.566406 C 1.757812 12.539062 1.898438 12.550781 2.023438 12.605469 C 2.152344 12.65625 2.261719 12.746094 2.335938 12.859375 C 2.414062 12.972656 2.453125 13.109375 2.453125 13.246094 C 2.453125 13.429688 2.378906 13.605469 2.25 13.734375 C 2.121094 13.863281 1.945312 13.9375 1.761719 13.9375 Z M 1.761719 12.9375 C 1.699219 12.9375 1.640625 12.953125 1.589844 12.988281 C 1.539062 13.023438 1.5 13.070312 1.476562 13.125 C 1.453125 13.183594 1.445312 13.246094 1.457031 13.304688 C 1.46875 13.363281 1.5 13.417969 1.542969 13.460938 C 1.585938 13.507812 1.640625 13.535156 1.699219 13.546875 C 1.757812 13.558594 1.820312 13.554688 1.878906 13.53125 C 1.933594 13.507812 1.984375 13.46875 2.015625 13.417969 C 2.050781 13.367188 2.066406 13.304688 2.066406 13.246094 C 2.066406 13.164062 2.035156 13.085938 1.976562 13.027344 C 1.917969 12.96875 1.839844 12.9375 1.761719 12.9375 Z M 1.761719 12.9375 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        stroke: \"none\",\n        \"fill-opacity\": \"1\",\n        fill: \"#5C1DB0\",\n        \"fill-rule\": \"nonzero\",\n        d: \"M 2.050781 9.175781 L 1.128906 8.351562 C 1.113281 8.339844 1.101562 8.320312 1.089844 8.300781 C 1.082031 8.277344 1.074219 8.257812 1.074219 8.234375 C 1.074219 8.210938 1.078125 8.191406 1.085938 8.167969 C 1.09375 8.148438 1.109375 8.128906 1.125 8.113281 L 2.050781 7.175781 C 2.066406 7.160156 2.082031 7.148438 2.105469 7.140625 C 2.125 7.128906 2.144531 7.125 2.167969 7.125 C 2.1875 7.125 2.210938 7.128906 2.230469 7.140625 C 2.25 7.148438 2.269531 7.160156 2.285156 7.175781 C 2.316406 7.207031 2.332031 7.25 2.332031 7.292969 C 2.332031 7.335938 2.316406 7.378906 2.285156 7.410156 L 1.601562 8.097656 C 1.585938 8.117188 1.574219 8.132812 1.566406 8.15625 C 1.558594 8.175781 1.554688 8.199219 1.554688 8.222656 C 1.554688 8.242188 1.558594 8.265625 1.570312 8.285156 C 1.578125 8.304688 1.59375 8.324219 1.609375 8.339844 L 2.269531 8.925781 C 2.289062 8.941406 2.300781 8.960938 2.308594 8.980469 C 2.320312 9 2.324219 9.019531 2.328125 9.042969 C 2.328125 9.0625 2.324219 9.085938 2.316406 9.105469 C 2.308594 9.125 2.300781 9.144531 2.285156 9.160156 C 2.253906 9.195312 2.214844 9.214844 2.171875 9.21875 C 2.125 9.21875 2.082031 9.207031 2.050781 9.175781 Z M 2.050781 9.175781 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        stroke: \"none\",\n        \"fill-opacity\": \"1\",\n        fill: \"#5C1DB0\",\n        \"fill-rule\": \"nonzero\",\n        d: \"M 14.375 9.175781 L 15.292969 8.351562 C 15.308594 8.339844 15.324219 8.320312 15.332031 8.300781 C 15.34375 8.277344 15.347656 8.257812 15.347656 8.234375 C 15.347656 8.210938 15.34375 8.191406 15.335938 8.167969 C 15.328125 8.148438 15.316406 8.128906 15.300781 8.113281 L 14.375 7.175781 C 14.359375 7.160156 14.339844 7.148438 14.320312 7.140625 C 14.300781 7.128906 14.277344 7.125 14.257812 7.125 C 14.234375 7.125 14.214844 7.128906 14.195312 7.140625 C 14.171875 7.148438 14.15625 7.160156 14.140625 7.175781 C 14.109375 7.207031 14.089844 7.25 14.089844 7.292969 C 14.089844 7.335938 14.109375 7.378906 14.140625 7.410156 L 14.824219 8.097656 C 14.839844 8.117188 14.851562 8.132812 14.859375 8.15625 C 14.867188 8.175781 14.871094 8.199219 14.871094 8.222656 C 14.871094 8.242188 14.863281 8.265625 14.855469 8.285156 C 14.84375 8.304688 14.832031 8.324219 14.816406 8.339844 L 14.148438 8.925781 C 14.132812 8.941406 14.121094 8.960938 14.109375 8.980469 C 14.101562 9 14.09375 9.019531 14.09375 9.042969 C 14.09375 9.0625 14.097656 9.085938 14.101562 9.105469 C 14.109375 9.125 14.121094 9.144531 14.136719 9.160156 C 14.152344 9.179688 14.167969 9.191406 14.1875 9.203125 C 14.207031 9.210938 14.230469 9.21875 14.25 9.21875 C 14.273438 9.222656 14.296875 9.21875 14.316406 9.210938 C 14.335938 9.203125 14.355469 9.191406 14.375 9.175781 Z M 14.375 9.175781 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"none\",\n        \"stroke-width\": \"1\",\n        \"stroke-linecap\": \"round\",\n        \"stroke-linejoin\": \"miter\",\n        stroke: \"#5C1DB0\",\n        \"stroke-opacity\": \"1\",\n        \"stroke-miterlimit\": \"10\",\n        d: \"M 22.727051 8.144531 L 8.547363 8.144531 C 7.617188 8.144531 6.870117 8.898926 6.870117 9.829102 L 6.870117 24.074707 C 6.870117 25.004883 7.617188 25.751953 8.547363 25.751953 L 22.727051 25.751953 C 23.657227 25.751953 24.404297 25.004883 24.404297 24.074707 L 24.404297 9.829102 C 24.404297 8.898926 23.657227 8.144531 22.727051 8.144531 Z M 22.727051 8.144531 \",\n        transform: \"matrix(0.533333,0,0,0.533333,0,0)\"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        stroke: \"none\",\n        \"fill-opacity\": \"1\",\n        fill: \"#5C1DB0\",\n        \"fill-rule\": \"nonzero\",\n        d: \"M 10.371094 10.625 L 6.035156 10.625 C 5.949219 10.625 5.875 10.695312 5.875 10.785156 C 5.875 10.875 5.949219 10.949219 6.035156 10.949219 L 10.371094 10.949219 C 10.460938 10.949219 10.535156 10.875 10.535156 10.785156 C 10.535156 10.695312 10.460938 10.625 10.371094 10.625 Z M 10.371094 10.625 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        stroke: \"none\",\n        \"fill-opacity\": \"1\",\n        fill: \"#5C1DB0\",\n        \"fill-rule\": \"nonzero\",\n        d: \"M 11.367188 11.316406 L 5.042969 11.316406 C 4.957031 11.316406 4.882812 11.390625 4.882812 11.476562 C 4.882812 11.566406 4.957031 11.640625 5.042969 11.640625 L 11.367188 11.640625 C 11.453125 11.640625 11.527344 11.566406 11.527344 11.476562 C 11.527344 11.390625 11.453125 11.316406 11.367188 11.316406 Z M 11.367188 11.316406 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        stroke: \"none\",\n        \"fill-opacity\": \"1\",\n        fill: \"#5C1DB0\",\n        \"fill-rule\": \"nonzero\",\n        d: \"M 8.207031 7.613281 C 8.117188 7.613281 8.03125 7.585938 7.960938 7.539062 C 7.886719 7.488281 7.832031 7.417969 7.796875 7.339844 C 7.765625 7.257812 7.757812 7.167969 7.773438 7.085938 C 7.789062 7 7.832031 6.921875 7.894531 6.859375 C 7.957031 6.796875 8.035156 6.753906 8.121094 6.738281 C 8.207031 6.722656 8.292969 6.730469 8.375 6.765625 C 8.457031 6.796875 8.523438 6.855469 8.574219 6.925781 C 8.621094 7 8.644531 7.085938 8.644531 7.171875 C 8.644531 7.289062 8.597656 7.402344 8.515625 7.484375 C 8.433594 7.566406 8.320312 7.613281 8.207031 7.613281 Z M 8.207031 6.976562 C 8.167969 6.976562 8.128906 6.988281 8.097656 7.007812 C 8.0625 7.03125 8.039062 7.0625 8.023438 7.097656 C 8.007812 7.132812 8.003906 7.171875 8.011719 7.210938 C 8.019531 7.25 8.039062 7.285156 8.066406 7.3125 C 8.09375 7.339844 8.128906 7.355469 8.167969 7.363281 C 8.207031 7.371094 8.246094 7.367188 8.28125 7.351562 C 8.316406 7.339844 8.347656 7.3125 8.367188 7.28125 C 8.390625 7.25 8.402344 7.210938 8.402344 7.171875 C 8.402344 7.121094 8.382812 7.070312 8.34375 7.03125 C 8.308594 6.996094 8.257812 6.976562 8.207031 6.976562 Z M 8.207031 6.976562 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        stroke: \"none\",\n        \"fill-opacity\": \"1\",\n        fill: \"#5C1DB0\",\n        \"fill-rule\": \"nonzero\",\n        d: \"M 9.132812 9.273438 L 7.277344 9.273438 C 7.070312 9.273438 6.867188 9.191406 6.722656 9.042969 C 6.574219 8.898438 6.492188 8.695312 6.492188 8.488281 L 6.492188 6.632812 C 6.492188 6.425781 6.574219 6.222656 6.722656 6.078125 C 6.867188 5.929688 7.070312 5.847656 7.277344 5.847656 L 9.132812 5.847656 C 9.339844 5.847656 9.539062 5.929688 9.6875 6.078125 C 9.832031 6.222656 9.917969 6.425781 9.917969 6.632812 L 9.917969 8.484375 C 9.917969 8.589844 9.898438 8.691406 9.855469 8.785156 C 9.816406 8.882812 9.761719 8.96875 9.6875 9.042969 C 9.613281 9.117188 9.527344 9.175781 9.433594 9.214844 C 9.335938 9.253906 9.234375 9.273438 9.132812 9.273438 Z M 7.277344 6.089844 C 7.132812 6.089844 6.996094 6.148438 6.894531 6.25 C 6.792969 6.351562 6.734375 6.488281 6.734375 6.632812 L 6.734375 8.484375 C 6.734375 8.628906 6.792969 8.765625 6.894531 8.871094 C 6.996094 8.972656 7.132812 9.027344 7.277344 9.03125 L 9.132812 9.03125 C 9.273438 9.027344 9.414062 8.972656 9.515625 8.871094 C 9.617188 8.769531 9.675781 8.628906 9.675781 8.484375 L 9.675781 6.632812 C 9.671875 6.488281 9.617188 6.351562 9.515625 6.25 C 9.414062 6.148438 9.273438 6.089844 9.132812 6.089844 Z M 7.277344 6.089844 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        stroke: \"none\",\n        \"fill-opacity\": \"1\",\n        fill: \"#5C1DB0\",\n        \"fill-rule\": \"nonzero\",\n        d: \"M 9.132812 9.273438 L 7.277344 9.273438 C 7.070312 9.273438 6.867188 9.191406 6.722656 9.042969 C 6.574219 8.898438 6.492188 8.695312 6.492188 8.488281 L 6.492188 8.285156 L 7.683594 7.613281 L 8.027344 8.113281 L 9.917969 6.953125 L 9.917969 8.484375 C 9.917969 8.589844 9.898438 8.691406 9.859375 8.789062 C 9.820312 8.882812 9.761719 8.96875 9.6875 9.042969 C 9.617188 9.117188 9.527344 9.175781 9.433594 9.214844 C 9.335938 9.253906 9.234375 9.273438 9.132812 9.273438 Z M 6.734375 8.429688 L 6.734375 8.484375 C 6.734375 8.628906 6.792969 8.765625 6.894531 8.871094 C 6.996094 8.972656 7.132812 9.027344 7.277344 9.03125 L 9.132812 9.03125 C 9.273438 9.027344 9.414062 8.972656 9.515625 8.871094 C 9.617188 8.769531 9.675781 8.628906 9.675781 8.484375 L 9.675781 7.390625 L 7.957031 8.441406 L 7.609375 7.933594 Z M 6.734375 8.429688 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/post-carousel/index.js\n\n\n\n\n\n\n\n\n\nconst postCarouselModule = {\n  metadata: post_carousel_module_namespaceObject,\n  conversionOutline: post_carousel_conversion_outline_conversionOutline,\n  renderers: {\n    edit: post_carousel_edit,\n    styles: post_carousel_module_styles_ModuleStyles\n  },\n  defaultAttrs: {\n    ...post_carousel_module_default_render_attributes_namespaceObject\n  },\n  settings: {\n    content: post_carousel_settings_content,\n    design: post_carousel_settings_design,\n    advanced: post_carousel_settings_advanced\n  },\n  placeholderContent: {\n    ...post_carousel_module_default_render_attributes_namespaceObject,\n    module: {\n      ...(post_carousel_module_default_render_attributes_namespaceObject.module || {}),\n      decoration: {\n        ...(post_carousel_module_default_render_attributes_namespaceObject.module?.decoration || {})\n      }\n    }\n  }\n};\n/* harmony default export */ const post_carousel = (postCarouselModule);\n;// ./packages/module-library/blog-carousel/module.json\nconst blog_carousel_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/blog-carousel\",\"d4Shortcode\":\"dsm_blog_carousel\",\"title\":\"Supreme Blog Carousel\",\"titles\":\"Supreme Blog Carousels\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/blog-carousel\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}},\"styleProps\":{\"spacing\":{\"selector\":\"{{selector}} .dsm-blog-carousel-container\",\"important\":true},\"sizing\":{\"selector\":\"{{selector}} .dsm-blog-carousel-container\"}}},\"title\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-entry-title a\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"propertySelectors\":{\"font\":{\"desktop\":{\"value\":{\"text-align\":\"{{selector}} .dsm-entry-title\"},\"hover\":{\"text-align\":\"{{selector}} .dsm-entry-title:hover\"}},\"tablet\":{\"value\":{\"text-align\":\"{{selector}} .dsm-entry-title\"}},\"phone\":{\"value\":{\"text-align\":\"{{selector}} .dsm-entry-title\"}}}}}}},\"body\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-post-excerpt\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"date\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-posted-on\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"author\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-posted-by a\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"category\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-posted-category a\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"comments\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-posted-comments a\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"posts_number\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"posts_offset\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_overlay\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"overlay_icon\":{\"type\":\"object\",\"inlineEditor\":\"IconPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"overlay_icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"#ffffff\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"overlay_icon_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"25px\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"hover_overlay_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"#7ebec5\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_thumbnail\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"thumbnail_img_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"cover\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"lazyload\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"thumbnail_height\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_title\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_excerpt\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"excerpt_length\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"include_current_post\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"include_categories\":{\"type\":\"object\",\"inlineEditor\":\"checkboxesContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":[]}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_date\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"meta_date\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"post_orderby\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"post_sortby\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"meta_seperator\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"|\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_author\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_comments\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_readmore\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"readmore_text\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"Readmore\"}}},\"childrenSanitizer\":\"et_core_esc_previously\",\"tagName\":\"span\"},\"use_bottom\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"bottom_date\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"selector\":\"{{selector}} .dsm-bottom-meta .dsm-posted-on\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"bottom_author\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"selector\":\"{{selector}} .dsm-bottom-meta .dsm-posted-by a\",\"default\":{\"inlineContent\":{\"desktop\":{\"value\":\"on\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slider_effect\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"inlineContent\":{\"desktop\":{\"value\":\"default\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slider_effect_shadows\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slider_effect_coverflow_rotate\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"30\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slider_effect_coverflow_depth\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"100\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"columns\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"3\"},\"tablet\":{\"value\":\"2\"},\"phone\":{\"value\":\"1\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"rows_per_view\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"1\"},\"tablet\":{\"value\":\"2\"},\"phone\":{\"value\":\"1\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slide_to_scroll\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"1\"},\"tablet\":{\"value\":\"1\"},\"phone\":{\"value\":\"1\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"multiple_slide_row\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slide_row\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"1\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"centered_slides\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"spacing\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"30\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"speed\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"500\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"loop\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"autoplay\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"autoplay_speed\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"5000\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"autoplay_viewport\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"50%\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"mousewheel\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"pause_on_hover\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"inlineContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_pagi\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"pagi_position\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"-40\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"pagi_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"#d8d8d8\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"pagi_active_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"#7ebec5\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"pagi_style\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"bullets\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_navi\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"navi_position\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"50%\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"left_navi_position\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"-50px\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"right_navi_position\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"-50px\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"navi_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"40\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_prev_icon\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_next_icon\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"next_icon\":{\"type\":\"object\",\"inlineEditor\":\"IconPickerContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"navi_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"#7ebec5\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"navi_background_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"post_equal_height\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"touch_move\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"grab\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"post_item_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"post_entry_design_tab\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"title\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"bottom_meta_design_tab\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"date\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"meta_alignment\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"left\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"60px\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"slider_orientation\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"slider_container_height\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"slider_vertical_height_msg\":{\"type\":\"object\",\"inlineEditor\":\"WarningContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"content_wrapper\":{\"type\":\"object\",\"inlineEditor\":\"\",\"selector\":\"{{selector}} .dsm-blog-carousel-item .dsm-entry-wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\",\"settings\":{\"decoration\":{\"spacing\":{}}},\"styleProps\":{\"spacing\":{\"selector\":\"{{selector}} .dsm-blog-carousel-item .dsm-entry-wrapper\",\"important\":true}}},\"entryMetaContainer\":{\"type\":\"object\",\"inlineEditor\":\"\",\"selector\":\"{{selector}} .dsm-blog-carousel-item .dsm-entry-meta\",\"childrenSanitizer\":\"et_core_esc_previously\",\"settings\":{\"decoration\":{\"spacing\":{},\"background\":{}}},\"styleProps\":{\"spacing\":{\"selector\":\"{{selector}} .dsm-blog-carousel-item .dsm-entry-meta\",\"important\":true},\"border\":{\"selector\":\"{{selector}} .dsm-blog-carousel-item .dsm-entry-meta\"},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-blog-carousel-item .dsm-entry-meta\",\"useOverlay\":true},\"background\":{\"selector\":\"{{selector}} .dsm-blog-carousel-item .dsm-entry-meta\"}}},\"pagi_ver_position\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"pagi_ver_placement\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"navi_hori_position\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"50%\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"top_navi_ver_position\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"-50px\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"bottom_navi_ver_position\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"-50px\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"prev_icon\":{\"type\":\"object\",\"inlineEditor\":\"IconPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_category\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"post_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-blog-carousel-wrapper .dsm-blog-carousel-item\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"postItemStyle\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-blog-carousel-wrapper .dsm-blog-carousel-item\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-blog-carousel-wrapper .dsm-blog-carousel-item\"},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-blog-carousel-wrapper .dsm-blog-carousel-item\",\"useOverlay\":true}}},\"thumbnailStyle\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-blog-carousel-wrapper .dsm-blog-carousel-item .dsm-entry-image img\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-blog-carousel-wrapper .dsm-blog-carousel-item .dsm-entry-image img\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-blog-carousel-wrapper .dsm-blog-carousel-item .dsm-entry-image img img\",\"useOverlay\":true},\"filters\":{\"selector\":\"{{selector}} .dsm-blog-carousel-wrapper .dsm-blog-carousel-item .dsm-entry-image img\",\"important\":true}}},\"navigationStyle\":{\"type\":\"object\",\"selector\":\"{{selector}} .swiper-button-prev, {{selector}} .swiper-button-next\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .swiper-button-prev, {{selector}} .swiper-button-next\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .swiper-button-prev, {{selector}} .swiper-button-next\",\"useOverlay\":true}}},\"bottomStyle\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-blog-carousel-wrapper .dsm-blog-carousel-item .dsm-bottom-meta .dsm-bottom-meta-image\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-blog-carousel-wrapper .dsm-blog-carousel-item .dsm-bottom-meta .dsm-bottom-meta-image\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-blog-carousel-wrapper .dsm-blog-carousel-item .dsm-bottom-meta .dsm-bottom-meta-image\",\"useOverlay\":true}}},\"bottomMetaContainer\":{\"type\":\"object\",\"inlineEditor\":\"\",\"selector\":\"{{selector}} .dsm-blog-carousel-item .dsm-bottom-meta\",\"childrenSanitizer\":\"et_core_esc_previously\",\"settings\":{\"decoration\":{\"spacing\":{},\"background\":{}}},\"styleProps\":{\"spacing\":{\"selector\":\"{{selector}} .dsm-blog-carousel-item .dsm-bottom-meta\",\"important\":true},\"border\":{\"selector\":\"{{selector}} .dsm-blog-carousel-item .dsm-bottom-meta\"},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-blog-carousel-item .dsm-bottom-meta\",\"useOverlay\":true},\"background\":{\"selector\":\"{{selector}} .dsm-blog-carousel-item .dsm-bottom-meta\"}}},\"readmore\":{\"type\":\"object\",\"label\":\"Read More Button\",\"selector\":\"{{selector}}.et_pb_module .dsm-readmore-wrap .et_pb_button_module_wrapper .dsm-readmore-btn.et_pb_button\",\"supportsCustomAttributes\":true,\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}},\"default\":{\"decoration\":{\"button\":{\"desktop\":{\"value\":{\"enable\":\"off\",\"icon\":{\"enable\":\"on\",\"onHover\":\"on\"}}}},\"border\":{\"desktop\":{\"value\":{\"styles\":{\"all\":{\"color\":\"\"}}}}},\"font\":{\"font\":{\"desktop\":{\"value\":{\"color\":\"\"}}}},\"spacing\":{\"desktop\":{\"value\":{\"margin\":{\"top\":\"15px\"}}}}}},\"elementType\":\"button\",\"styleProps\":{\"alignment\":{\"selector\":\"{{selector}}.et_pb_module .dsm-readmore-wrap .et_pb_button_module_wrapper\"},\"sizing\":{\"selector\":\"{{selector}}.et_pb_module .dsm-readmore-wrap .et_pb_button_module_wrapper\",\"propertySelectors\":{\"desktop\":{\"value\":{\"margin-left\":\"{{selector}}.et_pb_module .dsm-readmore-wrap .et_pb_button_module_wrapper\",\"margin-right\":\"{{selector}}.et_pb_module .dsm-readmore-wrap .et_pb_button_module_wrapper\"}},\"tablet\":{\"value\":{\"margin-left\":\"{{selector}}.et_pb_module .dsm-readmore-wrap .et_pb_button_module_wrapper\",\"margin-right\":\"{{selector}}.et_pb_module .dsm-readmore-wrap .et_pb_button_module_wrapper\"}},\"phone\":{\"value\":{\"margin-left\":\"{{selector}}.et_pb_module .dsm-readmore-wrap .et_pb_button_module_wrapper\",\"margin-right\":\"{{selector}}.et_pb_module .dsm-readmore-wrap .et_pb_button_module_wrapper\"}}}},\"button\":{\"propertySelectors\":{\"desktop\":{\"value\":{\"text-align\":\"{{selector}}.et_pb_module .dsm-readmore-wrap .et_pb_button_module_wrapper\"}},\"tablet\":{\"value\":{\"text-align\":\"{{selector}}.et_pb_module .dsm-readmore-wrap .et_pb_button_module_wrapper\"}},\"phone\":{\"value\":{\"text-align\":\"{{selector}}.et_pb_module .dsm-readmore-wrap .et_pb_button_module_wrapper\"}}}},\"font\":{\"important\":{\"font\":{\"desktop\":{\"value\":{\"color\":true,\"font-size\":true,\"letter-spacing\":true}}}}},\"spacing\":{\"important\":true}}}}}');\n;// ./packages/module-library/blog-carousel/module-default-render-attributes.json\nconst blog_carousel_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"module\":{\"decoration\":{\"spacing\":{\"desktop\":{\"value\":{\"margin\":{\"bottom\":\"60px\"}}}}}},\"title\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"headingLevel\":\"h2\"}}}}}},\"posts_number\":{\"innerContent\":{\"desktop\":{\"value\":\"10\"}}},\"posts_offset\":{\"innerContent\":{\"desktop\":{\"value\":\"0\"}}},\"post_orderby\":{\"innerContent\":{\"desktop\":{\"value\":\"date\"}}},\"post_sortby\":{\"innerContent\":{\"desktop\":{\"value\":\"desc\"}}},\"meta_date\":{\"innerContent\":{\"desktop\":{\"value\":\"M j, Y\"}}},\"use_thumbnail\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"use_title\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"use_excerpt\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"excerpt_length\":{\"innerContent\":{\"desktop\":{\"value\":\"50\"}}},\"include_current_post\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"include_categories\":{\"innerContent\":{\"desktop\":{\"value\":[]}}},\"use_category\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"use_date\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"meta_seperator\":{\"innerContent\":{\"desktop\":{\"value\":\"|\"}}},\"use_author\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"use_comments\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"use_readmore\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"readmore_text\":{\"innerContent\":{\"desktop\":{\"value\":\"Readmore\"}}},\"use_bottom\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"bottom_date\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"bottom_author\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"slider_orientation\":{\"innerContent\":{\"desktop\":{\"value\":\"horizontal\"}}},\"slider_container_height\":{\"innerContent\":{\"desktop\":{\"value\":\"300px\"}}},\"slider_effect\":{\"innerContent\":{\"desktop\":{\"value\":\"default\"}}},\"slider_effect_shadows\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"content_wrapper\":{\"decoration\":{\"spacing\":{\"desktop\":{\"value\":{\"padding\":{\"top\":\"20px\",\"right\":\"20px\",\"bottom\":\"20px\",\"left\":\"20px\"}}}}}},\"entryMetaContainer\":{\"decoration\":{\"spacing\":{\"desktop\":{\"value\":{\"padding\":{\"top\":\"0px\",\"right\":\"0px\",\"bottom\":\"0px\",\"left\":\"0px\"}}}}}},\"bottomMetaContainer\":{\"decoration\":{\"spacing\":{\"desktop\":{\"value\":{\"padding\":{\"top\":\"0px\",\"right\":\"0px\",\"bottom\":\"0px\",\"left\":\"0px\"}}}}}},\"columns\":{\"innerContent\":{\"desktop\":{\"value\":\"3\"},\"tablet\":{\"value\":\"2\"},\"phone\":{\"value\":\"1\"}}},\"rows_per_view\":{\"innerContent\":{\"desktop\":{\"value\":\"1\"},\"tablet\":{\"value\":\"2\"},\"phone\":{\"value\":\"1\"}}},\"slide_to_scroll\":{\"innerContent\":{\"desktop\":{\"value\":\"1\"},\"tablet\":{\"value\":\"1\"},\"phone\":{\"value\":\"1\"}}},\"slide_row\":{\"innerContent\":{\"desktop\":{\"value\":\"1\"}}},\"spacing\":{\"innerContent\":{\"desktop\":{\"value\":\"30\"}}},\"speed\":{\"innerContent\":{\"desktop\":{\"value\":\"500\"}}},\"loop\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"autoplay\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"autoplay_speed\":{\"innerContent\":{\"desktop\":{\"value\":\"5000\"}}},\"autoplay_viewport\":{\"innerContent\":{\"desktop\":{\"value\":\"50%\"}}},\"mousewheel\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"pause_on_hover\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"use_pagi\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"use_navi\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"grab\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"slider_effect_coverflow_rotate\":{\"innerContent\":{\"desktop\":{\"value\":\"30\"}}},\"slider_effect_coverflow_depth\":{\"innerContent\":{\"desktop\":{\"value\":\"100\"}}},\"multiple_slide_row\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"touch_move\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"centered_slides\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"thumbnail_img_type\":{\"innerContent\":{\"desktop\":{\"value\":\"cover\"}}},\"thumbnail_height\":{\"innerContent\":{\"desktop\":{\"value\":\"250px\"}}},\"lazyload\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"meta_alignment\":{\"innerContent\":{\"desktop\":{\"value\":\"left\"}}},\"navi_hori_position\":{\"innerContent\":{\"desktop\":{\"value\":\"50%\"}}},\"top_navi_ver_position\":{\"innerContent\":{\"desktop\":{\"value\":\"-50px\"}}},\"bottom_navi_ver_position\":{\"innerContent\":{\"desktop\":{\"value\":\"-50px\"}}},\"navi_position\":{\"innerContent\":{\"desktop\":{\"value\":\"50%\"}}},\"left_navi_position\":{\"innerContent\":{\"desktop\":{\"value\":\"-50px\"}}},\"right_navi_position\":{\"innerContent\":{\"desktop\":{\"value\":\"-50px\"}}},\"navi_size\":{\"innerContent\":{\"desktop\":{\"value\":\"40px\"}}},\"use_prev_icon\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"prev_icon\":{\"innerContent\":{\"desktop\":{\"value\":{\"type\":\"divi\",\"unicode\":\"&#x34;\",\"weight\":\"400\"}}}},\"use_next_icon\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"next_icon\":{\"innerContent\":{\"desktop\":{\"value\":{\"type\":\"divi\",\"unicode\":\"&#x35;\",\"weight\":\"400\"}}}},\"navi_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#7ebec5\"}}},\"pagi_position\":{\"innerContent\":{\"desktop\":{\"value\":\"-40px\"}}},\"pagi_ver_position\":{\"innerContent\":{\"desktop\":{\"value\":\"50%\"}}},\"pagi_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#d8d8d8\"}}},\"pagi_active_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#7ebec5\"}}},\"pagi_ver_placement\":{\"innerContent\":{\"desktop\":{\"value\":\"right\"}}},\"pagi_style\":{\"innerContent\":{\"desktop\":{\"value\":\"bullets\"}}},\"use_overlay\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"overlay_icon\":{\"innerContent\":{\"desktop\":{\"value\":{\"type\":\"divi\",\"unicode\":\"L\",\"weight\":\"400\"}}}},\"overlay_icon_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#ffffff\"}}},\"overlay_icon_size\":{\"innerContent\":{\"desktop\":{\"value\":\"25px\"}}},\"hover_overlay_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#7ebec5\"}}},\"image_width\":{\"innerContent\":{\"desktop\":{\"value\":\"60px\"}}},\"post_equal_height\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"post_entry_design_tab\":{\"innerContent\":{\"desktop\":{\"value\":\"title\"}}},\"bottom_meta_design_tab\":{\"innerContent\":{\"desktop\":{\"value\":\"date\"}}},\"readmore\":{\"decoration\":{\"button\":{\"desktop\":{\"value\":{\"enable\":\"off\"}}},\"spacing\":{\"desktop\":{\"value\":{\"margin\":{\"top\":\"15px\"}}}}}}}');\n;// ./packages/module-library/blog-carousel/settings-content.js\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\n\n\nconst settings_content_pcIc = key => blog_carousel_module_default_render_attributes_namespaceObject[key]?.innerContent;\nfunction blog_carousel_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _getAttrByMode4, _getAttrByMode5, _getAttrByMode6, _getAttrByMode7, _getAttrByMode8, _getAttrByMode9, _getAttrByMode0, _getAttrByMode1, _getAttrByMode10, _getAttrByMode11;\n  const useThumbnail = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_thumbnail?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'on';\n  const sliderOrientation = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_orientation?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'horizontal';\n  const useReadMore = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_readmore?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'off';\n  const useDate = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_date?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : 'on';\n  const useExcerpt = (_getAttrByMode5 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_excerpt?.innerContent)) !== null && _getAttrByMode5 !== void 0 ? _getAttrByMode5 : 'on';\n  const useCategory = (_getAttrByMode6 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_category?.innerContent)) !== null && _getAttrByMode6 !== void 0 ? _getAttrByMode6 : 'off';\n  const useComments = (_getAttrByMode7 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_comments?.innerContent)) !== null && _getAttrByMode7 !== void 0 ? _getAttrByMode7 : 'off';\n  const useBottom = (_getAttrByMode8 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_bottom?.innerContent)) !== null && _getAttrByMode8 !== void 0 ? _getAttrByMode8 : 'off';\n  const sliderEffect = (_getAttrByMode9 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_effect?.innerContent)) !== null && _getAttrByMode9 !== void 0 ? _getAttrByMode9 : 'default';\n  const multipleSlideRow = (_getAttrByMode0 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.multiple_slide_row?.innerContent)) !== null && _getAttrByMode0 !== void 0 ? _getAttrByMode0 : 'off';\n  const centeredSlides = (_getAttrByMode1 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.centered_slides?.innerContent)) !== null && _getAttrByMode1 !== void 0 ? _getAttrByMode1 : 'off';\n  const autoPlay = (_getAttrByMode10 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.autoplay?.innerContent)) !== null && _getAttrByMode10 !== void 0 ? _getAttrByMode10 : 'on';\n  const touchMove = (_getAttrByMode11 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.touch_move?.innerContent)) !== null && _getAttrByMode11 !== void 0 ? _getAttrByMode11 : 'off';\n  const {\n    terms: categoryTerms,\n    loading: categoriesLoading,\n    error: categoriesError\n  } = use_taxonomies('category');\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"content\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"include_categories.innerContent\",\n    defaultAttr: settings_content_pcIc('include_categories'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Included Categories', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Limit slides to specific categories. Leave empty for all categories (same as Divi Blog).', 'dsm-supreme-modules-pro-for-divi')\n  }, categoriesLoading ? null : categoriesError ? /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.WarningContainer, {\n    name: \"include_categories\",\n    value: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Could not load categories.', 'dsm-supreme-modules-pro-for-divi')\n  }) : /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.CheckboxesContainer, {\n    options: [{\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('All Categories', 'dsm-supreme-modules-pro-for-divi'),\n      value: 'all'\n    }, {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Current Category', 'dsm-supreme-modules-pro-for-divi'),\n      value: 'current'\n    }, ...categoryTerms.map(term => ({\n      value: 'category:' + term.id,\n      label: term.name\n    }))]\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"include_current_post.innerContent\",\n    defaultAttr: settings_content_pcIc('include_current_post'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Include Current Post', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('On singular pages, the post you are viewing is normally hidden in this carousel (same as Divi Blog). Enable to show it as a slide. If excerpts are on, nested carousel output is skipped while generating text to avoid infinite loops.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"posts_number.innerContent\",\n    defaultAttr: settings_content_pcIc('posts_number'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Post Count', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"posts_offset.innerContent\",\n    defaultAttr: settings_content_pcIc('posts_offset'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Post Offset Number', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"meta_date.innerContent\",\n    defaultAttr: settings_content_pcIc('meta_date'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Date Format', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If you would like to adjust the date format, input the appropriate PHP date format here.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"post_orderby.innerContent\",\n    defaultAttr: settings_content_pcIc('post_orderby'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Post Date Orderby', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      date: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Published Post Date', 'dsm-supreme-modules-pro-for-divi')\n      },\n      modified: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Modified Post Date', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"post_sortby.innerContent\",\n    defaultAttr: settings_content_pcIc('post_sortby'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Sortby', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      asc: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Older Post (Ascending Order)', 'dsm-supreme-modules-pro-for-divi')\n      },\n      desc: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Latest Post (Descending Order)', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"element\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Elements', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_thumbnail.innerContent\",\n    defaultAttr: settings_content_pcIc('use_thumbnail'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Featured Image', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"lazyload.innerContent\",\n    defaultAttr: settings_content_pcIc('lazyload'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enabled Lazy Load', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If enable, images will be lazy loaded (Lazy loading images can improve performance, but it may not work with all performance caching plugins. Please test your settings before enabling this option).', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useThumbnail\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_title.innerContent\",\n    defaultAttr: settings_content_pcIc('use_title'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Title', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_excerpt.innerContent\",\n    defaultAttr: settings_content_pcIc('use_excerpt'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Excerpt', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"excerpt_length.innerContent\",\n    defaultAttr: settings_content_pcIc('excerpt_length'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Excerpt Text', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useExcerpt,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Maximum number of words in the excerpt (matches the builder preview). Leave blank for default (50).', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_category.innerContent\",\n    defaultAttr: settings_content_pcIc('use_category'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Category', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_date.innerContent\",\n    defaultAttr: settings_content_pcIc('use_date'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Date', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"meta_seperator.innerContent\",\n    defaultAttr: settings_content_pcIc('meta_seperator'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Meta Seperator', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useDate || 'on' === useCategory || 'on' === useComments,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_author.innerContent\",\n    defaultAttr: settings_content_pcIc('use_author'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Author', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_comments.innerContent\",\n    defaultAttr: settings_content_pcIc('use_comments'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Comments', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Display the comment count in the post meta row with a link to comments.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_readmore.innerContent\",\n    defaultAttr: settings_content_pcIc('use_readmore'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Readmore Button', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"readmore_text.innerContent\",\n    defaultAttr: settings_content_pcIc('readmore_text'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Readmore Text', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useReadMore,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_bottom.innerContent\",\n    defaultAttr: settings_content_pcIc('use_bottom'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Bottom Meta Elements', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"bottom_date.innerContent\",\n    defaultAttr: settings_content_pcIc('bottom_date'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Date', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useBottom\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"bottom_author.innerContent\",\n    defaultAttr: settings_content_pcIc('bottom_author'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Author', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useBottom\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"carouselSettings\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Carousel Settings', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"slider_orientation.innerContent\",\n    defaultAttr: settings_content_pcIc('slider_orientation'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Carousel Orientation', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      horizontal: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Horizontal', 'dsm-supreme-modules-pro-for-divi')\n      },\n      vertical: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Vertical', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"slider_container_height.innerContent\",\n    defaultAttr: settings_content_pcIc('slider_container_height'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Height', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'vertical' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 100,\n    max: 2000,\n    step: 10,\n    defaultUnit: 'px'\n  })), 'vertical' === sliderOrientation && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.WarningContainer, {\n    name: \"height-app-id-notice\",\n    value: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Increase Height If the content is being cut.', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"slider_effect.innerContent\",\n    defaultAttr: settings_content_pcIc('slider_effect'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Carousel Effect', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'horizontal' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      default: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide', 'dsm-supreme-modules-pro-for-divi')\n      },\n      coverflow: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Coverflow', 'dsm-supreme-modules-pro-for-divi')\n      },\n      flip: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Flip', 'dsm-supreme-modules-pro-for-divi')\n      },\n      cube: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Cube', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"slider_effect_shadows.innerContent\",\n    defaultAttr: settings_content_pcIc('slider_effect_shadows'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Shadow', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'default' !== sliderEffect\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"slider_effect_coverflow_rotate.innerContent\",\n    defaultAttr: settings_content_pcIc('slider_effect_coverflow_rotate'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Coverflow Rotate', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'coverflow' === sliderEffect\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 30,\n    max: 100,\n    step: 1,\n    defaultUnit: ''\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"slider_effect_coverflow_depth.innerContent\",\n    defaultAttr: settings_content_pcIc('slider_effect_coverflow_depth'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Coverflow Depth', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'coverflow' === sliderEffect\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 500,\n    step: 1,\n    defaultUnit: ''\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"columns.innerContent\",\n    defaultAttr: {\n      desktop: {\n        value: '3'\n      },\n      tablet: {\n        value: '2'\n      },\n      phone: {\n        value: '1'\n      }\n    },\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slides To Show', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      responsive: true\n    },\n    visible: 'horizontal' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 12,\n    step: 1,\n    defaultUnit: ''\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"rows_per_view.innerContent\",\n    defaultAttr: {\n      desktop: {\n        value: '1'\n      },\n      tablet: {\n        value: '2'\n      },\n      phone: {\n        value: '1'\n      }\n    },\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slides To Show', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      responsive: true\n    },\n    visible: 'vertical' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 12,\n    step: 1,\n    defaultUnit: ''\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"slide_to_scroll.innerContent\",\n    defaultAttr: settings_content_pcIc('slide_to_scroll'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slides To Scroll', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      responsive: true\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 9,\n    step: 1,\n    defaultUnit: ''\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"multiple_slide_row.innerContent\",\n    defaultAttr: settings_content_pcIc('multiple_slide_row'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Multiple Row', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('To use multirow layout.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'horizontal' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"slide_row.innerContent\",\n    defaultAttr: settings_content_pcIc('slide_row'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Row Per Slide', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === multipleSlideRow\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 5,\n    step: 1,\n    defaultUnit: ''\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"centered_slides.innerContent\",\n    defaultAttr: settings_content_pcIc('centered_slides'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Centered Mode', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If enable, then active slide will be centered, not always on the left side.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"spacing.innerContent\",\n    defaultAttr: settings_content_pcIc('spacing'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Spacing', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 5,\n    max: 100,\n    step: 1,\n    defaultUnit: ''\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"speed.innerContent\",\n    defaultAttr: settings_content_pcIc('speed'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Transition Duration', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    max: 5000,\n    step: 100,\n    min: 1,\n    defaultUnit: ''\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"loop.innerContent\",\n    defaultAttr: settings_content_pcIc('loop'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Infinite Loop', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'off' === centeredSlides && 'off' === multipleSlideRow\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"autoplay.innerContent\",\n    defaultAttr: settings_content_pcIc('autoplay'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Autoplay', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"autoplay_speed.innerContent\",\n    defaultAttr: settings_content_pcIc('autoplay_speed'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Autoplay Speed', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === autoPlay\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 10000,\n    step: 500,\n    defaultUnit: ''\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"autoplay_viewport.innerContent\",\n    defaultAttr: settings_content_pcIc('autoplay_viewport'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Autoplay Only On Viewport', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Autoplay when in viewport.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === autoPlay\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    step: 1,\n    defaultUnit: '%'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"mousewheel.innerContent\",\n    defaultAttr: settings_content_pcIc('mousewheel'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Mouse Wheel', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('To use mousewheel mousewheel swipes the slides.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"pause_on_hover.innerContent\",\n    defaultAttr: settings_content_pcIc('pause_on_hover'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pause on Hover', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If enable, blog carousel will pause on hover.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === autoPlay\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_pagi.innerContent\",\n    defaultAttr: settings_content_pcIc('use_pagi'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pagination', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_navi.innerContent\",\n    defaultAttr: settings_content_pcIc('use_navi'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Navigation', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"post_equal_height.innerContent\",\n    defaultAttr: settings_content_pcIc('post_equal_height'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Equal Height', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('This will make all post item equal height.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"touch_move.innerContent\",\n    defaultAttr: settings_content_pcIc('touch_move'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Disable Touch/Dragging', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('This option will prevent user to touch/drag the slide.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"grab.innerContent\",\n    defaultAttr: settings_content_pcIc('grab'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Grab Cursor', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('This option will prevent user to touch/drag the slide.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'off' === touchMove\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const blog_carousel_settings_content = (blog_carousel_settings_content_SettingsContent);\n;// ./packages/module-library/blog-carousel/pc-attr-helpers.js\n\n\n/**\n * Whether a module \"on/off\" innerContent value is on (matches PHP `PostCarousel::pc_toggle_is_on`).\n *\n * @param {unknown} raw Attribute value from attrs / getAttrByMode.\n * @return {boolean}\n */\nconst pc_attr_helpers_isPcToggleOn = raw => true === raw || 1 === raw || '1' === raw || 'on' === raw;\n\n/**\n * @param {unknown} node Builder attr node (may be Immutable).\n * @return {unknown}\n */\nconst pc_attr_helpers_toPlain = node => {\n  if (node == null) {\n    return node;\n  }\n  if (typeof node === 'object' && typeof node.toJS === 'function') {\n    return node.toJS();\n  }\n  return node;\n};\n\n/**\n * @param {unknown} obj Plain object or Immutable Map-like.\n * @param {string}  key\n * @return {unknown}\n */\nconst pc_attr_helpers_pickKey = (obj, key) => {\n  if (obj == null) {\n    return undefined;\n  }\n  if (typeof obj.get === 'function') {\n    const v = obj.get(key);\n    if (v !== undefined) {\n      return v;\n    }\n  }\n  return obj[key];\n};\n\n/**\n * `attrs[attrKey].innerContent.desktop.value` (Immutable-safe for Visual Builder).\n *\n * @param {Object|undefined} attrs   Module attrs root.\n * @param {string}             attrKey Attribute name (e.g. `include_current_post`).\n * @return {unknown}\n */\nconst pc_attr_helpers_getInnerContentDesktopValue = (attrs, attrKey) => {\n  let node = pc_attr_helpers_pickKey(attrs, attrKey);\n  node = pc_attr_helpers_toPlain(node);\n  if (!node || typeof node !== 'object') {\n    return undefined;\n  }\n  let ic = pc_attr_helpers_pickKey(node, 'innerContent');\n  ic = pc_attr_helpers_toPlain(ic);\n  if (!ic || typeof ic !== 'object') {\n    return undefined;\n  }\n  let desktop = pc_attr_helpers_pickKey(ic, 'desktop');\n  desktop = pc_attr_helpers_toPlain(desktop);\n  if (!desktop || typeof desktop !== 'object') {\n    return undefined;\n  }\n  return pc_attr_helpers_pickKey(desktop, 'value');\n};\n\n/**\n * `readmore.decoration.button` subtree (plain object) for breakpoint iteration.\n *\n * @param {Object|undefined} attrs Module attrs (often Immutable in the Visual Builder).\n * @return {Object|undefined}\n */\nconst pc_attr_helpers_getReadmoreDecorationButton = attrs => {\n  let readmore = pc_attr_helpers_pickKey(attrs, 'readmore');\n  readmore = pc_attr_helpers_toPlain(readmore);\n  if (!readmore || typeof readmore !== 'object') {\n    return undefined;\n  }\n  let decoration = pc_attr_helpers_pickKey(readmore, 'decoration');\n  decoration = pc_attr_helpers_toPlain(decoration);\n  if (!decoration || typeof decoration !== 'object') {\n    return undefined;\n  }\n  let button = pc_attr_helpers_pickKey(decoration, 'button');\n  button = pc_attr_helpers_toPlain(button);\n  return button && typeof button === 'object' ? button : undefined;\n};\n;// ./packages/module-library/blog-carousel/settings-design.js\nvar settings_design_pcDefaults$content_w, settings_design_pcDefaults$entryMeta, settings_design_pcDefaults$bottomMet, settings_design_pcDefaults$module$de;\n\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\n\nconst blog_carousel_settings_design_pcIc = key => blog_carousel_module_default_render_attributes_namespaceObject[key]?.innerContent;\n\n/**\n * Content wrapper spacing — must match `module-default-render-attributes.json` → `content_wrapper.decoration.spacing`.\n * `defaultGroupAttr` drives per-side placeholders / reset (same idea as Post Count `defaultAttr` + TextContainer).\n */\nconst settings_design_pcContentWrapperSpacingDefault = (settings_design_pcDefaults$content_w = blog_carousel_module_default_render_attributes_namespaceObject?.content_wrapper?.decoration?.spacing) !== null && settings_design_pcDefaults$content_w !== void 0 ? settings_design_pcDefaults$content_w : {};\n\n/**\n * Entry meta container (Post Entry → Container) — `module-default-render-attributes.json` → `entryMetaContainer.decoration.spacing`.\n */\nconst settings_design_pcEntryMetaContainerSpacingDefault = (settings_design_pcDefaults$entryMeta = blog_carousel_module_default_render_attributes_namespaceObject?.entryMetaContainer?.decoration?.spacing) !== null && settings_design_pcDefaults$entryMeta !== void 0 ? settings_design_pcDefaults$entryMeta : {};\n\n/**\n * Bottom meta container (Bottom Meta Items → Container) — `module-default-render-attributes.json` → `bottomMetaContainer.decoration.spacing`.\n */\nconst settings_design_pcBottomMetaContainerSpacingDefault = (settings_design_pcDefaults$bottomMet = blog_carousel_module_default_render_attributes_namespaceObject?.bottomMetaContainer?.decoration?.spacing) !== null && settings_design_pcDefaults$bottomMet !== void 0 ? settings_design_pcDefaults$bottomMet : {};\n\n/**\n * Module spacing (Design → Spacing group) — `module-default-render-attributes.json` → `module.decoration.spacing`\n * (e.g. margin bottom placeholder / reset).\n */\nconst settings_design_pcModuleSpacingDefault = (settings_design_pcDefaults$module$de = blog_carousel_module_default_render_attributes_namespaceObject?.module?.decoration?.spacing) !== null && settings_design_pcDefaults$module$de !== void 0 ? settings_design_pcDefaults$module$de : {};\nfunction blog_carousel_settings_design_SettingsDesign({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _getAttrByMode4, _getAttrByMode5, _getAttrByMode6, _getAttrByMode7, _getAttrByMode8, _getAttrByMode9, _getAttrByMode0, _getAttrByMode1, _defaultSettingsAttrs, _pcDefaults$readmore$;\n  const useThumbnail = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_thumbnail?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'on';\n  const thumbnailImgType = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.thumbnail_img_type?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'cover';\n  const sliderOrientation = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_orientation?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'horizontal';\n  const useNavi = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_navi?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : 'on';\n  const usePagination = (_getAttrByMode5 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_pagi?.innerContent)) !== null && _getAttrByMode5 !== void 0 ? _getAttrByMode5 : 'on';\n  const useOverlay = (_getAttrByMode6 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_overlay?.innerContent)) !== null && _getAttrByMode6 !== void 0 ? _getAttrByMode6 : 'off';\n  const useBottomOn = pc_attr_helpers_isPcToggleOn((_getAttrByMode7 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_bottom?.innerContent)) !== null && _getAttrByMode7 !== void 0 ? _getAttrByMode7 : pc_attr_helpers_getInnerContentDesktopValue(attrs, 'use_bottom'));\n  const usePrevIcon = (_getAttrByMode8 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_prev_icon?.innerContent)) !== null && _getAttrByMode8 !== void 0 ? _getAttrByMode8 : 'off';\n  const useNextIcon = (_getAttrByMode9 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_next_icon?.innerContent)) !== null && _getAttrByMode9 !== void 0 ? _getAttrByMode9 : 'off';\n  const postEntryDesignTabRaw = (_getAttrByMode0 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.post_entry_design_tab?.innerContent)) !== null && _getAttrByMode0 !== void 0 ? _getAttrByMode0 : 'title';\n  const postEntryDesignTab = ['title', 'excerpt', 'meta', 'container'].includes(postEntryDesignTabRaw) ? postEntryDesignTabRaw : 'title';\n  const bottomMetaDesignTabRaw = (_getAttrByMode1 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.bottom_meta_design_tab?.innerContent)) !== null && _getAttrByMode1 !== void 0 ? _getAttrByMode1 : 'date';\n  const bottomMetaDesignTab = ['date', 'author', 'image', 'container'].includes(bottomMetaDesignTabRaw) ? bottomMetaDesignTabRaw : 'date';\n  const readmoreButtonDecorationDefaults = (0,lodash.merge)({}, (_defaultSettingsAttrs = defaultSettingsAttrs?.readmore?.decoration?.asMutable?.({\n    deep: true\n  })) !== null && _defaultSettingsAttrs !== void 0 ? _defaultSettingsAttrs : {}, (_pcDefaults$readmore$ = blog_carousel_module_default_render_attributes_namespaceObject?.readmore?.decoration) !== null && _pcDefaults$readmore$ !== void 0 ? _pcDefaults$readmore$ : {});\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"postitem\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Post Item', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"post_padding.decoration.spacing\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Post Item', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"post_item_bg_color.innerContent\",\n    defaultAttr: blog_carousel_settings_design_pcIc('post_item_bg_color'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Color', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"postItemStyle.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"postItemStyle.decoration.boxShadow\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"postThumbnail\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Post Thumbnail', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"thumbnail_img_type.innerContent\",\n    defaultAttr: blog_carousel_settings_design_pcIc('thumbnail_img_type'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Thumbnail Type', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'off' !== useThumbnail\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      cover: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Cover Fit', 'dsm-supreme-modules-pro-for-divi')\n      },\n      contain: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Contain', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"thumbnail_height.innerContent\",\n    defaultAttr: blog_carousel_settings_design_pcIc('thumbnail_height'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Thumbnail Height', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'off' !== useThumbnail && 'cover' === thumbnailImgType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 500,\n    defaultUnit: 'px',\n    step: 10\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"thumbnailStyle.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"thumbnailStyle.decoration.boxShadow\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, {\n    attrName: \"thumbnailStyle.decoration.filters\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi')\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"postEntry\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Post Entry', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"post_entry_design_tab.innerContent\",\n    defaultAttr: blog_carousel_settings_design_pcIc('post_entry_design_tab')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: {\n      title: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi')\n      },\n      excerpt: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Excerpt', 'dsm-supreme-modules-pro-for-divi')\n      },\n      meta: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Meta', 'dsm-supreme-modules-pro-for-divi')\n      },\n      container: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Container', 'dsm-supreme-modules-pro-for-divi')\n      }\n    },\n    tabUi: true,\n    showLabel: true\n  })), postEntryDesignTab === 'title' && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"title.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: true\n      }\n    }\n  }), postEntryDesignTab === 'excerpt' && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"body.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Excerpt', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), postEntryDesignTab === 'meta' && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"meta_alignment.innerContent\",\n    defaultAttr: blog_carousel_settings_design_pcIc('meta_alignment'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"date.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Date', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Date', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true,\n    fields: {\n      headingLevel: {\n        render: false\n      },\n      textAlign: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"author.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Author', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Author', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true,\n    fields: {\n      headingLevel: {\n        render: false\n      },\n      textAlign: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"category.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Category', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Category', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true,\n    fields: {\n      headingLevel: {\n        render: false\n      },\n      textAlign: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"comments.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Comments', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Comments', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: true,\n    fields: {\n      headingLevel: {\n        render: false\n      },\n      textAlign: {\n        render: false\n      }\n    }\n  })), postEntryDesignTab === 'container' && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"entryMetaContainer.decoration.spacing\",\n    defaultAttr: settings_design_pcEntryMetaContainerSpacingDefault,\n    defaultGroupAttr: settings_design_pcEntryMetaContainerSpacingDefault,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Meta Container', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Spacing around the post meta line (date, author, category, comments).', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, {\n    attrName: \"entryMetaContainer.decoration.background\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"entryMetaContainer.decoration.border\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Border', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"entryMetaContainer.decoration.boxShadow\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Box Shadow', 'dsm-supreme-modules-pro-for-divi')\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ButtonGroupContainer, {\n    attrName: \"readmore\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Read More Button', 'dsm-supreme-modules-pro-for-divi'),\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Read More Button', 'dsm-supreme-modules-pro-for-divi'),\n    defaultGroupAttr: readmoreButtonDecorationDefaults,\n    fields: {\n      fontGroup: {\n        component: {\n          props: {\n            fields: {\n              lineHeight: {\n                render: true\n              },\n              textAlign: {\n                render: false\n              }\n            }\n          }\n        }\n      },\n      alignment: {\n        render: true\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"navigation\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Navigation', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"navi_hori_position.innerContent\",\n    defaultAttr: blog_carousel_settings_design_pcIc('navi_hori_position'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Navi Horizontal Position', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useNavi && 'vertical' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    step: 1,\n    defaultUnit: '%'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"top_navi_ver_position.innerContent\",\n    defaultAttr: blog_carousel_settings_design_pcIc('top_navi_ver_position'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top Navigation Position', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useNavi && 'vertical' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: -100,\n    max: 100,\n    step: 1,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"bottom_navi_ver_position.innerContent\",\n    defaultAttr: blog_carousel_settings_design_pcIc('bottom_navi_ver_position'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Navigation Position', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useNavi && 'vertical' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: -100,\n    max: 100,\n    step: 1,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"navi_position.innerContent\",\n    defaultAttr: blog_carousel_settings_design_pcIc('navi_position'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Navi Horizontal Position', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useNavi && 'horizontal' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    step: 1,\n    defaultUnit: '%'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"left_navi_position.innerContent\",\n    defaultAttr: blog_carousel_settings_design_pcIc('left_navi_position'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left Navigation Position', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useNavi && 'horizontal' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: -100,\n    max: 100,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"right_navi_position.innerContent\",\n    defaultAttr: blog_carousel_settings_design_pcIc('right_navi_position'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right Navigation Position', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useNavi && 'horizontal' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: -100,\n    max: 100,\n    step: 1,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"navi_size.innerContent\",\n    defaultAttr: blog_carousel_settings_design_pcIc('navi_size'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Navi Arrow Icon Size', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useNavi\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    step: 1,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_prev_icon.innerContent\",\n    defaultAttr: blog_carousel_settings_design_pcIc('use_prev_icon'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Custom Prev Arrow Icon ', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"prev_icon.innerContent\",\n    defaultAttr: blog_carousel_settings_design_pcIc('prev_icon'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Select Prev Icon', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === usePrevIcon\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_next_icon.innerContent\",\n    defaultAttr: blog_carousel_settings_design_pcIc('use_next_icon'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Custom Next Arrow Icon', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"next_icon.innerContent\",\n    defaultAttr: blog_carousel_settings_design_pcIc('next_icon'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Select Next Icon', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useNextIcon\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"navi_color.innerContent\",\n    defaultAttr: blog_carousel_settings_design_pcIc('navi_color'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Arrow Color', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useNavi\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"navi_background_color.innerContent\",\n    defaultAttr: blog_carousel_settings_design_pcIc('navi_background_color'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Arrow Background Color', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"navigationStyle.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"navigationStyle.decoration.boxShadow\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"pagination\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pagination', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === usePagination\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"pagi_position.innerContent\",\n    defaultAttr: blog_carousel_settings_design_pcIc('pagi_position'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pagination Postion', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === usePagination\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: -200,\n    max: 200,\n    step: 1,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"pagi_ver_position.innerContent\",\n    defaultAttr: blog_carousel_settings_design_pcIc('pagi_ver_position'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Vertical Pagination Position', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === usePagination && 'vertical' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    step: 1,\n    defaultUnit: '%'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"pagi_color.innerContent\",\n    defaultAttr: blog_carousel_settings_design_pcIc('pagi_color'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pagination Color', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === usePagination\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"pagi_active_color.innerContent\",\n    defaultAttr: blog_carousel_settings_design_pcIc('pagi_active_color'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pagination Active Color', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === usePagination\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"pagi_ver_placement.innerContent\",\n    defaultAttr: blog_carousel_settings_design_pcIc('pagi_ver_placement'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pagination Placement', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === usePagination && 'vertical' === sliderOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"pagi_style.innerContent\",\n    defaultAttr: blog_carousel_settings_design_pcIc('pagi_style'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pagination Button Style', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === usePagination\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      bullets: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Default', 'dsm-supreme-modules-pro-for-divi')\n      },\n      dynamic: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Dynamic', 'dsm-supreme-modules-pro-for-divi')\n      },\n      progressbar: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Progress Bar', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"bottomMetaItems\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Meta Items', 'dsm-supreme-modules-pro-for-divi'),\n    visible: useBottomOn\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"bottom_meta_design_tab.innerContent\",\n    defaultAttr: blog_carousel_settings_design_pcIc('bottom_meta_design_tab')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: {\n      date: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Date', 'dsm-supreme-modules-pro-for-divi')\n      },\n      author: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Author', 'dsm-supreme-modules-pro-for-divi')\n      },\n      image: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi')\n      },\n      container: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Container', 'dsm-supreme-modules-pro-for-divi')\n      }\n    },\n    tabUi: true,\n    showLabel: true\n  })), bottomMetaDesignTab === 'date' && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"bottom_date.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Date', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      },\n      textAlign: {\n        render: false\n      }\n    }\n  }), bottomMetaDesignTab === 'author' && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"bottom_author.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Author', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      },\n      textAlign: {\n        render: false\n      }\n    }\n  }), bottomMetaDesignTab === 'image' && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_width.innerContent\",\n    defaultAttr: blog_carousel_settings_design_pcIc('image_width'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Width', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 500,\n    step: 1,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"bottomStyle.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"bottomStyle.decoration.boxShadow\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Author Image', 'dsm-supreme-modules-pro-for-divi')\n  })), bottomMetaDesignTab === 'container' && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"bottomMetaContainer.decoration.spacing\",\n    defaultAttr: settings_design_pcBottomMetaContainerSpacingDefault,\n    defaultGroupAttr: settings_design_pcBottomMetaContainerSpacingDefault,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Meta Container', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Spacing around the bottom meta row (image, date, author).', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, {\n    attrName: \"bottomMetaContainer.decoration.background\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"bottomMetaContainer.decoration.border\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Border', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"bottomMetaContainer.decoration.boxShadow\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Box Shadow', 'dsm-supreme-modules-pro-for-divi')\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"Overlay\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay', 'dsm-supreme-modules-pro-for-divi'),\n    preset: \"content\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_overlay.innerContent\",\n    defaultAttr: blog_carousel_settings_design_pcIc('use_overlay'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Overlay', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"overlay_icon.innerContent\",\n    defaultAttr: blog_carousel_settings_design_pcIc('overlay_icon'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay Icon', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useOverlay\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"overlay_icon_color.innerContent\",\n    defaultAttr: blog_carousel_settings_design_pcIc('overlay_icon_color'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay Icon Color', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useOverlay,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom color for the overlay icon', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"overlay_icon_size.innerContent\",\n    defaultAttr: blog_carousel_settings_design_pcIc('overlay_icon_size'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay Icon Size', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useOverlay\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 500,\n    step: 1\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"hover_overlay_color.innerContent\",\n    defaultAttr: blog_carousel_settings_design_pcIc('hover_overlay_color'),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useOverlay,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom color for the overlay icon', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"spacing\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Spacing', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"content_wrapper.decoration.spacing\",\n    defaultAttr: settings_design_pcContentWrapperSpacingDefault,\n    defaultGroupAttr: settings_design_pcContentWrapperSpacingDefault,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content Wrapper', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Spacing for the text area (title, meta, excerpt, read more) inside each slide.', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    grouped: false,\n    defaultAttr: settings_design_pcModuleSpacingDefault,\n    defaultGroupAttr: settings_design_pcModuleSpacingDefault\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const blog_carousel_settings_design = (blog_carousel_settings_design_SettingsDesign);\n;// ./packages/module-library/blog-carousel/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction blog_carousel_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_blog_carousel\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const blog_carousel_settings_advanced = (blog_carousel_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/blog-carousel/module-styles.js\n\n\n\n\n\n\n\n\n/**\n * Map `readmore.decoration.button` alignment to innerContent so CommonStyle can emit `text-align`\n * on `.dsm-readmore-wrap .et_pb_button_module_wrapper` (elements.style + propertySelectors often skip this for non-`button` attrs).\n *\n * @param {Object|undefined} buttonDec Plain `decoration.button` subtree.\n * @return {Object|undefined} `{ innerContent: { desktop|tablet|phone: { value } } }` or undefined.\n */\nconst module_styles_readmoreButtonAlignmentAsInnerContent = buttonDec => {\n  if (!buttonDec || 'object' !== typeof buttonDec) {\n    return undefined;\n  }\n  const innerContent = {};\n  for (const bp of ['desktop', 'tablet', 'phone']) {\n    var _valObj$textAlign;\n    const branch = buttonDec[bp];\n    if (!branch || 'object' !== typeof branch) {\n      continue;\n    }\n    const valObj = branch.value;\n    const raw = valObj && 'object' === typeof valObj ? (_valObj$textAlign = valObj.textAlign) !== null && _valObj$textAlign !== void 0 ? _valObj$textAlign : valObj.alignment : undefined;\n    if ('string' !== typeof raw) {\n      continue;\n    }\n    const t = raw.trim().toLowerCase();\n    if ('left' === t || 'center' === t || 'right' === t || 'justify' === t) {\n      innerContent[bp] = {\n        value: t\n      };\n    }\n  }\n  return Object.keys(innerContent).length > 0 ? {\n    innerContent\n  } : undefined;\n};\n\n/**\n * React function component for rendering module style.\n */\n\nconst module_styles_prevIconFontCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'font-family': true\n    }\n  });\n  if (isDsmIcon(attrValue)) {\n    return '';\n  }\n  addNativeIconFontFamily(declarations, attrValue);\n  addNativeIconFontContent(declarations, attrValue);\n  return declarations.value;\n};\nconst module_styles_nextIconFontCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'font-family': true\n    }\n  });\n  if (isDsmIcon(attrValue)) {\n    return '';\n  }\n  addNativeIconFontFamily(declarations, attrValue);\n  addNativeIconFontContent(declarations, attrValue);\n  return declarations.value;\n};\n\n/**\n * Swiper 12+: `--swiper-navigation-size` from arrow box (D4: nav size + 20px touch area).\n *\n * @param {Object} attr Parsed style attr from CommonStyle.\n * @return {string} Declarations string.\n */\n/**\n * Append `px` when D4 / migrated range stored a unitless number (e.g. `40`).\n *\n * @param {string|number|undefined|null} value Raw innerContent value.\n * @return {string} Normalized length or empty string.\n */\nconst module_styles_ensureCssLengthUnit = value => {\n  if (value === null || value === undefined) {\n    return '';\n  }\n  const s = String(value).trim();\n  if (!s) {\n    return '';\n  }\n  if (/calc\\s*\\(/i.test(s) || s.startsWith('var(')) {\n    return s;\n  }\n  const m = s.match(/^([-+]?\\d*\\.?\\d+)([a-z%]*)$/i);\n  if (!m) {\n    return s;\n  }\n  if (m[2]) {\n    return s;\n  }\n  return `${m[1]}px`;\n};\nconst blog_carousel_module_styles_swiperNavigationSizeVarCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const n = parseFloat(attrValue);\n  if (Number.isNaN(n)) {\n    return '';\n  }\n  const touch = n + 20;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string'\n  });\n  declarations.add('--swiper-navigation-size', `${touch}px`);\n  return declarations.value;\n};\n\n/**\n * `font-size` for nav arrows — same unit normalization as `--swiper-navigation-size`.\n *\n * @param {Object} attr Parsed style attr from CommonStyle.\n * @return {string} Declarations string.\n */\nconst module_styles_naviArrowFontSizeCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const normalized = module_styles_ensureCssLengthUnit(attrValue);\n  if (!normalized) {\n    return '';\n  }\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string'\n  });\n  declarations.add('font-size', normalized);\n  return declarations.value;\n};\nconst module_styles_pagiPositionBottomCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const normalized = module_styles_ensureCssLengthUnit(attrValue);\n  if (!normalized) {\n    return '';\n  }\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string'\n  });\n  declarations.add('bottom', normalized);\n  return declarations.value;\n};\n\n/**\n * Vertical carousel: pagination horizontal offset (`left` / `right`) with px fallback.\n *\n * @param {string} placement `pagi_ver_placement` (left|right).\n * @return {Function} CommonStyle declarationFunction.\n */\nconst module_styles_makePagiVerticalSideCss = placement => attr => {\n  const {\n    attrValue\n  } = attr;\n  const normalized = module_styles_ensureCssLengthUnit(attrValue);\n  if (!normalized) {\n    return '';\n  }\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: true\n  });\n  if ('left' === placement) {\n    declarations.add('right', 'auto');\n    declarations.add('left', normalized);\n  }\n  if ('right' === placement) {\n    declarations.add('right', normalized);\n    declarations.add('left', 'auto');\n  }\n  return declarations.value;\n};\nconst module_styles_overlayIconFontCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'font-family': true\n    }\n  });\n  if (isDsmIcon(attrValue)) {\n    return '';\n  }\n  addNativeIconFontFamily(declarations, attrValue);\n  addNativeIconFontContent(declarations, attrValue);\n  return declarations.value;\n};\n\n/**\n * `.dsm-entry-thumbnail img`: cover fills tile; contain uses max-width/height + auto size for picture-bound overlay.\n *\n * @param {Object} attr Parsed CommonStyle attr (`attrValue` = cover|contain).\n * @return {string} CSS declarations.\n */\nconst module_styles_thumbnailEntryImageObjectFitCss = attr => {\n  const raw = attr?.attrValue;\n  const imageType = 'string' === typeof raw && raw.trim() ? raw.trim().toLowerCase() : 'cover';\n  const fit = 'contain' === imageType ? 'contain' : 'cover';\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string'\n  });\n  declarations.add('object-fit', fit);\n  if ('contain' === fit) {\n    declarations.add('max-width', '100%');\n    declarations.add('max-height', '100%');\n    declarations.add('width', 'auto');\n    declarations.add('height', 'auto');\n  } else {\n    declarations.add('width', '100%');\n    declarations.add('height', '100%');\n  }\n  return declarations.value;\n};\nconst blog_carousel_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  var _getAttrByMode, _attrs$thumbnail_img_;\n  const pagi_ver_placement = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.pagi_ver_placement?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'right';\n  const pagiVerticalSideCss = module_styles_makePagiVerticalSideCss(pagi_ver_placement);\n  const thumbnailImageType = (() => {\n    const raw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.thumbnail_img_type?.innerContent);\n    if ('string' !== typeof raw || !raw.trim()) {\n      return 'cover';\n    }\n    return 'contain' === raw.trim().toLowerCase() ? 'contain' : 'cover';\n  })();\n  const readmoreButtonAlignAttr = module_styles_readmoreButtonAlignmentAsInnerContent(pc_attr_helpers_getReadmoreDecorationButton(attrs));\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextStyle, {\n    selector: orderClass,\n    attr: attrs?.module?.advanced?.text\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: orderClass,\n    attr: attrs?.navi_size?.innerContent,\n    declarationFunction: blog_carousel_module_styles_swiperNavigationSizeVarCss\n  }), elements.style({\n    attrName: 'post_padding'\n  }), elements.style({\n    attrName: 'postItemStyle'\n  }), elements.style({\n    attrName: 'thumbnailStyle'\n  }), elements.style({\n    attrName: 'navigationStyle'\n  }), elements.style({\n    attrName: 'bottomStyle'\n  }), elements.style({\n    attrName: 'title'\n  }), elements.style({\n    attrName: 'body'\n  }), elements.style({\n    attrName: 'date'\n  }), elements.style({\n    attrName: 'author'\n  }), elements.style({\n    attrName: 'category'\n  }), elements.style({\n    attrName: 'comments'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-entry-meta`,\n    attr: attrs?.meta_alignment?.innerContent,\n    property: \"text-align\"\n  }), elements.style({\n    attrName: 'bottom_date'\n  }), elements.style({\n    attrName: 'bottom_author'\n  }), elements.style({\n    attrName: 'bottomStyle'\n  }), elements.style({\n    attrName: 'readmore'\n  }), readmoreButtonAlignAttr ? /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-readmore-wrap .et_pb_button_module_wrapper`,\n    attr: readmoreButtonAlignAttr,\n    property: \"text-align\"\n  }) : null, elements.style({\n    attrName: 'content_wrapper'\n  }), elements.style({\n    attrName: 'entryMetaContainer'\n  }), elements.style({\n    attrName: 'bottomMetaContainer'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .swiper-button-prev::before`,\n    attr: attrs?.prev_icon?.innerContent,\n    declarationFunction: module_styles_prevIconFontCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .swiper-button-next::before`,\n    attr: attrs?.next_icon?.innerContent,\n    declarationFunction: module_styles_nextIconFontCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm-overlay-enabled .dsm-entry-image .dsm-entry-thumbnail > a::before`,\n    attr: attrs?.overlay_icon?.innerContent,\n    declarationFunction: module_styles_overlayIconFontCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .swiper-button-next, ${orderClass} .swiper-button-prev, ${orderClass} .dsm-carousel-nav-icon-overlay`,\n    attr: attrs?.navi_size?.innerContent,\n    declarationFunction: module_styles_naviArrowFontSizeCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .swiper-button-next::before, ${orderClass} .swiper-button-prev::before, ${orderClass} .dsm-carousel-nav-icon-overlay`,\n    attr: attrs?.navi_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .swiper-button-next, ${orderClass} .swiper-button-prev, ${orderClass} .dsm-carousel-nav-icon-overlay`,\n    attr: attrs?.navi_background_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm-blog-carousel-slider-horizontal .swiper-pagination-bullets, ${orderClass}.dsm-blog-carousel-slider-horizontal .swiper-pagination-fraction, ${orderClass}.dsm-blog-carousel-slider-horizontal .swiper-pagination-custom`,\n    attr: attrs?.pagi_position?.innerContent,\n    declarationFunction: module_styles_pagiPositionBottomCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .swiper-pagination-bullet, ${orderClass} .swiper-pagination-progressbar`,\n    attr: attrs?.pagi_color?.innerContent,\n    property: \"background\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .swiper-pagination-bullet.swiper-pagination-bullet-active, ${orderClass} .swiper-pagination-progressbar .swiper-pagination-progressbar-fill`,\n    attr: attrs?.pagi_active_color?.innerContent,\n    property: \"background\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-blog-carousel-item`,\n    attr: attrs?.post_item_bg_color?.innerContent,\n    property: \"background\"\n  }), 'cover' === thumbnailImageType && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-entry-image .dsm-entry-thumbnail.dsm-thumbnail-fit-cover`,\n    attr: attrs?.thumbnail_height?.innerContent,\n    property: \"height\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-entry-image .dsm-entry-thumbnail img`,\n    attr: (_attrs$thumbnail_img_ = attrs?.thumbnail_img_type?.innerContent) !== null && _attrs$thumbnail_img_ !== void 0 ? _attrs$thumbnail_img_ : {\n      desktop: {\n        value: 'cover'\n      }\n    },\n    declarationFunction: module_styles_thumbnailEntryImageObjectFitCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-bottom-meta .dsm-bottom-meta-image img`,\n    attr: attrs?.image_width?.innerContent,\n    property: \"width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-entry-image .dsm-entry-thumbnail > a::before`,\n    attr: attrs?.hover_overlay_color?.innerContent,\n    property: \"background\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-entry-image .dsm-entry-thumbnail > a::before`,\n    attr: attrs?.overlay_icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-entry-image .dsm-entry-thumbnail > a::before`,\n    attr: attrs?.overlay_icon_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm_blog_carousel.dsm-blog-carousel-slider-vertical .swiper-container`,\n    attr: attrs?.slider_container_height?.innerContent,\n    property: \"height\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm-blog-carousel-slider-horizontal .swiper-button-next, ${orderClass}.dsm-blog-carousel-slider-horizontal .swiper-button-prev`,\n    attr: attrs?.navi_position?.innerContent,\n    property: \"top\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm-blog-carousel-slider-horizontal .swiper-button-prev`,\n    attr: attrs?.left_navi_position?.innerContent,\n    property: \"left\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm-blog-carousel-slider-horizontal .swiper-button-next`,\n    attr: attrs?.right_navi_position?.innerContent,\n    property: \"right\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm-blog-carousel-slider-vertical .swiper-button-next, ${orderClass}.dsm-blog-carousel-slider-vertical .swiper-button-prev`,\n    attr: attrs?.navi_hori_position?.innerContent,\n    property: \"left\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm-blog-carousel-slider-vertical .swiper-button-prev`,\n    attr: attrs?.top_navi_ver_position?.innerContent,\n    property: \"top\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm-blog-carousel-slider-vertical .swiper-button-next`,\n    attr: attrs?.bottom_navi_ver_position?.innerContent,\n    property: \"bottom\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm-blog-carousel-slider-vertical .swiper-pagination`,\n    attr: attrs?.pagi_position?.innerContent,\n    declarationFunction: pagiVerticalSideCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .swiper-pagination.swiper-pagination-vertical`,\n    attr: attrs?.pagi_ver_position?.innerContent,\n    property: \"top\"\n  }));\n};\n;// ./packages/module-library/blog-carousel/edit.js\nfunction blog_carousel_edit_extends() {\n  return blog_carousel_edit_extends = Object.assign ? Object.assign.bind() : function (n) {\n    for (var e = 1; e < arguments.length; e++) {\n      var t = arguments[e];\n      for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n    }\n    return n;\n  }, blog_carousel_edit_extends.apply(null, arguments);\n}\n\n\n\n\n\n\n\n\n// Divi package dependencies.\n\n\n\n// Custom dependencies.\n\n\n\n\n\n\n\n/**\n * React function component for registering module script data.\n */\nconst blog_carousel_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\n\n// Limit excerpt by word count (matches legacy Post Carousel PHP + divi-supreme-pro package).\nconst edit_limitExcerpt = (content, wordLimit = 50) => {\n  wordLimit = Math.max(1, parseInt(wordLimit, 10) || 55);\n  const strippedContent = content.replace(/<[^>]+(>|$)/g, '');\n  const words = strippedContent.trim().split(/\\s+/);\n  if (words.length > wordLimit) {\n    return words.slice(0, wordLimit).join(' ') + '...';\n  }\n  return strippedContent;\n};\n\n/**\n * Comment count label for entry meta (matches PHP `PostCarousel` output).\n *\n * @param {number|string|undefined} count Raw comment count from REST.\n * @return {string} Localized label.\n */\nconst edit_formatPostCarouselCommentsLabel = count => {\n  const n = Math.max(0, parseInt(String(count), 10) || 0);\n  return (0,external_window_vendor_wp_i18n_namespaceObject.sprintf)((0,external_window_vendor_wp_i18n_namespaceObject._nx)('%s Comment', '%s Comments', n, 'number of comments', 'dsm-supreme-modules-pro-for-divi'), String(n));\n};\n\n/**\n * Parse classic editor / admin `post`, `page_id`, or Divi-style query args.\n *\n * @param {string} href Full URL.\n * @return {number}\n */\nfunction edit_parsePostIdFromQuery(href) {\n  if (!href || typeof href !== 'string') {\n    return 0;\n  }\n  try {\n    const u = new URL(href);\n    const raw = u.searchParams.get('post') || u.searchParams.get('page_id') || u.searchParams.get('et_pb_post');\n    if (raw) {\n      const n = parseInt(raw, 10);\n      return n > 0 ? n : 0;\n    }\n  } catch (e) {\n    // Invalid URL.\n  }\n  return 0;\n}\n\n/**\n * Post ID localized from PHP when the VB script loads in admin (`?post=`).\n * Canvas iframes often lack that URL but share origin with `parent` / `top`.\n *\n * @return {number}\n */\nfunction edit_getDiviSupremeLocalizedBuilderPostId() {\n  if (typeof window === 'undefined') {\n    return 0;\n  }\n  const wins = [window, window.parent, window.top];\n  for (const w of wins) {\n    try {\n      if (!w?.diviSupreme5?.builderEditedPostId) {\n        continue;\n      }\n      const n = parseInt(String(w.diviSupreme5.builderEditedPostId), 10);\n      if (n > 0) {\n        return n;\n      }\n    } catch (err) {\n      // Cross-origin.\n    }\n  }\n  return 0;\n}\n\n/**\n * Edited post ID in block editor / Divi 5 Visual Builder (iframe-safe).\n *\n * Divi’s preview iframe often has no `core/editor` store; fall back to parent/top\n * windows, URL query (`post=`), and `ETBuilderBackend` (D4/D5 builder payload).\n *\n * @return {number}\n */\nfunction edit_getVisualBuilderEditedPostId() {\n  if (typeof window === 'undefined') {\n    return 0;\n  }\n  const localizedId = edit_getDiviSupremeLocalizedBuilderPostId();\n  if (localizedId > 0) {\n    return localizedId;\n  }\n  const tryCoreEditor = win => {\n    try {\n      const select = win?.wp?.data?.select;\n      if (typeof select !== 'function') {\n        return 0;\n      }\n      const editorSelect = select('core/editor');\n      if (!editorSelect) {\n        return 0;\n      }\n      if (typeof editorSelect.getCurrentPostId === 'function') {\n        const id = editorSelect.getCurrentPostId();\n        if (id) {\n          const n = parseInt(id, 10);\n          return n > 0 ? n : 0;\n        }\n      }\n      const post = editorSelect.getCurrentPost?.();\n      if (post?.id) {\n        const n = parseInt(post.id, 10);\n        return n > 0 ? n : 0;\n      }\n    } catch (err) {\n      // Missing store or cross-origin.\n    }\n    return 0;\n  };\n  const candidateWins = [window];\n  if (window.parent && window.parent !== window) {\n    candidateWins.push(window.parent);\n  }\n  if (window.top && window.top !== window) {\n    candidateWins.push(window.top);\n  }\n  for (const w of candidateWins) {\n    const id = tryCoreEditor(w);\n    if (id > 0) {\n      return id;\n    }\n  }\n  for (const w of candidateWins) {\n    try {\n      const href = w?.location?.href;\n      if (href) {\n        const id = edit_parsePostIdFromQuery(href);\n        if (id > 0) {\n          return id;\n        }\n      }\n    } catch (err) {\n      // Cross-origin `location`.\n    }\n  }\n  try {\n    const be = window.ETBuilderBackend || window.parent?.ETBuilderBackend || window.top?.ETBuilderBackend;\n    if (be && typeof be === 'object') {\n      const raw = be.postId || be.post_id || be.pageId || be.page_id || be.currentPage?.id;\n      if (raw) {\n        const n = parseInt(raw, 10);\n        if (n > 0) {\n          return n;\n        }\n      }\n    }\n  } catch (err) {\n    // Ignore.\n  }\n  const fromPreviewDom = edit_getPreviewedPostIdFromDom();\n  if (fromPreviewDom > 0) {\n    return fromPreviewDom;\n  }\n  return 0;\n}\n\n/**\n * Singular post ID from the preview document (VB canvas is a frontend URL without `?post=`).\n *\n * @return {number}\n */\nfunction edit_getPreviewedPostIdFromDom() {\n  if (typeof document === 'undefined') {\n    return 0;\n  }\n  const bodyClass = document.body?.className;\n  if (typeof bodyClass === 'string') {\n    let m = bodyClass.match(/\\bpage-id-(\\d+)\\b/);\n    if (m) {\n      const n = parseInt(m[1], 10);\n      if (n > 0) {\n        return n;\n      }\n    }\n    m = bodyClass.match(/\\bpostid-(\\d+)\\b/);\n    if (m) {\n      const n = parseInt(m[1], 10);\n      if (n > 0) {\n        return n;\n      }\n    }\n  }\n  const article = document.querySelector('article[id^=\"post-\"]');\n  if (article?.id) {\n    const m = article.id.match(/^post-(\\d+)$/);\n    if (m) {\n      const n = parseInt(m[1], 10);\n      if (n > 0) {\n        return n;\n      }\n    }\n  }\n  return 0;\n}\n\n/**\n * Category term IDs for the post open in the editor (standard posts).\n *\n * @return {number[]}\n */\nfunction edit_getVisualBuilderEditedCategoryIds() {\n  if (typeof window === 'undefined') {\n    return [];\n  }\n  const tryCategories = win => {\n    try {\n      const select = win?.wp?.data?.select;\n      if (typeof select !== 'function') {\n        return null;\n      }\n      const editorSelect = select('core/editor');\n      if (!editorSelect?.getEditedPostAttribute) {\n        return null;\n      }\n      const cats = editorSelect.getEditedPostAttribute('categories');\n      if (!Array.isArray(cats)) {\n        return [];\n      }\n      return cats.map(id => parseInt(id, 10)).filter(id => id > 0);\n    } catch (err) {\n      return null;\n    }\n  };\n  const candidateWins = [window];\n  if (window.parent && window.parent !== window) {\n    candidateWins.push(window.parent);\n  }\n  if (window.top && window.top !== window) {\n    candidateWins.push(window.top);\n  }\n  for (const w of candidateWins) {\n    const ids = tryCategories(w);\n    if (null !== ids) {\n      return ids;\n    }\n  }\n  return [];\n}\n\n/**\n * `include_categories` checkbox values: `all`, `current`, `category:{id}`, or legacy numeric strings.\n *\n * @param {unknown} raw\n * @return {string[]}\n */\nfunction normalizeIncludeCategoriesSelections(raw) {\n  if (!Array.isArray(raw)) {\n    return [];\n  }\n  return raw.filter(v => v === 'all' || v === 'current' || typeof v === 'string' && v.startsWith('category:'));\n}\n\n/**\n * `data-icon` / `data-icon-tablet` / `data-icon-phone` on readmore (matches core ButtonModule).\n *\n * @param {Object} attrs Module attrs.\n * @return {Record<string, string>}\n */\nfunction edit_getReadmoreIconDataAttrs(attrs) {\n  var _dec$desktop$value, _desktopVal$icon$enab;\n  const dec = pc_attr_helpers_getReadmoreDecorationButton(attrs);\n  if (!dec || typeof dec !== 'object') {\n    return {};\n  }\n  const desktopVal = (_dec$desktop$value = dec.desktop?.value) !== null && _dec$desktop$value !== void 0 ? _dec$desktop$value : dec.desktop;\n  const isIconEnabled = 'on' === ((_desktopVal$icon$enab = desktopVal?.icon?.enable) !== null && _desktopVal$icon$enab !== void 0 ? _desktopVal$icon$enab : 'off');\n  const out = {};\n  const breakpointToDataAttr = bp => 'desktop' === bp ? 'data-icon' : 'data-icon-' + bp.replace(/([A-Z])/g, ch => '-' + ch).toLowerCase();\n  Object.keys(dec).forEach(bp => {\n    const bv = dec[bp];\n    const settings = bv?.value?.icon?.settings;\n    if (!isIconEnabled || !settings) {\n      return;\n    }\n    const processed = (0,external_divi_iconLibrary_namespaceObject.processFontIcon)(settings);\n    if (null == processed || '' === processed) {\n      return;\n    }\n    out[breakpointToDataAttr(bp)] = processed;\n  });\n  return out;\n}\nfunction blog_carousel_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _getAttrByMode4, _getInnerContentDeskt, _getAttrByMode5, _getAttrByMode6, _getAttrByMode7, _getAttrByMode8, _getAttrByMode9, _getAttrByMode0, _getAttrByMode1, _getAttrByMode10, _getAttrByMode11, _getAttrByMode12, _getAttrByMode13, _getAttrByMode14, _getAttrByMode15, _getAttrByMode16, _getAttrByMode17, _getAttrByMode18, _getAttrByMode19, _getAttrByMode20, _getAttrByMode21, _attrs$columns$innerC, _attrs$columns$innerC2, _getAttrByMode22, _attrs$rows_per_view$, _attrs$rows_per_view$2, _getAttrByMode23, _getAttrByMode24, _getAttrByMode25, _getAttrByMode26, _getAttrByMode27, _getAttrByMode28, _getAttrByMode29, _getAttrByMode30, _getAttrByMode31, _getAttrByMode32, _getAttrByMode33, _getAttrByMode34, _getAttrByMode35, _getAttrByMode36, _getAttrByMode37, _getAttrByMode38, _getAttrByMode39, _getAttrByMode40, _getAttrByMode41, _getAttrByMode42, _getAttrByMode43, _getAttrByMode44, _getAttrByMode45;\n  const {} = attrs;\n  const swiperRef = (0,external_vendor_React_.useRef)(null);\n  const navigationPrevRef = (0,external_vendor_React_.useRef)(null);\n  const navigationNextRef = (0,external_vendor_React_.useRef)(null);\n  const paginationRef = (0,external_vendor_React_.useRef)(null);\n\n  /** Matches PHP `BlogCarousel::render_callback` nav/pagination suffix (`orderIndex`). */\n  const blogCarouselNavSuffix = (0,external_divi_data_namespaceObject.useSelect)(select => {\n    const editPost = select('divi/edit-post');\n    if (!editPost || typeof editPost.getModule !== 'function') {\n      return '';\n    }\n    const mod = editPost.getModule(id);\n    if (!mod || typeof mod !== 'object') {\n      return '';\n    }\n    const idx = typeof mod.orderIndex === 'number' ? mod.orderIndex : typeof mod.props?.orderIndex === 'number' ? mod.props.orderIndex : null;\n    return idx != null ? String(idx) : '';\n  }, [id]);\n  const posts_number = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.posts_number?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : '10';\n  const posts_offset = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.posts_offset?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : '0';\n  const post_orderby = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.post_orderby?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'date';\n  const post_sortby = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.post_sortby?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : 'desc';\n  const include_current_post_raw = (_getInnerContentDeskt = pc_attr_helpers_getInnerContentDesktopValue(attrs, 'include_current_post')) !== null && _getInnerContentDeskt !== void 0 ? _getInnerContentDeskt : (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.include_current_post?.innerContent);\n  const include_current_post_on = pc_attr_helpers_isPcToggleOn(include_current_post_raw !== null && include_current_post_raw !== void 0 ? include_current_post_raw : 'off');\n  const editedPostId = edit_getVisualBuilderEditedPostId();\n  const include_cat_selection = normalizeIncludeCategoriesSelections((0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.include_categories?.innerContent));\n  const postsQuery = {\n    per_page: Number(posts_number),\n    offset: Number(posts_offset),\n    order: post_sortby,\n    orderby: post_orderby\n  };\n  const includeHasAll = include_cat_selection.length === 0 || include_cat_selection.some(v => v === 'all');\n  if (!includeHasAll) {\n    const catIds = [];\n    for (const token of include_cat_selection) {\n      if (token.startsWith('category:')) {\n        const id = parseInt(token.replace(/^category:/, ''), 10);\n        if (id > 0) {\n          catIds.push(id);\n        }\n      }\n    }\n    if (include_cat_selection.includes('current') && editedPostId > 0) {\n      catIds.push(...edit_getVisualBuilderEditedCategoryIds());\n    }\n    const merged = [...new Set(catIds.filter(id => id > 0))];\n    if (merged.length) {\n      postsQuery.categories = merged;\n    }\n  }\n  const excludeEditedPost = editedPostId > 0 && (!include_current_post_on || include_cat_selection.includes('current') && !include_cat_selection.includes('all'));\n  if (excludeEditedPost) {\n    postsQuery.exclude = [editedPostId];\n  }\n  const postsFetchIdentity = {\n    include_current_post_on,\n    editedPostId,\n    excludeEditedPost,\n    include_cat_selection\n  };\n  const {\n    loading,\n    error,\n    posts\n  } = use_posts('post', postsQuery, postsFetchIdentity);\n  const use_date = (_getAttrByMode5 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_date?.innerContent)) !== null && _getAttrByMode5 !== void 0 ? _getAttrByMode5 : 'on';\n  const use_author = (_getAttrByMode6 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_author?.innerContent)) !== null && _getAttrByMode6 !== void 0 ? _getAttrByMode6 : 'on';\n  const use_title = (_getAttrByMode7 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_title?.innerContent)) !== null && _getAttrByMode7 !== void 0 ? _getAttrByMode7 : 'on';\n  const use_excerpt = (_getAttrByMode8 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_excerpt?.innerContent)) !== null && _getAttrByMode8 !== void 0 ? _getAttrByMode8 : 'on';\n  const use_thumbnail = (_getAttrByMode9 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_thumbnail?.innerContent)) !== null && _getAttrByMode9 !== void 0 ? _getAttrByMode9 : 'on';\n  const thumbnailImageType = (_getAttrByMode0 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.thumbnail_img_type?.innerContent)) !== null && _getAttrByMode0 !== void 0 ? _getAttrByMode0 : 'cover';\n  const meta_seperator = (_getAttrByMode1 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.meta_seperator?.innerContent)) !== null && _getAttrByMode1 !== void 0 ? _getAttrByMode1 : '|';\n  const use_bottom = (_getAttrByMode10 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_bottom?.innerContent)) !== null && _getAttrByMode10 !== void 0 ? _getAttrByMode10 : 'off';\n  const bottom_date = (_getAttrByMode11 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.bottom_date?.innerContent)) !== null && _getAttrByMode11 !== void 0 ? _getAttrByMode11 : 'on';\n  const bottom_author = (_getAttrByMode12 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.bottom_author?.innerContent)) !== null && _getAttrByMode12 !== void 0 ? _getAttrByMode12 : 'on';\n  const excerpt_length = (_getAttrByMode13 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.excerpt_length?.innerContent)) !== null && _getAttrByMode13 !== void 0 ? _getAttrByMode13 : '50';\n  const post_equal_height = (_getAttrByMode14 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.post_equal_height?.innerContent)) !== null && _getAttrByMode14 !== void 0 ? _getAttrByMode14 : 'off';\n  const use_category = (_getAttrByMode15 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_category?.innerContent)) !== null && _getAttrByMode15 !== void 0 ? _getAttrByMode15 : 'off';\n  const use_comments = (_getAttrByMode16 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_comments?.innerContent)) !== null && _getAttrByMode16 !== void 0 ? _getAttrByMode16 : 'off';\n  const slider_effect = (_getAttrByMode17 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_effect?.innerContent)) !== null && _getAttrByMode17 !== void 0 ? _getAttrByMode17 : 'default';\n  const slider_effect_shadows = (_getAttrByMode18 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_effect_shadows?.innerContent)) !== null && _getAttrByMode18 !== void 0 ? _getAttrByMode18 : 'off';\n  const slider_effect_coverflow_rotate = (_getAttrByMode19 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_effect_coverflow_rotate?.innerContent)) !== null && _getAttrByMode19 !== void 0 ? _getAttrByMode19 : '30';\n  const slider_effect_coverflow_depth = (_getAttrByMode20 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_effect_coverflow_depth?.innerContent)) !== null && _getAttrByMode20 !== void 0 ? _getAttrByMode20 : '100';\n  const columns = (_getAttrByMode21 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.columns?.innerContent)) !== null && _getAttrByMode21 !== void 0 ? _getAttrByMode21 : '3';\n  const columns_tablet = (_attrs$columns$innerC = attrs?.columns?.innerContent?.tablet?.value) !== null && _attrs$columns$innerC !== void 0 ? _attrs$columns$innerC : 2;\n  const columns_phone = (_attrs$columns$innerC2 = attrs?.columns?.innerContent?.phone?.value) !== null && _attrs$columns$innerC2 !== void 0 ? _attrs$columns$innerC2 : 1;\n  const rows_per_view = (_getAttrByMode22 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.rows_per_view?.innerContent)) !== null && _getAttrByMode22 !== void 0 ? _getAttrByMode22 : '1';\n  const rows_per_view_tablet = (_attrs$rows_per_view$ = attrs?.rows_per_view?.innerContent?.tablet?.value) !== null && _attrs$rows_per_view$ !== void 0 ? _attrs$rows_per_view$ : 2;\n  const rows_per_view_phone = (_attrs$rows_per_view$2 = attrs?.rows_per_view?.innerContent?.phone?.value) !== null && _attrs$rows_per_view$2 !== void 0 ? _attrs$rows_per_view$2 : 1;\n  const slide_to_scroll = (_getAttrByMode23 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slide_to_scroll?.innerContent)) !== null && _getAttrByMode23 !== void 0 ? _getAttrByMode23 : '1';\n  const slide_to_scroll_tablet = attrs?.slide_to_scroll?.innerContent?.tablet?.value;\n  const slide_to_scroll_phone = attrs?.slide_to_scroll?.innerContent?.phone?.value;\n  const multiple_slide_row = (_getAttrByMode24 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.multiple_slide_row?.innerContent)) !== null && _getAttrByMode24 !== void 0 ? _getAttrByMode24 : 'off';\n  const slide_row = (_getAttrByMode25 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slide_row?.innerContent)) !== null && _getAttrByMode25 !== void 0 ? _getAttrByMode25 : '1';\n  const centered_slides = (_getAttrByMode26 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.centered_slides?.innerContent)) !== null && _getAttrByMode26 !== void 0 ? _getAttrByMode26 : 'off';\n  const spacing = (_getAttrByMode27 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.spacing?.innerContent)) !== null && _getAttrByMode27 !== void 0 ? _getAttrByMode27 : '30';\n  const speed = (_getAttrByMode28 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.speed?.innerContent)) !== null && _getAttrByMode28 !== void 0 ? _getAttrByMode28 : '500';\n  const loop = (_getAttrByMode29 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.loop?.innerContent)) !== null && _getAttrByMode29 !== void 0 ? _getAttrByMode29 : 'on';\n  const autoplay = (_getAttrByMode30 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.autoplay?.innerContent)) !== null && _getAttrByMode30 !== void 0 ? _getAttrByMode30 : 'on';\n  const autoplay_speed = (_getAttrByMode31 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.autoplay_speed?.innerContent)) !== null && _getAttrByMode31 !== void 0 ? _getAttrByMode31 : '5000';\n  const autoplay_viewport = (_getAttrByMode32 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.autoplay_viewport?.innerContent)) !== null && _getAttrByMode32 !== void 0 ? _getAttrByMode32 : '50%';\n  const mousewheel = (_getAttrByMode33 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.mousewheel?.innerContent)) !== null && _getAttrByMode33 !== void 0 ? _getAttrByMode33 : 'off';\n  const pause_on_hover = (_getAttrByMode34 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.pause_on_hover?.innerContent)) !== null && _getAttrByMode34 !== void 0 ? _getAttrByMode34 : 'off';\n  const use_pagi = (_getAttrByMode35 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_pagi?.innerContent)) !== null && _getAttrByMode35 !== void 0 ? _getAttrByMode35 : 'on';\n  const use_navi = (_getAttrByMode36 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_navi?.innerContent)) !== null && _getAttrByMode36 !== void 0 ? _getAttrByMode36 : 'on';\n  const prevIcon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.prev_icon?.innerContent);\n  const nextIcon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.next_icon?.innerContent);\n  const useCustomPrevIcon = (_getAttrByMode37 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_prev_icon?.innerContent)) !== null && _getAttrByMode37 !== void 0 ? _getAttrByMode37 : 'off';\n  const useCustomNextIcon = (_getAttrByMode38 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_next_icon?.innerContent)) !== null && _getAttrByMode38 !== void 0 ? _getAttrByMode38 : 'off';\n  const touch_move = (_getAttrByMode39 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.touch_move?.innerContent)) !== null && _getAttrByMode39 !== void 0 ? _getAttrByMode39 : 'off';\n  const grab = (_getAttrByMode40 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.grab?.innerContent)) !== null && _getAttrByMode40 !== void 0 ? _getAttrByMode40 : 'on';\n  const slider_orientation = (_getAttrByMode41 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.slider_orientation?.innerContent)) !== null && _getAttrByMode41 !== void 0 ? _getAttrByMode41 : 'horizontal';\n  const pagi_style = (_getAttrByMode42 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.pagi_style?.innerContent)) !== null && _getAttrByMode42 !== void 0 ? _getAttrByMode42 : 'bullets';\n  const use_readmore = (_getAttrByMode43 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_readmore?.innerContent)) !== null && _getAttrByMode43 !== void 0 ? _getAttrByMode43 : 'off';\n  const readmore_text = (_getAttrByMode44 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.readmore_text?.innerContent)) !== null && _getAttrByMode44 !== void 0 ? _getAttrByMode44 : 'Readmore';\n  const useOverlay = (_getAttrByMode45 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_overlay?.innerContent)) !== null && _getAttrByMode45 !== void 0 ? _getAttrByMode45 : 'off';\n  const readmoreIconDataAttrs = edit_getReadmoreIconDataAttrs(attrs);\n  const readmoreIconCssClass = Object.keys(readmoreIconDataAttrs).length > 0 ? ' et_pb_custom_button_icon' : '';\n  const refreshKey = [posts.length, loading, posts_number, posts_offset, post_orderby, post_sortby, use_date, use_author, use_title, use_excerpt, use_thumbnail, thumbnailImageType, meta_seperator, use_bottom, bottom_date, bottom_author, excerpt_length, slider_effect, slider_effect_shadows, slider_effect_coverflow_rotate, slider_effect_coverflow_depth, columns, rows_per_view, slide_to_scroll, multiple_slide_row, slide_row, centered_slides, spacing, speed, loop, autoplay, autoplay_speed, mousewheel, pause_on_hover, touch_move, grab, slider_orientation, pagi_style, use_readmore, readmore_text];\n  (0,external_vendor_React_.useEffect)(() => {\n    if (!swiperRef.current || loading || posts.length === 0) {\n      return;\n    }\n    let swiperInstance = null;\n    const cancelWait = whenSwiperConstructorReady(SwiperCtor => {\n      if (!swiperRef.current || loading || posts.length === 0) {\n        return;\n      }\n      const swiperParams = {\n        ...getDsmCarouselVbSwiperObserverOptions(),\n        effect: slider_effect,\n        slidesPerView: slider_effect === 'cube' || slider_effect === 'flip' ? 1 : 'vertical' === slider_orientation ? Number(rows_per_view) : Number(columns),\n        slidesPerGroup: slider_effect === 'cube' || slider_effect === 'flip' ? 1 : Number(slide_to_scroll),\n        spaceBetween: Number(spacing),\n        speed: Number(speed),\n        loop: loop === 'on',\n        autoplay: autoplay === 'on' ? {\n          delay: Number(autoplay_speed),\n          disableOnInteraction: false\n        } : false,\n        navigation: use_navi === 'on' ? {\n          nextEl: navigationNextRef.current,\n          prevEl: navigationPrevRef.current\n        } : false,\n        pagination: use_pagi === 'on' ? {\n          el: paginationRef.current,\n          clickable: true,\n          type: 'progressbar' !== pagi_style ? 'bullets' : 'progressbar',\n          dynamicBullets: 'dynamic' === pagi_style ? true : false\n        } : false,\n        direction: slider_orientation,\n        centeredSlides: centered_slides === 'on',\n        mousewheel: mousewheel === 'on' ? true : false,\n        allowTouchMove: touch_move === 'off' ? true : false,\n        grabCursor: grab === 'on' ? true : false,\n        coverflowEffect: {\n          rotate: Number(slider_effect_coverflow_rotate),\n          stretch: 0,\n          depth: Number(slider_effect_coverflow_depth),\n          modifier: 1,\n          slideShadows: slider_effect_shadows === 'on'\n        },\n        cubeEffect: {\n          shadow: slider_effect_shadows === 'on',\n          slideShadows: slider_effect_shadows === 'on',\n          shadowOffset: 20,\n          shadowScale: 0.94\n        },\n        flipEffect: {\n          slideShadows: slider_effect_shadows === 'on',\n          limitRotation: true\n        },\n        breakpoints: {\n          320: {\n            slidesPerView: slider_effect === 'cube' || slider_effect === 'flip' ? 1 : 'vertical' === slider_orientation ? (0,lodash.isEmpty)(rows_per_view_phone) ? 1 : Number(rows_per_view) : (0,lodash.isEmpty)(columns_phone) ? 1 : Number(columns),\n            slidesPerGroup: slider_effect === 'cube' || slider_effect === 'flip' ? 1 : (0,lodash.isEmpty)(slide_to_scroll_phone) ? 1 : Number(slide_to_scroll_phone),\n            spaceBetween: 10\n          },\n          768: {\n            slidesPerView: slider_effect === 'cube' || slider_effect === 'flip' ? 1 : 'vertical' === slider_orientation ? (0,lodash.isEmpty)(rows_per_view_tablet) ? 2 : Number(rows_per_view) : (0,lodash.isEmpty)(columns_tablet) ? 2 : Number(columns),\n            slidesPerGroup: slider_effect === 'cube' || slider_effect === 'flip' ? 1 : (0,lodash.isEmpty)(slide_to_scroll_tablet) ? 1 : Number(slide_to_scroll_tablet),\n            spaceBetween: 10\n          },\n          981: {\n            slidesPerView: slider_effect === 'cube' || slider_effect === 'flip' ? 1 : 'vertical' === slider_orientation ? Number(rows_per_view) : Number(columns),\n            slidesPerGroup: slider_effect === 'cube' || slider_effect === 'flip' ? 1 : Number(slide_to_scroll),\n            spaceBetween: Number(spacing),\n            grid: {\n              rows: Number(slide_row),\n              fill: 'row'\n            }\n          }\n        },\n        on: {\n          init: function () {\n            if (pause_on_hover === 'on') {\n              swiperRef.current.addEventListener('mouseenter', () => this.autoplay.stop());\n              swiperRef.current.addEventListener('mouseleave', () => this.autoplay.start());\n            }\n          }\n        }\n      };\n      swiperInstance = new SwiperCtor(swiperRef.current, swiperParams);\n      scheduleDsmCarouselSwiperLayoutRefresh(swiperInstance);\n    });\n    return () => {\n      cancelWait();\n      if (swiperInstance) {\n        swiperInstance.destroy();\n      }\n    };\n  }, refreshKey);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: blog_carousel_edit_ModuleScriptData,\n    stylesComponent: blog_carousel_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n      params.classnamesInstance.add(`dsm-blog-carousel-slider-${slider_orientation} `);\n      if ('on' === post_equal_height) {\n        params.classnamesInstance.add('dsm-post-item-equal-height');\n      }\n      if ('on' === useOverlay) {\n        params.classnamesInstance.add('dsm-overlay-enabled');\n      }\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-blog-carousel\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"swiper-container dsm-blog-carousel-container\",\n    \"data-effect\": slider_effect,\n    ref: swiperRef\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"swiper-wrapper dsm-blog-carousel-wrapper\"\n  }, posts.map((item, index) => {\n    var _item$dsm_comment_cou;\n    const formattedDate = new Date(item?.date).toLocaleDateString('en-US', {\n      month: 'short',\n      day: 'numeric',\n      year: 'numeric'\n    });\n    return /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"dsm-blog-carousel-item swiper-slide\",\n      key: index\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"dsm-grid-post-holder-inner\"\n    }, 'on' === use_thumbnail && !(0,lodash.isEmpty)(item?.dsm_featured_image?.full) && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"dsm-entry-image\"\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: `dsm-entry-thumbnail dsm-thumbnail-fit-${'contain' === thumbnailImageType ? 'contain' : 'cover'}`\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n      href: \"#\"\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n      src: item?.dsm_featured_image?.full\n    })))), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"dsm-entry-wrapper\"\n    }, 'on' === use_title && /*#__PURE__*/external_vendor_React_default().createElement(\"header\", {\n      className: \"dsm-entry-header\"\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"h2\", {\n      className: \"dsm-entry-title\"\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n      href: \"#\"\n    }, item?.title?.rendered))), ('on' === use_author || 'on' === use_date || 'on' === use_category || 'on' === use_comments) && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"dsm-entry-meta\"\n    }, 'on' === use_author && /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n      className: \"dsm-posted-by\"\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n      href: \"#\"\n    }, item?.dsm_author?.name)), 'on' === use_author && ('on' === use_date || 'on' === use_category && !(0,lodash.isEmpty)(item?.dsm_categories) || 'on' === use_comments) && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, ' ', /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n      className: \"dsm-meta-seperator\"\n    }, meta_seperator), ' '), 'on' === use_date && /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n      className: \"dsm-posted-on\"\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"time\", {\n      dateTime: formattedDate\n    }, formattedDate)), 'on' === use_category && ('on' === use_author || 'on' === use_date) && !(0,lodash.isEmpty)(item?.dsm_categories) && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, ' ', /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n      className: \"dsm-meta-seperator\"\n    }, meta_seperator), ' '), 'on' === use_category && /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n      className: \"dsm-posted-category\"\n    }, item?.dsm_categories?.map((category, index) => /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, index > 0 && ', ', /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n      href: category.term_link\n    }, category.term_name)))), 'on' === use_comments && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, ('on' === use_author || 'on' === use_date || 'on' === use_category && !(0,lodash.isEmpty)(item?.dsm_categories)) && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, ' ', /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n      className: \"dsm-meta-seperator\"\n    }, meta_seperator), ' '), /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n      className: \"dsm-posted-comments\"\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n      href: `${item?.link || '#'}#comments`\n    }, edit_formatPostCarouselCommentsLabel((_item$dsm_comment_cou = item?.dsm_comment_count) !== null && _item$dsm_comment_cou !== void 0 ? _item$dsm_comment_cou : item?.comment_count))))), 'on' === use_excerpt && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"dsm-entry-content\"\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"dsm-post-excerpt\"\n    }, (0,external_wp_dom_namespaceObject.safeHTML)(decodeEntities(edit_limitExcerpt(item.content.rendered, excerpt_length))))), 'on' === use_readmore && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"dsm-readmore-wrap et_pb_bg_layout_light\"\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"et_pb_button_module_wrapper\"\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"a\", blog_carousel_edit_extends({\n      className: `dsm-readmore-btn et_pb_button${readmoreIconCssClass}`\n    }, readmoreIconDataAttrs), elements.render(getDsmButtonTextRenderProps('readmore_text'))))), 'on' === use_bottom && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"dsm-bottom-meta\"\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n      className: \"dsm-bottom-meta-image\"\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n      src: item?.dsm_author?.avatar_url\n    })), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"dsm-bottom-meta-right\"\n    }, 'on' === bottom_date && /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n      className: \"dsm-posted-by\"\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n      href: \"#\"\n    }, item?.dsm_author?.name)), 'on' === bottom_author && /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n      className: \"dsm-posted-on\"\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"time\", null, formattedDate)))))));\n  }))), use_navi === 'on' && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(CarouselNavWithDsmIcon, {\n    direction: \"prev\",\n    className: 'swiper-arrow-button dsm-blog-arrow-button-prev' + blogCarouselNavSuffix,\n    buttonRef: navigationPrevRef,\n    icon: prevIcon,\n    useCustomIcon: useCustomPrevIcon\n  }), /*#__PURE__*/external_vendor_React_default().createElement(CarouselNavWithDsmIcon, {\n    direction: \"next\",\n    className: 'swiper-arrow-button dsm-blog-arrow-button-next' + blogCarouselNavSuffix,\n    buttonRef: navigationNextRef,\n    icon: nextIcon,\n    useCustomIcon: useCustomNextIcon\n  })), use_pagi === 'on' && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: 'swiper-pagination dsm-blog-pagination' + blogCarouselNavSuffix,\n    ref: paginationRef\n  })));\n}\n/* harmony default export */ const blog_carousel_edit = (blog_carousel_edit_Edit);\n;// ./packages/module-library/blog-carousel/conversion-outline.js\n\n\nconst blog_carousel_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'postItemStyle.decoration.border',\n      post_box: 'postItemStyle.decoration.border',\n      image: 'thumbnailStyle.decoration.border',\n      navi_arrow: 'navigationStyle.decoration.border',\n      bottom_author_image: 'bottomStyle.decoration.border'\n    },\n    box_shadow: {\n      default: 'postItemStyle.decoration.boxShadow',\n      post_box: 'postItemStyle.decoration.boxShadow',\n      image: 'thumbnailStyle.decoration.boxShadow',\n      navi_arrow: 'navigationStyle.decoration.boxShadow',\n      bottom_author_image: 'bottomStyle.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    display_conditions: 'module.decoration.conditions',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    margin_padding: 'module.decoration.spacing',\n    max_width: 'module.decoration.sizing',\n    height: 'module.decoration.sizing',\n    link_options: 'module.advanced.link',\n    // D4 `advanced_fields['button']['readmore']` — required or dozens of attrs (colors, borders, spacing, icon) become unknownAttributes.\n    button: {\n      readmore: 'readmore'\n    },\n    filters: {\n      default: 'module.decoration.filters',\n      image: 'thumbnailStyle.decoration.filters'\n    },\n    fonts: {\n      title: 'title.decoration.font',\n      body: 'body.decoration.font',\n      date: 'date.decoration.font',\n      author: 'author.decoration.font',\n      category: 'category.decoration.font',\n      comments: 'comments.decoration.font',\n      readmore: 'readmore.decoration.font',\n      bottom_date: 'bottom_date.decoration.font',\n      bottom_author: 'bottom_author.decoration.font'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    posts_number: 'posts_number.innerContent.*',\n    posts_offset: 'posts_offset.innerContent.*',\n    use_overlay: 'use_overlay.innerContent.*',\n    overlay_icon: 'overlay_icon.innerContent.*',\n    overlay_icon_color: 'overlay_icon_color.innerContent.*',\n    overlay_icon_size: 'overlay_icon_size.innerContent.*',\n    hover_overlay_color: 'hover_overlay_color.innerContent.*',\n    use_thumbnail: 'use_thumbnail.innerContent.*',\n    thumbnail_img_type: 'thumbnail_img_type.innerContent.*',\n    lazyload: 'lazyload.innerContent.*',\n    thumbnail_height: 'thumbnail_height.innerContent.*',\n    use_title: 'use_title.innerContent.*',\n    use_excerpt: 'use_excerpt.innerContent.*',\n    excerpt_length: 'excerpt_length.innerContent.*',\n    include_current_post: 'include_current_post.innerContent.*',\n    include_categories: 'include_categories.innerContent.*',\n    use_date: 'use_date.innerContent.*',\n    meta_date: 'meta_date.innerContent.*',\n    post_orderby: 'post_orderby.innerContent.*',\n    post_sortby: 'post_sortby.innerContent.*',\n    meta_seperator: 'meta_seperator.innerContent.*',\n    use_author: 'use_author.innerContent.*',\n    use_comments: 'use_comments.innerContent.*',\n    use_readmore: 'use_readmore.innerContent.*',\n    readmore_text: 'readmore_text.innerContent.*',\n    // D4 Content-tab fields (shortcode attrs), not only `advanced_fields['button']['readmore']` sub-keys.\n    // Mirrors core Button: `custom_button` → `button.decoration.button.*.enable`.\n    custom_readmore: 'readmore.decoration.button.*.enable',\n    readmore_use_icon: 'readmore.decoration.button.*.icon.enable',\n    readmore_icon: 'readmore.decoration.button.*.icon.settings',\n    use_bottom: 'use_bottom.innerContent.*',\n    bottom_date: 'bottom_date.innerContent.*',\n    bottom_author: 'bottom_author.innerContent.*',\n    use_category: 'use_category.innerContent.*',\n    slider_orientation: 'slider_orientation.innerContent.*',\n    slider_container_height: 'slider_container_height.innerContent.*',\n    slider_vertical_height_msg: 'slider_vertical_height_msg.innerContent.*',\n    slider_effect: 'slider_effect.innerContent.*',\n    slider_effect_shadows: 'slider_effect_shadows.innerContent.*',\n    slider_effect_coverflow_rotate: 'slider_effect_coverflow_rotate.innerContent.*',\n    slider_effect_coverflow_depth: 'slider_effect_coverflow_depth.innerContent.*',\n    columns: 'columns.innerContent.*',\n    rows_per_view: 'rows_per_view.innerContent.*',\n    slide_to_scroll: 'slide_to_scroll.innerContent.*',\n    multiple_slide_row: 'multiple_slide_row.innerContent.*',\n    slide_row: 'slide_row.innerContent.*',\n    centered_slides: 'centered_slides.innerContent.*',\n    spacing: 'spacing.innerContent.*',\n    speed: 'speed.innerContent.*',\n    loop: 'loop.innerContent.*',\n    autoplay: 'autoplay.innerContent.*',\n    autoplay_speed: 'autoplay_speed.innerContent.*',\n    autoplay_viewport: 'autoplay_viewport.innerContent.*',\n    mousewheel: 'mousewheel.innerContent.*',\n    pause_on_hover: 'pause_on_hover.innerContent.*',\n    use_pagi: 'use_pagi.innerContent.*',\n    pagi_position: 'pagi_position.innerContent.*',\n    pagi_ver_position: 'pagi_ver_position.innerContent.*',\n    pagi_color: 'pagi_color.innerContent.*',\n    pagi_active_color: 'pagi_active_color.innerContent.*',\n    pagi_ver_placement: 'pagi_ver_placement.innerContent.*',\n    pagi_style: 'pagi_style.innerContent.*',\n    use_navi: 'use_navi.innerContent.*',\n    navi_position: 'navi_position.innerContent.*',\n    left_navi_position: 'left_navi_position.innerContent.*',\n    right_navi_position: 'right_navi_position.innerContent.*',\n    navi_hori_position: 'navi_hori_position.innerContent.*',\n    top_navi_ver_position: 'top_navi_ver_position.innerContent.*',\n    bottom_navi_ver_position: 'bottom_navi_ver_position.innerContent.*',\n    navi_size: 'navi_size.innerContent.*',\n    use_prev_icon: 'use_prev_icon.innerContent.*',\n    prev_icon: 'prev_icon.innerContent.*',\n    use_next_icon: 'use_next_icon.innerContent.*',\n    next_icon: 'next_icon.innerContent.*',\n    navi_color: 'navi_color.innerContent.*',\n    navi_background_color: 'navi_background_color.innerContent.*',\n    post_padding: 'post_padding.decoration.spacing.*.padding',\n    post_equal_height: 'post_equal_height.innerContent.*',\n    post_entry_design_tab: 'post_entry_design_tab.innerContent.*',\n    bottom_meta_design_tab: 'bottom_meta_design_tab.innerContent.*',\n    touch_move: 'touch_move.innerContent.*',\n    grab: 'grab.innerContent.*',\n    post_item_bg_color: 'post_item_bg_color.innerContent.*',\n    meta_alignment: 'meta_alignment.innerContent.*',\n    image_width: 'image_width.innerContent.*',\n    content_wrapper: 'content_wrapper.decoration.spacing.*.padding',\n    title_level: 'title.decoration.font.font.*.headingLevel',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  // D4 `include_categories` comma list is normalized to checkbox tokens in postConvert.\n  valueExpansionFunctionMap: {\n    overlay_icon: external_divi_conversion_namespaceObject.convertFontIcon,\n    prev_icon: external_divi_conversion_namespaceObject.convertFontIcon,\n    next_icon: external_divi_conversion_namespaceObject.convertFontIcon,\n    readmore_icon: external_divi_conversion_namespaceObject.convertFontIcon,\n    post_padding: external_divi_module_namespaceObject.convertSpacing,\n    content_wrapper: external_divi_module_namespaceObject.convertSpacing,\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/blog-carousel/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmBlogCarousel', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/blog-carousel': {\n      name: 'divi-supreme/blog-carousel',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        stroke: \"none\",\n        fillOpacity: \"1\",\n        fill: \"#5C1DB0\",\n        fillRule: \"nonzero\",\n        d: \"M 13.589844 2.851562 C 13.519531 2.851562 13.449219 2.832031 13.390625 2.792969 C 13.328125 2.753906 13.285156 2.695312 13.257812 2.632812 C 13.230469 2.566406 13.222656 2.492188 13.234375 2.421875 C 13.25 2.351562 13.285156 2.289062 13.335938 2.238281 C 13.386719 2.1875 13.449219 2.152344 13.519531 2.140625 C 13.589844 2.125 13.660156 2.132812 13.726562 2.160156 C 13.792969 2.1875 13.847656 2.234375 13.886719 2.292969 C 13.929688 2.351562 13.949219 2.421875 13.949219 2.492188 C 13.949219 2.589844 13.910156 2.679688 13.84375 2.746094 C 13.777344 2.816406 13.683594 2.851562 13.589844 2.851562 Z M 13.589844 2.332031 C 13.558594 2.332031 13.527344 2.34375 13.5 2.359375 C 13.472656 2.378906 13.453125 2.402344 13.441406 2.433594 C 13.429688 2.460938 13.425781 2.492188 13.433594 2.523438 C 13.4375 2.554688 13.453125 2.585938 13.476562 2.605469 C 13.5 2.628906 13.527344 2.644531 13.558594 2.652344 C 13.589844 2.65625 13.621094 2.652344 13.652344 2.640625 C 13.679688 2.628906 13.703125 2.609375 13.722656 2.582031 C 13.738281 2.554688 13.75 2.523438 13.75 2.492188 C 13.75 2.449219 13.734375 2.410156 13.703125 2.378906 C 13.671875 2.351562 13.632812 2.332031 13.589844 2.332031 Z M 13.589844 2.332031 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        stroke: \"none\",\n        fillOpacity: \"1\",\n        fill: \"#5C1DB0\",\n        fillRule: \"nonzero\",\n        d: \"M 1.585938 5.300781 C 1.550781 5.300781 1.515625 5.292969 1.484375 5.273438 C 1.453125 5.253906 1.429688 5.222656 1.417969 5.191406 C 1.402344 5.15625 1.398438 5.121094 1.40625 5.085938 C 1.410156 5.050781 1.429688 5.015625 1.453125 4.988281 C 1.480469 4.964844 1.511719 4.945312 1.546875 4.9375 C 1.582031 4.929688 1.621094 4.933594 1.652344 4.945312 C 1.6875 4.960938 1.714844 4.984375 1.738281 5.011719 C 1.757812 5.042969 1.769531 5.078125 1.769531 5.113281 C 1.769531 5.136719 1.765625 5.164062 1.757812 5.183594 C 1.75 5.207031 1.734375 5.230469 1.71875 5.246094 C 1.703125 5.265625 1.679688 5.277344 1.660156 5.289062 C 1.636719 5.296875 1.613281 5.300781 1.585938 5.300781 Z M 1.585938 5.035156 C 1.570312 5.035156 1.554688 5.042969 1.542969 5.050781 C 1.527344 5.058594 1.519531 5.070312 1.511719 5.085938 C 1.503906 5.101562 1.503906 5.117188 1.507812 5.132812 C 1.511719 5.148438 1.519531 5.164062 1.527344 5.175781 C 1.539062 5.1875 1.554688 5.195312 1.570312 5.199219 C 1.585938 5.203125 1.601562 5.199219 1.617188 5.195312 C 1.632812 5.1875 1.644531 5.175781 1.65625 5.164062 C 1.664062 5.148438 1.667969 5.132812 1.667969 5.117188 C 1.667969 5.097656 1.660156 5.074219 1.644531 5.058594 C 1.628906 5.042969 1.609375 5.035156 1.585938 5.035156 Z M 1.585938 5.035156 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        stroke: \"none\",\n        fillOpacity: \"1\",\n        fill: \"#5C1DB0\",\n        fillRule: \"nonzero\",\n        d: \"M 1.761719 13.9375 C 1.621094 13.9375 1.488281 13.898438 1.375 13.820312 C 1.261719 13.746094 1.171875 13.636719 1.121094 13.511719 C 1.066406 13.382812 1.054688 13.242188 1.078125 13.109375 C 1.105469 12.976562 1.171875 12.851562 1.269531 12.753906 C 1.367188 12.65625 1.488281 12.589844 1.625 12.566406 C 1.757812 12.539062 1.898438 12.550781 2.023438 12.605469 C 2.152344 12.65625 2.261719 12.746094 2.335938 12.859375 C 2.414062 12.972656 2.453125 13.109375 2.453125 13.246094 C 2.453125 13.429688 2.378906 13.605469 2.25 13.734375 C 2.121094 13.863281 1.945312 13.9375 1.761719 13.9375 Z M 1.761719 12.9375 C 1.699219 12.9375 1.640625 12.953125 1.589844 12.988281 C 1.539062 13.023438 1.5 13.070312 1.476562 13.125 C 1.453125 13.183594 1.445312 13.246094 1.457031 13.304688 C 1.46875 13.363281 1.5 13.417969 1.542969 13.460938 C 1.585938 13.507812 1.640625 13.535156 1.699219 13.546875 C 1.757812 13.558594 1.820312 13.554688 1.878906 13.53125 C 1.933594 13.507812 1.984375 13.46875 2.015625 13.417969 C 2.050781 13.367188 2.066406 13.304688 2.066406 13.246094 C 2.066406 13.164062 2.035156 13.085938 1.976562 13.027344 C 1.917969 12.96875 1.839844 12.9375 1.761719 12.9375 Z M 1.761719 12.9375 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        stroke: \"none\",\n        fillOpacity: \"1\",\n        fill: \"#5C1DB0\",\n        fillRule: \"nonzero\",\n        d: \"M 2.050781 9.175781 L 1.128906 8.351562 C 1.113281 8.339844 1.101562 8.320312 1.089844 8.300781 C 1.082031 8.277344 1.074219 8.257812 1.074219 8.234375 C 1.074219 8.210938 1.078125 8.191406 1.085938 8.167969 C 1.09375 8.148438 1.109375 8.128906 1.125 8.113281 L 2.050781 7.175781 C 2.066406 7.160156 2.082031 7.148438 2.105469 7.140625 C 2.125 7.128906 2.144531 7.125 2.167969 7.125 C 2.1875 7.125 2.210938 7.128906 2.230469 7.140625 C 2.25 7.148438 2.269531 7.160156 2.285156 7.175781 C 2.316406 7.207031 2.332031 7.25 2.332031 7.292969 C 2.332031 7.335938 2.316406 7.378906 2.285156 7.410156 L 1.601562 8.097656 C 1.585938 8.117188 1.574219 8.132812 1.566406 8.15625 C 1.558594 8.175781 1.554688 8.199219 1.554688 8.222656 C 1.554688 8.242188 1.558594 8.265625 1.570312 8.285156 C 1.578125 8.304688 1.59375 8.324219 1.609375 8.339844 L 2.269531 8.925781 C 2.289062 8.941406 2.300781 8.960938 2.308594 8.980469 C 2.320312 9 2.324219 9.019531 2.328125 9.042969 C 2.328125 9.0625 2.324219 9.085938 2.316406 9.105469 C 2.308594 9.125 2.300781 9.144531 2.285156 9.160156 C 2.253906 9.195312 2.214844 9.214844 2.171875 9.21875 C 2.125 9.21875 2.082031 9.207031 2.050781 9.175781 Z M 2.050781 9.175781 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        stroke: \"none\",\n        fillOpacity: \"1\",\n        fill: \"#5C1DB0\",\n        fillRule: \"nonzero\",\n        d: \"M 14.375 9.175781 L 15.292969 8.351562 C 15.308594 8.339844 15.324219 8.320312 15.332031 8.300781 C 15.34375 8.277344 15.347656 8.257812 15.347656 8.234375 C 15.347656 8.210938 15.34375 8.191406 15.335938 8.167969 C 15.328125 8.148438 15.316406 8.128906 15.300781 8.113281 L 14.375 7.175781 C 14.359375 7.160156 14.339844 7.148438 14.320312 7.140625 C 14.300781 7.128906 14.277344 7.125 14.257812 7.125 C 14.234375 7.125 14.214844 7.128906 14.195312 7.140625 C 14.171875 7.148438 14.15625 7.160156 14.140625 7.175781 C 14.109375 7.207031 14.089844 7.25 14.089844 7.292969 C 14.089844 7.335938 14.109375 7.378906 14.140625 7.410156 L 14.824219 8.097656 C 14.839844 8.117188 14.851562 8.132812 14.859375 8.15625 C 14.867188 8.175781 14.871094 8.199219 14.871094 8.222656 C 14.871094 8.242188 14.863281 8.265625 14.855469 8.285156 C 14.84375 8.304688 14.832031 8.324219 14.816406 8.339844 L 14.148438 8.925781 C 14.132812 8.941406 14.121094 8.960938 14.109375 8.980469 C 14.101562 9 14.09375 9.019531 14.09375 9.042969 C 14.09375 9.0625 14.097656 9.085938 14.101562 9.105469 C 14.109375 9.125 14.121094 9.144531 14.136719 9.160156 C 14.152344 9.179688 14.167969 9.191406 14.1875 9.203125 C 14.207031 9.210938 14.230469 9.21875 14.25 9.21875 C 14.273438 9.222656 14.296875 9.21875 14.316406 9.210938 C 14.335938 9.203125 14.355469 9.191406 14.375 9.175781 Z M 14.375 9.175781 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"none\",\n        strokeWidth: \"1\",\n        strokeLinecap: \"round\",\n        strokeLinejoin: \"miter\",\n        stroke: \"#5C1DB0\",\n        strokeOpacity: \"1\",\n        strokeMiterlimit: \"10\",\n        d: \"M 22.727051 8.144531 L 8.547363 8.144531 C 7.617188 8.144531 6.870117 8.898926 6.870117 9.829102 L 6.870117 24.074707 C 6.870117 25.004883 7.617188 25.751953 8.547363 25.751953 L 22.727051 25.751953 C 23.657227 25.751953 24.404297 25.004883 24.404297 24.074707 L 24.404297 9.829102 C 24.404297 8.898926 23.657227 8.144531 22.727051 8.144531 Z M 22.727051 8.144531 \",\n        transform: \"matrix(0.533333,0,0,0.533333,0,0)\"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        stroke: \"none\",\n        fillOpacity: \"1\",\n        fill: \"#5C1DB0\",\n        fillRule: \"nonzero\",\n        d: \"M 10.371094 10.625 L 6.035156 10.625 C 5.949219 10.625 5.875 10.695312 5.875 10.785156 C 5.875 10.875 5.949219 10.949219 6.035156 10.949219 L 10.371094 10.949219 C 10.460938 10.949219 10.535156 10.875 10.535156 10.785156 C 10.535156 10.695312 10.460938 10.625 10.371094 10.625 Z M 10.371094 10.625 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        stroke: \"none\",\n        fillOpacity: \"1\",\n        fill: \"#5C1DB0\",\n        fillRule: \"nonzero\",\n        d: \"M 11.367188 11.316406 L 5.042969 11.316406 C 4.957031 11.316406 4.882812 11.390625 4.882812 11.476562 C 4.882812 11.566406 4.957031 11.640625 5.042969 11.640625 L 11.367188 11.640625 C 11.453125 11.640625 11.527344 11.566406 11.527344 11.476562 C 11.527344 11.390625 11.453125 11.316406 11.367188 11.316406 Z M 11.367188 11.316406 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        stroke: \"none\",\n        fillOpacity: \"1\",\n        fill: \"#5C1DB0\",\n        fillRule: \"nonzero\",\n        d: \"M 8.207031 7.613281 C 8.117188 7.613281 8.03125 7.585938 7.960938 7.539062 C 7.886719 7.488281 7.832031 7.417969 7.796875 7.339844 C 7.765625 7.257812 7.757812 7.167969 7.773438 7.085938 C 7.789062 7 7.832031 6.921875 7.894531 6.859375 C 7.957031 6.796875 8.035156 6.753906 8.121094 6.738281 C 8.207031 6.722656 8.292969 6.730469 8.375 6.765625 C 8.457031 6.796875 8.523438 6.855469 8.574219 6.925781 C 8.621094 7 8.644531 7.085938 8.644531 7.171875 C 8.644531 7.289062 8.597656 7.402344 8.515625 7.484375 C 8.433594 7.566406 8.320312 7.613281 8.207031 7.613281 Z M 8.207031 6.976562 C 8.167969 6.976562 8.128906 6.988281 8.097656 7.007812 C 8.0625 7.03125 8.039062 7.0625 8.023438 7.097656 C 8.007812 7.132812 8.003906 7.171875 8.011719 7.210938 C 8.019531 7.25 8.039062 7.285156 8.066406 7.3125 C 8.09375 7.339844 8.128906 7.355469 8.167969 7.363281 C 8.207031 7.371094 8.246094 7.367188 8.28125 7.351562 C 8.316406 7.339844 8.347656 7.3125 8.367188 7.28125 C 8.390625 7.25 8.402344 7.210938 8.402344 7.171875 C 8.402344 7.121094 8.382812 7.070312 8.34375 7.03125 C 8.308594 6.996094 8.257812 6.976562 8.207031 6.976562 Z M 8.207031 6.976562 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        stroke: \"none\",\n        fillOpacity: \"1\",\n        fill: \"#5C1DB0\",\n        fillRule: \"nonzero\",\n        d: \"M 9.132812 9.273438 L 7.277344 9.273438 C 7.070312 9.273438 6.867188 9.191406 6.722656 9.042969 C 6.574219 8.898438 6.492188 8.695312 6.492188 8.488281 L 6.492188 6.632812 C 6.492188 6.425781 6.574219 6.222656 6.722656 6.078125 C 6.867188 5.929688 7.070312 5.847656 7.277344 5.847656 L 9.132812 5.847656 C 9.339844 5.847656 9.539062 5.929688 9.6875 6.078125 C 9.832031 6.222656 9.917969 6.425781 9.917969 6.632812 L 9.917969 8.484375 C 9.917969 8.589844 9.898438 8.691406 9.855469 8.785156 C 9.816406 8.882812 9.761719 8.96875 9.6875 9.042969 C 9.613281 9.117188 9.527344 9.175781 9.433594 9.214844 C 9.335938 9.253906 9.234375 9.273438 9.132812 9.273438 Z M 7.277344 6.089844 C 7.132812 6.089844 6.996094 6.148438 6.894531 6.25 C 6.792969 6.351562 6.734375 6.488281 6.734375 6.632812 L 6.734375 8.484375 C 6.734375 8.628906 6.792969 8.765625 6.894531 8.871094 C 6.996094 8.972656 7.132812 9.027344 7.277344 9.03125 L 9.132812 9.03125 C 9.273438 9.027344 9.414062 8.972656 9.515625 8.871094 C 9.617188 8.769531 9.675781 8.628906 9.675781 8.484375 L 9.675781 6.632812 C 9.671875 6.488281 9.617188 6.351562 9.515625 6.25 C 9.414062 6.148438 9.273438 6.089844 9.132812 6.089844 Z M 7.277344 6.089844 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        stroke: \"none\",\n        fillOpacity: \"1\",\n        fill: \"#5C1DB0\",\n        fillRule: \"nonzero\",\n        d: \"M 9.132812 9.273438 L 7.277344 9.273438 C 7.070312 9.273438 6.867188 9.191406 6.722656 9.042969 C 6.574219 8.898438 6.492188 8.695312 6.492188 8.488281 L 6.492188 8.285156 L 7.683594 7.613281 L 8.027344 8.113281 L 9.917969 6.953125 L 9.917969 8.484375 C 9.917969 8.589844 9.898438 8.691406 9.859375 8.789062 C 9.820312 8.882812 9.761719 8.96875 9.6875 9.042969 C 9.617188 9.117188 9.527344 9.175781 9.433594 9.214844 C 9.335938 9.253906 9.234375 9.273438 9.132812 9.273438 Z M 6.734375 8.429688 L 6.734375 8.484375 C 6.734375 8.628906 6.792969 8.765625 6.894531 8.871094 C 6.996094 8.972656 7.132812 9.027344 7.277344 9.03125 L 9.132812 9.03125 C 9.273438 9.027344 9.414062 8.972656 9.515625 8.871094 C 9.617188 8.769531 9.675781 8.628906 9.675781 8.484375 L 9.675781 7.390625 L 7.957031 8.441406 L 7.609375 7.933594 Z M 6.734375 8.429688 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/blog-carousel/index.js\n\n\n\n\n\n\n\n\n\nconst blogCarouselModule = {\n  metadata: blog_carousel_module_namespaceObject,\n  conversionOutline: blog_carousel_conversion_outline_conversionOutline,\n  renderers: {\n    edit: blog_carousel_edit,\n    styles: blog_carousel_module_styles_ModuleStyles\n  },\n  defaultAttrs: {\n    ...blog_carousel_module_default_render_attributes_namespaceObject\n  },\n  settings: {\n    content: blog_carousel_settings_content,\n    design: blog_carousel_settings_design,\n    advanced: blog_carousel_settings_advanced\n  },\n  placeholderContent: {\n    ...blog_carousel_module_default_render_attributes_namespaceObject,\n    module: {\n      ...(blog_carousel_module_default_render_attributes_namespaceObject.module || {}),\n      decoration: {\n        ...(blog_carousel_module_default_render_attributes_namespaceObject.module?.decoration || {})\n      }\n    }\n  }\n};\n/* harmony default export */ const blog_carousel = (blogCarouselModule);\n;// ./packages/module-library/masonry-gallery/module.json\nconst masonry_gallery_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/masonry-gallery\",\"d4Shortcode\":\"dsm_masonry_gallery\",\"title\":\"Supreme Masonry Gallery\",\"titles\":\"Supreme Masonry Galleries\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/masonry-gallery\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"css\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"styleProps\":{\"text\":{\"selector\":\"{{selector}} .dsm-overlay-inner\"}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"gallery_ids\":{\"type\":\"object\",\"inlineEditor\":\"UploadGalleryContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"lazyload\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_sort_images\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_sort_images_order\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_order_sort\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"columns\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"gutter\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_overlay\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"overlay_title\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"overlay_caption\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"overlay_description\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_lightbox\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"lightbox_img_sizes\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"lightbox_title\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"lightbox_caption\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"overlay_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"overlay_inner_padding\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-overlay-inner\",\"settings\":{\"decoration\":{\"spacing\":{}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_horizontal_order\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_zoom_on_hover\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_masonry_transition_ms\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_masonry_stagger_ms\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_masonry_origin_left\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_masonry_viewport_margin\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_overlay_design_tab\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"typography\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_grid_design_tab\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"layout\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_lightbox_design_tab\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"typography\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"lightbox_overlay_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"lightbox_title_font\":{\"type\":\"object\",\"selector\":\".mfp-wrap.dsm-masonry-gallery-lightbox{{baseSelector}} .mfp-title\",\"settings\":{\"decoration\":{\"font\":{}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"lightbox_caption_font\":{\"type\":\"object\",\"selector\":\".mfp-wrap.dsm-masonry-gallery-lightbox{{baseSelector}} .dsm-image-caption\",\"settings\":{\"decoration\":{\"font\":{}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_title_font\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-overlay-title\",\"settings\":{\"decoration\":{\"font\":{}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_caption_font\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-overlay-caption\",\"settings\":{\"decoration\":{\"font\":{}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_desc_font\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-overlay-desc\",\"settings\":{\"decoration\":{\"font\":{}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"grid_item_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .grid .et_pb_image_wrap\",\"settings\":{\"decoration\":{\"border\":{},\"boxShadow\":{}}},\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .grid .et_pb_image_wrap\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .grid .et_pb_image_wrap\",\"useOverlay\":true}},\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/masonry-gallery/conversion-outline.js\n\nconst masonry_gallery_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border',\n      grid: 'grid_item_style.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow',\n      grid: 'grid_item_style.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    display_conditions: 'module.decoration.conditions',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    fonts: {\n      image_title: 'image_title_font.decoration.font',\n      image_caption: 'image_caption_font.decoration.font',\n      image_desc: 'image_desc_font.decoration.font'\n    },\n    text: 'module.advanced.text',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    height: 'module.decoration.sizing',\n    link_options: 'module.advanced.link',\n    margin_padding: 'module.decoration.spacing',\n    max_width: 'module.decoration.sizing',\n    module: 'module.advanced.htmlAttributes'\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    gallery_ids: 'gallery_ids.innerContent.*',\n    lazyload: 'lazyload.innerContent.*',\n    dsm_sort_images: 'dsm_sort_images.innerContent.*',\n    dsm_sort_images_order: 'dsm_sort_images_order.innerContent.*',\n    dsm_order_sort: 'dsm_order_sort.innerContent.*',\n    columns: 'columns.innerContent.*',\n    gutter: 'gutter.innerContent.*',\n    use_overlay: 'use_overlay.innerContent.*',\n    overlay_title: 'overlay_title.innerContent.*',\n    overlay_caption: 'overlay_caption.innerContent.*',\n    overlay_description: 'overlay_description.innerContent.*',\n    use_lightbox: 'use_lightbox.innerContent.*',\n    lightbox_img_sizes: 'lightbox_img_sizes.innerContent.*',\n    lightbox_title: 'lightbox_title.innerContent.*',\n    lightbox_caption: 'lightbox_caption.innerContent.*',\n    dsm_lightbox_design_tab: 'dsm_lightbox_design_tab.innerContent.*',\n    lightbox_overlay_color: 'lightbox_overlay_color.innerContent.*',\n    overlay_color: 'overlay_color.innerContent.*',\n    overlay_padding: 'overlay_inner_padding.decoration.spacing.*.padding',\n    use_horizontal_order: 'use_horizontal_order.innerContent.*',\n    use_zoom_on_hover: 'use_zoom_on_hover.innerContent.*',\n    use_zoon_on_hover: 'use_zoom_on_hover.innerContent.*',\n    dsm_masonry_transition_ms: 'dsm_masonry_transition_ms.innerContent.*',\n    dsm_masonry_stagger_ms: 'dsm_masonry_stagger_ms.innerContent.*',\n    dsm_masonry_origin_left: 'dsm_masonry_origin_left.innerContent.*',\n    dsm_masonry_viewport_margin: 'dsm_masonry_viewport_margin.innerContent.*',\n    dsm_overlay_design_tab: 'dsm_overlay_design_tab.innerContent.*',\n    dsm_grid_design_tab: 'dsm_grid_design_tab.innerContent.*',\n    image_title_level: 'image_title_font.decoration.font.font.*.headingLevel',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    overlay_padding: external_divi_conversion_namespaceObject.convertSpacing,\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  },\n  deprecatedMap: ['__gallery']\n};\n;// ./packages/module-library/masonry-gallery/module-default-render-attributes.json\nconst masonry_gallery_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"module\":{\"decoration\":{}},\"css\":{},\"gallery_ids\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"lazyload\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"dsm_sort_images\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"dsm_sort_images_order\":{\"innerContent\":{\"desktop\":{\"value\":\"title\"}}},\"dsm_order_sort\":{\"innerContent\":{\"desktop\":{\"value\":\"asc\"}}},\"columns\":{\"innerContent\":{\"desktop\":{\"value\":\"3\"}}},\"gutter\":{\"innerContent\":{\"desktop\":{\"value\":\"12\"}}},\"use_overlay\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"overlay_title\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"overlay_caption\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"overlay_description\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"use_lightbox\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"lightbox_img_sizes\":{\"innerContent\":{\"desktop\":{\"value\":\"full\"}}},\"lightbox_title\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"lightbox_caption\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"overlay_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"overlay_inner_padding\":{\"decoration\":{}},\"use_horizontal_order\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"use_zoom_on_hover\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"dsm_masonry_transition_ms\":{\"innerContent\":{\"desktop\":{\"value\":\"400\"}}},\"dsm_masonry_stagger_ms\":{\"innerContent\":{\"desktop\":{\"value\":\"0\"}}},\"dsm_masonry_origin_left\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"dsm_masonry_viewport_margin\":{\"innerContent\":{\"desktop\":{\"value\":\"15%\"}}},\"dsm_overlay_design_tab\":{\"innerContent\":{\"desktop\":{\"value\":\"typography\"}}},\"dsm_grid_design_tab\":{\"innerContent\":{\"desktop\":{\"value\":\"layout\"}}},\"dsm_lightbox_design_tab\":{\"innerContent\":{\"desktop\":{\"value\":\"typography\"}}},\"lightbox_overlay_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"lightbox_title_font\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{}}}}}},\"lightbox_caption_font\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{}}}}}},\"image_title_font\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"headingLevel\":\"h4\"}}}}}},\"image_caption_font\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{}}}}}},\"image_desc_font\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{}}}}}},\"grid_item_style\":{\"decoration\":{}}}');\n;// ./packages/module-library/masonry-gallery/masonry-gallery-vb-default-attrs.js\n/**\n * Visual Builder `defaultAttr` slices — used only by settings-content.js and settings-design.js.\n *\n * @package DiviSupreme\n */\n\nconst mgContentFd = {\n  gallery_ids: {\n    desktop: {\n      value: ''\n    }\n  },\n  lazyload: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  dsm_sort_images: {\n    desktop: {\n      value: 'on'\n    }\n  },\n  dsm_sort_images_order: {\n    desktop: {\n      value: 'title'\n    }\n  },\n  dsm_order_sort: {\n    desktop: {\n      value: 'asc'\n    }\n  },\n  use_overlay: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  overlay_title: {\n    desktop: {\n      value: 'on'\n    }\n  },\n  overlay_caption: {\n    desktop: {\n      value: 'on'\n    }\n  },\n  overlay_description: {\n    desktop: {\n      value: 'on'\n    }\n  },\n  use_lightbox: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  lightbox_img_sizes: {\n    desktop: {\n      value: 'full'\n    }\n  },\n  lightbox_title: {\n    desktop: {\n      value: 'on'\n    }\n  },\n  lightbox_caption: {\n    desktop: {\n      value: 'on'\n    }\n  },\n  use_horizontal_order: {\n    desktop: {\n      value: 'on'\n    }\n  },\n  use_zoom_on_hover: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  dsm_masonry_transition_ms: {\n    desktop: {\n      value: '400'\n    }\n  },\n  dsm_masonry_stagger_ms: {\n    desktop: {\n      value: '0'\n    }\n  },\n  dsm_masonry_origin_left: {\n    desktop: {\n      value: 'on'\n    }\n  },\n  dsm_masonry_viewport_margin: {\n    desktop: {\n      value: '15%'\n    }\n  }\n};\nconst mgDesignFd = {\n  columns: {\n    desktop: {\n      value: '3'\n    }\n  },\n  gutter: {\n    desktop: {\n      value: '12'\n    }\n  },\n  dsm_overlay_design_tab: {\n    desktop: {\n      value: 'typography'\n    }\n  },\n  dsm_grid_design_tab: {\n    desktop: {\n      value: 'layout'\n    }\n  },\n  dsm_lightbox_design_tab: {\n    desktop: {\n      value: 'typography'\n    }\n  },\n  lightbox_overlay_color: {\n    desktop: {\n      value: ''\n    }\n  },\n  overlay_color: {\n    desktop: {\n      value: ''\n    }\n  }\n};\n;// ./packages/module-library/masonry-gallery/settings-content.js\n\n\n\n\n\n\n\nfunction masonry_gallery_settings_content_SettingsContent({\n  attrs = {}\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _getAttrByMode4;\n  const sortOn = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_sort_images?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'on';\n  const sortOrder = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_sort_images_order?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'title';\n  const useOverlay = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_overlay?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'off';\n  const useLightbox = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_lightbox?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : 'off';\n  const imageSizesOptions = Object.entries(diviSupreme5.imageSizes || {}).reduce((acc, [key, value]) => {\n    acc[key] = {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)(value, 'dsm-supreme-modules-pro-for-divi')\n    };\n    return acc;\n  }, {});\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"gallery\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Gallery', 'dsm-supreme-modules-pro-for-divi'),\n    preset: \"content\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"gallery_ids.innerContent\",\n    defaultAttr: mgContentFd.gallery_ids,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Images', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      responsive: true\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadGalleryContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"lazyload.innerContent\",\n    defaultAttr: mgContentFd.lazyload,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Lazy Load Images', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('When enabled, images load as they enter the viewport. Test with your caching setup before using on production.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"layout\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Layout & Sort', 'dsm-supreme-modules-pro-for-divi'),\n    preset: \"default\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_sort_images.innerContent\",\n    defaultAttr: mgContentFd.dsm_sort_images,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Sort Images', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_sort_images_order.innerContent\",\n    defaultAttr: mgContentFd.dsm_sort_images_order,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Sort By', 'dsm-supreme-modules-pro-for-divi'),\n    visible: sortOn === 'on'\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      title: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Filename', 'dsm-supreme-modules-pro-for-divi')\n      },\n      date: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Date', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rand: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Random', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_order_sort.innerContent\",\n    defaultAttr: mgContentFd.dsm_order_sort,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Date Order', 'dsm-supreme-modules-pro-for-divi'),\n    visible: sortOn === 'on' && sortOrder === 'date'\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      asc: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Ascending', 'dsm-supreme-modules-pro-for-divi')\n      },\n      desc: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Descending', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_horizontal_order.innerContent\",\n    defaultAttr: mgContentFd.use_horizontal_order,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Horizontal Order', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Keeps items in left-to-right order when reflowing the grid.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_masonry_transition_ms.innerContent\",\n    defaultAttr: mgContentFd.dsm_masonry_transition_ms,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Layout Transition', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('How long each tile animates when its grid position changes (Masonry transitionDuration). Responsive: uses tablet/phone values below 980px and 767px (same as Divi column breakpoints). Set to 0 for no motion.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      responsive: true\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 2000,\n    step: 50,\n    defaultUnit: '',\n    allowedUnits: ['']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_masonry_stagger_ms.innerContent\",\n    defaultAttr: mgContentFd.dsm_masonry_stagger_ms,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Item Stagger', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Delay between each tile when animating position (Masonry stagger). Responsive with the same breakpoints as Layout Transition. Only visible when Layout Transition is greater than 0.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      responsive: true\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 200,\n    step: 5,\n    defaultUnit: '',\n    allowedUnits: ['']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_masonry_origin_left.innerContent\",\n    defaultAttr: mgContentFd.dsm_masonry_origin_left,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Columns From Left', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('When off, columns fill from the right (Masonry originLeft). Useful for RTL layouts.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_masonry_viewport_margin.innerContent\",\n    defaultAttr: mgContentFd.dsm_masonry_viewport_margin,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Viewport Margin', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('How far below the fold Masonry may start (percentage of viewport height). Larger values initialize the layout earlier as the user scrolls.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: \"%\",\n    allowedUnits: ['%']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_zoom_on_hover.innerContent\",\n    defaultAttr: mgContentFd.use_zoom_on_hover,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom Image On Hover', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"overlay\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay', 'dsm-supreme-modules-pro-for-divi'),\n    preset: \"default\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_overlay.innerContent\",\n    defaultAttr: mgContentFd.use_overlay,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enable Overlay', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show a hover overlay on each image with title, caption, and/or description.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"overlay_title.innerContent\",\n    defaultAttr: mgContentFd.overlay_title,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Title', 'dsm-supreme-modules-pro-for-divi'),\n    visible: useOverlay === 'on'\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"overlay_caption.innerContent\",\n    defaultAttr: mgContentFd.overlay_caption,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Caption', 'dsm-supreme-modules-pro-for-divi'),\n    visible: useOverlay === 'on'\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"overlay_description.innerContent\",\n    defaultAttr: mgContentFd.overlay_description,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Description', 'dsm-supreme-modules-pro-for-divi'),\n    visible: useOverlay === 'on'\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"lightbox\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Lightbox', 'dsm-supreme-modules-pro-for-divi'),\n    preset: \"default\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_lightbox.innerContent\",\n    defaultAttr: mgContentFd.use_lightbox,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enable Lightbox', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Open images in a lightbox when clicked (Magnific Popup).', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"lightbox_img_sizes.innerContent\",\n    defaultAttr: mgContentFd.lightbox_img_sizes,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Lightbox Image Size', 'dsm-supreme-modules-pro-for-divi'),\n    visible: useLightbox === 'on'\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: imageSizesOptions\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"lightbox_title.innerContent\",\n    defaultAttr: mgContentFd.lightbox_title,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Title In Lightbox', 'dsm-supreme-modules-pro-for-divi'),\n    visible: useLightbox === 'on'\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"lightbox_caption.innerContent\",\n    defaultAttr: mgContentFd.lightbox_caption,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Caption In Lightbox', 'dsm-supreme-modules-pro-for-divi'),\n    visible: useLightbox === 'on'\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, null));\n}\n/* harmony default export */ const masonry_gallery_settings_content = (masonry_gallery_settings_content_SettingsContent);\n;// ./packages/module-library/masonry-gallery/settings-design.js\n\n\n\n\n\n\n\nconst gridDesignTabOptions = {\n  layout: {\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Layout', 'dsm-supreme-modules-pro-for-divi')\n  },\n  items: {\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Items', 'dsm-supreme-modules-pro-for-divi')\n  }\n};\nconst overlayDesignTabOptions = {\n  typography: {\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi')\n  },\n  style: {\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Color & Spacing', 'dsm-supreme-modules-pro-for-divi')\n  }\n};\nconst lightboxDesignTabOptions = {\n  typography: {\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi')\n  },\n  style: {\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Backdrop', 'dsm-supreme-modules-pro-for-divi')\n  }\n};\nfunction masonry_gallery_settings_design_SettingsDesign({\n  attrs = {}\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _getAttrByMode4, _getAttrByMode5;\n  const useOverlay = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_overlay?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'off';\n  const useLightbox = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_lightbox?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'off';\n  const overlayDesignTab = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_overlay_design_tab?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'typography';\n  const gridDesignTab = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_grid_design_tab?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : 'layout';\n  const lightboxDesignTab = (_getAttrByMode5 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_lightbox_design_tab?.innerContent)) !== null && _getAttrByMode5 !== void 0 ? _getAttrByMode5 : 'typography';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"grid\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Grid', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_grid_design_tab.innerContent\",\n    defaultAttr: mgDesignFd.dsm_grid_design_tab\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: gridDesignTabOptions,\n    tabUi: true,\n    showLabel: true\n  })), 'layout' === gridDesignTab && /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"columns.innerContent\",\n    defaultAttr: mgDesignFd.columns,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Columns', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      responsive: true\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 12,\n    step: 1,\n    defaultUnit: '',\n    allowedUnits: ['']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"gutter.innerContent\",\n    defaultAttr: mgDesignFd.gutter,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Column Gap', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      responsive: true\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 200,\n    step: 1,\n    defaultUnit: '',\n    allowedUnits: ['']\n  }))), 'items' === gridDesignTab && /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"grid_item_style.decoration.border\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"grid_item_style.decoration.boxShadow\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Box Shadow', 'dsm-supreme-modules-pro-for-divi')\n  }))), useOverlay === 'on' && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"overlay\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_overlay_design_tab.innerContent\",\n    defaultAttr: mgDesignFd.dsm_overlay_design_tab\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: overlayDesignTabOptions,\n    tabUi: true,\n    showLabel: true\n  })), 'typography' === overlayDesignTab && /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"image_title_font.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: true\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"image_caption_font.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Caption', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"image_desc_font.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Description', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  })), 'style' === overlayDesignTab && /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"overlay_color.innerContent\",\n    defaultAttr: mgDesignFd.overlay_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay Color', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"overlay_inner_padding.decoration.spacing\",\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }))), useLightbox === 'on' && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"lightboxDesign\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Lightbox', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_lightbox_design_tab.innerContent\",\n    defaultAttr: mgDesignFd.dsm_lightbox_design_tab\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: lightboxDesignTabOptions,\n    tabUi: true,\n    showLabel: true\n  })), 'typography' === lightboxDesignTab && /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"lightbox_title_font.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"lightbox_caption_font.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Caption', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  })), 'style' === lightboxDesignTab && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"lightbox_overlay_color.innerContent\",\n    defaultAttr: mgDesignFd.lightbox_overlay_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Backdrop Overlay', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background behind the lightbox image (Magnific Popup .mfp-bg). Leave empty for the default dark overlay.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const masonry_gallery_settings_design = (masonry_gallery_settings_design_SettingsDesign);\n;// ./packages/module-library/masonry-gallery/settings-advanced.js\n\nfunction masonry_gallery_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_masonry_gallery\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const masonry_gallery_settings_advanced = (masonry_gallery_settings_advanced_SettingsAdvanced);\n// EXTERNAL MODULE: ./node_modules/masonry-layout/masonry.js\nvar masonry = __webpack_require__(\"./node_modules/masonry-layout/masonry.js\");\nvar masonry_default = /*#__PURE__*/__webpack_require__.n(masonry);\n// EXTERNAL MODULE: ./node_modules/imagesloaded/imagesloaded.js\nvar imagesloaded = __webpack_require__(\"./node_modules/imagesloaded/imagesloaded.js\");\nvar imagesloaded_default = /*#__PURE__*/__webpack_require__.n(imagesloaded);\n;// ./packages/module-library/masonry-gallery/masonry-gallery-grid-css.js\n/**\n * Read innerContent range string at breakpoint (fallback chain).\n *\n * @param {Object|undefined} elAttr Attribute object with innerContent.\n * @param {string}           breakpoint desktop|tablet|phone.\n * @param {string}           state      value|hover.\n * @param {string}           fallback   Default numeric string.\n * @return {string}\n */\nfunction mgReadRangeInnerContent(elAttr, breakpoint, state = 'value', fallback = '3') {\n  const ic = elAttr?.innerContent;\n  if (!ic || typeof ic !== 'object') {\n    return fallback;\n  }\n  const order = [breakpoint, 'desktop', 'tablet', 'phone'].filter((v, i, a) => a.indexOf(v) === i);\n  for (const bp of order) {\n    const node = ic[bp];\n    if (!node || typeof node !== 'object') {\n      continue;\n    }\n    if (state !== 'value' && node[state]?.value !== undefined) {\n      const v = node[state].value;\n      if (v !== undefined && v !== null && '' !== String(v)) {\n        return String(v);\n      }\n    }\n    const nv = node.value;\n    if (nv !== undefined && nv !== null && '' !== String(nv)) {\n      return String(nv);\n    }\n  }\n  return fallback;\n}\n\n/**\n * @param {string} raw Raw numeric string.\n * @param {number} fb  Fallback int.\n * @return {number}\n */\nfunction mgParsePositiveInt(raw, fb) {\n  const n = Number.parseInt(String(raw).replace(/\\D/g, ''), 10);\n  return Number.isFinite(n) && n > 0 ? n : fb;\n}\n\n/**\n * Gutter in px (0 allowed). Falls back when empty/invalid.\n *\n * @param {unknown} raw Range innerContent value.\n * @param {number}    fb  Fallback px.\n * @return {number}\n */\nfunction mgParseGutterPx(raw, fb = 12) {\n  const n = Number.parseInt(String(raw !== null && raw !== void 0 ? raw : '').replace(/\\D/g, ''), 10);\n  return Number.isFinite(n) && n >= 0 ? n : fb;\n}\n\n/**\n * CSS width for each column (grid-sizer / grid-item) matching PHP/ModuleStyles calc.\n *\n * @param {number} cols  Column count (>=1).\n * @param {number} gutPx Gutter in px.\n * @return {string}\n */\nfunction mgGridColumnWidthCalc(cols, gutPx) {\n  const c = Math.max(1, cols);\n  const g = Math.max(0, gutPx);\n  return `calc((100% - (${c} - 1) * ${g}px) / ${c})`;\n}\n\n/**\n * Masonry `transitionDuration` (Outlayer). 0 = no animation; else `${ms}ms` (max 5000).\n *\n * @param {unknown} raw Range innerContent value (milliseconds).\n * @return {number|string} 0 or e.g. \"400ms\"\n */\nfunction mgMasonryTransitionDuration(raw) {\n  const n = Number.parseInt(String(raw !== null && raw !== void 0 ? raw : '').replace(/\\D/g, ''), 10);\n  if (!Number.isFinite(n) || n <= 0) {\n    return 0;\n  }\n  return `${Math.min(n, 5000)}ms`;\n}\n\n/**\n * Masonry `stagger` delay in ms between items (Outlayer).\n *\n * @param {unknown} raw Range innerContent value.\n * @return {number}\n */\nfunction mgMasonryStaggerMs(raw) {\n  const n = Number.parseInt(String(raw !== null && raw !== void 0 ? raw : '').replace(/\\D/g, ''), 10);\n  if (!Number.isFinite(n) || n < 0) {\n    return 0;\n  }\n  return Math.min(n, 500);\n}\n\n/** Match Divi module layout breakpoints (see MasonryGallery.php grid styles). */\nconst MG_VIEWPORT_PHONE_MAX = 767;\nconst MG_VIEWPORT_TABLET_MAX = 980;\n\n/**\n * @return {'desktop'|'tablet'|'phone'}\n */\nfunction mgCurrentViewportBucket() {\n  if (typeof window === 'undefined' || typeof window.innerWidth !== 'number') {\n    return 'desktop';\n  }\n  const w = window.innerWidth;\n  if (w <= MG_VIEWPORT_PHONE_MAX) {\n    return 'phone';\n  }\n  if (w <= MG_VIEWPORT_TABLET_MAX) {\n    return 'tablet';\n  }\n  return 'desktop';\n}\n\n/**\n * @param {{ transition?: { d?: number, t?: number, p?: number }, stagger?: { d?: number, t?: number, p?: number } }} motion From `data-dsm-mg-motion` JSON.\n * @param {'desktop'|'tablet'|'phone'}                                                                                    bucket\n * @return {{ transitionDuration: number|string, stagger: number }}\n */\nfunction mgMasonryMotionOptionsForBucket(motion, bucket) {\n  var _motion$transition, _motion$stagger, _ref, _ref2, _tr$p, _ref3, _tr$t, _tr$d, _ref4, _ref5, _st$p, _ref6, _st$t, _st$d;\n  const tr = (_motion$transition = motion?.transition) !== null && _motion$transition !== void 0 ? _motion$transition : {};\n  const st = (_motion$stagger = motion?.stagger) !== null && _motion$stagger !== void 0 ? _motion$stagger : {};\n  const tMs = bucket === 'phone' ? (_ref = (_ref2 = (_tr$p = tr.p) !== null && _tr$p !== void 0 ? _tr$p : tr.t) !== null && _ref2 !== void 0 ? _ref2 : tr.d) !== null && _ref !== void 0 ? _ref : 400 : bucket === 'tablet' ? (_ref3 = (_tr$t = tr.t) !== null && _tr$t !== void 0 ? _tr$t : tr.d) !== null && _ref3 !== void 0 ? _ref3 : 400 : (_tr$d = tr.d) !== null && _tr$d !== void 0 ? _tr$d : 400;\n  const sMs = bucket === 'phone' ? (_ref4 = (_ref5 = (_st$p = st.p) !== null && _st$p !== void 0 ? _st$p : st.t) !== null && _ref5 !== void 0 ? _ref5 : st.d) !== null && _ref4 !== void 0 ? _ref4 : 0 : bucket === 'tablet' ? (_ref6 = (_st$t = st.t) !== null && _st$t !== void 0 ? _st$t : st.d) !== null && _ref6 !== void 0 ? _ref6 : 0 : (_st$d = st.d) !== null && _st$d !== void 0 ? _st$d : 0;\n  return {\n    transitionDuration: mgMasonryTransitionDuration(tMs),\n    stagger: mgMasonryStaggerMs(sMs)\n  };\n}\n\n/**\n * Parse `data-dsm-mg-motion` (PHP). Legacy: duplicate desktop `data-transition-ms` / `data-stagger-ms`.\n *\n * @param {Element} grid Grid root.\n * @return {{ transition: { d: number, t: number, p: number }, stagger: { d: number, t: number, p: number } }}\n */\nfunction mgParseMotionDataset(grid) {\n  var _grid$getAttribute, _grid$getAttribute2;\n  const legacyT = Number.parseInt(String((_grid$getAttribute = grid.getAttribute('data-transition-ms')) !== null && _grid$getAttribute !== void 0 ? _grid$getAttribute : '400').replace(/\\D/g, ''), 10);\n  const legacyS = Number.parseInt(String((_grid$getAttribute2 = grid.getAttribute('data-stagger-ms')) !== null && _grid$getAttribute2 !== void 0 ? _grid$getAttribute2 : '0').replace(/\\D/g, ''), 10);\n  const t0 = Number.isFinite(legacyT) && legacyT >= 0 ? legacyT : 400;\n  const s0 = Number.isFinite(legacyS) && legacyS >= 0 ? legacyS : 0;\n  const fallback = {\n    transition: {\n      d: t0,\n      t: t0,\n      p: t0\n    },\n    stagger: {\n      d: s0,\n      t: s0,\n      p: s0\n    }\n  };\n  const raw = grid.getAttribute('data-dsm-mg-motion');\n  if (!raw || !raw.trim()) {\n    return fallback;\n  }\n  try {\n    const parsed = JSON.parse(raw);\n    if (parsed?.transition && parsed?.stagger) {\n      return parsed;\n    }\n  } catch (e) {\n    // Ignore invalid JSON.\n  }\n  return fallback;\n}\n\n/**\n * Base order class for this module instance from StyleContainer `orderClass`.\n * Third-party Divi modules use `dsm_masonry_gallery_0`, not `et_pb_dsm_masonry_gallery_*`.\n * Used to scope Magnific Popup `.mfp-bg` / `.mfp-wrap` so multiple galleries do not share lightbox CSS.\n *\n * @param {string|undefined} orderClass May include `.et-db #et-boc .et-l` prefix.\n * @return {string} Dot-prefixed class or empty.\n */\nfunction mgMasonryLightboxBaseSelectorFromOrderClass(orderClass) {\n  if (!orderClass || typeof orderClass !== 'string') {\n    return '';\n  }\n  const m = orderClass.match(/\\.((?:dsm_masonry_gallery|et_pb_dsm_masonry_gallery)[0-9_a-z]+)/i);\n  return m ? `.${m[1]}` : '';\n}\n\n/**\n * Order-class token on the module wrapper (no leading dot), e.g. `dsm_masonry_gallery_0`.\n *\n * @param {Element|null|undefined} gridEl Root `.dsm-gallery.grid` element.\n * @return {string}\n */\nfunction mgMasonryLightboxScopeClassFromModuleEl(gridEl) {\n  if (!gridEl || typeof gridEl.closest !== 'function') {\n    return '';\n  }\n  const mod = gridEl.closest('.et_pb_module');\n  if (!mod) {\n    return '';\n  }\n  const scope = [...mod.classList].find(c => /^dsm_masonry_gallery/i.test(c) || /^et_pb_dsm_masonry_gallery/i.test(c));\n  return scope || '';\n}\n\n/**\n * Magnific `mainClass` including per-instance order class on `.mfp-bg` / `.mfp-wrap`.\n * Prefer `data-dsm-mg-lb-scope` (set in PHP) so JS matches CSS without DOM walks.\n *\n * @param {Element|null|undefined} gridEl Root `.dsm-gallery.grid` element.\n * @return {string}\n */\nfunction mgMasonryLightboxMainClassFromGridEl(gridEl) {\n  const base = 'mfp-fade dsm-masonry-gallery-lightbox';\n  if (!gridEl || typeof gridEl.getAttribute !== 'function') {\n    return base;\n  }\n  const fromAttr = gridEl.getAttribute('data-dsm-mg-lb-scope');\n  if (fromAttr && String(fromAttr).trim() !== '') {\n    return `${base} ${String(fromAttr).trim()}`;\n  }\n  const scope = mgMasonryLightboxScopeClassFromModuleEl(gridEl);\n  return scope ? `${base} ${scope}` : base;\n}\n;// ./packages/module-library/masonry-gallery/module-styles.js\n\n\n\n\n\n\n/**\n * Overlay background (accent fallback matches PHP).\n *\n * @param {Object} attrs Module attrs.\n * @return {string}\n */\nfunction overlayBgResolved(attrs) {\n  const raw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.overlay_color?.innerContent);\n  if (raw && String(raw).trim() !== '') {\n    return String(raw);\n  }\n  if (typeof window !== 'undefined' && window?.divi?.themeColors?.accent) {\n    return String(window.divi.themeColors.accent);\n  }\n  return '#2ea3f2';\n}\n\n/**\n * @param {Object} attrs Module attrs.\n * @param {Object} params CommonStyle params (includes breakpoint).\n * @return {string} CSS declaration string.\n */\nfunction gutterWidthDecl(attrs, params) {\n  const bp = params?.breakpoint || 'desktop';\n  const g = mgParsePositiveInt(mgReadRangeInnerContent(attrs?.gutter, bp, 'value', '12'), 12);\n  const d = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string'\n  });\n  d.add('width', `${g}px`);\n  return d.value;\n}\n\n/**\n * @param {Object} attrs Module attrs.\n * @param {Object} params CommonStyle params.\n * @return {string}\n */\nfunction gridItemWidthDecl(attrs, params) {\n  const bp = params?.breakpoint || 'desktop';\n  const cols = mgParsePositiveInt(mgReadRangeInnerContent(attrs?.columns, bp, 'value', '3'), 3);\n  const g = mgParsePositiveInt(mgReadRangeInnerContent(attrs?.gutter, bp, 'value', '12'), 12);\n  const d = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string'\n  });\n  d.add('width', `calc((100% - (${cols} - 1) * ${g}px) / ${cols})`);\n  return d.value;\n}\n\n/**\n * @param {Object} attrs Module attrs.\n * @param {Object} params CommonStyle params.\n * @return {string}\n */\nfunction gridItemMarginBottomDecl(attrs, params) {\n  const bp = params?.breakpoint || 'desktop';\n  const g = mgParsePositiveInt(mgReadRangeInnerContent(attrs?.gutter, bp, 'value', '12'), 12);\n  const d = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string'\n  });\n  d.add('margin-bottom', `${g}px`);\n  return d.value;\n}\nconst masonry_gallery_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  const oc = orderClass;\n  const lbBaseSel = mgMasonryLightboxBaseSelectorFromOrderClass(orderClass);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextStyle, {\n    selector: orderClass,\n    attr: attrs?.module?.advanced?.text\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'grid_item_style'\n  }), elements.style({\n    attrName: 'image_title_font'\n  }), elements.style({\n    attrName: 'image_caption_font'\n  }), elements.style({\n    attrName: 'image_desc_font'\n  }), elements.style({\n    attrName: 'lightbox_title_font'\n  }), elements.style({\n    attrName: 'lightbox_caption_font'\n  }), elements.style({\n    attrName: 'overlay_inner_padding'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${oc} .grid-item .dsm-overlay`,\n    attr: attrs?.overlay_color?.innerContent,\n    declarationFunction: () => {\n      const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n        returnType: 'string',\n        important: {\n          background: true\n        }\n      });\n      declarations.add('background', overlayBgResolved(attrs));\n      return declarations.value;\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${oc} .gutter-sizer`,\n    attr: attrs?.gutter,\n    declarationFunction: p => gutterWidthDecl(attrs, p)\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${oc} .grid-item, ${oc} .grid-sizer`,\n    attr: attrs?.columns,\n    declarationFunction: p => gridItemWidthDecl(attrs, p)\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${oc} .grid-item`,\n    attr: attrs?.gutter,\n    declarationFunction: p => gridItemMarginBottomDecl(attrs, p)\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.mfp-bg.dsm-masonry-gallery-lightbox${lbBaseSel}`,\n    attr: attrs?.lightbox_overlay_color?.innerContent,\n    declarationFunction: () => {\n      const raw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.lightbox_overlay_color?.innerContent);\n      if (!raw || String(raw).trim() === '') {\n        return '';\n      }\n      const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n        returnType: 'string',\n        important: {\n          background: true\n        }\n      });\n      declarations.add('background', String(raw));\n      return declarations.value;\n    }\n  }));\n};\n;// ./packages/module-library/masonry-gallery/masonry-gallery-progressive-layout.js\n/**\n * Progressive Masonry relayout for lazy-loaded / delayed images (native lazy, LiteSpeed, etc.).\n *\n * @package DiviSupreme\n */\n\n/**\n * Debounce helper.\n *\n * @param {Function} fn  Callback.\n * @param {number}   wait Ms.\n * @return {Function}\n */\nfunction dsmMgDebounce(fn, wait) {\n  /** @type {ReturnType<typeof setTimeout>|undefined} */\n  let t;\n  return function debounced(...args) {\n    clearTimeout(t);\n    t = setTimeout(() => {\n      fn.apply(this, args);\n    }, wait);\n  };\n}\n\n/**\n * True when an image has measurable dimensions (loaded or cached).\n *\n * @param {HTMLImageElement} img Image node.\n * @return {boolean}\n */\nfunction dsmMgImageHasDimensions(img) {\n  return img.naturalWidth > 0 && img.naturalHeight > 0;\n}\n\n/**\n * Bind load/error handlers so late-loading images trigger relayout.\n *\n * @param {HTMLElement} grid       Gallery grid root.\n * @param {Function}    relayoutFn Debounced layout callback.\n * @return {void}\n */\nfunction dsmMgAttachProgressiveImageRelayout(grid, relayoutFn) {\n  const imgs = grid.querySelectorAll('img');\n  imgs.forEach(img => {\n    if (img.dataset.dsmMgLoadBound === '1') {\n      return;\n    }\n    img.dataset.dsmMgLoadBound = '1';\n    const onImgEvent = () => {\n      if (dsmMgImageHasDimensions(img)) {\n        relayoutFn();\n      }\n    };\n    img.addEventListener('load', onImgEvent, {\n      passive: true\n    });\n    img.addEventListener('error', onImgEvent, {\n      passive: true\n    });\n    if (img.complete && dsmMgImageHasDimensions(img)) {\n      onImgEvent();\n    }\n  });\n}\n\n/** Attribute changes on images / lazy-load hooks that should trigger Masonry relayout. */\nconst DSM_MG_LAZY_IMAGE_ATTRS = new Set(['src', 'srcset', 'sizes', 'class', 'data-src', 'data-lazyloaded', 'data-ll-status', 'width', 'height']);\n\n/**\n * Masonry positions `.grid-item` with inline `style` — never treat those as image-load signals.\n *\n * @param {Node} target Mutation target.\n * @return {boolean}\n */\nfunction dsmMgMutationTargetShouldRelayout(target) {\n  if (!(target instanceof Element)) {\n    return false;\n  }\n  if (target.classList.contains('grid-item')) {\n    return false;\n  }\n  return target instanceof HTMLImageElement;\n}\n\n/**\n * Watch lazy-loader attribute swaps (e.g. data-src → src, data-ll-status).\n *\n * @param {HTMLElement} grid       Gallery grid root.\n * @param {Function}    relayoutFn Debounced layout callback.\n * @return {Function} Disconnect observer.\n */\nfunction dsmMgObserveLazyImageMutations(grid, relayoutFn) {\n  if (typeof MutationObserver === 'undefined') {\n    return () => {};\n  }\n  let rafId = 0;\n  const obs = new MutationObserver(mutations => {\n    const shouldRelayout = mutations.some(mutation => {\n      if (mutation.type !== 'attributes') {\n        return false;\n      }\n      const name = mutation.attributeName || '';\n      if (!DSM_MG_LAZY_IMAGE_ATTRS.has(name)) {\n        return false;\n      }\n      return dsmMgMutationTargetShouldRelayout(mutation.target);\n    });\n    if (!shouldRelayout) {\n      return;\n    }\n    if (rafId) {\n      return;\n    }\n    rafId = window.requestAnimationFrame(() => {\n      rafId = 0;\n      relayoutFn();\n    });\n  });\n  obs.observe(grid, {\n    subtree: true,\n    attributes: true,\n    attributeFilter: [...DSM_MG_LAZY_IMAGE_ATTRS]\n  });\n  return () => {\n    if (rafId) {\n      window.cancelAnimationFrame(rafId);\n    }\n    obs.disconnect();\n  };\n}\n\n/**\n * Wire imagesLoaded progress/always + native hooks for progressive Masonry layout.\n *\n * @param {Object}   options\n * @param {HTMLElement} options.grid\n * @param {Function} options.ensureMasonry Creates Masonry instance if missing.\n * @param {Function} options.relayout      Calls layout on existing instance.\n * @param {import('imagesloaded')} options.imagesLoaded imagesLoaded factory.\n * @return {Function} Cleanup.\n */\nfunction dsmMgBindImagesLoadedProgressiveLayout({\n  grid,\n  ensureMasonry,\n  relayout,\n  imagesLoaded: imagesLoadedFactory\n}) {\n  const debouncedRelayout = dsmMgDebounce(() => {\n    ensureMasonry();\n    relayout();\n  }, 80);\n  const imgLoad = imagesLoadedFactory(grid);\n  imgLoad.on('progress', debouncedRelayout);\n  dsmMgAttachProgressiveImageRelayout(grid, debouncedRelayout);\n  const disconnectObserver = dsmMgObserveLazyImageMutations(grid, debouncedRelayout);\n  imgLoad.on('always', () => {\n    debouncedRelayout();\n    // Stop watching attribute churn; per-image load/error handlers cover late lazy loaders.\n    disconnectObserver();\n  });\n  const onWindowLoad = () => {\n    debouncedRelayout();\n  };\n  window.addEventListener('load', onWindowLoad, {\n    once: true,\n    passive: true\n  });\n\n  // First pass: reserve columns, then relayout as dimensions arrive.\n  ensureMasonry();\n  debouncedRelayout();\n  return () => {\n    disconnectObserver();\n    window.removeEventListener('load', onWindowLoad);\n  };\n}\n;// ./packages/module-library/masonry-gallery/edit.js\nfunction masonry_gallery_edit_extends() {\n  return masonry_gallery_edit_extends = Object.assign ? Object.assign.bind() : function (n) {\n    for (var e = 1; e < arguments.length; e++) {\n      var t = arguments[e];\n      for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n    }\n    return n;\n  }, masonry_gallery_edit_extends.apply(null, arguments);\n}\n\n\n\n\n\n\n\n\n\n\n\n\n/**\n * desktop / tablet / phone bucket for Masonry motion (matches Divi breakpoints).\n *\n * @return {'desktop'|'tablet'|'phone'}\n */\nfunction useMgViewportBucket() {\n  const [bucket, setBucket] = (0,external_vendor_React_.useState)(() => mgCurrentViewportBucket());\n  (0,external_vendor_React_.useEffect)(() => {\n    const onResize = () => {\n      setBucket(mgCurrentViewportBucket());\n    };\n    window.addEventListener('resize', onResize);\n    return () => {\n      window.removeEventListener('resize', onResize);\n    };\n  }, []);\n  return bucket;\n}\nconst masonry_gallery_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}), elements.scriptData({\n  attrName: 'gallery_ids'\n}), elements.scriptData({\n  attrName: 'columns'\n}), elements.scriptData({\n  attrName: 'gutter'\n}), elements.scriptData({\n  attrName: 'use_lightbox'\n}), elements.scriptData({\n  attrName: 'use_horizontal_order'\n}), elements.scriptData({\n  attrName: 'dsm_masonry_transition_ms'\n}), elements.scriptData({\n  attrName: 'dsm_masonry_stagger_ms'\n}), elements.scriptData({\n  attrName: 'dsm_masonry_origin_left'\n}));\n\n/**\n * @param {Object} mediaItem REST media object.\n * @param {string} size      Image size slug.\n * @return {string}\n */\nfunction edit_getImageUrl(mediaItem, size) {\n  if (!mediaItem || !mediaItem.media_details || !mediaItem.media_details.sizes) {\n    return mediaItem?.source_url || '';\n  }\n  if (size === 'full' || !mediaItem.media_details.sizes[size]) {\n    return mediaItem.source_url;\n  }\n  return mediaItem.media_details.sizes[size].source_url || mediaItem.source_url;\n}\n\n/**\n * Caption text matching PHP `wp_get_attachment_caption()` (post_excerpt).\n *\n * Prefer REST `caption.raw` (`context=edit`). Avoid `caption.rendered` alone — it may\n * wrap content differently than the excerpt.\n *\n * @param {Object} mediaItem REST attachment.\n * @return {string}\n */\nfunction getMediaCaptionText(mediaItem) {\n  if (!mediaItem?.caption) {\n    return '';\n  }\n  const c = mediaItem.caption;\n  if (typeof c === 'object' && c.raw !== undefined && c.raw !== null) {\n    return String(c.raw).trim();\n  }\n  if (typeof c === 'string') {\n    return c.trim();\n  }\n  if (typeof c === 'object' && c.rendered) {\n    return (0,external_wp_dom_namespaceObject.__unstableStripHTML)(c.rendered);\n  }\n  return '';\n}\n\n/**\n * Description HTML matching PHP `$attachment->post_content` + `wp_kses_post()`.\n *\n * Prefer REST `description.raw` (`context=edit`). Do **not** use `description.rendered`:\n * it is filtered through `the_content` and can output attachment-page markup (nested\n * `<p class=\"attachment\">`, extra `<img>`) while `post_content` is empty — unlike the server render.\n *\n * @param {Object} mediaItem REST attachment.\n * @return {string}\n */\nfunction getMediaDescriptionHtml(mediaItem) {\n  if (!mediaItem?.description) {\n    return '';\n  }\n  const d = mediaItem.description;\n  if (typeof d === 'object' && d.raw !== undefined && d.raw !== null) {\n    return String(d.raw).trim();\n  }\n  if (typeof d === 'string') {\n    return d.trim();\n  }\n  return '';\n}\n\n/**\n * Normalise gallery id list from UploadGallery innerContent (string or `{ ids }` shape).\n *\n * @param {unknown} raw Value from getAttrByMode( gallery_ids.innerContent ).\n * @return {number[]}\n */\nfunction parseAttachmentIdsFromGalleryValue(raw) {\n  let str = '';\n  if (typeof raw === 'string') {\n    str = raw;\n  } else if (raw && typeof raw === 'object' && typeof raw.ids === 'string') {\n    str = raw.ids;\n  }\n  if (!str || typeof str !== 'string') {\n    return [];\n  }\n  return str.split(',').map(x => Number.parseInt(x.trim(), 10)).filter(n => Number.isFinite(n) && n > 0);\n}\n\n/**\n * Random order in the Visual Builder. `GET /wp/v2/media` returns 400 for `orderby=rand`\n * (not allowed on the REST collection); PHP still uses `orderby => rand` via `get_posts`.\n *\n * @param {Array} items Media objects from the REST API.\n * @return {Array} Shuffled copy.\n */\nfunction edit_shuffleDsmMediaArray(items) {\n  const a = [...items];\n  for (let i = a.length - 1; i > 0; i--) {\n    const j = Math.floor(Math.random() * (i + 1));\n    [a[i], a[j]] = [a[j], a[i]];\n  }\n  return a;\n}\nfunction masonry_gallery_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _getAttrByMode4, _getAttrByMode5, _getAttrByMode6, _getAttrByMode7, _getAttrByMode8, _getAttrByMode9, _getAttrByMode0, _getAttrByMode1, _getAttrByMode10, _getAttrByMode11, _getAttrByMode12, _getAttrByMode13;\n  const gridRef = (0,external_vendor_React_.useRef)(null);\n  const masonryRef = (0,external_vendor_React_.useRef)(null);\n  const galleryItems = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.gallery_ids?.innerContent);\n  const parsedIds = (0,external_vendor_React_.useMemo)(() => parseAttachmentIdsFromGalleryValue(galleryItems), [galleryItems]);\n  const galleryFetchEnabled = parsedIds.length > 0;\n  const sortOn = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_sort_images?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'on';\n  const sortOrder = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_sort_images_order?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'title';\n  const orderSort = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_order_sort?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'asc';\n  const orderBy = sortOn !== 'on' ? 'include' : sortOrder === 'date' ? 'date' : sortOrder === 'rand' ? 'include' : 'title';\n  const {\n    media: mediaFromApi,\n    loading\n  } = use_media({\n    include: parsedIds,\n    order: orderSort,\n    orderby: orderBy,\n    enabled: galleryFetchEnabled,\n    context: 'edit'\n  });\n  const media = (0,external_vendor_React_.useMemo)(() => {\n    if (!Array.isArray(mediaFromApi) || !mediaFromApi.length) {\n      return mediaFromApi;\n    }\n    if (sortOn === 'on' && sortOrder === 'rand') {\n      return edit_shuffleDsmMediaArray(mediaFromApi);\n    }\n    return mediaFromApi;\n  }, [mediaFromApi, sortOn, sortOrder]);\n  const useOverlay = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_overlay?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : 'off';\n  const overlayTitle = (_getAttrByMode5 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.overlay_title?.innerContent)) !== null && _getAttrByMode5 !== void 0 ? _getAttrByMode5 : 'on';\n  const overlayCaption = (_getAttrByMode6 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.overlay_caption?.innerContent)) !== null && _getAttrByMode6 !== void 0 ? _getAttrByMode6 : 'on';\n  const overlayDescription = (_getAttrByMode7 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.overlay_description?.innerContent)) !== null && _getAttrByMode7 !== void 0 ? _getAttrByMode7 : 'on';\n  const useLightbox = (_getAttrByMode8 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_lightbox?.innerContent)) !== null && _getAttrByMode8 !== void 0 ? _getAttrByMode8 : 'off';\n  const lightboxSize = (_getAttrByMode9 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.lightbox_img_sizes?.innerContent)) !== null && _getAttrByMode9 !== void 0 ? _getAttrByMode9 : 'full';\n  const lightboxTitle = (_getAttrByMode0 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.lightbox_title?.innerContent)) !== null && _getAttrByMode0 !== void 0 ? _getAttrByMode0 : 'on';\n  const lightboxCaption = (_getAttrByMode1 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.lightbox_caption?.innerContent)) !== null && _getAttrByMode1 !== void 0 ? _getAttrByMode1 : 'on';\n  const horizontalOrder = (_getAttrByMode10 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_horizontal_order?.innerContent)) !== null && _getAttrByMode10 !== void 0 ? _getAttrByMode10 : 'on';\n  const mgViewportBucket = useMgViewportBucket();\n  const masonryTransitionMs = (0,external_vendor_React_.useMemo)(() => mgReadRangeInnerContent(attrs?.dsm_masonry_transition_ms, mgViewportBucket, 'value', '400'), [attrs?.dsm_masonry_transition_ms, mgViewportBucket]);\n  const masonryStaggerMs = (0,external_vendor_React_.useMemo)(() => mgReadRangeInnerContent(attrs?.dsm_masonry_stagger_ms, mgViewportBucket, 'value', '0'), [attrs?.dsm_masonry_stagger_ms, mgViewportBucket]);\n  const masonryOriginLeft = ((_getAttrByMode11 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_masonry_origin_left?.innerContent)) !== null && _getAttrByMode11 !== void 0 ? _getAttrByMode11 : 'on') === 'on';\n  const masonryViewportMargin = (_getAttrByMode12 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_masonry_viewport_margin?.innerContent)) !== null && _getAttrByMode12 !== void 0 ? _getAttrByMode12 : '15%';\n  const useZoom = (_getAttrByMode13 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_zoom_on_hover?.innerContent)) !== null && _getAttrByMode13 !== void 0 ? _getAttrByMode13 : 'off';\n  const headingTag = attrs?.image_title_font?.decoration?.font?.font?.desktop?.value?.headingLevel || 'h4';\n  const titleTag = typeof headingTag === 'string' && /^h[1-6]$/i.test(headingTag) ? headingTag.toLowerCase() : 'h4';\n  const gridClass = 'dsm-gallery grid' + (useZoom === 'on' ? ' dsm_masonry_zoom_hover' : '');\n\n  // Visual Builder canvas runs in an iframe: parent `modules-vb-styles.css` does not apply there.\n  // CommonStyle uses orderClass — also unreliable for grid widths in the builder. Inline layout fixes tiling.\n  const gridLayout = (0,external_vendor_React_.useMemo)(() => {\n    var _getAttrByMode14, _getAttrByMode15;\n    const cRaw = (_getAttrByMode14 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.columns?.innerContent)) !== null && _getAttrByMode14 !== void 0 ? _getAttrByMode14 : '3';\n    const gRaw = (_getAttrByMode15 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.gutter?.innerContent)) !== null && _getAttrByMode15 !== void 0 ? _getAttrByMode15 : '12';\n    const cols = Math.max(1, mgParsePositiveInt(String(cRaw), 3));\n    const gutPx = mgParseGutterPx(gRaw, 12);\n    const colWidth = mgGridColumnWidthCalc(cols, gutPx);\n    const itemStyle = {\n      width: colWidth,\n      marginBottom: `${gutPx}px`,\n      boxSizing: 'border-box'\n    };\n    return {\n      gridRootStyle: {\n        position: 'relative',\n        width: '100%',\n        '--dsm-mg-columns': String(cols),\n        '--dsm-mg-gutter': `${gutPx}px`\n      },\n      sizerStyle: {\n        width: colWidth,\n        boxSizing: 'border-box'\n      },\n      gutterSizerStyle: {\n        width: `${gutPx}px`\n      },\n      itemStyle\n    };\n  }, [attrs]);\n  const galleryMarkup = (0,external_vendor_React_.useMemo)(() => {\n    if (!Array.isArray(media) || !media.length) {\n      return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n        className: \"grid-sizer\",\n        style: gridLayout.sizerStyle\n      }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n        className: \"gutter-sizer\",\n        style: gridLayout.gutterSizerStyle\n      }));\n    }\n    const parts = [/*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      key: \"gs\",\n      className: \"grid-sizer\",\n      style: gridLayout.sizerStyle\n    }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      key: \"gs2\",\n      className: \"gutter-sizer\",\n      style: gridLayout.gutterSizerStyle\n    })];\n    media.forEach(item => {\n      const imgSrc = edit_getImageUrl(item, 'full');\n      const lbSrc = edit_getImageUrl(item, lightboxSize);\n      const title = item.title?.rendered || (typeof item.title === 'string' ? item.title : '');\n      const caption = getMediaCaptionText(item);\n      const desc = getMediaDescriptionHtml(item);\n      const isSvg = typeof imgSrc === 'string' && /\\.svg(\\?|$)/i.test(imgSrc);\n      const itemClass = 'grid-item' + (isSvg ? ' dsm_masonry_gallery_svg' : '');\n      const titlePlain = (0,external_wp_dom_namespaceObject.__unstableStripHTML)(String(title || '')).trim();\n      const captionPlain = (0,external_wp_dom_namespaceObject.__unstableStripHTML)(String(caption || '')).trim();\n      const altFromMedia = String(item.alt_text || '').trim();\n      const resolvedAlt = altFromMedia || captionPlain || titlePlain;\n      const imgW = Number(item.media_details?.width) || 0;\n      const imgH = Number(item.media_details?.height) || 0;\n      const wrapClass = 'et_pb_image_wrap' + (imgW > 0 && imgH > 0 ? ' dsm-mg-aspect-reserve' : '');\n      const wrapStyle = imgW > 0 && imgH > 0 ? {\n        '--dsm-mg-aspect-ratio': `${imgW} / ${imgH}`\n      } : undefined;\n      let inner = /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n        src: imgSrc,\n        alt: useLightbox === 'on' ? '' : resolvedAlt || titlePlain || '',\n        className: 'dsm-skip-lazyload',\n        decoding: \"async\",\n        width: imgW > 0 ? imgW : undefined,\n        height: imgH > 0 ? imgH : undefined\n      });\n      if (useOverlay === 'on') {\n        const overlayBits = [];\n        if (overlayTitle === 'on') {\n          const TitleTag = titleTag;\n          overlayBits.push(/*#__PURE__*/external_vendor_React_default().createElement(TitleTag, {\n            key: \"ot\",\n            className: \"dsm-overlay-title\"\n          }, title));\n        }\n        if (overlayCaption === 'on') {\n          overlayBits.push(/*#__PURE__*/external_vendor_React_default().createElement(\"p\", {\n            key: \"oc\",\n            className: \"dsm-overlay-caption\"\n          }, caption ? (0,external_wp_dom_namespaceObject.__unstableStripHTML)(caption) : ''));\n        }\n        if (overlayDescription === 'on') {\n          overlayBits.push(/*#__PURE__*/external_vendor_React_default().createElement(\"p\", {\n            key: \"od\",\n            className: \"dsm-overlay-desc\",\n            dangerouslySetInnerHTML: {\n              __html: desc || ''\n            }\n          }));\n        }\n        inner = /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, inner, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n          className: \"et_overlay dsm-overlay\",\n          \"aria-hidden\": \"true\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-overlay-inner\"\n        }, overlayBits)));\n      }\n      let wrap = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n        className: wrapClass,\n        style: wrapStyle\n      }, inner);\n      if (useLightbox === 'on') {\n        const dt = lightboxTitle === 'on' && title ? {\n          'data-title': title\n        } : {};\n        const dc = lightboxCaption === 'on' && caption ? {\n          'data-caption': caption\n        } : {};\n        const lightboxAria = resolvedAlt ? (0,external_window_vendor_wp_i18n_namespaceObject.sprintf)((0,external_window_vendor_wp_i18n_namespaceObject.__)('Open image in lightbox: %s', 'dsm-supreme-modules-pro-for-divi'), resolvedAlt) : (0,external_window_vendor_wp_i18n_namespaceObject.__)('Open image in lightbox', 'dsm-supreme-modules-pro-for-divi');\n        wrap = /*#__PURE__*/external_vendor_React_default().createElement(\"a\", masonry_gallery_edit_extends({\n          href: imgSrc,\n          \"data-mfp-src\": lbSrc,\n          \"aria-label\": lightboxAria\n        }, dt, dc), wrap);\n      }\n      parts.push(/*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n        key: item.id,\n        className: itemClass,\n        style: gridLayout.itemStyle\n      }, wrap));\n    });\n    return parts;\n  }, [media, useOverlay, overlayTitle, overlayCaption, overlayDescription, useLightbox, lightboxSize, lightboxTitle, lightboxCaption, titleTag, gridLayout]);\n\n  // Visual Builder: defer Masonry until after paint + watch size (iframe / column reflow).\n  (0,external_vendor_React_.useLayoutEffect)(() => {\n    const root = gridRef.current;\n    if (!root || loading) {\n      return undefined;\n    }\n    let cancelled = false;\n    let raf1 = 0;\n    let raf2 = 0;\n    /** @type {ResizeObserver | null} */\n    let resizeObserver = null;\n    /** @type {Function | undefined} */\n    let disconnectProgressive = undefined;\n    const onWinResize = () => {\n      if (!cancelled && masonryRef.current) {\n        masonryRef.current.layout();\n      }\n    };\n    const bindResizeAndLayout = el => {\n      if (typeof ResizeObserver !== 'undefined') {\n        resizeObserver = new ResizeObserver(() => {\n          if (!cancelled && masonryRef.current) {\n            masonryRef.current.layout();\n          }\n        });\n        resizeObserver.observe(el);\n      }\n      window.addEventListener('resize', onWinResize);\n      requestAnimationFrame(() => {\n        if (!cancelled && masonryRef.current) {\n          masonryRef.current.layout();\n        }\n      });\n    };\n\n    /**\n     * Initialise Masonry early, then relayout progressively as images load (incl. lazy plugins).\n     */\n    const initMasonryAfterImages = () => {\n      if (cancelled || !gridRef.current) {\n        return;\n      }\n      const el = gridRef.current;\n      if (masonryRef.current) {\n        masonryRef.current.destroy();\n        masonryRef.current = null;\n      }\n      disconnectProgressive?.();\n      disconnectProgressive = dsmMgBindImagesLoadedProgressiveLayout({\n        grid: el,\n        ensureMasonry: () => {\n          if (cancelled || !gridRef.current) {\n            return null;\n          }\n          if (masonryRef.current) {\n            return masonryRef.current;\n          }\n          const grid = gridRef.current;\n          const m = new (masonry_default())(grid, {\n            itemSelector: '.grid-item',\n            percentPosition: true,\n            columnWidth: '.grid-sizer',\n            gutter: '.gutter-sizer',\n            horizontalOrder: horizontalOrder === 'on',\n            isLayoutInstant: false,\n            transitionDuration: mgMasonryTransitionDuration(masonryTransitionMs),\n            stagger: mgMasonryStaggerMs(masonryStaggerMs),\n            originLeft: masonryOriginLeft\n          });\n          masonryRef.current = m;\n          bindResizeAndLayout(grid);\n          return m;\n        },\n        relayout: () => {\n          if (!cancelled && masonryRef.current) {\n            masonryRef.current.layout();\n          }\n        },\n        imagesLoaded: (imagesloaded_default())\n      });\n    };\n    raf1 = window.requestAnimationFrame(() => {\n      raf2 = window.requestAnimationFrame(initMasonryAfterImages);\n    });\n    return () => {\n      cancelled = true;\n      disconnectProgressive?.();\n      window.cancelAnimationFrame(raf1);\n      window.cancelAnimationFrame(raf2);\n      window.removeEventListener('resize', onWinResize);\n      resizeObserver?.disconnect();\n      if (masonryRef.current) {\n        masonryRef.current.destroy();\n        masonryRef.current = null;\n      }\n    };\n  }, [galleryMarkup, loading, horizontalOrder, gridLayout, masonryOriginLeft]);\n\n  // Apply responsive transition/stagger when viewport bucket or values change (after Masonry exists).\n  (0,external_vendor_React_.useEffect)(() => {\n    const m = masonryRef.current;\n    if (!m) {\n      return;\n    }\n    m.option({\n      transitionDuration: mgMasonryTransitionDuration(masonryTransitionMs),\n      stagger: mgMasonryStaggerMs(masonryStaggerMs)\n    });\n    m.layout();\n  }, [masonryTransitionMs, masonryStaggerMs]);\n\n  // Match PHP `data-dsm-mg-lb-scope` so Magnific mainClass matches scoped CSS (dsm_masonry_gallery_*).\n  (0,external_vendor_React_.useLayoutEffect)(() => {\n    const el = gridRef.current;\n    if (!el || useLightbox !== 'on') {\n      return;\n    }\n    const existing = el.getAttribute('data-dsm-mg-lb-scope');\n    if (existing && existing.trim() !== '') {\n      return;\n    }\n    const scope = mgMasonryLightboxScopeClassFromModuleEl(el);\n    if (scope) {\n      el.setAttribute('data-dsm-mg-lb-scope', scope);\n    }\n  }, [useLightbox, galleryMarkup, loading]);\n  (0,external_vendor_React_.useEffect)(() => {\n    if (useLightbox !== 'on' || !gridRef.current) {\n      return undefined;\n    }\n    const $ = window.jQuery;\n    if (!$ || !$.fn?.magnificPopup) {\n      return undefined;\n    }\n    const $links = $(gridRef.current).find('.grid-item a');\n    const mainClass = mgMasonryLightboxMainClassFromGridEl(gridRef.current);\n    $links.magnificPopup({\n      type: 'image',\n      gallery: {\n        enabled: true\n      },\n      removalDelay: 300,\n      mainClass,\n      autoFocusLast: false,\n      image: {\n        verticalFit: true,\n        titleSrc(item) {\n          let t = '';\n          if (item.el.attr('data-title')) {\n            t += item.el.attr('data-title');\n          }\n          if (item.el.attr('data-caption')) {\n            t += \"<small class='dsm-image-caption'>\" + item.el.attr('data-caption') + '</small>';\n          }\n          return t;\n        }\n      }\n    });\n    return () => {\n      if (!$ || !$links?.length) {\n        return;\n      }\n      // Magnific Popup has no `destroy` command — string API calls `n[b].apply` only when\n      // open, and `destroy` is not on the core. Unbind the delegated handler namespace.\n      try {\n        if ($.magnificPopup?.instance) {\n          $.magnificPopup.close();\n        }\n      } catch (e) {\n        // Ignore close errors during VB teardown.\n      }\n      $links.off('click.magnificPopup');\n    };\n  }, [useLightbox, galleryMarkup, loading]);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: masonry_gallery_edit_ModuleScriptData,\n    stylesComponent: masonry_gallery_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add('dsm_masonry_gallery');\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"et_pb_module_inner\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    ref: gridRef,\n    className: gridClass,\n    style: gridLayout.gridRootStyle,\n    role: \"region\",\n    \"aria-label\": (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image gallery', 'dsm-supreme-modules-pro-for-divi'),\n    \"data-lightbox\": useLightbox === 'on' ? 'true' : 'false',\n    \"data-horizontalorder\": horizontalOrder === 'on' ? 'true' : 'false',\n    \"data-transition-ms\": String(masonryTransitionMs),\n    \"data-stagger-ms\": String(masonryStaggerMs),\n    \"data-origin-left\": masonryOriginLeft ? 'true' : 'false',\n    \"data-dsm-mg-viewport-margin\": String(masonryViewportMargin)\n  }, galleryMarkup)));\n}\n/* harmony default export */ const masonry_gallery_edit = (masonry_gallery_edit_Edit);\n;// ./packages/module-library/masonry-gallery/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmMasonryGallery', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/masonry-gallery': {\n      name: 'divi-supreme/masonry-gallery',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 3.988281 14.59375 C 3.5625 14.59375 3.199219 14.226562 3.199219 13.804688 C 3.199219 13.378906 3.5625 13.015625 3.988281 13.015625 C 4.414062 13.015625 4.777344 13.378906 4.777344 13.804688 C 4.777344 14.226562 4.414062 14.59375 3.988281 14.59375 Z M 3.988281 13.4375 C 3.808594 13.4375 3.625 13.621094 3.625 13.804688 C 3.625 13.984375 3.808594 14.167969 3.988281 14.167969 C 4.171875 14.167969 4.355469 13.984375 4.355469 13.804688 C 4.292969 13.621094 4.171875 13.4375 3.988281 13.4375 Z M 3.988281 13.4375 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.945312 3.179688 C 11.519531 3.179688 11.152344 2.8125 11.152344 2.390625 C 11.152344 1.964844 11.519531 1.601562 11.945312 1.601562 C 12.367188 1.601562 12.734375 1.964844 12.734375 2.390625 C 12.792969 2.8125 12.429688 3.179688 11.945312 3.179688 Z M 11.945312 2.023438 C 11.761719 2.023438 11.578125 2.207031 11.578125 2.390625 C 11.578125 2.570312 11.761719 2.753906 11.945312 2.753906 C 12.125 2.753906 12.308594 2.570312 12.308594 2.390625 C 12.308594 2.207031 12.1875 2.023438 11.945312 2.023438 Z M 11.945312 2.023438 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.183594 14.167969 L 5.566406 14.167969 L 5.566406 7.730469 L 12.183594 7.730469 Z M 5.992188 13.742188 L 11.757812 13.742188 L 11.757812 8.097656 L 5.992188 8.097656 Z M 5.992188 13.742188 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 8.84375 7.609375 L 5.566406 7.609375 L 5.566406 4.332031 L 8.84375 4.332031 Z M 5.992188 7.1875 L 8.421875 7.1875 L 8.421875 4.757812 L 5.992188 4.757812 Z M 5.992188 7.1875 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.183594 7.609375 L 8.90625 7.609375 L 8.90625 4.332031 L 12.183594 4.332031 Z M 9.332031 7.1875 L 11.761719 7.1875 L 11.761719 4.757812 L 9.332031 4.757812 Z M 9.332031 7.1875 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/masonry-gallery/index.js\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n\n\n\n\n\n\nconst masonryGalleryModule = {\n  metadata: masonry_gallery_module_namespaceObject,\n  conversionOutline: masonry_gallery_conversion_outline_conversionOutline,\n  renderers: {\n    edit: masonry_gallery_edit,\n    styles: masonry_gallery_module_styles_ModuleStyles\n  },\n  defaultAttrs: {\n    ...masonry_gallery_module_default_render_attributes_namespaceObject\n  },\n  settings: {\n    content: masonry_gallery_settings_content,\n    design: masonry_gallery_settings_design,\n    advanced: masonry_gallery_settings_advanced\n  },\n  placeholderContent: {\n    ...masonry_gallery_module_default_render_attributes_namespaceObject,\n    module: {\n      decoration: {}\n    }\n  }\n};\n/* harmony default export */ const masonry_gallery = (masonryGalleryModule);\n;// ./packages/module-library/filterable-gallery/module.json\nconst filterable_gallery_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/filterable-gallery\",\"d4Shortcode\":\"dsm_filterable_gallery\",\"title\":\"Supreme Filterable Gallery\",\"titles\":\"Supreme Filterable Gallerys\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/filterable-gallery\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"header\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-filterable-gallery-container .dsm-filterable-gallery-content-wrapper .dsm-title\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_caption\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-filterable-gallery-container .dsm-filterable-gallery-content-wrapper .dsm-caption\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_description\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-filterable-gallery-container .dsm-filterable-gallery-content-wrapper .dsm-description\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_category\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-filterable-gallery-container .dsm-filterable-gallery-filter-item\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_pagination\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-gallery-number-pagination-container .dsm-gallery-number-pagination\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_load_more\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-gallery-loadmore-button\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_use_dynamic_images\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"gallery_ids\":{\"type\":\"object\",\"inlineEditor\":\"UploadGalleryContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_number_of_columns\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"3\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_column_gap\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_row_gap\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_custom_row_height\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_row_height\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_speed\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"250\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_layout\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"card\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_auto_height\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_image_height\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"300px\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_hover_style\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"none\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_hover_transition\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_show_filterable_gallery\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_sortby\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"asc\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_show_all_images_text\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_filterable_gallery_all_text\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"All\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_show_title\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_show_caption\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_show_description\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_use_lightbox\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_show_title_lightbox\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_show_description_lightbox\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_show_caption_lightbox\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_show_pagination\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_use_zoom_on_hover\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_pagination_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"load_more\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_load_more_text\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"Load More\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_pagination_prev_text\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"Prev\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_pagination_next_text\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"Next\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tidy_up_pagination\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_query_order\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"ASC\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_total_number_images\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"10\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_per_page\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"10\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_overlay_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_category_alignment\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_category_inactive_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_category_active_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_category_inactive_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_category_active_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_pagination_inactive_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_pagination_active_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_pagination_inactive_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_pagination_active_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_pagination_alignment\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_load_more_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_loadmore_alignment\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_card_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_category_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-filterable-gallery-container .dsm-filterable-category-container .dsm-filterable-gallery-filter-item\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_category_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-filterable-gallery-container .dsm-filterable-category-container .dsm-filterable-gallery-filter-item\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_pagination_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-gallery-number-pagination-container .dsm-gallery-number-pagination\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_pagination_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-gallery-number-pagination-container .dsm-gallery-number-pagination\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_load_more_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-gallery-loadmore-button\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_load_more_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-gallery-loadmore-button\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_card_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-filterable-gallery-item .dsm-filterable-gallery-inner-item\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_wrapper_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-filterable-gallery-container .dsm-filterable-gallery-content-wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_wrapper_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-filterable-gallery-container .dsm-filterable-gallery-content-wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_image_wrapper_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-filterable-gallery-container .dsm-filterable-gallery-image-wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_image_wrapper_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-filterable-gallery-container .dsm-filterable-gallery-image-wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_overlay_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-filterable-gallery-container .dsm-filterable-gallery-content-wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_include_categories\":{\"type\":\"object\",\"inlineEditor\":\"checkboxesContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":[]}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_image_sizes\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"medium\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"card_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-filterable-gallery-item .dsm-filterable-gallery-inner-item\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-filterable-gallery-item .dsm-filterable-gallery-inner-item\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-filterable-gallery-item .dsm-filterable-gallery-inner-item\",\"useOverlay\":true}}},\"image_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-filterable-gallery-container .dsm-filterable-gallery-item .dsm-filterable-gallery-image-wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-filterable-gallery-container .dsm-filterable-gallery-item .dsm-filterable-gallery-image-wrapper\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-filterable-gallery-container .dsm-filterable-gallery-item .dsm-filterable-gallery-image-wrapper\",\"useOverlay\":true}}},\"content_wrapper_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-filterable-gallery-container .dsm-filterable-gallery-content-wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-filterable-gallery-container .dsm-filterable-gallery-content-wrapper\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-filterable-gallery-container .dsm-filterable-gallery-content-wrapper\",\"useOverlay\":true}}},\"category_tab_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-filterable-category-container .dsm-filterable-gallery-filter-item\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-filterable-category-container .dsm-filterable-gallery-filter-item\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-filterable-category-container .dsm-filterable-gallery-filter-item\",\"useOverlay\":true}}},\"category_tab_active_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-filterable-category-container .dsm-filterable-gallery-filter-item.dsm-active-filter\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-filterable-category-container .dsm-filterable-gallery-filter-item.dsm-active-filter\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-filterable-category-container .dsm-filterable-gallery-filter-item.dsm-active-filter\",\"useOverlay\":true}}},\"pagination_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-gallery-number-pagination-container .dsm-gallery-number-pagination\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-gallery-number-pagination-container .dsm-gallery-number-pagination\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-gallery-number-pagination-container .dsm-gallery-number-pagination\",\"useOverlay\":true}}},\"pagination_active_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-gallery-number-pagination-container .dsm-gallery-number-pagination.dsm-active-pagination-item\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-gallery-number-pagination-container .dsm-gallery-number-pagination.dsm-active-pagination-item\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-gallery-number-pagination-container .dsm-gallery-number-pagination.dsm-active-pagination-item\",\"useOverlay\":true}}},\"loadmore_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-gallery-loadmore-button\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-gallery-loadmore-button\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-gallery-loadmore-button\",\"useOverlay\":true}}}}}');\n;// ./packages/module-library/filterable-gallery/module-default-render-attributes.json\nconst filterable_gallery_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"module\":{\"decoration\":{\"attributes\":{}}},\"css\":{},\"header\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"headingLevel\":\"h4\"}}}}}},\"dsm_caption\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{}}}}}},\"dsm_description\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{}}}}}},\"dsm_category\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{}}}}}},\"dsm_pagination\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{}}}}}},\"dsm_load_more\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{}}}}}},\"gallery_ids\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"dsm_include_categories\":{\"innerContent\":{\"desktop\":{\"value\":[]}}},\"dsm_use_dynamic_images\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"dsm_number_of_columns\":{\"innerContent\":{\"desktop\":{\"value\":\"3\"}}},\"dsm_image_sizes\":{\"innerContent\":{\"desktop\":{\"value\":\"medium\"}}},\"dsm_column_gap\":{\"innerContent\":{\"desktop\":{\"value\":\"10px\"}}},\"dsm_row_gap\":{\"innerContent\":{\"desktop\":{\"value\":\"10px\"}}},\"dsm_custom_row_height\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"dsm_row_height\":{\"innerContent\":{\"desktop\":{\"value\":\"200px\"}}},\"dsm_speed\":{\"innerContent\":{\"desktop\":{\"value\":\"250\"}}},\"dsm_layout\":{\"innerContent\":{\"desktop\":{\"value\":\"card\"}}},\"dsm_auto_height\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"dsm_image_height\":{\"innerContent\":{\"desktop\":{\"value\":\"300px\"}}},\"dsm_hover_style\":{\"innerContent\":{\"desktop\":{\"value\":\"none\"}}},\"dsm_hover_transition\":{\"innerContent\":{\"desktop\":{\"value\":\"500ms\"}}},\"dsm_show_filterable_gallery\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"dsm_sortby\":{\"innerContent\":{\"desktop\":{\"value\":\"asc\"}}},\"dsm_show_all_images_text\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"dsm_filterable_gallery_all_text\":{\"innerContent\":{\"desktop\":{\"value\":\"All\"}}},\"dsm_show_title\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"dsm_show_caption\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"dsm_show_description\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"dsm_use_lightbox\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"dsm_show_title_lightbox\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"dsm_show_description_lightbox\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"dsm_show_caption_lightbox\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"dsm_show_pagination\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"dsm_use_zoom_on_hover\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"dsm_pagination_type\":{\"innerContent\":{\"desktop\":{\"value\":\"load_more\"}}},\"dsm_load_more_text\":{\"innerContent\":{\"desktop\":{\"value\":\"Load More\"}}},\"dsm_pagination_prev_text\":{\"innerContent\":{\"desktop\":{\"value\":\"Prev\"}}},\"dsm_pagination_next_text\":{\"innerContent\":{\"desktop\":{\"value\":\"Next\"}}},\"dsm_tidy_up_pagination\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"dsm_query_order\":{\"innerContent\":{\"desktop\":{\"value\":\"ASC\"}}},\"dsm_total_number_images\":{\"innerContent\":{\"desktop\":{\"value\":\"10\"}}},\"dsm_per_page\":{\"innerContent\":{\"desktop\":{\"value\":\"10\"}}},\"dsm_card_bg_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"dsm_card_padding\":{\"decoration\":{}},\"card_style\":{\"decoration\":{}},\"dsm_image_wrapper_margin\":{\"decoration\":{}},\"dsm_image_wrapper_padding\":{\"decoration\":{}},\"image_style\":{\"decoration\":{}},\"dsm_content_wrapper_margin\":{\"decoration\":{}},\"dsm_content_wrapper_padding\":{\"decoration\":{}},\"content_wrapper_style\":{\"decoration\":{}},\"dsm_overlay_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"dsm_overlay_padding\":{\"decoration\":{}},\"dsm_category_alignment\":{\"innerContent\":{\"desktop\":{\"value\":\"center\"}}},\"dsm_category_inactive_bg_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"dsm_category_active_bg_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"dsm_category_inactive_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"dsm_category_active_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"dsm_category_margin\":{\"decoration\":{}},\"dsm_category_padding\":{\"decoration\":{}},\"category_tab_style\":{\"decoration\":{}},\"category_tab_active_style\":{\"decoration\":{}},\"dsm_pagination_inactive_bg_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"dsm_pagination_active_bg_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"dsm_pagination_inactive_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"dsm_pagination_active_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"dsm_pagination_margin\":{\"decoration\":{}},\"dsm_pagination_padding\":{\"decoration\":{}},\"dsm_pagination_alignment\":{\"innerContent\":{\"desktop\":{\"value\":\"center\"}}},\"pagination_style\":{\"decoration\":{}},\"pagination_active_style\":{\"decoration\":{}},\"dsm_load_more_bg_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"dsm_load_more_margin\":{\"decoration\":{}},\"dsm_load_more_padding\":{\"decoration\":{}},\"dsm_loadmore_alignment\":{\"innerContent\":{\"desktop\":{\"value\":\"center\"}}},\"loadmore_style\":{\"decoration\":{}}}');\n;// ./packages/module-library/filterable-gallery/filterable-gallery-vb-default-attrs.js\n/**\n * Visual Builder `defaultAttr` slices — FieldContainer `innerContent` defaults.\n *\n * @package DiviSupreme\n */\n\n\n\n/**\n * @param {string} attrKey Module attribute key (e.g. `dsm_speed`, `gallery_ids`).\n * @return {Object} innerContent slice for FieldContainer `defaultAttr`.\n */\nfunction fgFieldDefaultInnerContent(attrKey) {\n  const node = filterable_gallery_module_default_render_attributes_namespaceObject[attrKey];\n  if (node && typeof node.innerContent === 'object') {\n    return node.innerContent;\n  }\n  return {\n    desktop: {\n      value: ''\n    }\n  };\n}\n\n/** @see `module-default-render-attributes.json` → `header.decoration.font` */\nconst fgHeaderFontGroupDefaultAttr = filterable_gallery_module_default_render_attributes_namespaceObject.header?.decoration?.font;\n\n/** @see `module-default-render-attributes.json` → `dsm_caption.decoration.font` */\nconst fgCaptionFontGroupDefaultAttr = filterable_gallery_module_default_render_attributes_namespaceObject.dsm_caption?.decoration?.font;\n\n/** @see `module-default-render-attributes.json` → `dsm_description.decoration.font` */\nconst fgDescriptionFontGroupDefaultAttr = filterable_gallery_module_default_render_attributes_namespaceObject.dsm_description?.decoration?.font;\n\n/** @see `module-default-render-attributes.json` → `dsm_category.decoration.font` */\nconst fgCategoryFontGroupDefaultAttr = filterable_gallery_module_default_render_attributes_namespaceObject.dsm_category?.decoration?.font;\n\n/** @see `module-default-render-attributes.json` → `dsm_pagination.decoration.font` */\nconst fgPaginationFontGroupDefaultAttr = filterable_gallery_module_default_render_attributes_namespaceObject.dsm_pagination?.decoration?.font;\n\n/** @see `module-default-render-attributes.json` → `dsm_load_more.decoration.font` */\nconst fgLoadMoreFontGroupDefaultAttr = filterable_gallery_module_default_render_attributes_namespaceObject.dsm_load_more?.decoration?.font;\n;// ./packages/module-library/filterable-gallery/conversion-outline.js\n\n\n/**\n * D4 `default` / `default_on_front` (FilterableGallery.php). When shortcode attrs are\n * omitted, migration may leave innerContent unset; VB `visible` must match FieldContainer\n * defaults — see settings-content (same pattern as lottie/conversion-outline.js).\n */\nconst FILTERABLE_GALLERY_SHOW_FILTER_TABS_DEFAULT = 'on';\nconst FILTERABLE_GALLERY_SHOW_ALL_TAB_DEFAULT = 'on';\nconst filterable_gallery_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border',\n      dsm_card_border: 'card_style.decoration.border',\n      dsm_image_border: 'image_style.decoration.border',\n      dsm_content_wrapper_border: 'content_wrapper_style.decoration.border',\n      dsm_category_border: 'category_tab_style.decoration.border',\n      dsm_category_active_border: 'category_tab_active_style.decoration.border',\n      dsm_pagination_border: 'pagination_style.decoration.border',\n      dsm_pagination_border_active: 'pagination_active_style.decoration.border',\n      dsm_load_more_border: 'loadmore_style.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow',\n      dsm_card_shadow: 'card_style.decoration.boxShadow',\n      dsm_content_wrapper_shadow: 'content_wrapper_style.decoration.boxShadow',\n      dsm_image_shadow: 'image_style.decoration.boxShadow',\n      dsm_category_shadow: 'category_tab_style.decoration.boxShadow',\n      dsm_category_active_shadow: 'category_tab_active_style.decoration.boxShadow',\n      dsm_pagination_shadow: 'pagination_style.decoration.boxShadow',\n      dsm_pagination_active_shadow: 'pagination_active_style.decoration.boxShadow',\n      dsm_load_more_shadow: 'loadmore_style.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    display_conditions: 'module.decoration.conditions',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    margin_padding: 'module.decoration.spacing',\n    max_width: 'module.decoration.sizing',\n    height: 'module.decoration.sizing',\n    link_options: 'module.advanced.link',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    fonts: {\n      header: 'header.decoration.font',\n      dsm_caption: 'dsm_caption.decoration.font',\n      dsm_description: 'dsm_description.decoration.font',\n      dsm_category: 'dsm_category.decoration.font',\n      dsm_pagination: 'dsm_pagination.decoration.font',\n      dsm_load_more: 'dsm_load_more.decoration.font'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    dsm_use_dynamic_images: 'dsm_use_dynamic_images.innerContent.*',\n    gallery_ids: 'gallery_ids.innerContent.*',\n    dsm_number_of_columns: 'dsm_number_of_columns.innerContent.*',\n    dsm_column_gap: 'dsm_column_gap.innerContent.*',\n    dsm_row_gap: 'dsm_row_gap.innerContent.*',\n    dsm_custom_row_height: 'dsm_custom_row_height.innerContent.*',\n    dsm_row_height: 'dsm_row_height.innerContent.*',\n    dsm_speed: 'dsm_speed.innerContent.*',\n    dsm_layout: 'dsm_layout.innerContent.*',\n    dsm_auto_height: 'dsm_auto_height.innerContent.*',\n    dsm_image_height: 'dsm_image_height.innerContent.*',\n    dsm_hover_style: 'dsm_hover_style.innerContent.*',\n    dsm_hover_transition: 'dsm_hover_transition.innerContent.*',\n    dsm_show_filterable_gallery: 'dsm_show_filterable_gallery.innerContent.*',\n    dsm_sortby: 'dsm_sortby.innerContent.*',\n    dsm_show_all_images_text: 'dsm_show_all_images_text.innerContent.*',\n    dsm_filterable_gallery_all_text: 'dsm_filterable_gallery_all_text.innerContent.*',\n    dsm_show_title: 'dsm_show_title.innerContent.*',\n    dsm_show_caption: 'dsm_show_caption.innerContent.*',\n    dsm_show_description: 'dsm_show_description.innerContent.*',\n    dsm_use_lightbox: 'dsm_use_lightbox.innerContent.*',\n    dsm_show_title_lightbox: 'dsm_show_title_lightbox.innerContent.*',\n    dsm_show_description_lightbox: 'dsm_show_description_lightbox.innerContent.*',\n    dsm_show_caption_lightbox: 'dsm_show_caption_lightbox.innerContent.*',\n    dsm_show_pagination: 'dsm_show_pagination.innerContent.*',\n    dsm_use_zoom_on_hover: 'dsm_use_zoom_on_hover.innerContent.*',\n    dsm_pagination_type: 'dsm_pagination_type.innerContent.*',\n    dsm_load_more_text: 'dsm_load_more_text.innerContent.*',\n    dsm_pagination_prev_text: 'dsm_pagination_prev_text.innerContent.*',\n    dsm_pagination_next_text: 'dsm_pagination_next_text.innerContent.*',\n    dsm_tidy_up_pagination: 'dsm_tidy_up_pagination.innerContent.*',\n    dsm_query_order: 'dsm_query_order.innerContent.*',\n    dsm_total_number_images: 'dsm_total_number_images.innerContent.*',\n    dsm_per_page: 'dsm_per_page.innerContent.*',\n    dsm_overlay_color: 'dsm_overlay_color.innerContent.*',\n    dsm_category_alignment: 'dsm_category_alignment.innerContent.*',\n    dsm_category_inactive_bg_color: 'dsm_category_inactive_bg_color.innerContent.*',\n    dsm_category_active_bg_color: 'dsm_category_active_bg_color.innerContent.*',\n    dsm_category_inactive_color: 'dsm_category_inactive_color.innerContent.*',\n    dsm_category_active_color: 'dsm_category_active_color.innerContent.*',\n    dsm_pagination_inactive_bg_color: 'dsm_pagination_inactive_bg_color.innerContent.*',\n    dsm_pagination_active_bg_color: 'dsm_pagination_active_bg_color.innerContent.*',\n    dsm_pagination_inactive_color: 'dsm_pagination_inactive_color.innerContent.*',\n    dsm_pagination_active_color: 'dsm_pagination_active_color.innerContent.*',\n    dsm_pagination_alignment: 'dsm_pagination_alignment.innerContent.*',\n    dsm_load_more_bg_color: 'dsm_load_more_bg_color.innerContent.*',\n    dsm_loadmore_alignment: 'dsm_loadmore_alignment.innerContent.*',\n    dsm_card_bg_color: 'dsm_card_bg_color.innerContent.*',\n    dsm_category_margin: 'dsm_category_margin.decoration.spacing.*.margin',\n    dsm_category_padding: 'dsm_category_padding.decoration.spacing.*.padding',\n    dsm_pagination_margin: 'dsm_pagination_margin.decoration.spacing.*.margin',\n    dsm_pagination_padding: 'dsm_pagination_padding.decoration.spacing.*.padding',\n    dsm_load_more_margin: 'dsm_load_more_margin.decoration.spacing.*.margin',\n    dsm_load_more_padding: 'dsm_load_more_padding.decoration.spacing.*.padding',\n    dsm_card_padding: 'dsm_card_padding.decoration.spacing.*.padding',\n    dsm_content_wrapper_margin: 'dsm_content_wrapper_margin.decoration.spacing.*.margin',\n    dsm_content_wrapper_padding: 'dsm_content_wrapper_padding.decoration.spacing.*.padding',\n    dsm_image_wrapper_margin: 'dsm_image_wrapper_margin.decoration.spacing.*.margin',\n    dsm_image_wrapper_padding: 'dsm_image_wrapper_padding.decoration.spacing.*.padding',\n    dsm_overlay_padding: 'dsm_overlay_padding.decoration.spacing.*.padding',\n    dsm_include_categories: 'dsm_include_categories.innerContent.*',\n    dsm_image_sizes: 'dsm_image_sizes.innerContent.*',\n    // D4 `fonts.header.header_level` → shortcode `header_level`.\n    header_level: 'header.decoration.font.font.*.headingLevel',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    dsm_category_margin: external_divi_module_namespaceObject.convertSpacing,\n    dsm_category_padding: external_divi_module_namespaceObject.convertSpacing,\n    dsm_pagination_margin: external_divi_module_namespaceObject.convertSpacing,\n    dsm_pagination_padding: external_divi_module_namespaceObject.convertSpacing,\n    dsm_load_more_margin: external_divi_module_namespaceObject.convertSpacing,\n    dsm_load_more_padding: external_divi_module_namespaceObject.convertSpacing,\n    dsm_card_padding: external_divi_module_namespaceObject.convertSpacing,\n    dsm_content_wrapper_margin: external_divi_module_namespaceObject.convertSpacing,\n    dsm_content_wrapper_padding: external_divi_module_namespaceObject.convertSpacing,\n    dsm_image_wrapper_margin: external_divi_module_namespaceObject.convertSpacing,\n    dsm_image_wrapper_padding: external_divi_module_namespaceObject.convertSpacing,\n    dsm_overlay_padding: external_divi_module_namespaceObject.convertSpacing,\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/filterable-gallery/settings-content.js\n\n// Wordpress dependencies.\n\n\n// Divi package dependencies.\n\n\n\n\n\n\n\n\n\n/**\n * @param {unknown} v\n * @return {boolean}\n */\nconst isAttrEmpty = v => v === undefined || v === null || v === '';\n\n/**\n * D4 yes_no / D5 Toggle / migration bool — treat as enabled (matches lottie/settings-content).\n *\n * @param {unknown} raw\n * @return {boolean}\n */\nfunction isDsmToggleOn(raw) {\n  return raw === true || raw === 'on' || raw === 'yes' || raw === 1 || typeof raw === 'string' && ['on', 'yes', 'true', '1'].includes(raw.trim().toLowerCase());\n}\nfunction filterable_gallery_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  const dsmUseDynamicImages = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_use_dynamic_images?.innerContent);\n  const dsmCustomRowHeight = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_custom_row_height?.innerContent);\n  const dsmLayout = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_layout?.innerContent);\n  const dsmAutoHeight = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_auto_height?.innerContent);\n  const showFilterTabsRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_show_filterable_gallery?.innerContent);\n  const showFilterTabsEffective = isAttrEmpty(showFilterTabsRaw) ? FILTERABLE_GALLERY_SHOW_FILTER_TABS_DEFAULT : showFilterTabsRaw;\n  const showFilterTabs = isDsmToggleOn(showFilterTabsEffective);\n  const showAllTabRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_show_all_images_text?.innerContent);\n  const showAllTabEffective = isAttrEmpty(showAllTabRaw) ? FILTERABLE_GALLERY_SHOW_ALL_TAB_DEFAULT : showAllTabRaw;\n  const showAllTabOn = isDsmToggleOn(showAllTabEffective);\n  const dsmUseLightbox = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_use_lightbox?.innerContent);\n  const dsmShowPagination = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_show_pagination?.innerContent);\n  const dsmPaginationType = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_pagination_type?.innerContent);\n  const dsm_use_dynamic_images = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_use_dynamic_images?.innerContent);\n  const imageSizesOptions = Object.entries(diviSupreme5.imageSizes).reduce((acc, [key, value]) => {\n    acc[key] = {\n      label: (0,external_window_vendor_wp_i18n_namespaceObject.__)(value, 'dsm-supreme-modules-pro-for-divi')\n    };\n    return acc;\n  }, {});\n  const {\n    categories\n  } = use_media_category();\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"content_source\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Images', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_use_dynamic_images'),\n    attrName: \"dsm_use_dynamic_images.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Dynamic images', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pull images from the media library by attachment category. When off, you pick images manually below.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_include_categories'),\n    attrName: \"dsm_include_categories.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Categories', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Only images in these attachment categories are included.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsm_use_dynamic_images\n  }, (0,lodash.isEmpty)(categories) ? /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.WarningContainer, {\n    name: \"categories\",\n    value: (0,external_window_vendor_wp_i18n_namespaceObject.__)('No categories found. Create attachment categories first.', 'dsm-supreme-modules-pro-for-divi')\n  }) : /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.CheckboxesContainer, {\n    options: categories.map(category => ({\n      value: String(category.id),\n      label: category.name\n    }))\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_query_order'),\n    attrName: \"dsm_query_order.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Sort order', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Order of images when using dynamic images.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmUseDynamicImages\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      ASC: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Ascending', 'dsm-supreme-modules-pro-for-divi')\n      },\n      DSC: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Descending', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_total_number_images'),\n    attrName: \"dsm_total_number_images.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Max images', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Caps how many images are loaded when using dynamic images. A category (or combined query) can match dozens or hundreds of files; limiting the total keeps the page lighter, reduces HTTP requests and script work (layout, shuffle, lightbox), and makes the Visual Builder preview faster.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmUseDynamicImages\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 10000,\n    step: 1,\n    defaultUnit: ''\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('gallery_ids'),\n    attrName: \"gallery_ids.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Gallery images', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Upload and reorder images with drag and drop.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    visible: 'on' !== dsmUseDynamicImages\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadGalleryContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_image_sizes'),\n    attrName: \"dsm_image_sizes.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image size', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('WordPress image size for the grid. Use Medium or Large for faster loads; Full size is only recommended for small galleries. Lightbox still opens the full image.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: imageSizesOptions\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"grid_layout\",\n    preset: \"default\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Grid layout', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_number_of_columns'),\n    attrName: \"dsm_number_of_columns.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Columns', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Number of columns across the gallery.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      1: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('1', 'dsm-supreme-modules-pro-for-divi')\n      },\n      2: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('2', 'dsm-supreme-modules-pro-for-divi')\n      },\n      3: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('3', 'dsm-supreme-modules-pro-for-divi')\n      },\n      4: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('4', 'dsm-supreme-modules-pro-for-divi')\n      },\n      5: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('5', 'dsm-supreme-modules-pro-for-divi')\n      },\n      6: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('6', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_column_gap'),\n    attrName: \"dsm_column_gap.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Column gap', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Space between columns.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    step: 1,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_row_gap'),\n    attrName: \"dsm_row_gap.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Row gap', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Space between rows.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    step: 1,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_custom_row_height'),\n    attrName: \"dsm_custom_row_height.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Uniform row height', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Force each row to share the same height.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_row_height'),\n    attrName: \"dsm_row_height.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Row height', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fixed height for each row when uniform row height is on.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmCustomRowHeight\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 500,\n    step: 1,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_layout'),\n    attrName: \"dsm_layout.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Item layout', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Card shows text below the image; overlay shows text on hover.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      card: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Card', 'dsm-supreme-modules-pro-for-divi')\n      },\n      overlay: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_speed'),\n    attrName: \"dsm_speed.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Filter animation', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Duration when items shuffle or filter (milliseconds).', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 5000,\n    step: 1,\n    defaultUnit: ''\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"overlay_options\",\n    preset: \"default\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay layout', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'overlay' === dsmLayout\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_auto_height'),\n    attrName: \"dsm_auto_height.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Auto image height', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Let image height follow the media. Turn off to set a fixed height.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_image_height'),\n    attrName: \"dsm_image_height.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image height', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fixed height for the image area when auto height is off.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'overlay' === dsmLayout && !isDsmToggleOn(dsmAutoHeight)\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 500,\n    step: 1,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_hover_style'),\n    attrName: \"dsm_hover_style.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hover effect', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('How the overlay appears on hover.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      none: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('None', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fade_in: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade in', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zoom_in: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom in', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_hover_transition'),\n    attrName: \"dsm_hover_transition.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hover transition', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Length of the hover animation.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 4000,\n    step: 1,\n    defaultUnit: 'ms'\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"category_filters\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Filter tabs', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_show_filterable_gallery'),\n    attrName: \"dsm_show_filterable_gallery.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show filter tabs', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Category tabs above the gallery to filter items.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_sortby'),\n    attrName: \"dsm_sortby.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tab order', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('How category tabs are sorted.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: showFilterTabs\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      asc: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('A–Z', 'dsm-supreme-modules-pro-for-divi')\n      },\n      desc: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Z–A', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rand: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Random', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_show_all_images_text'),\n    attrName: \"dsm_show_all_images_text.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show \"All\" Tab', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show a tab that displays every image.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: showFilterTabs\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_filterable_gallery_all_text'),\n    attrName: \"dsm_filterable_gallery_all_text.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('“All” tab label', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Label for the “All” tab.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: showFilterTabs && showAllTabOn,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"gallery_text\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Gallery text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_show_title'),\n    attrName: \"dsm_show_title.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show image title from the media library.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_show_caption'),\n    attrName: \"dsm_show_caption.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Caption', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show caption from the media library.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_show_description'),\n    attrName: \"dsm_show_description.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Description', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show description from the media library.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"lightbox\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Lightbox', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_use_lightbox'),\n    attrName: \"dsm_use_lightbox.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enable lightbox', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Open images in a lightbox when clicked.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_show_title_lightbox'),\n    attrName: \"dsm_show_title_lightbox.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show title', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Include the image title in the lightbox.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmUseLightbox\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_show_caption_lightbox'),\n    attrName: \"dsm_show_caption_lightbox.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show caption', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Include the caption in the lightbox.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmUseLightbox\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_show_description_lightbox'),\n    attrName: \"dsm_show_description_lightbox.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show description', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Include the description in the lightbox.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmUseLightbox\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"animation\",\n    preset: \"default\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animation', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_use_zoom_on_hover'),\n    attrName: \"dsm_use_zoom_on_hover.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom image on hover', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slight zoom on the image when hovering the item.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"pagination\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pagination', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_show_pagination'),\n    attrName: \"dsm_show_pagination.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enable pagination', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Split the gallery across pages or a load-more control.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_per_page'),\n    attrName: \"dsm_per_page.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Items per page', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('How many images appear before paginating.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmShowPagination\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    step: 1,\n    defaultUnit: ''\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_pagination_type'),\n    attrName: \"dsm_pagination_type.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Type', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Load more button or numbered page links.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmShowPagination\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      load_more: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Load more', 'dsm-supreme-modules-pro-for-divi')\n      },\n      number: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Numbered', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_load_more_text'),\n    attrName: \"dsm_load_more_text.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Load more button text', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Label on the load more button.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmShowPagination && 'load_more' === dsmPaginationType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_pagination_prev_text'),\n    attrName: \"dsm_pagination_prev_text.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Previous label', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Label for the previous page control.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmShowPagination && 'number' === dsmPaginationType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_pagination_next_text'),\n    attrName: \"dsm_pagination_next_text.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Next label', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Label for the next page control.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmShowPagination && 'number' === dsmPaginationType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_tidy_up_pagination'),\n    attrName: \"dsm_tidy_up_pagination.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Compact page numbers', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shorten long page lists with ellipsis when there are many pages.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmShowPagination && 'number' === dsmPaginationType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const filterable_gallery_settings_content = (filterable_gallery_settings_content_SettingsContent);\n;// ./packages/module-library/filterable-gallery/settings-design.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\nfunction filterable_gallery_settings_design_SettingsDesign({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  const dsmLayout = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_layout?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"design_gallery_text\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Gallery text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"header.decoration.font\",\n    defaultAttr: fgHeaderFontGroupDefaultAttr,\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: true\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"dsm_caption.decoration.font\",\n    defaultAttr: fgCaptionFontGroupDefaultAttr,\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Caption', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Caption', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"dsm_description.decoration.font\",\n    defaultAttr: fgDescriptionFontGroupDefaultAttr,\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Description', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Description', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"design_gallery_text_wrapper\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Wrapper', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_content_wrapper_margin.decoration.spacing\",\n    grouped: false,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Margin around the title, caption, and description block.', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      padding: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_content_wrapper_padding.decoration.spacing\",\n    grouped: false,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Padding inside the text block.', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"content_wrapper_style.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"content_wrapper_style.decoration.boxShadow\",\n    grouped: false\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"card\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Card', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_card_bg_color'),\n    attrName: \"dsm_card_bg_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background behind the image and text (card layout).', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_card_padding.decoration.spacing\",\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Padding inside the card.', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"card_style.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"card_style.decoration.boxShadow\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"image\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_image_wrapper_margin.decoration.spacing\",\n    grouped: false,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Margin around the image.', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      padding: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_image_wrapper_padding.decoration.spacing\",\n    grouped: false,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Padding around the image.', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"image_style.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"image_style.decoration.boxShadow\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"overlay\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay (hover)', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'overlay' === dsmLayout\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_overlay_color'),\n    attrName: \"dsm_overlay_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay background', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Color behind overlay text when using overlay layout.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_overlay_padding.decoration.spacing\",\n    grouped: false,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Padding inside the overlay content.', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"filter_tabs\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Filter tabs', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"filter_tabs_layout\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Layout', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_category_alignment'),\n    attrName: \"dsm_category_alignment.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Align the row of category tabs.', 'dsm-supreme-modules-pro-for-divi'),\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_category_margin.decoration.spacing\",\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Margin around each tab.', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      padding: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_category_padding.decoration.spacing\",\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Padding inside each tab.', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"filter_tabs_default\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Default tab', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_category_inactive_bg_color'),\n    attrName: \"dsm_category_inactive_bg_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background for tabs that are not selected.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_category_inactive_color'),\n    attrName: \"dsm_category_inactive_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text color on inactive tabs.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"category_tab_style.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"category_tab_style.decoration.boxShadow\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"filter_tabs_active\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Active tab', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_category_active_bg_color'),\n    attrName: \"dsm_category_active_bg_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background for the selected tab.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_category_active_color'),\n    attrName: \"dsm_category_active_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text color on the selected tab.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"category_tab_active_style.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"category_tab_active_style.decoration.boxShadow\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"filter_tabs_text\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"dsm_category.decoration.font\",\n    defaultAttr: fgCategoryFontGroupDefaultAttr,\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tab text', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      },\n      color: {\n        render: false\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"pagination_numbers\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Numbered pagination', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"pagination_numbers_layout\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Layout', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_pagination_alignment'),\n    attrName: \"dsm_pagination_alignment.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Align numbered pagination within the module.', 'dsm-supreme-modules-pro-for-divi'),\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_pagination_margin.decoration.spacing\",\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Margin around the pagination row.', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      padding: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_pagination_padding.decoration.spacing\",\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Padding inside each page link.', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"pagination_numbers_default\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Default page', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_pagination_inactive_bg_color'),\n    attrName: \"dsm_pagination_inactive_bg_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background for page links that are not active.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_pagination_inactive_color'),\n    attrName: \"dsm_pagination_inactive_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text color on inactive page links.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"pagination_style.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"pagination_style.decoration.boxShadow\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"pagination_numbers_active\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Active page', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_pagination_active_bg_color'),\n    attrName: \"dsm_pagination_active_bg_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background for the current page number.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_pagination_active_color'),\n    attrName: \"dsm_pagination_active_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text color on the current page.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"pagination_active_style.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"pagination_active_style.decoration.boxShadow\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"pagination_numbers_text\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"dsm_pagination.decoration.font\",\n    defaultAttr: fgPaginationFontGroupDefaultAttr,\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Page numbers', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"load_more\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Load more button', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_load_more_bg_color'),\n    attrName: \"dsm_load_more_bg_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button background color.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_load_more_margin.decoration.spacing\",\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Margin around the button.', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      padding: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_load_more_padding.decoration.spacing\",\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Padding inside the button.', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: fgFieldDefaultInnerContent('dsm_loadmore_alignment'),\n    attrName: \"dsm_loadmore_alignment.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Align the load more button.', 'dsm-supreme-modules-pro-for-divi'),\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"dsm_load_more.decoration.font\",\n    defaultAttr: fgLoadMoreFontGroupDefaultAttr,\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button text', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"loadmore_style.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"loadmore_style.decoration.boxShadow\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"spacing\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Spacing', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const filterable_gallery_settings_design = (filterable_gallery_settings_design_SettingsDesign);\n;// ./packages/module-library/filterable-gallery/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction filterable_gallery_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_filterable_gallery\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const filterable_gallery_settings_advanced = (filterable_gallery_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/filterable-gallery/module-styles.js\n\n\n\n\n\n/**\n * Range leaf or string to a single CSS dimension for gap math.\n *\n * @param {unknown} raw innerContent leaf value.\n * @return {string} e.g. 10px or empty.\n */\nfunction dsmFilterableGalleryGapCssToken(raw) {\n  if (raw === undefined || raw === null || raw === '') {\n    return '';\n  }\n  if (typeof raw === 'string') {\n    const t = raw.trim();\n    return t !== '' ? t : '';\n  }\n  if (typeof raw === 'object' && raw !== null && 'value' in raw) {\n    const v = raw.value;\n    if (v === undefined || v === null || String(v).trim() === '') {\n      return '';\n    }\n    const u = typeof raw.unit === 'string' && raw.unit !== '' ? raw.unit : 'px';\n    return `${String(v).trim()}${u}`;\n  }\n  return String(raw).trim();\n}\n\n/**\n * Column gap innerContent leaf for a breakpoint (tablet → desktop, phone → tablet → desktop).\n *\n * @param {Record<string, unknown>|undefined} innerContent `dsm_column_gap.innerContent`.\n * @param {string}                             breakpoint   desktop|tablet|phone.\n * @return {unknown} Leaf for {@link dsmFilterableGalleryGapCssToken}.\n */\nfunction dsmFilterableGalleryGapLeafForBreakpoint(innerContent, breakpoint) {\n  if (!innerContent || typeof innerContent !== 'object') {\n    return undefined;\n  }\n  const bp = breakpoint === 'tablet' || breakpoint === 'phone' ? breakpoint : 'desktop';\n  const bucket = innerContent[bp];\n  let leaf = bucket && typeof bucket === 'object' && 'value' in bucket ? bucket.value : undefined;\n  if ((leaf === undefined || leaf === null || leaf === '') && 'tablet' === bp) {\n    const desk = innerContent.desktop;\n    leaf = desk && typeof desk === 'object' && 'value' in desk ? desk.value : undefined;\n  }\n  if ((leaf === undefined || leaf === null || leaf === '') && 'phone' === bp) {\n    const tab = innerContent.tablet;\n    const desk = innerContent.desktop;\n    leaf = tab && typeof tab === 'object' && 'value' in tab ? tab.value : desk && typeof desk === 'object' && 'value' in desk ? desk.value : undefined;\n  }\n  return leaf;\n}\n\n/**\n * Divi Toggle / yes-no leaf from innerContent (`on`, `off`, omitted default-off).\n *\n * @param {unknown} raw Active breakpoint value from {@link getAttrByMode}.\n * @return {boolean}\n */\nfunction dsmFgIsToggleOn(raw) {\n  return raw === true || raw === 'on' || raw === 'yes' || raw === 1 || typeof raw === 'string' && ['on', 'yes', 'true', '1'].includes(raw.trim().toLowerCase());\n}\n\n/**\n * React function component for rendering module style.\n */\nconst filterable_gallery_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  const dsm_auto_height = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_auto_height?.innerContent);\n  const dsm_custom_row_height = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_custom_row_height?.innerContent);\n  const dsm_layout = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_layout?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextStyle, {\n    selector: orderClass,\n    attr: attrs?.module?.advanced?.text\n  }), elements.style({\n    attrName: 'header'\n  }), elements.style({\n    attrName: 'dsm_caption'\n  }), elements.style({\n    attrName: 'dsm_description'\n  }), elements.style({\n    attrName: 'dsm_overlay_padding'\n  }), elements.style({\n    attrName: 'dsm_category_margin'\n  }), elements.style({\n    attrName: 'dsm_category_padding'\n  }), elements.style({\n    attrName: 'dsm_category'\n  }), elements.style({\n    attrName: 'category_tab_style'\n  }), elements.style({\n    attrName: 'category_tab_active_style'\n  }), elements.style({\n    attrName: 'card_style'\n  }), elements.style({\n    attrName: 'loadmore_style'\n  }), elements.style({\n    attrName: 'dsm_load_more'\n  }), elements.style({\n    attrName: 'dsm_load_more_padding'\n  }), elements.style({\n    attrName: 'dsm_load_more_margin'\n  }), elements.style({\n    attrName: 'dsm_pagination'\n  }), elements.style({\n    attrName: 'pagination_style'\n  }), elements.style({\n    attrName: 'pagination_active_style'\n  }), elements.style({\n    attrName: 'dsm_pagination_padding'\n  }), elements.style({\n    attrName: 'dsm_pagination_margin'\n  }), elements.style({\n    attrName: 'card_style'\n  }), elements.style({\n    attrName: 'dsm_card_padding'\n  }), elements.style({\n    attrName: 'dsm_image_wrapper_margin'\n  }), elements.style({\n    attrName: 'dsm_image_wrapper_padding'\n  }), elements.style({\n    attrName: 'image_style'\n  }), elements.style({\n    attrName: 'dsm_content_wrapper_margin'\n  }), elements.style({\n    attrName: 'dsm_content_wrapper_padding'\n  }), elements.style({\n    attrName: 'content_wrapper_style'\n  }), 'on' === dsm_custom_row_height && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-filterable-gallery-container .dsm-filterable-gallery-item`,\n    attr: attrs?.dsm_row_height?.innerContent,\n    property: \"min-height\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-filterable-gallery-item .dsm-filterable-gallery-inner-item`,\n    attr: attrs?.dsm_card_bg_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-filterable-gallery-container .dsm-filterable-gallery-item`,\n    attr: attrs?.dsm_row_gap?.innerContent,\n    property: \"margin-bottom\"\n  }), !dsmFgIsToggleOn(dsm_auto_height) && 'overlay' === dsm_layout && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-filterable-gallery-container .dsm-filterable-gallery-item .dsm-filterable-gallery-image-wrapper img`,\n    attr: attrs?.dsm_image_height?.innerContent,\n    property: \"height\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-filterable-gallery-container .dsm-filterable-gallery-item:hover .dsm-filterable-gallery-image-wrapper::before`,\n    attr: attrs?.dsm_overlay_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-filterable-gallery-container .dsm-filterable-gallery-item .dsm-filterable-gallery-image-wrapper::before, ${orderClass} .dsm-filterable-gallery-container .dsm-filterable-gallery-item .dsm-filterable-gallery-content-wrapper`,\n    attr: attrs?.dsm_hover_transition?.innerContent,\n    property: \"transition\"\n  }), 'on' === dsm_custom_row_height && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-filterable-gallery-container .dsm-filterable-gallery-item:hover .dsm-filterable-gallery-image-wrapper::before`,\n    attr: attrs?.dsm_overlay_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-filterable-gallery-container .dsm-filterable-gallery-item`,\n    attr: attrs?.dsm_number_of_columns?.innerContent,\n    declarationFunction: attr => {\n      var _attr$attrValue, _ref, _attr$breakpoint;\n      const cols = Math.max(1, parseInt(String((_attr$attrValue = attr?.attrValue) !== null && _attr$attrValue !== void 0 ? _attr$attrValue : '1'), 10) || 1);\n      const bpRaw = (_ref = (_attr$breakpoint = attr?.breakpoint) !== null && _attr$breakpoint !== void 0 ? _attr$breakpoint : mode) !== null && _ref !== void 0 ? _ref : 'desktop';\n      const bp = bpRaw === 'tablet' || bpRaw === 'phone' ? bpRaw : 'desktop';\n      const gapLeaf = dsmFilterableGalleryGapLeafForBreakpoint(attrs?.dsm_column_gap?.innerContent, bp);\n      let gapToken = dsmFilterableGalleryGapCssToken(gapLeaf);\n      if (!gapToken) {\n        gapToken = '0px';\n      }\n      const slots = Math.max(0, cols - 1);\n      const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n        returnType: 'string',\n        important: true\n      });\n      declarations.add('width', `calc((100% - ${slots} * ${gapToken}) / ${cols})`);\n      return declarations.value;\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-filterable-gallery-container .dsm-filterable-category-container`,\n    attr: attrs?.dsm_category_alignment?.innerContent,\n    declarationFunction: attr => {\n      const {\n        attrValue\n      } = attr;\n      const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n        returnType: 'string',\n        important: true\n      });\n      if ('left' === attrValue) {\n        declarations.add('justify-content', 'flex-start');\n      }\n      if ('center' === attrValue) {\n        declarations.add('justify-content', 'center');\n      }\n      if ('right' === attrValue) {\n        declarations.add('justify-content', 'flex-end');\n      }\n      return declarations.value;\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-filterable-gallery-container .dsm-filterable-category-container .dsm-filterable-gallery-filter-item`,\n    attr: attrs?.dsm_category_inactive_bg_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-filterable-gallery-container .dsm-filterable-category-container .dsm-filterable-gallery-filter-item.dsm-active-filter`,\n    attr: attrs?.dsm_category_active_bg_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-filterable-gallery-container .dsm-filterable-category-container .dsm-filterable-gallery-filter-item`,\n    attr: attrs?.dsm_category_inactive_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-filterable-gallery-container .dsm-filterable-category-container .dsm-filterable-gallery-filter-item.dsm-active-filter`,\n    attr: attrs?.dsm_category_active_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-gallery-loadmore-button`,\n    attr: attrs?.dsm_load_more_bg_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-gallery-loadmore-container`,\n    attr: attrs?.dsm_loadmore_alignment?.innerContent,\n    declarationFunction: attr => {\n      const {\n        attrValue\n      } = attr;\n      const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n        returnType: 'string',\n        important: true\n      });\n      if ('left' === attrValue) {\n        declarations.add('justify-content', 'flex-start');\n      }\n      if ('center' === attrValue) {\n        declarations.add('justify-content', 'center');\n      }\n      if ('right' === attrValue) {\n        declarations.add('justify-content', 'flex-end');\n      }\n      return declarations.value;\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-gallery-number-pagination-container`,\n    attr: attrs?.dsm_pagination_alignment?.innerContent,\n    declarationFunction: attr => {\n      const {\n        attrValue\n      } = attr;\n      const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n        returnType: 'string',\n        important: true\n      });\n      if ('left' === attrValue) {\n        declarations.add('justify-content', 'flex-start');\n      }\n      if ('center' === attrValue) {\n        declarations.add('justify-content', 'center');\n      }\n      if ('right' === attrValue) {\n        declarations.add('justify-content', 'flex-end');\n      }\n      return declarations.value;\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-gallery-number-pagination-container .dsm-gallery-number-pagination`,\n    attr: attrs?.dsm_pagination_inactive_bg_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-gallery-number-pagination-container .dsm-gallery-number-pagination.dsm-active-pagination-item`,\n    attr: attrs?.dsm_pagination_active_bg_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-gallery-number-pagination-container .dsm-gallery-number-pagination`,\n    attr: attrs?.dsm_pagination_inactive_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-gallery-number-pagination-container .dsm-gallery-number-pagination.dsm-active-pagination-item`,\n    attr: attrs?.dsm_pagination_active_color?.innerContent,\n    property: \"color\"\n  }));\n};\n;// ./packages/module-library/filterable-gallery/filterable-gallery-magnific-title-src.js\n/**\n * Builds Magnific Popup `image.titleSrc` HTML from `.dsm-filterable-gallery-item`\n * `data-lightbox_*` attributes (matches PHP output + REST-derived VB attrs).\n *\n * @package DiviSupreme\n */\n\n/**\n * @param {HTMLElement} rootEl Gallery item root (delegated Magnific element).\n * @return {string} Safe fragment for Magnific title region (`allowHTMLInTemplate`).\n */\nfunction dsmFgMagnificLightboxTitleHtml(rootEl) {\n  var _rootEl$getAttribute, _rootEl$getAttribute2, _rootEl$getAttribute3;\n  if (!rootEl || typeof rootEl.getAttribute !== 'function') {\n    return '';\n  }\n  const lightboxTitle = (_rootEl$getAttribute = rootEl.getAttribute('data-lightbox_title')) !== null && _rootEl$getAttribute !== void 0 ? _rootEl$getAttribute : '';\n  const lightboxCaption = (_rootEl$getAttribute2 = rootEl.getAttribute('data-lightbox_caption')) !== null && _rootEl$getAttribute2 !== void 0 ? _rootEl$getAttribute2 : '';\n  const lightboxDescription = (_rootEl$getAttribute3 = rootEl.getAttribute('data-lightbox_description')) !== null && _rootEl$getAttribute3 !== void 0 ? _rootEl$getAttribute3 : '';\n  const encodeCharRefs = str => str.replace(/[^]/g, c => '&#' + c.charCodeAt(0) + ';');\n  let filterableContent = '';\n  if (lightboxTitle !== '') {\n    filterableContent += encodeCharRefs(lightboxTitle);\n  }\n  if (lightboxCaption !== '') {\n    filterableContent += \"<small class='dsm-filterable-image-caption'>\" + encodeCharRefs(lightboxCaption) + '</small>';\n  }\n  if (lightboxDescription !== '') {\n    filterableContent += \"<small class='dsm-filterableimage-description'>\" + encodeCharRefs(lightboxDescription) + '</small>';\n  }\n  return filterableContent;\n}\n;// ./packages/module-library/filterable-gallery/filterable-gallery-lightbox-scope.js\n/**\n * Scope Magnific Popup gallery navigation to the active filter + pagination set.\n *\n * Magnific delegate mode collects every matching element in the container on each\n * click. Toggle `dsm-fg-lightbox-in-set` so only currently visible gallery items\n * match the delegate selector (see frontend-init.js / edit.js).\n *\n * @package DiviSupreme\n */\n\n/** Magnific delegate — only items in the active filtered set. */\nconst DSM_FG_LIGHTBOX_DELEGATE = '.dsm-filterable-gallery-item.dsm-fg-lightbox-in-set[data-mfp-src]';\n\n/**\n * Whether a gallery item belongs to the active category filter.\n *\n * @param {string} groupsAttr Comma-separated category slugs from `data-groups`.\n * @param {string} category   Active filter slug or `all`.\n * @return {boolean}\n */\nfunction dsmFgItemMatchesFilterCategory(groupsAttr, category) {\n  if (category === 'all') {\n    return true;\n  }\n  return String(groupsAttr || '').split(',').includes(category);\n}\n\n/**\n * Whether a gallery item is on the active pagination page (matches `applyFilter`).\n *\n * @param {string}  inpageAttr       `data-inpage` value.\n * @param {number}  currentPage      Active page from container `data-currentpage`.\n * @param {boolean} usePagination    Container `data-showpagination === 'on'`.\n * @param {string}  paginationType   Container `data-paginationtype`.\n * @return {boolean}\n */\nfunction dsmFgItemMatchesFilterPage(inpageAttr, currentPage, usePagination, paginationType) {\n  const elementPage = Number(inpageAttr);\n  if (!usePagination) {\n    return !inpageAttr || Number.isFinite(elementPage) && elementPage !== -1;\n  }\n  if (!Number.isFinite(elementPage) || elementPage === -1) {\n    return false;\n  }\n  if (paginationType === 'number') {\n    return elementPage === currentPage;\n  }\n  return elementPage <= currentPage;\n}\n\n/**\n * Update which items participate in the Magnific gallery for the current filter.\n *\n * @param {Element|null} itemsContainer `.dsm-filterable-gallery-inner-container`.\n * @param {string}       activeCategory Active category slug or `all`.\n * @param {Object}       pagination     Pagination state from the gallery container.\n * @param {number}       pagination.currentPage\n * @param {boolean}      pagination.usePagination\n * @param {string}       pagination.paginationType\n * @return {void}\n */\nfunction dsmFgSyncLightboxGallerySet(itemsContainer, activeCategory, {\n  currentPage,\n  usePagination,\n  paginationType\n}) {\n  if (!itemsContainer) {\n    return;\n  }\n  const items = itemsContainer.querySelectorAll('.dsm-filterable-gallery-item[data-mfp-src]');\n  items.forEach(item => {\n    const inCategory = dsmFgItemMatchesFilterCategory(item.dataset.groups, activeCategory);\n    const inPage = dsmFgItemMatchesFilterPage(item.dataset.inpage, currentPage, usePagination, paginationType);\n    item.classList.toggle('dsm-fg-lightbox-in-set', inCategory && inPage);\n  });\n}\n;// ./packages/module-library/filterable-gallery/edit.js\nfunction filterable_gallery_edit_extends() {\n  return filterable_gallery_edit_extends = Object.assign ? Object.assign.bind() : function (n) {\n    for (var e = 1; e < arguments.length; e++) {\n      var t = arguments[e];\n      for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n    }\n    return n;\n  }, filterable_gallery_edit_extends.apply(null, arguments);\n}\n\n\n\n\n\n\n\n\n// Divi package dependencies.\n\n\n// Custom dependencies.\n\n\n\n\n/**\n * Attachment category IDs from module attrs may be an array, object (indexed map), or string.\n *\n * @param {unknown} raw - `dsm_include_categories` desktop value.\n * @return {number[]} Numeric term IDs for REST hooks.\n */\nfunction normalizeAttachmentCategoryIds(raw) {\n  if (raw == null) {\n    return [];\n  }\n  if (Array.isArray(raw)) {\n    return raw.map(id => Number(id)).filter(n => !Number.isNaN(n));\n  }\n  if (typeof raw === 'string') {\n    return raw.split(',').map(s => s.trim()).filter(Boolean).map(Number).filter(n => !Number.isNaN(n));\n  }\n  if (typeof raw === 'object') {\n    return Object.values(raw).map(Number).filter(n => !Number.isNaN(n));\n  }\n  return [];\n}\n\n/**\n * Apply category filter to a Shuffle instance (VB + after layout).\n *\n * @param {object|null} shuffle  - Shuffle instance (`window.Shuffle`).\n * @param {string}      category - Lowercase category slug or `all`.\n */\nfunction applyShuffleCategoryFilter(shuffle, category) {\n  if (!shuffle) {\n    return;\n  }\n  if (category === 'all') {\n    shuffle.filter(() => true);\n    return;\n  }\n  shuffle.filter(el => {\n    const raw = el.dataset.groups || '';\n    return raw.split(',').map(s => s.trim()).filter(Boolean).includes(category);\n  });\n}\n\n/**\n * Numeric column gap from innerContent leaf (Shuffle `gutterWidth`, px).\n *\n * @param {unknown} leaf\n * @return {number}\n */\nfunction dsmFgGapLeafToPx(leaf) {\n  if (leaf === undefined || leaf === null || leaf === '') {\n    return 0;\n  }\n  if (typeof leaf === 'number' && Number.isFinite(leaf)) {\n    return Math.max(0, leaf);\n  }\n  if (typeof leaf === 'string') {\n    const n = parseFloat(leaf.replace(/[^0-9.-]/g, ''));\n    return Number.isFinite(n) ? Math.max(0, n) : 0;\n  }\n  if (typeof leaf === 'object' && leaf !== null && 'value' in leaf) {\n    const n = parseFloat(String(leaf.value).replace(/[^0-9.-]/g, ''));\n    return Number.isFinite(n) ? Math.max(0, n) : 0;\n  }\n  return 0;\n}\n\n/**\n * @param {Record<string, unknown>|undefined} innerContent `dsm_column_gap.innerContent`.\n * @return {{ desktop: string, tablet: string, phone: string }}\n */\nfunction dsmFgShuffleGutterDataAttrs(innerContent) {\n  if (!innerContent || typeof innerContent !== 'object') {\n    return {\n      desktop: '0',\n      tablet: '0',\n      phone: '0'\n    };\n  }\n  const d = dsmFgGapLeafToPx(/** @type {{ value?: unknown }} */innerContent.desktop?.value);\n  const t0 = dsmFgGapLeafToPx(/** @type {{ value?: unknown }} */innerContent.tablet?.value);\n  const p0 = dsmFgGapLeafToPx(/** @type {{ value?: unknown }} */innerContent.phone?.value);\n  const t = t0 || d;\n  const p = p0 || t || d;\n  return {\n    desktop: String(d),\n    tablet: String(t),\n    phone: String(p)\n  };\n}\n\n/**\n * @param {Element|null} el\n * @return {number}\n */\nfunction dsmFgReadShuffleGutterPx(el) {\n  if (!el || !el.dataset) {\n    return 0;\n  }\n  const iw = typeof window !== 'undefined' ? window.innerWidth : 1200;\n  let raw = el.dataset.shuffleGutterDesktop || '0';\n  if (iw <= 767) {\n    raw = el.dataset.shuffleGutterPhone || el.dataset.shuffleGutterTablet || raw;\n  } else if (iw <= 980) {\n    raw = el.dataset.shuffleGutterTablet || raw;\n  }\n  const n = parseFloat(String(raw).replace(/[^0-9.-]/g, ''));\n  return Number.isFinite(n) ? Math.max(0, n) : 0;\n}\n\n/**\n * Approximate WordPress `wp_strip_all_tags()` for VB overlay parity with PHP.\n *\n * @param {string|undefined} html HTML fragment from REST rendered fields.\n * @return {string} Concatenated text nodes.\n */\nfunction dsmFgWpStripAllTagsApprox(html) {\n  if (!html || typeof html !== 'string') {\n    return '';\n  }\n  if (typeof DOMParser !== 'undefined') {\n    try {\n      const doc = new DOMParser().parseFromString(html, 'text/html');\n      return doc.body.textContent || '';\n    } catch (e) {\n      // Fall through for malformed markup.\n    }\n  }\n  return html.replace(/<[^>]*>/g, '');\n}\n\n/**\n * True when stripping tags yields visible text (matches `FilterableGallery.php` overlay guards).\n *\n * @param {string|undefined} html\n * @return {boolean}\n */\nfunction dsmFgHasOverlayPlainText(html) {\n  const plain = dsmFgWpStripAllTagsApprox(html).replace(/\\u00a0/gi, ' ').trim();\n  return plain.length > 0;\n}\n\n/**\n * Plain string for `data-lightbox_*` attributes (no HTML markup).\n *\n * @param {string|undefined} html\n * @return {string}\n */\nfunction dsmFgPlainForLightboxDataAttr(html) {\n  return dsmFgWpStripAllTagsApprox(html).replace(/\\u00a0/gi, ' ').trim();\n}\n\n/**\n * Strip WordPress media-library attachment preview blocks from description HTML so the VB overlay\n * matches the frontend (REST `description.rendered` includes `<p class=\"attachment\">…</p>`).\n *\n * @param {string|undefined} html Attachment description markup from REST.\n * @return {string} Fragment safe for overlay `<RawHTML />`.\n */\nfunction dsmFgStripWpAttachmentPreviewFromDescription(html) {\n  if (!html || typeof html !== 'string') {\n    return '';\n  }\n  if (typeof DOMParser === 'undefined') {\n    return html;\n  }\n  try {\n    const doc = new DOMParser().parseFromString(`<div class=\"dsm-fg-desc-temp\">${html}</div>`, 'text/html');\n    const wrap = doc.body.querySelector('.dsm-fg-desc-temp');\n    if (!wrap) {\n      return html.trim();\n    }\n    wrap.querySelectorAll('p.attachment, div.attachment, figure.wp-caption').forEach(el => el.remove());\n    return wrap.innerHTML.trim();\n  } catch (e) {\n    return html.trim();\n  }\n}\n\n/**\n * React function component for registering module script data.\n */\nconst filterable_gallery_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction filterable_gallery_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  var _getAttrByMode;\n  const [activeCategory, setActiveCategory] = (0,external_window_vendor_wp_element_namespaceObject.useState)('all');\n  const activeCategoryRef = (0,external_vendor_React_.useRef)(activeCategory);\n  activeCategoryRef.current = activeCategory;\n  const containerRef = (0,external_vendor_React_.useRef)(null);\n  const shuffleRef = (0,external_vendor_React_.useRef)(null);\n  const gallery_ids = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.gallery_ids?.innerContent);\n  const dsm_speed = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_speed?.innerContent);\n  const dsm_number_of_columns = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_number_of_columns?.innerContent);\n  const dsm_column_gap = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_column_gap?.innerContent);\n  const shuffleGutterData = (0,external_vendor_React_.useMemo)(() => dsmFgShuffleGutterDataAttrs(attrs?.dsm_column_gap?.innerContent), [attrs?.dsm_column_gap?.innerContent]);\n  const dsm_row_gap = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_row_gap?.innerContent);\n  const dsm_layout = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_layout?.innerContent);\n  const dsm_hover_style = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_hover_style?.innerContent);\n  const HeadingLevel = attrs?.header?.decoration?.font?.font?.desktop?.value?.headingLevel;\n  const dsm_show_title = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_show_title?.innerContent);\n  const dsm_show_caption = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_show_caption?.innerContent);\n  const dsm_show_description = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_show_description?.innerContent);\n  const dsm_image_sizes = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_image_sizes?.innerContent);\n  const dsm_include_categories = attrs?.dsm_include_categories?.innerContent?.desktop?.value;\n  const dsm_use_dynamic_images = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_use_dynamic_images?.innerContent);\n  const dsm_use_lightbox = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_use_lightbox?.innerContent);\n  const dsm_show_title_lightbox = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_show_title_lightbox?.innerContent);\n  const dsm_show_caption_lightbox = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_show_caption_lightbox?.innerContent);\n  const dsm_show_description_lightbox = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_show_description_lightbox?.innerContent);\n  const dsm_show_filterable_gallery = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_show_filterable_gallery?.innerContent);\n  const dsm_show_all_images_text = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_show_all_images_text?.innerContent);\n  const dsm_filterable_gallery_all_text = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_filterable_gallery_all_text?.innerContent);\n  const dsm_use_zoom_on_hover = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_use_zoom_on_hover?.innerContent);\n  const dsm_show_pagination = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_show_pagination?.innerContent);\n  const dsm_pagination_type = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_pagination_type?.innerContent);\n  const dsm_load_more_text = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_load_more_text?.innerContent);\n  const dsm_content_wrapper_margin = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_content_wrapper_margin?.innerContent);\n  const dsm_content_wrapper_padding = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_content_wrapper_padding?.innerContent);\n  const dsm_pagination_prev_text = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_pagination_prev_text?.innerContent);\n  const dsm_pagination_next_text = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_pagination_next_text?.innerContent);\n  const dsm_per_page = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_per_page?.innerContent);\n  const dsm_tidy_up_pagination = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_tidy_up_pagination?.innerContent);\n  const isZoomOnHover = 'on' === dsm_use_zoom_on_hover ? 'dsm-image-hover' : '';\n  const dsm_sortby = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_sortby?.innerContent);\n  const dsm_custom_row_height = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_custom_row_height?.innerContent);\n  const dsm_row_height = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_row_height?.innerContent);\n  const dsm_card_padding = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_card_padding?.innerContent);\n  const orderRaw = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_query_order?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'ASC';\n  const parsedGalleryItems = 'on' !== dsm_use_dynamic_images ? gallery_ids?.split(',').map(Number) : [];\n  const includeCategory = normalizeAttachmentCategoryIds(dsm_include_categories);\n  const perPageNum = Math.max(1, parseInt(String(dsm_per_page !== null && dsm_per_page !== void 0 ? dsm_per_page : '10'), 10) || 10);\n  const {\n    loading,\n    error,\n    media\n  } = use_media({\n    order: orderRaw,\n    orderby: 'include',\n    category: includeCategory,\n    include: parsedGalleryItems,\n    perPage: perPageNum,\n    context: 'edit'\n  });\n  const totalPagesPreview = 'on' === dsm_show_pagination && media.length > 0 ? Math.max(1, Math.ceil(media.length / perPageNum)) : 1;\n\n  // Match FilterableGallery.php: tabs are unique category names from *this* gallery’s\n  // attachments only. `useMediaCategory( { include } )` hits /wp/v2/dsm-attachment-category\n  // without `include` and returns all terms site-wide — wrong for other module instances.\n  const filterTabCategories = (0,external_vendor_React_.useMemo)(() => {\n    const unique = new Set();\n    for (const item of media) {\n      for (const cat of (_item$dsm_attachment_ = item.dsm_attachment_categories) !== null && _item$dsm_attachment_ !== void 0 ? _item$dsm_attachment_ : []) {\n        var _item$dsm_attachment_;\n        const name = cat?.term_name;\n        if (name && typeof name === 'string') {\n          unique.add(name);\n        }\n      }\n    }\n    const names = Array.from(unique);\n    if (dsm_sortby === 'desc') {\n      names.sort((a, b) => b.localeCompare(a));\n    } else {\n      names.sort((a, b) => a.localeCompare(b));\n    }\n    return names.map(name => ({\n      name\n    }));\n  }, [media, dsm_sortby]);\n  const instancePrefix = (0,external_vendor_React_.useMemo)(() => 'dsm-fg-' + String(id).replace(/[^a-zA-Z0-9_-]/g, '-'), [id]);\n  const panelId = `${instancePrefix}-panel`;\n  const allTabId = `${instancePrefix}-tab-all`;\n  const hasFilterTabs = 'on' === dsm_show_filterable_gallery && !loading && media.length > 0 && ('on' === dsm_show_all_images_text || filterTabCategories.length > 0);\n  const activeTabIdForPanel = (0,external_vendor_React_.useMemo)(() => {\n    if (activeCategory === 'all' && 'on' === dsm_show_all_images_text) {\n      return allTabId;\n    }\n    return `${instancePrefix}-tab-${activeCategory.replace(/\\s+/g, '-')}`;\n  }, [activeCategory, allTabId, dsm_show_all_images_text, instancePrefix]);\n  (0,external_vendor_React_.useEffect)(() => {\n    if (loading || media.length === 0) {\n      return;\n    }\n    if ('on' !== dsm_show_all_images_text && filterTabCategories.length > 0) {\n      setActiveCategory(prev => {\n        if (prev === 'all') {\n          return filterTabCategories[0].name.toLowerCase();\n        }\n        return prev;\n      });\n    }\n  }, [loading, media.length, dsm_show_all_images_text, filterTabCategories]);\n  const refreshKey = [gallery_ids, dsm_speed, dsm_number_of_columns, dsm_column_gap, dsm_row_gap, dsm_layout, dsm_hover_style, dsm_show_title, dsm_show_caption, dsm_show_description, dsm_include_categories, dsm_use_dynamic_images, dsm_use_lightbox, dsm_show_title_lightbox, dsm_show_caption_lightbox, dsm_show_description_lightbox, dsm_row_height, dsm_custom_row_height, dsm_card_padding, dsm_content_wrapper_margin, dsm_content_wrapper_padding];\n  const mediaIdsKey = (0,external_vendor_React_.useMemo)(() => media.map(m => m.id).join(','), [media]);\n\n  // Shuffle must run after images have dimensions; VB loads async like the frontend.\n  (0,external_vendor_React_.useEffect)(() => {\n    const innerContainer = containerRef.current;\n    if (typeof window === 'undefined' || !window.Shuffle || loading || media.length === 0 || !innerContainer) {\n      if (shuffleRef.current) {\n        shuffleRef.current.destroy();\n        shuffleRef.current = null;\n      }\n      return;\n    }\n    let cancelled = false;\n    let resizeObserver;\n    let shuffleWinResizeTimer;\n    const onShuffleWindowResize = () => {\n      window.clearTimeout(shuffleWinResizeTimer);\n      shuffleWinResizeTimer = window.setTimeout(() => {\n        if (shuffleRef.current) {\n          try {\n            shuffleRef.current.update();\n          } catch (e) {\n            // Ignore if destroyed.\n          }\n        }\n      }, 150);\n    };\n    window.addEventListener('resize', onShuffleWindowResize);\n    const speedNum = Number(dsm_speed);\n    const shuffleSpeed = Number.isFinite(speedNum) ? speedNum : 250;\n    const teardownShuffle = () => {\n      if (shuffleRef.current) {\n        try {\n          shuffleRef.current.destroy();\n        } catch (e) {\n          // Ignore teardown errors in fast VB re-renders.\n        }\n        shuffleRef.current = null;\n      }\n    };\n    const mountShuffle = () => {\n      if (cancelled || !containerRef.current) {\n        return;\n      }\n      teardownShuffle();\n      try {\n        shuffleRef.current = new window.Shuffle(containerRef.current, {\n          itemSelector: '.dsm-filterable-gallery-item',\n          delimiter: ',',\n          speed: shuffleSpeed,\n          buffer: 1,\n          gutterWidth: () => dsmFgReadShuffleGutterPx(containerRef.current)\n        });\n        shuffleRef.current.update();\n        applyShuffleCategoryFilter(shuffleRef.current, activeCategoryRef.current);\n        dsmFgSyncLightboxGallerySet(containerRef.current, activeCategoryRef.current, {\n          currentPage: 1,\n          usePagination: false,\n          paginationType: 'number'\n        });\n      } catch (err) {\n        // eslint-disable-next-line no-console -- VB diagnostics\n        console.error('Filterable Gallery Shuffle:', err);\n      }\n    };\n    const imgLoad = imagesloaded_default()(innerContainer);\n    imgLoad.on('always', () => {\n      if (cancelled) {\n        return;\n      }\n      requestAnimationFrame(() => {\n        if (cancelled) {\n          return;\n        }\n        mountShuffle();\n      });\n    });\n    if (typeof ResizeObserver !== 'undefined') {\n      resizeObserver = new ResizeObserver(() => {\n        if (shuffleRef.current) {\n          shuffleRef.current.update();\n        }\n      });\n      resizeObserver.observe(innerContainer);\n    }\n    return () => {\n      cancelled = true;\n      window.removeEventListener('resize', onShuffleWindowResize);\n      window.clearTimeout(shuffleWinResizeTimer);\n      if (resizeObserver) {\n        resizeObserver.disconnect();\n      }\n      teardownShuffle();\n    };\n  }, [loading, mediaIdsKey, dsm_speed, dsm_number_of_columns, dsm_column_gap, dsm_row_gap, dsm_layout, dsm_row_height, dsm_custom_row_height, gallery_ids, dsm_include_categories, dsm_use_dynamic_images]);\n  (0,external_vendor_React_.useEffect)(() => {\n    if (!shuffleRef.current) {\n      return;\n    }\n    applyShuffleCategoryFilter(shuffleRef.current, activeCategory);\n    const innerContainer = containerRef.current;\n    if (innerContainer) {\n      dsmFgSyncLightboxGallerySet(innerContainer, activeCategory, {\n        currentPage: 1,\n        usePagination: false,\n        paginationType: 'number'\n      });\n    }\n  }, [activeCategory]);\n  (0,external_vendor_React_.useEffect)(() => {\n    // Match filterable-gallery-frontend-init.js (no wrapping `<a href={image}>` — avoids VB\n    // overlay/link quirks + Magnific zoom thumbnail clone). Title payload uses shared helper +\n    // `allowHTMLInTemplate`.\n    if (typeof jQuery === 'undefined' || typeof jQuery.fn.magnificPopup !== 'function') {\n      console.warn('jQuery or Magnific Popup is not loaded');\n      return;\n    }\n    const $ = jQuery;\n    const innerContainer = containerRef.current;\n    if (dsm_use_lightbox === 'on' && innerContainer) {\n      const $mfp = $(innerContainer);\n      if ($mfp.data('magnificPopup')) {\n        $mfp.magnificPopup('destroy');\n      }\n      $mfp.magnificPopup({\n        delegate: DSM_FG_LIGHTBOX_DELEGATE,\n        type: 'image',\n        mainClass: 'dsm-filterable-gallery-lightbox',\n        tLoading: 'Loading image ',\n        gallery: {\n          enabled: true,\n          navigateByImgClick: true,\n          preload: [0, 1]\n        },\n        image: {\n          titleSrc(item) {\n            return dsmFgMagnificLightboxTitleHtml(item.el[0]);\n          }\n        },\n        allowHTMLInTemplate: true\n      });\n      dsmFgSyncLightboxGallerySet(innerContainer, activeCategoryRef.current, {\n        currentPage: 1,\n        usePagination: false,\n        paginationType: 'number'\n      });\n    }\n    return () => {\n      if (innerContainer) {\n        const $mfp = $(innerContainer);\n        if ($mfp.data('magnificPopup')) {\n          $mfp.magnificPopup('destroy');\n        }\n      }\n    };\n  }, [dsm_use_lightbox, dsm_show_title_lightbox, dsm_show_caption_lightbox, dsm_show_description_lightbox]);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: filterable_gallery_edit_ModuleScriptData,\n    stylesComponent: filterable_gallery_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n      params.classnamesInstance.add(`dsm-filterable-gallery-layout-${dsm_layout}`);\n      params.classnamesInstance.add(`dsm-filterable-gallery-${dsm_hover_style}`);\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), loading && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_uiLibrary_namespaceObject.Loading, null), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: `dsm-filterable-gallery-container ${isZoomOnHover}`,\n    key: refreshKey.join(','),\n    role: \"region\",\n    \"aria-label\": (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image gallery', 'dsm-supreme-modules-pro-for-divi'),\n    \"data-paginationtype\": dsm_pagination_type !== null && dsm_pagination_type !== void 0 ? dsm_pagination_type : '',\n    \"data-currentpage\": \"1\",\n    \"data-per_page\": String(perPageNum),\n    \"data-use_lightbox\": dsm_use_lightbox !== null && dsm_use_lightbox !== void 0 ? dsm_use_lightbox : 'off',\n    \"data-totalpages\": String(totalPagesPreview),\n    \"data-speed\": String(dsm_speed !== null && dsm_speed !== void 0 ? dsm_speed : '250'),\n    \"data-showpagination\": dsm_show_pagination !== null && dsm_show_pagination !== void 0 ? dsm_show_pagination : 'off',\n    \"data-hasnextpage\": totalPagesPreview > 1 ? 'true' : 'false',\n    \"data-hasprevpage\": \"false\"\n  }, hasFilterTabs && /*#__PURE__*/external_vendor_React_default().createElement(\"ul\", {\n    className: \"dsm-filterable-category-container\",\n    role: \"tablist\",\n    \"aria-label\": (0,external_window_vendor_wp_i18n_namespaceObject.__)('Filter gallery by category', 'dsm-supreme-modules-pro-for-divi')\n  }, 'on' === dsm_show_all_images_text && /*#__PURE__*/external_vendor_React_default().createElement(\"li\", {\n    role: \"presentation\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"button\", {\n    type: \"button\",\n    id: allTabId,\n    role: \"tab\",\n    className: `dsm-filterable-gallery-filter-item ${activeCategory === 'all' ? 'dsm-active-filter' : ''}`,\n    \"aria-selected\": activeCategory === 'all',\n    \"aria-controls\": panelId,\n    \"data-category\": \"all\",\n    onClick: () => setActiveCategory('all')\n  }, dsm_filterable_gallery_all_text)), filterTabCategories.map(category => {\n    var _category$name$toLowe;\n    const slug = (_category$name$toLowe = category?.name?.toLowerCase()) !== null && _category$name$toLowe !== void 0 ? _category$name$toLowe : '';\n    const isActive = activeCategory === slug;\n    const tabId = `${instancePrefix}-tab-${slug.replace(/\\s+/g, '-')}`;\n    return /*#__PURE__*/external_vendor_React_default().createElement(\"li\", {\n      key: category.name,\n      role: \"presentation\"\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"button\", {\n      type: \"button\",\n      id: tabId,\n      role: \"tab\",\n      className: `dsm-filterable-gallery-filter-item ${isActive ? 'dsm-active-filter' : ''}`,\n      \"aria-selected\": isActive,\n      \"aria-controls\": panelId,\n      \"data-category\": slug,\n      onClick: () => setActiveCategory(slug)\n    }, category?.name));\n  })), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    ref: containerRef,\n    id: hasFilterTabs ? panelId : undefined,\n    className: \"dsm-filterable-gallery-inner-container\",\n    role: hasFilterTabs ? 'tabpanel' : undefined,\n    tabIndex: hasFilterTabs ? -1 : undefined,\n    \"aria-labelledby\": hasFilterTabs ? activeTabIdForPanel : undefined,\n    \"aria-live\": \"polite\",\n    \"data-shuffle-gutter-desktop\": shuffleGutterData.desktop,\n    \"data-shuffle-gutter-tablet\": shuffleGutterData.tablet,\n    \"data-shuffle-gutter-phone\": shuffleGutterData.phone\n  }, !loading && media.length > 0 && media?.map((item, index) => {\n    var _ref, _ref2, _item$description$ren, _item$title$rendered, _item$caption$rendere, _item$dsm_attachment_2, _item$title$rendered2, _item$title$rendered3;\n    const descriptionHtmlRaw = (_ref = (_ref2 = (_item$description$ren = item.description?.rendered) !== null && _item$description$ren !== void 0 ? _item$description$ren : item.description?.raw) !== null && _ref2 !== void 0 ? _ref2 : item?.custom_fields?.description) !== null && _ref !== void 0 ? _ref : '';\n    const descriptionHtmlForOverlay = dsmFgStripWpAttachmentPreviewFromDescription(descriptionHtmlRaw);\n    const hasContent = 'on' === dsm_show_title && dsmFgHasOverlayPlainText(item.title?.rendered) || 'on' === dsm_show_caption && dsmFgHasOverlayPlainText(item.caption?.rendered) || 'on' === dsm_show_description && dsmFgHasOverlayPlainText(descriptionHtmlForOverlay);\n    const getImageUrl = (mediaItem, size) => {\n      if (!mediaItem || !mediaItem.media_details || !mediaItem.media_details.sizes) {\n        return mediaItem?.source_url;\n      }\n      if (size === 'full') {\n        return mediaItem.source_url;\n      }\n      const sizeInfo = mediaItem.media_details.sizes[size];\n      return sizeInfo ? sizeInfo.source_url : mediaItem.source_url;\n    };\n    const gridImageUrl = getImageUrl(item, dsm_image_sizes);\n    const lightboxImageUrl = typeof item?.source_url === 'string' && item.source_url !== '' ? item.source_url : gridImageUrl;\n    const lightboxTitlePlain = dsmFgPlainForLightboxDataAttr((_item$title$rendered = item.title?.rendered) !== null && _item$title$rendered !== void 0 ? _item$title$rendered : '');\n    const lightboxCaptionPlain = dsmFgPlainForLightboxDataAttr((_item$caption$rendere = item.caption?.rendered) !== null && _item$caption$rendere !== void 0 ? _item$caption$rendere : '');\n    const lightboxDescriptionPlain = dsmFgPlainForLightboxDataAttr(descriptionHtmlRaw);\n    const galleryItemMarkup = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", filterable_gallery_edit_extends({\n      key: index,\n      className: \"dsm-filterable-gallery-item\",\n      \"data-groups\": ((_item$dsm_attachment_2 = item.dsm_attachment_categories) !== null && _item$dsm_attachment_2 !== void 0 ? _item$dsm_attachment_2 : []).map(cat => {\n        var _cat$term_name;\n        return String((_cat$term_name = cat?.term_name) !== null && _cat$term_name !== void 0 ? _cat$term_name : '').toLowerCase();\n      }).filter(Boolean).join(',')\n    }, dsm_use_lightbox === 'on' ? {\n      'data-mfp-src': lightboxImageUrl,\n      ...(dsm_show_title_lightbox === 'on' ? {\n        'data-lightbox_title': lightboxTitlePlain\n      } : {}),\n      ...(dsm_show_caption_lightbox === 'on' ? {\n        'data-lightbox_caption': lightboxCaptionPlain\n      } : {}),\n      ...(dsm_show_description_lightbox === 'on' ? {\n        'data-lightbox_description': lightboxDescriptionPlain\n      } : {})\n    } : {}), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"dsm-filterable-gallery-inner-item\"\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"dsm-filterable-gallery-image-wrapper\"\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n      src: gridImageUrl,\n      alt: decodeEntities((_item$title$rendered2 = item.title?.rendered) !== null && _item$title$rendered2 !== void 0 ? _item$title$rendered2 : ''),\n      loading: String(dsm_image_sizes !== null && dsm_image_sizes !== void 0 ? dsm_image_sizes : '') === 'full' ? 'lazy' : undefined,\n      decoding: \"async\"\n    })), hasContent && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"dsm-filterable-gallery-content-wrapper\"\n    }, dsm_show_title === 'on' && dsmFgHasOverlayPlainText(item.title?.rendered) && /*#__PURE__*/external_vendor_React_default().createElement(HeadingLevel, {\n      className: \"dsm-title dsm-filterable-gallery-title\"\n    }, decodeEntities((_item$title$rendered3 = item.title?.rendered) !== null && _item$title$rendered3 !== void 0 ? _item$title$rendered3 : '')), dsm_show_caption === 'on' && dsmFgHasOverlayPlainText(item.caption?.rendered) && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"dsm-caption dsm-filterable-gallery-caption\"\n    }, /*#__PURE__*/external_vendor_React_default().createElement(external_window_vendor_wp_element_namespaceObject.RawHTML, null, item.caption.rendered)), dsm_show_description === 'on' && dsmFgHasOverlayPlainText(descriptionHtmlForOverlay) && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"dsm-description dsm-filterable-gallery-description\"\n    }, /*#__PURE__*/external_vendor_React_default().createElement(external_window_vendor_wp_element_namespaceObject.RawHTML, null, descriptionHtmlForOverlay)))));\n    return galleryItemMarkup;\n  })), dsm_show_pagination === 'on' && dsm_pagination_type === 'load_more' && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-gallery-loadmore-container\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"button\", {\n    type: \"button\",\n    className: \"dsm-gallery-loadmore-button\"\n  }, dsm_load_more_text)), dsm_show_pagination === 'on' && dsm_pagination_type === 'number' && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-gallery-number-pagination-container\",\n    \"data-pagination-prev-text\": dsm_pagination_prev_text,\n    \"data-pagination-next-text\": dsm_pagination_next_text,\n    \"data-tidy-pagination\": dsm_tidy_up_pagination !== null && dsm_tidy_up_pagination !== void 0 ? dsm_tidy_up_pagination : 'off'\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm-gallery-number-pagination\"\n  }, dsm_pagination_prev_text), /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm-gallery-number-pagination dsm-active-pagination-item\"\n  }, \"1\"), /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm-gallery-number-pagination\"\n  }, \"2\"), /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm-gallery-number-pagination\"\n  }, \"3\"), /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm-gallery-number-pagination\"\n  }, dsm_pagination_next_text))));\n}\n/* harmony default export */ const filterable_gallery_edit = (filterable_gallery_edit_Edit);\n;// ./packages/module-library/filterable-gallery/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmFilterableGallery', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/filterable-gallery': {\n      name: 'divi-supreme/filterable-gallery',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 14.933594 1.601562 C 14.640625 1.601562 14.398438 1.359375 14.398438 1.066406 C 14.398438 0.773438 14.640625 0.535156 14.933594 0.535156 C 15.226562 0.535156 15.464844 0.773438 15.464844 1.066406 C 15.464844 1.359375 15.226562 1.601562 14.933594 1.601562 Z M 14.933594 0.828125 C 14.800781 0.828125 14.695312 0.933594 14.695312 1.066406 C 14.695312 1.199219 14.800781 1.304688 14.933594 1.304688 C 15.066406 1.304688 15.171875 1.199219 15.171875 1.066406 C 15.171875 0.933594 15.066406 0.828125 14.933594 0.828125 Z M 14.933594 0.828125 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 1.601562 14.933594 C 1.304688 14.933594 1.066406 14.695312 1.066406 14.398438 C 1.066406 14.105469 1.304688 13.867188 1.601562 13.867188 C 1.894531 13.867188 2.132812 14.105469 2.132812 14.398438 C 2.132812 14.695312 1.894531 14.933594 1.601562 14.933594 Z M 1.601562 14.160156 C 1.46875 14.160156 1.359375 14.269531 1.359375 14.398438 C 1.359375 14.53125 1.46875 14.640625 1.601562 14.640625 C 1.730469 14.640625 1.839844 14.53125 1.839844 14.398438 C 1.839844 14.269531 1.730469 14.160156 1.601562 14.160156 Z M 1.601562 14.160156 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 5.875 2.757812 C 5.757812 3.214844 5.34375 3.550781 4.847656 3.550781 C 4.261719 3.550781 3.789062 3.078125 3.789062 2.492188 C 3.789062 1.90625 4.261719 1.429688 4.847656 1.429688 C 5.34375 1.429688 5.757812 1.769531 5.875 2.226562 L 13.066406 2.226562 C 13.210938 2.226562 13.332031 2.34375 13.332031 2.492188 C 13.332031 2.636719 13.210938 2.757812 13.066406 2.757812 Z M 5.378906 2.492188 C 5.378906 2.785156 5.140625 3.019531 4.847656 3.019531 C 4.554688 3.019531 4.316406 2.785156 4.316406 2.492188 C 4.316406 2.199219 4.554688 1.960938 4.847656 1.960938 C 5.140625 1.960938 5.378906 2.199219 5.378906 2.492188 Z M 5.378906 2.492188 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 2.992188 2.757812 L 3.820312 2.757812 C 3.800781 2.671875 3.789062 2.582031 3.789062 2.492188 C 3.789062 2.398438 3.800781 2.3125 3.820312 2.226562 L 2.992188 2.226562 C 2.847656 2.226562 2.726562 2.34375 2.726562 2.492188 C 2.726562 2.636719 2.847656 2.757812 2.992188 2.757812 Z M 2.992188 2.757812 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 8.226562 8.207031 C 7.664062 8.207031 7.207031 8.664062 7.207031 9.226562 C 7.207031 9.789062 7.664062 10.246094 8.226562 10.246094 C 8.792969 10.246094 9.246094 9.789062 9.246094 9.226562 C 9.246094 8.664062 8.792969 8.207031 8.226562 8.207031 Z M 8.226562 9.757812 C 7.933594 9.757812 7.695312 9.519531 7.695312 9.226562 C 7.695312 8.929688 7.933594 8.691406 8.226562 8.691406 C 8.523438 8.691406 8.761719 8.929688 8.761719 9.226562 C 8.761719 9.519531 8.523438 9.757812 8.226562 9.757812 Z M 8.226562 9.757812 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.414062 5.757812 L 5.382812 4.953125 C 5.109375 4.914062 4.832031 4.992188 4.621094 5.171875 C 4.410156 5.339844 4.277344 5.582031 4.25 5.847656 L 4.121094 6.914062 L 3.722656 6.914062 C 3.15625 6.914062 2.730469 7.421875 2.730469 7.992188 L 2.730469 13.308594 C 2.714844 13.855469 3.140625 14.308594 3.683594 14.324219 C 3.695312 14.324219 3.707031 14.324219 3.722656 14.324219 L 10.789062 14.324219 C 11.355469 14.324219 11.871094 13.882812 11.871094 13.308594 L 11.871094 13.101562 C 12.046875 13.066406 12.214844 12.996094 12.359375 12.894531 C 12.570312 12.714844 12.703125 12.464844 12.734375 12.191406 L 13.328125 6.914062 C 13.386719 6.34375 12.980469 5.828125 12.414062 5.757812 Z M 11.355469 13.308594 C 11.355469 13.59375 11.074219 13.804688 10.789062 13.804688 L 3.722656 13.804688 C 3.464844 13.8125 3.25 13.609375 3.242188 13.347656 C 3.242188 13.335938 3.242188 13.324219 3.246094 13.308594 L 3.246094 12.347656 L 5.242188 10.867188 C 5.480469 10.679688 5.816406 10.695312 6.039062 10.90625 L 7.441406 12.152344 C 7.65625 12.332031 7.925781 12.433594 8.203125 12.4375 C 8.417969 12.441406 8.632812 12.382812 8.820312 12.269531 L 11.355469 10.789062 Z M 11.355469 10.175781 L 8.550781 11.828125 C 8.308594 11.972656 8.003906 11.945312 7.789062 11.761719 L 6.375 10.503906 C 5.96875 10.148438 5.375 10.128906 4.945312 10.449219 L 3.246094 11.699219 L 3.246094 7.992188 C 3.246094 7.707031 3.4375 7.433594 3.722656 7.433594 L 10.789062 7.433594 C 11.09375 7.449219 11.335938 7.6875 11.355469 7.992188 Z M 12.8125 6.84375 C 12.8125 6.847656 12.8125 6.847656 12.8125 6.851562 L 12.207031 12.125 C 12.207031 12.261719 12.144531 12.394531 12.039062 12.476562 C 11.988281 12.53125 11.871094 12.554688 11.871094 12.582031 L 11.871094 7.992188 C 11.851562 7.402344 11.378906 6.929688 10.789062 6.914062 L 4.636719 6.914062 L 4.75 5.902344 C 4.777344 5.769531 4.84375 5.652344 4.945312 5.5625 C 5.058594 5.484375 5.195312 5.449219 5.332031 5.460938 L 12.347656 6.277344 C 12.632812 6.304688 12.839844 6.558594 12.8125 6.84375 Z M 12.8125 6.84375 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/filterable-gallery/index.js\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\nconst filterableGalleryModule = {\n  metadata: filterable_gallery_module_namespaceObject,\n  conversionOutline: filterable_gallery_conversion_outline_conversionOutline,\n  renderers: {\n    edit: filterable_gallery_edit,\n    styles: filterable_gallery_module_styles_ModuleStyles\n  },\n  defaultAttrs: {\n    ...filterable_gallery_module_default_render_attributes_namespaceObject\n  },\n  settings: {\n    content: filterable_gallery_settings_content,\n    design: filterable_gallery_settings_design,\n    advanced: filterable_gallery_settings_advanced\n  },\n  placeholderContent: {\n    ...filterable_gallery_module_default_render_attributes_namespaceObject,\n    module: {\n      decoration: {\n        attributes: {}\n      }\n    }\n  }\n};\n/* harmony default export */ const filterable_gallery = (filterableGalleryModule);\n;// ./packages/module-library/flipbox-perk/module.json\nconst flipbox_perk_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/flipbox\",\"d4Shortcode\":\"dsm_flipbox\",\"title\":\"Supreme Flipbox\",\"titles\":\"Supreme Flipboxes\",\"category\":\"module\",\"childModuleName\":\"dsm/flipbox-child\",\"childModuleTitle\":\"Flipbox Face\",\"childrenName\":[\"dsm/flipbox-child\"],\"moduleIcon\":\"divi-supreme/flipbox\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"styleProps\":{\"layout\":{\"selector\":\"{{selector}} .dsm-flipbox\"},\"sizing\":{\"selector\":\"{{selector}}\",\"propertySelectors\":{\"desktop\":{\"value\":{\"height\":\"{{selector}} .dsm-flipbox\"}},\"tablet\":{\"value\":{\"height\":\"{{selector}} .dsm-flipbox\"}},\"phone\":{\"value\":{\"height\":\"{{selector}} .dsm-flipbox\"}}}}},\"settings\":{\"meta\":{\"meta\":{}},\"advanced\":{\"elements\":{},\"html\":{},\"htmlAttributes\":{},\"link\":{},\"loop\":{},\"text\":{}},\"decoration\":{\"animation\":{\"groupType\":\"group-item\",\"item\":{\"groupSlug\":\"designAnimation\",\"priority\":10,\"render\":true,\"component\":{\"type\":\"group\",\"name\":\"divi/animation\",\"props\":{\"grouped\":false}}}},\"attributes\":{},\"background\":{},\"border\":{},\"boxShadow\":{},\"conditions\":{},\"disabledOn\":{},\"filters\":{},\"interactions\":{},\"layout\":{},\"order\":{},\"overflow\":{},\"position\":{},\"scroll\":{},\"sizing\":{\"groupType\":\"group-item\",\"item\":{\"groupSlug\":\"designSizing\",\"priority\":20,\"render\":true,\"component\":{\"type\":\"group\",\"name\":\"divi/sizing\",\"props\":{\"grouped\":false}}}},\"sticky\":{},\"transform\":{},\"transition\":{},\"zIndex\":{}}}},\"face_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_flipbox_child\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm_flipbox_child\"},\"boxShadow\":{\"selector\":\"{{selector}} .dsm_flipbox_child\",\"useOverlay\":true}},\"settings\":{\"decoration\":{\"boxShadow\":{}}}},\"face_title\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-flipbox-face-front .dsm-title, {{selector}} .dsm-flipbox-face-back .dsm-title\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-flipbox-face-front .dsm-title, {{selector}} .dsm-flipbox-face-back .dsm-title\",\"hover\":\"{{selector}} .dsm-flipbox-face-front:hover .dsm-title, {{selector}} .dsm-flipbox-face-back:hover .dsm-title\"}}}},\"settings\":{\"decoration\":{}}},\"face_subtitle\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-flipbox-face-front .dsm-subtitle, {{selector}} .dsm-flipbox-face-back .dsm-subtitle\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-flipbox-face-front .dsm-subtitle, {{selector}} .dsm-flipbox-face-back .dsm-subtitle\",\"hover\":\"{{selector}} .dsm-flipbox-face-front:hover .dsm-subtitle, {{selector}} .dsm-flipbox-face-back:hover .dsm-subtitle\"}}}},\"settings\":{\"decoration\":{}}},\"face_content\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-flipbox-face-front .dsm-content, {{selector}} .dsm-flipbox-face-back .dsm-content\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-flipbox-face-front .dsm-content, {{selector}} .dsm-flipbox-face-back .dsm-content\",\"hover\":\"{{selector}} .dsm-flipbox-face-front:hover .dsm-content, {{selector}} .dsm-flipbox-face-back:hover .dsm-content\"}}}},\"settings\":{\"decoration\":{}}},\"front_text\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-flipbox-face-front .dsm_flipbox_wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\",\"default\":{\"advanced\":{\"text\":{\"text\":{\"desktop\":{\"value\":{\"color\":\"light\",\"orientation\":\"left\"}}}}}},\"settings\":{\"advanced\":{\"text\":{\"groupType\":\"group-item\",\"item\":{\"groupSlug\":\"flipboxFrontDesignText\",\"priority\":12,\"render\":true,\"component\":{\"type\":\"group\",\"name\":\"divi/text\",\"props\":{\"grouped\":false,\"groupTab\":\"body\",\"groupTabLabel\":\"Body\",\"icon\":\"divi/text-align-left\",\"fieldLabel\":\"Text\",\"fields\":{\"textShadowGroup\":{\"render\":true}}}}}}}}},\"back_text\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-flipbox-face-back .dsm_flipbox_wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\",\"default\":{\"advanced\":{\"text\":{\"text\":{\"desktop\":{\"value\":{\"color\":\"light\",\"orientation\":\"left\"}}}}}},\"settings\":{\"advanced\":{\"text\":{\"groupType\":\"group-item\",\"item\":{\"groupSlug\":\"flipboxBackDesignText\",\"priority\":13,\"render\":true,\"component\":{\"type\":\"group\",\"name\":\"divi/text\",\"props\":{\"grouped\":false,\"groupTab\":\"body\",\"groupTabLabel\":\"Body\",\"icon\":\"divi/text-align-left\",\"fieldLabel\":\"Text\",\"fields\":{\"textShadowGroup\":{\"render\":true}}}}}}}}},\"front_face\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-flipbox-face-front\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"background\":{\"selector\":\"{{selector}} .dsm-flipbox-face-front\",\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-flipbox-face-front\",\"hover\":\"{{selector}} .dsm-flipbox-face-front:hover\"}}},\"spacing\":{\"selector\":\"{{selector}} .dsm-flipbox-face-front\"},\"sizing\":{\"selector\":\"{{selector}} .dsm-flipbox-face-front\"},\"border\":{\"selector\":\"{{selector}} .dsm-flipbox-face-front\"},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-flipbox-face-front\",\"useOverlay\":true},\"filters\":{\"selector\":\"{{selector}} .dsm-flipbox-face-front\"},\"transform\":{\"selector\":\"{{selector}} .dsm-flipbox-face-front\"},\"transition\":{\"selector\":\"{{selector}} .dsm-flipbox-face-front\"},\"position\":{\"selector\":\"{{selector}} .dsm-flipbox-face-front\"},\"overflow\":{\"selector\":\"{{selector}} .dsm-flipbox-face-front\"},\"zIndex\":{\"selector\":\"{{selector}} .dsm-flipbox-face-front\"},\"animation\":{\"selector\":\"{{selector}} .dsm-flipbox-face-front\"},\"scroll\":{\"selector\":\"{{selector}} .dsm-flipbox-face-front\"},\"sticky\":{\"selector\":\"{{selector}} .dsm-flipbox-face-front\"}},\"settings\":{\"decoration\":{\"background\":{},\"border\":{},\"boxShadow\":{},\"filters\":{},\"transform\":{},\"transition\":{},\"position\":{},\"overflow\":{},\"zIndex\":{},\"animation\":{},\"scroll\":{},\"sticky\":{}}}},\"back_face\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-flipbox-face-back\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"background\":{\"selector\":\"{{selector}} .dsm-flipbox-face-back\",\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-flipbox-face-back\",\"hover\":\"{{selector}} .dsm-flipbox-face-back:hover\"}}},\"spacing\":{\"selector\":\"{{selector}} .dsm-flipbox-face-back\"},\"sizing\":{\"selector\":\"{{selector}} .dsm-flipbox-face-back\"},\"border\":{\"selector\":\"{{selector}} .dsm-flipbox-face-back\"},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-flipbox-face-back\",\"useOverlay\":true},\"filters\":{\"selector\":\"{{selector}} .dsm-flipbox-face-back\"},\"transform\":{\"selector\":\"{{selector}} .dsm-flipbox-face-back\"},\"transition\":{\"selector\":\"{{selector}} .dsm-flipbox-face-back\"},\"position\":{\"selector\":\"{{selector}} .dsm-flipbox-face-back\"},\"overflow\":{\"selector\":\"{{selector}} .dsm-flipbox-face-back\"},\"zIndex\":{\"selector\":\"{{selector}} .dsm-flipbox-face-back\"},\"animation\":{\"selector\":\"{{selector}} .dsm-flipbox-face-back\"},\"scroll\":{\"selector\":\"{{selector}} .dsm-flipbox-face-back\"},\"sticky\":{\"selector\":\"{{selector}} .dsm-flipbox-face-back\"}},\"settings\":{\"decoration\":{\"background\":{},\"border\":{},\"boxShadow\":{},\"filters\":{},\"transform\":{},\"transition\":{},\"position\":{},\"overflow\":{},\"zIndex\":{},\"animation\":{},\"scroll\":{},\"sticky\":{}}}},\"flipbox_trigger\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"flipbox_click\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"flipbox_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"flipbox_effect\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"flipbox_3d\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"flipbox_slide_effect\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"flipbox_zoom_out_effect\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"flipbox_speed\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"flipbox_height_mode\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"front_title\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-flipbox-face-front .dsm-title\",\"attributes\":{\"class\":\"dsm-title et_pb_module_header\"},\"tagName\":\"h4\",\"inlineEditor\":\"plainText\",\"elementType\":\"headingLink\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-flipbox-face-front .dsm-title\",\"hover\":\"{{selector}} .dsm-flipbox-face-front:hover .dsm-title\"}}}},\"settings\":{\"innerContent\":{\"groupType\":\"group-item\",\"item\":{\"features\":{\"preset\":\"content\"}}},\"decoration\":{}}},\"back_title\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-flipbox-face-back .dsm-title\",\"attributes\":{\"class\":\"dsm-title et_pb_module_header\"},\"tagName\":\"h4\",\"inlineEditor\":\"plainText\",\"elementType\":\"headingLink\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-flipbox-face-back .dsm-title\",\"hover\":\"{{selector}} .dsm-flipbox-face-back:hover .dsm-title\"}}}},\"settings\":{\"innerContent\":{\"groupType\":\"group-item\",\"item\":{\"features\":{\"preset\":\"content\"}}},\"decoration\":{}}},\"front_subtitle\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-flipbox-face-front .dsm-subtitle\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-flipbox-face-front .dsm-subtitle\",\"hover\":\"{{selector}} .dsm-flipbox-face-front:hover .dsm-subtitle\"}}}},\"settings\":{\"innerContent\":{\"groupType\":\"group-item\",\"item\":{\"features\":{\"preset\":\"content\"}}},\"decoration\":{}}},\"back_subtitle\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-flipbox-face-back .dsm-subtitle\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-flipbox-face-back .dsm-subtitle\",\"hover\":\"{{selector}} .dsm-flipbox-face-back:hover .dsm-subtitle\"}}}},\"settings\":{\"innerContent\":{\"groupType\":\"group-item\",\"item\":{\"features\":{\"preset\":\"content\"}}},\"decoration\":{}}},\"front_content\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-flipbox-face-front .dsm-content\",\"inlineEditor\":\"RichText\",\"elementType\":\"content\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-flipbox-face-front .dsm-content\",\"hover\":\"{{selector}} .dsm-flipbox-face-front:hover .dsm-content\"}}}},\"settings\":{\"innerContent\":{\"groupType\":\"group-item\",\"item\":{\"features\":{\"preset\":\"content\"}}},\"decoration\":{}}},\"back_content\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-flipbox-face-back .dsm-content\",\"inlineEditor\":\"RichText\",\"elementType\":\"content\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-flipbox-face-back .dsm-content\",\"hover\":\"{{selector}} .dsm-flipbox-face-back:hover .dsm-content\"}}}},\"settings\":{\"innerContent\":{\"groupType\":\"group-item\",\"item\":{\"features\":{\"preset\":\"content\"}}},\"decoration\":{}}},\"front_use_icon\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"back_use_icon\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"front_font_icon\":{\"type\":\"object\",\"inlineEditor\":\"IconPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"back_font_icon\":{\"type\":\"object\",\"inlineEditor\":\"IconPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"front_image\":{\"type\":\"object\",\"label\":\"Image\",\"selector\":\"{{selector}} .dsm-flipbox-face-front .dsm_flipbox_child_image_wrap img\",\"elementType\":\"image\",\"inlineEditor\":\"UploadContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"back_image\":{\"type\":\"object\",\"label\":\"Image\",\"selector\":\"{{selector}} .dsm-flipbox-face-back .dsm_flipbox_child_image_wrap img\",\"elementType\":\"image\",\"inlineEditor\":\"UploadContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"front_icon_color\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-flipbox-face-front .dsm_flipbox_child_image .et-pb-icon\",\"inlineEditor\":\"ColorPickerContianer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"back_icon_color\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-flipbox-face-back .dsm_flipbox_child_image .et-pb-icon\",\"inlineEditor\":\"ColorPickerContianer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"front_use_circle\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"back_use_circle\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"front_circle_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContianer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"back_circle_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContianer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"front_use_circle_border\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"back_use_circle_border\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"front_circle_border_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContianer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"back_circle_border_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContianer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"front_use_icon_font_size\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"back_use_icon_font_size\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"front_icon_font_size\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-flipbox-face-front .dsm_flipbox_child_image .et-pb-icon\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"back_icon_font_size\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-flipbox-face-back .dsm_flipbox_child_image .et-pb-icon\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"front_image_max_width\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-flipbox-face-front .dsm_flipbox_child_image_wrap\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"back_image_max_width\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-flipbox-face-back .dsm_flipbox_child_image_wrap\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"front_icon_placement\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"back_icon_placement\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"front_image_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-flipbox-face-front .dsm_flipbox_child_image .dsm_flipbox_child_image_wrap\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-flipbox-face-front .dsm_flipbox_child_image .dsm_flipbox_child_image_wrap\"},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-flipbox-face-front .dsm_flipbox_child_image .dsm_flipbox_child_image_wrap\",\"useOverlay\":true},\"spacing\":{\"selector\":\"{{selector}} .dsm-flipbox-face-front .dsm_flipbox_child_image\"},\"sizing\":{\"selector\":\"{{selector}} .dsm-flipbox-face-front .dsm_flipbox_child_image\"},\"filters\":{\"selector\":\"{{selector}} .dsm-flipbox-face-front .dsm_flipbox_child_image\"}},\"settings\":{\"decoration\":{\"boxShadow\":{},\"filters\":{}}}},\"back_image_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-flipbox-face-back .dsm_flipbox_child_image .dsm_flipbox_child_image_wrap\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-flipbox-face-back .dsm_flipbox_child_image .dsm_flipbox_child_image_wrap\"},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-flipbox-face-back .dsm_flipbox_child_image .dsm_flipbox_child_image_wrap\",\"useOverlay\":true},\"spacing\":{\"selector\":\"{{selector}} .dsm-flipbox-face-back .dsm_flipbox_child_image\"},\"sizing\":{\"selector\":\"{{selector}} .dsm-flipbox-face-back .dsm_flipbox_child_image\"},\"filters\":{\"selector\":\"{{selector}} .dsm-flipbox-face-back .dsm_flipbox_child_image\"}},\"settings\":{\"decoration\":{\"boxShadow\":{},\"filters\":{}}}},\"front_icon_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-flipbox-face-front .dsm_flipbox_child_image .et-pb-icon\",\"childrenSanitizer\":\"et_core_esc_previously\",\"settings\":{\"decoration\":{\"background\":{},\"boxShadow\":{}}},\"styleProps\":{\"background\":{\"selector\":\"{{selector}} .dsm-flipbox-face-front .dsm_flipbox_child_image .et-pb-icon\",\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-flipbox-face-front .dsm_flipbox_child_image .et-pb-icon\",\"hover\":\"{{selector}} .dsm-flipbox-face-front:hover .dsm_flipbox_child_image .et-pb-icon\"}}},\"spacing\":{\"selector\":\"{{selector}} .dsm-flipbox-face-front .dsm_flipbox_child_image .et-pb-icon\"},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-flipbox-face-front .dsm_flipbox_child_image .et-pb-icon\",\"useOverlay\":true},\"border\":{\"selector\":\"{{selector}} .dsm-flipbox-face-front .dsm_flipbox_child_image .et-pb-icon\"}}},\"back_icon_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-flipbox-face-back .dsm_flipbox_child_image .et-pb-icon\",\"childrenSanitizer\":\"et_core_esc_previously\",\"settings\":{\"decoration\":{\"background\":{},\"boxShadow\":{}}},\"styleProps\":{\"background\":{\"selector\":\"{{selector}} .dsm-flipbox-face-back .dsm_flipbox_child_image .et-pb-icon\",\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-flipbox-face-back .dsm_flipbox_child_image .et-pb-icon\",\"hover\":\"{{selector}} .dsm-flipbox-face-back:hover .dsm_flipbox_child_image .et-pb-icon\"}}},\"spacing\":{\"selector\":\"{{selector}} .dsm-flipbox-face-back .dsm_flipbox_child_image .et-pb-icon\"},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-flipbox-face-back .dsm_flipbox_child_image .et-pb-icon\",\"useOverlay\":true},\"border\":{\"selector\":\"{{selector}} .dsm-flipbox-face-back .dsm_flipbox_child_image .et-pb-icon\"}}},\"front_button_text\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\",\"settings\":{\"innerContent\":{\"groupType\":\"group-item\",\"item\":{\"features\":{\"preset\":\"content\"}}}},\"tagName\":\"span\"},\"front_button_url\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\",\"settings\":{\"innerContent\":{\"groupType\":\"group-item\",\"item\":{\"features\":{\"preset\":\"content\"}}}}},\"back_button_text\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\",\"settings\":{\"innerContent\":{\"groupType\":\"group-item\",\"item\":{\"features\":{\"preset\":\"content\"}}}},\"tagName\":\"span\"},\"back_button_url\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\",\"settings\":{\"innerContent\":{\"groupType\":\"group-item\",\"item\":{\"features\":{\"preset\":\"content\"}}}}},\"front_button_url_new_window\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"back_button_url_new_window\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"front_button\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-flipbox-face-front .et_pb_button_module_wrapper .et_pb_button\",\"default\":{\"decoration\":{\"button\":{\"desktop\":{\"value\":{\"enable\":\"off\",\"icon\":{\"enable\":\"on\",\"onHover\":\"on\"}}}},\"border\":{\"desktop\":{\"value\":{\"styles\":{\"all\":{\"color\":\"\"}}}}},\"font\":{\"font\":{\"desktop\":{\"value\":{\"color\":\"\"}}}}}},\"elementType\":\"button\",\"styleProps\":{\"alignment\":{\"selector\":\"{{selector}} .dsm-flipbox-face-front .et_pb_button_module_wrapper\"},\"sizing\":{\"selector\":\"{{selector}} .dsm-flipbox-face-front .et_pb_button_module_wrapper\",\"propertySelectors\":{\"desktop\":{\"value\":{\"margin-left\":\"{{selector}} .dsm-flipbox-face-front .et_pb_button_module_wrapper\",\"margin-right\":\"{{selector}} .dsm-flipbox-face-front .et_pb_button_module_wrapper\"}},\"tablet\":{\"value\":{\"margin-left\":\"{{selector}} .dsm-flipbox-face-front .et_pb_button_module_wrapper\",\"margin-right\":\"{{selector}} .dsm-flipbox-face-front .et_pb_button_module_wrapper\"}},\"phone\":{\"value\":{\"margin-left\":\"{{selector}} .dsm-flipbox-face-front .et_pb_button_module_wrapper\",\"margin-right\":\"{{selector}} .dsm-flipbox-face-front .et_pb_button_module_wrapper\"}}}},\"button\":{\"propertySelectors\":{\"desktop\":{\"value\":{\"text-align\":\"{{selector}} .dsm-flipbox-face-front .et_pb_button_module_wrapper\"}},\"tablet\":{\"value\":{\"text-align\":\"{{selector}} .dsm-flipbox-face-front .et_pb_button_module_wrapper\"}},\"phone\":{\"value\":{\"text-align\":\"{{selector}} .dsm-flipbox-face-front .et_pb_button_module_wrapper\"}}}}}},\"back_button\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-flipbox-face-back .et_pb_button_module_wrapper .et_pb_button\",\"default\":{\"decoration\":{\"button\":{\"desktop\":{\"value\":{\"enable\":\"off\",\"icon\":{\"enable\":\"on\",\"onHover\":\"on\"}}}},\"border\":{\"desktop\":{\"value\":{\"styles\":{\"all\":{\"color\":\"\"}}}}},\"font\":{\"font\":{\"desktop\":{\"value\":{\"color\":\"\"}}}}}},\"elementType\":\"button\",\"styleProps\":{\"alignment\":{\"selector\":\"{{selector}} .dsm-flipbox-face-back .et_pb_button_module_wrapper\"},\"sizing\":{\"selector\":\"{{selector}} .dsm-flipbox-face-back .et_pb_button_module_wrapper\",\"propertySelectors\":{\"desktop\":{\"value\":{\"margin-left\":\"{{selector}} .dsm-flipbox-face-back .et_pb_button_module_wrapper\",\"margin-right\":\"{{selector}} .dsm-flipbox-face-back .et_pb_button_module_wrapper\"}},\"tablet\":{\"value\":{\"margin-left\":\"{{selector}} .dsm-flipbox-face-back .et_pb_button_module_wrapper\",\"margin-right\":\"{{selector}} .dsm-flipbox-face-back .et_pb_button_module_wrapper\"}},\"phone\":{\"value\":{\"margin-left\":\"{{selector}} .dsm-flipbox-face-back .et_pb_button_module_wrapper\",\"margin-right\":\"{{selector}} .dsm-flipbox-face-back .et_pb_button_module_wrapper\"}}}},\"button\":{\"propertySelectors\":{\"desktop\":{\"value\":{\"text-align\":\"{{selector}} .dsm-flipbox-face-back .et_pb_button_module_wrapper\"}},\"tablet\":{\"value\":{\"text-align\":\"{{selector}} .dsm-flipbox-face-back .et_pb_button_module_wrapper\"}},\"phone\":{\"value\":{\"text-align\":\"{{selector}} .dsm-flipbox-face-back .et_pb_button_module_wrapper\"}}}}}},\"front_content_orientation\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"back_content_orientation\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/flipbox-perk/module-default-render-attributes.json\nconst flipbox_perk_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"module\":{\"decoration\":{\"sizing\":{\"desktop\":{\"value\":{\"width\":\"auto\",\"maxWidth\":\"none\",\"minHeight\":\"auto\",\"maxHeight\":\"none\",\"height\":\"320px\"}}}}},\"face_style\":{\"decoration\":{\"border\":{},\"boxShadow\":{}}},\"face_title\":{\"decoration\":{\"font\":{}}},\"face_subtitle\":{\"decoration\":{\"font\":{}}},\"face_content\":{\"decoration\":{\"font\":{}}},\"front_text\":{\"advanced\":{\"text\":{\"text\":{\"desktop\":{\"value\":{\"color\":\"light\",\"orientation\":\"left\"}}}}}},\"back_text\":{\"advanced\":{\"text\":{\"text\":{\"desktop\":{\"value\":{\"color\":\"light\",\"orientation\":\"left\"}}}}}},\"front_face\":{\"decoration\":{\"background\":{},\"spacing\":{},\"sizing\":{},\"border\":{},\"boxShadow\":{}}},\"back_face\":{\"decoration\":{\"background\":{},\"spacing\":{},\"sizing\":{},\"border\":{},\"boxShadow\":{}}},\"flipbox_trigger\":{\"innerContent\":{\"desktop\":{\"value\":\"hover\"}}},\"flipbox_click\":{\"innerContent\":{\"desktop\":{\"value\":\"whole\"}}},\"flipbox_type\":{\"innerContent\":{\"desktop\":{\"value\":\"flip\"}}},\"flipbox_effect\":{\"innerContent\":{\"desktop\":{\"value\":\"right\"}}},\"flipbox_3d\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"flipbox_slide_effect\":{\"innerContent\":{\"desktop\":{\"value\":\"slide-up\"}}},\"flipbox_zoom_out_effect\":{\"innerContent\":{\"desktop\":{\"value\":\"zoom-out\"}}},\"flipbox_speed\":{\"innerContent\":{\"desktop\":{\"value\":\"0.6s\"}}},\"flipbox_height_mode\":{\"innerContent\":{\"desktop\":{\"value\":\"fixed\"}}},\"front_use_icon\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"back_use_icon\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"front_button_url_new_window\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"back_button_url_new_window\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"front_content_orientation\":{\"innerContent\":{\"desktop\":{\"value\":\"center\"}}},\"back_content_orientation\":{\"innerContent\":{\"desktop\":{\"value\":\"center\"}}},\"front_title\":{\"innerContent\":{\"desktop\":{\"value\":{\"text\":\"\"}}},\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"headingLevel\":\"h4\"}}}}}},\"back_title\":{\"innerContent\":{\"desktop\":{\"value\":{\"text\":\"\"}}},\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"headingLevel\":\"h4\"}}}}}},\"front_subtitle\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}},\"decoration\":{\"font\":{}}},\"back_subtitle\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}},\"decoration\":{\"font\":{}}},\"front_content\":{\"innerContent\":{\"desktop\":{\"value\":{\"text\":\"\"}}},\"decoration\":{\"font\":{}}},\"back_content\":{\"innerContent\":{\"desktop\":{\"value\":{\"text\":\"\"}}},\"decoration\":{\"font\":{}}},\"front_font_icon\":{\"innerContent\":{\"desktop\":{\"value\":{}}}},\"back_font_icon\":{\"innerContent\":{\"desktop\":{\"value\":{}}}},\"front_image\":{\"innerContent\":{\"desktop\":{\"value\":{\"src\":\"\",\"id\":0}}}},\"back_image\":{\"innerContent\":{\"desktop\":{\"value\":{\"src\":\"\",\"id\":0}}}},\"front_icon_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"back_icon_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"front_use_circle\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"back_use_circle\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"front_circle_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"back_circle_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"front_use_circle_border\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"back_use_circle_border\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"front_circle_border_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"back_circle_border_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"front_use_icon_font_size\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"back_use_icon_font_size\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"front_icon_font_size\":{\"innerContent\":{\"desktop\":{\"value\":\"96px\"}}},\"back_icon_font_size\":{\"innerContent\":{\"desktop\":{\"value\":\"96px\"}}},\"front_image_max_width\":{\"innerContent\":{\"desktop\":{\"value\":\"100%\"}}},\"back_image_max_width\":{\"innerContent\":{\"desktop\":{\"value\":\"100%\"}}},\"front_icon_placement\":{\"innerContent\":{\"desktop\":{\"value\":\"top\"}}},\"back_icon_placement\":{\"innerContent\":{\"desktop\":{\"value\":\"top\"}}},\"front_image_style\":{\"decoration\":{\"border\":{},\"boxShadow\":{},\"spacing\":{},\"sizing\":{},\"filters\":{}}},\"back_image_style\":{\"decoration\":{\"border\":{},\"boxShadow\":{},\"spacing\":{},\"sizing\":{},\"filters\":{}}},\"front_icon_style\":{\"decoration\":{\"background\":{},\"spacing\":{},\"boxShadow\":{},\"border\":{}}},\"back_icon_style\":{\"decoration\":{\"background\":{},\"spacing\":{},\"boxShadow\":{},\"border\":{}}},\"front_button_text\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"front_button_url\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"back_button_text\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"back_button_url\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"front_button\":{\"decoration\":{\"button\":{\"desktop\":{\"value\":{\"enable\":\"off\",\"icon\":{\"enable\":\"on\",\"onHover\":\"on\",\"settings\":{\"unicode\":\"\",\"type\":\"divi\",\"weight\":\"400\"}}}}},\"border\":{\"desktop\":{\"value\":{\"styles\":{\"all\":{\"color\":\"\"}}}}},\"font\":{\"font\":{\"desktop\":{\"value\":{\"color\":\"\"}}}}}},\"back_button\":{\"decoration\":{\"button\":{\"desktop\":{\"value\":{\"enable\":\"off\",\"icon\":{\"enable\":\"on\",\"onHover\":\"on\",\"settings\":{\"unicode\":\"\",\"type\":\"divi\",\"weight\":\"400\"}}}}},\"border\":{\"desktop\":{\"value\":{\"styles\":{\"all\":{\"color\":\"\"}}}}},\"font\":{\"font\":{\"desktop\":{\"value\":{\"color\":\"\"}}}}}}}');\n;// ./packages/module-library/flipbox-perk/flipbox-module-defaults.js\n/**\n * D5 defaults for dsm/flipbox — mirrors dsm/faq-child (empty stored defaults + placeholder only on insert).\n *\n * @package DiviSupreme\n */\n\n\n\n/** Persisted canonical default: empty heading (tutorial copy lives in `flipboxPlaceholderContent` only). */\nconst flipboxTitleTextDefault = {\n  desktop: {\n    value: {\n      text: ''\n    }\n  }\n};\n\n/** Persisted canonical default: empty plain-text subtitle. */\nconst flipboxSubtitleTextDefault = {\n  desktop: {\n    value: ''\n  }\n};\n\n/** Persisted canonical default: empty rich text. */\nconst flipboxContentTextDefault = {\n  desktop: {\n    value: {\n      text: ''\n    }\n  }\n};\n\n/** Persisted canonical default: empty button label. */\nconst flipboxButtonTextDefault = {\n  desktop: {\n    value: ''\n  }\n};\n\n/** Persisted canonical default: empty button URL. */\nconst flipboxButtonUrlDefault = {\n  desktop: {\n    value: ''\n  }\n};\nconst flipboxFrontTitlePlaceholderInner = {\n  desktop: {\n    value: {\n      text: 'Your Title Goes Here'\n    }\n  }\n};\nconst flipboxBackTitlePlaceholderInner = {\n  desktop: {\n    value: {\n      text: 'Your Title Goes Here'\n    }\n  }\n};\nconst flipboxFrontSubtitlePlaceholderInner = {\n  desktop: {\n    value: 'Your Subtitle Goes Here'\n  }\n};\nconst flipboxBackSubtitlePlaceholderInner = {\n  desktop: {\n    value: 'Your Subtitle Goes Here'\n  }\n};\nconst flipboxFrontContentPlaceholderInner = {\n  desktop: {\n    value: {\n      text: '<p>Your content goes here. Edit or remove this text inline or in the module Content settings. You can also style every aspect of this content in the module Design settings and even apply custom CSS to this text in the module Advanced settings.</p>'\n    }\n  }\n};\nconst flipboxBackContentPlaceholderInner = {\n  desktop: {\n    value: {\n      text: '<p>Your content goes here. Edit or remove this text inline or in the module Content settings. You can also style every aspect of this content in the module Design settings and even apply custom CSS to this text in the module Advanced settings.</p>'\n    }\n  }\n};\nconst flipboxFrontButtonTextPlaceholderInner = {\n  desktop: {\n    value: 'Button'\n  }\n};\nconst flipboxBackButtonTextPlaceholderInner = {\n  desktop: {\n    value: 'Button'\n  }\n};\nconst flipboxFrontButtonUrlPlaceholderInner = {\n  desktop: {\n    value: '#'\n  }\n};\nconst flipboxBackButtonUrlPlaceholderInner = {\n  desktop: {\n    value: '#'\n  }\n};\n\n/** Stored defaults layer (`registerModule` → `defaultAttrs`). Text fields intentionally empty. */\nconst flipboxModuleDefaultAttrs = {\n  ...flipbox_perk_module_default_render_attributes_namespaceObject,\n  front_title: {\n    ...flipbox_perk_module_default_render_attributes_namespaceObject.front_title,\n    innerContent: flipboxTitleTextDefault\n  },\n  back_title: {\n    ...flipbox_perk_module_default_render_attributes_namespaceObject.back_title,\n    innerContent: flipboxTitleTextDefault\n  },\n  front_subtitle: {\n    ...flipbox_perk_module_default_render_attributes_namespaceObject.front_subtitle,\n    innerContent: flipboxSubtitleTextDefault\n  },\n  back_subtitle: {\n    ...flipbox_perk_module_default_render_attributes_namespaceObject.back_subtitle,\n    innerContent: flipboxSubtitleTextDefault\n  },\n  front_content: {\n    ...flipbox_perk_module_default_render_attributes_namespaceObject.front_content,\n    innerContent: flipboxContentTextDefault\n  },\n  back_content: {\n    ...flipbox_perk_module_default_render_attributes_namespaceObject.back_content,\n    innerContent: flipboxContentTextDefault\n  },\n  front_button_text: {\n    innerContent: flipboxButtonTextDefault\n  },\n  back_button_text: {\n    innerContent: flipboxButtonTextDefault\n  },\n  front_button_url: {\n    innerContent: flipboxButtonUrlDefault\n  },\n  back_button_url: {\n    innerContent: flipboxButtonUrlDefault\n  }\n};\n\n/** New-insert demo copy only — merged into attrs when module is added (see `flipbox-insert-attrs.js`). */\nconst flipboxPlaceholderContent = {\n  ...flipboxModuleDefaultAttrs,\n  module: {\n    decoration: {}\n  },\n  front_face: {\n    decoration: {\n      background: {},\n      spacing: {},\n      sizing: {},\n      border: {},\n      boxShadow: {}\n    }\n  },\n  back_face: {\n    decoration: {\n      background: {},\n      spacing: {},\n      sizing: {},\n      border: {},\n      boxShadow: {}\n    }\n  },\n  front_title: {\n    ...flipbox_perk_module_default_render_attributes_namespaceObject.front_title,\n    innerContent: flipboxFrontTitlePlaceholderInner\n  },\n  back_title: {\n    ...flipbox_perk_module_default_render_attributes_namespaceObject.back_title,\n    innerContent: flipboxBackTitlePlaceholderInner\n  },\n  front_subtitle: {\n    ...flipbox_perk_module_default_render_attributes_namespaceObject.front_subtitle,\n    innerContent: flipboxFrontSubtitlePlaceholderInner\n  },\n  back_subtitle: {\n    ...flipbox_perk_module_default_render_attributes_namespaceObject.back_subtitle,\n    innerContent: flipboxBackSubtitlePlaceholderInner\n  },\n  front_content: {\n    ...flipbox_perk_module_default_render_attributes_namespaceObject.front_content,\n    innerContent: flipboxFrontContentPlaceholderInner\n  },\n  back_content: {\n    ...flipbox_perk_module_default_render_attributes_namespaceObject.back_content,\n    innerContent: flipboxBackContentPlaceholderInner\n  },\n  front_button_text: {\n    innerContent: flipboxFrontButtonTextPlaceholderInner\n  },\n  back_button_text: {\n    innerContent: flipboxBackButtonTextPlaceholderInner\n  },\n  front_button_url: {\n    innerContent: flipboxFrontButtonUrlPlaceholderInner\n  },\n  back_button_url: {\n    innerContent: flipboxBackButtonUrlPlaceholderInner\n  }\n};\n;// ./packages/module-library/flipbox-perk/flipbox-vb-default-attrs.js\n/**\n * Visual Builder `defaultAttr` map from `module-default-render-attributes.json`.\n *\n * @package DiviSupreme\n */\n\n\n\n\nconst flipboxFaceTitleFontGroupDefaultAttr = flipbox_perk_module_default_render_attributes_namespaceObject.face_title?.decoration?.font;\nconst flipboxFaceSubtitleFontGroupDefaultAttr = flipbox_perk_module_default_render_attributes_namespaceObject.face_subtitle?.decoration?.font;\nconst flipboxFaceContentFontGroupDefaultAttr = flipbox_perk_module_default_render_attributes_namespaceObject.face_content?.decoration?.font;\nconst flipboxFrontTitleFontGroupDefaultAttr = flipbox_perk_module_default_render_attributes_namespaceObject.front_title?.decoration?.font;\nconst flipboxBackTitleFontGroupDefaultAttr = flipbox_perk_module_default_render_attributes_namespaceObject.back_title?.decoration?.font;\nconst flipboxFrontSubtitleFontGroupDefaultAttr = flipbox_perk_module_default_render_attributes_namespaceObject.front_subtitle?.decoration?.font;\nconst flipboxBackSubtitleFontGroupDefaultAttr = flipbox_perk_module_default_render_attributes_namespaceObject.back_subtitle?.decoration?.font;\nconst flipboxFrontContentFontGroupDefaultAttr = flipbox_perk_module_default_render_attributes_namespaceObject.front_content?.decoration?.font;\nconst flipboxBackContentFontGroupDefaultAttr = flipbox_perk_module_default_render_attributes_namespaceObject.back_content?.decoration?.font;\nconst flipboxFrontIconStyleSpacingDefault = flipbox_perk_module_default_render_attributes_namespaceObject.front_icon_style?.decoration?.spacing;\nconst flipboxBackIconStyleSpacingDefault = flipbox_perk_module_default_render_attributes_namespaceObject.back_icon_style?.decoration?.spacing;\nconst flipboxFrontIconStyleBorderDefault = flipbox_perk_module_default_render_attributes_namespaceObject.front_icon_style?.decoration?.border;\nconst flipboxBackIconStyleBorderDefault = flipbox_perk_module_default_render_attributes_namespaceObject.back_icon_style?.decoration?.border;\nconst flipboxFrontIconStyleBoxShadowDefault = flipbox_perk_module_default_render_attributes_namespaceObject.front_icon_style?.decoration?.boxShadow;\nconst flipboxBackIconStyleBoxShadowDefault = flipbox_perk_module_default_render_attributes_namespaceObject.back_icon_style?.decoration?.boxShadow;\nconst flipboxFrontImageStyleSpacingDefault = flipbox_perk_module_default_render_attributes_namespaceObject.front_image_style?.decoration?.spacing;\nconst flipboxBackImageStyleSpacingDefault = flipbox_perk_module_default_render_attributes_namespaceObject.back_image_style?.decoration?.spacing;\nconst flipboxFrontImageStyleBorderDefault = flipbox_perk_module_default_render_attributes_namespaceObject.front_image_style?.decoration?.border;\nconst flipboxBackImageStyleBorderDefault = flipbox_perk_module_default_render_attributes_namespaceObject.back_image_style?.decoration?.border;\nconst flipboxFrontImageStyleBoxShadowDefault = flipbox_perk_module_default_render_attributes_namespaceObject.front_image_style?.decoration?.boxShadow;\nconst flipboxBackImageStyleBoxShadowDefault = flipbox_perk_module_default_render_attributes_namespaceObject.back_image_style?.decoration?.boxShadow;\n\n/** TextGroup `attrName=\"front_text\"`. */\nconst flipboxFrontTextGroupDefaultAttr = flipbox_perk_module_default_render_attributes_namespaceObject.front_text;\n\n/** TextGroup `attrName=\"back_text\"`. */\nconst flipboxBackTextGroupDefaultAttr = flipbox_perk_module_default_render_attributes_namespaceObject.back_text;\nconst skipInnerContentMapKeys = new Set(['module', 'face_style', 'face_title', 'face_subtitle', 'face_content']);\nconst flipboxTextFieldDefaultInnerContent = {\n  front_title: flipboxTitleTextDefault,\n  back_title: flipboxTitleTextDefault,\n  front_subtitle: flipboxSubtitleTextDefault,\n  back_subtitle: flipboxSubtitleTextDefault,\n  front_content: flipboxContentTextDefault,\n  back_content: flipboxContentTextDefault,\n  front_button_text: flipboxButtonTextDefault,\n  back_button_text: flipboxButtonTextDefault,\n  front_button_url: flipboxButtonUrlDefault,\n  back_button_url: flipboxButtonUrlDefault\n};\n\n/** `innerContent` defaults per attribute key (for `FieldContainer` `defaultAttr`). */\nconst flipboxFieldDefaultInnerContent = Object.fromEntries(Object.entries(flipbox_perk_module_default_render_attributes_namespaceObject).filter(([key, attr]) => !skipInnerContentMapKeys.has(key) && attr && typeof attr === 'object' && Object.prototype.hasOwnProperty.call(attr, 'innerContent')).map(([key, attr]) => {\n  var _flipboxTextFieldDefa;\n  return [key, (_flipboxTextFieldDefa = flipboxTextFieldDefaultInnerContent[key]) !== null && _flipboxTextFieldDefa !== void 0 ? _flipboxTextFieldDefa : attr.innerContent];\n}));\n\n/** @type {Record<string, unknown>} */\nconst flipboxFd = flipboxFieldDefaultInnerContent;\n\n/**\n * @param {string} key Attribute key.\n * @returns {Record<string, unknown>}\n */\nfunction flipboxFieldDefaultInnerContentLookup(key) {\n  var _flipboxFd$key;\n  return (_flipboxFd$key = flipboxFd[key]) !== null && _flipboxFd$key !== void 0 ? _flipboxFd$key : {};\n}\n;// ./packages/module-library/flipbox-perk/settings-content.js\n\n\n\n\n\n\n\n\nfunction flipbox_perk_settings_content_SettingsContent({\n  attrs,\n  defaultSettingsAttrs\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _getAttrByMode4, _ref, _defaultSettingsAttrs, _ref2, _defaultSettingsAttrs2;\n  const flipboxType = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.flipbox_type?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'flip';\n  const trigger = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.flipbox_trigger?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'hover';\n  const frontUseIcon = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.front_use_icon?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'off';\n  const backUseIcon = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.back_use_icon?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : 'off';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxFront\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Front', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxFrontContent\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"front_title.innerContent\",\n    subName: \"text\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxTitleTextDefault,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      preset: 'content',\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"front_subtitle.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Subtitle', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxSubtitleTextDefault,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      preset: 'content',\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"front_content.innerContent\",\n    subName: \"text\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxContentTextDefault,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      preset: 'content',\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RichTextContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxFrontIconImage\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon & Image', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"front_use_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Icon', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxFd.front_use_icon\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"front_font_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === frontUseIcon,\n    defaultAttr: flipboxFd.front_font_icon\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"front_image.innerContent\",\n    subName: \"src\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxFd.front_image,\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxFrontButton\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"front_button_text.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Text', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxButtonTextDefault,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      preset: 'content',\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"front_button_url.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button URL', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxButtonUrlDefault,\n    features: {\n      dynamicContent: {\n        type: 'url'\n      },\n      preset: 'content',\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"front_button_url_new_window.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Link Target', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxFd.front_button_url_new_window\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxFrontBackground\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, {\n    attrName: \"front_face.decoration.background\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi'),\n    defaultGroupAttr: (_ref = (_defaultSettingsAttrs = defaultSettingsAttrs?.front_face?.decoration?.background?.asMutable?.({\n      deep: true\n    })) !== null && _defaultSettingsAttrs !== void 0 ? _defaultSettingsAttrs : flipbox_perk_module_default_render_attributes_namespaceObject?.front_face?.decoration?.background) !== null && _ref !== void 0 ? _ref : {}\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxBack\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Back', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxBackContent\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"back_title.innerContent\",\n    subName: \"text\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxTitleTextDefault,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      preset: 'content',\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"back_subtitle.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Subtitle', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxSubtitleTextDefault,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      preset: 'content',\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"back_content.innerContent\",\n    subName: \"text\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxContentTextDefault,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      preset: 'content',\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RichTextContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxBackIconImage\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon & Image', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"back_use_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Icon', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxFd.back_use_icon\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"back_font_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === backUseIcon,\n    defaultAttr: flipboxFd.back_font_icon\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"back_image.innerContent\",\n    subName: \"src\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxFd.back_image,\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxBackButton\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"back_button_text.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Text', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxButtonTextDefault,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      preset: 'content',\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"back_button_url.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button URL', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxButtonUrlDefault,\n    features: {\n      dynamicContent: {\n        type: 'url'\n      },\n      preset: 'content',\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"back_button_url_new_window.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Link Target', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxFd.back_button_url_new_window\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxBackBackground\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, {\n    attrName: \"back_face.decoration.background\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi'),\n    defaultGroupAttr: (_ref2 = (_defaultSettingsAttrs2 = defaultSettingsAttrs?.back_face?.decoration?.background?.asMutable?.({\n      deep: true\n    })) !== null && _defaultSettingsAttrs2 !== void 0 ? _defaultSettingsAttrs2 : flipbox_perk_module_default_render_attributes_namespaceObject?.back_face?.decoration?.background) !== null && _ref2 !== void 0 ? _ref2 : {}\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxSettings\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Settings', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"flipbox_trigger.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Trigger Animation On', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Click only affects the frontend.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxFd.flipbox_trigger\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      hover: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hover', 'dsm-supreme-modules-pro-for-divi')\n      },\n      click: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Click', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"flipbox_click.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Click On', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'click' === trigger,\n    defaultAttr: flipboxFd.flipbox_click\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      whole: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('As Whole', 'dsm-supreme-modules-pro-for-divi')\n      },\n      button: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"flipbox_type.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Flipbox Type', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxFd.flipbox_type\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      flip: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Flip', 'dsm-supreme-modules-pro-for-divi')\n      },\n      slide: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'zoom-in': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom In', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'zoom-out': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom Out', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fade: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"flipbox_effect.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Flip Direction', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'flip' === flipboxType,\n    defaultAttr: flipboxFd.flipbox_effect\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      up: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Up', 'dsm-supreme-modules-pro-for-divi')\n      },\n      down: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Down', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"flipbox_3d.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('3D Effect', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'flip' === flipboxType,\n    defaultAttr: flipboxFd.flipbox_3d\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"flipbox_slide_effect.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide Effect', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'slide' === flipboxType,\n    defaultAttr: flipboxFd.flipbox_slide_effect\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      'slide-up': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Up', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'slide-down': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Down', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'slide-left': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'slide-right': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"flipbox_zoom_out_effect.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom Out Effect', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'zoom-out' === flipboxType,\n    defaultAttr: flipboxFd.flipbox_zoom_out_effect\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      'zoom-out': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom Out', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'zoom-out-up': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom Out Up', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'zoom-out-down': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom Out Down', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'zoom-out-left': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom Out Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'zoom-out-right': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom Out Right', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"flipbox_speed.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animation Speed', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxFd.flipbox_speed\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"flipbox_height_mode.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Container height', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Automatic sizes the flipbox from the taller face (content height) and ignores Design → Sizing height on the flipbox. Fixed uses Design → Sizing height on the flipbox as usual.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxFd.flipbox_height_mode\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      fixed: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fixed', 'dsm-supreme-modules-pro-for-divi')\n      },\n      auto: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Automatic', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null));\n}\n/* harmony default export */ const flipbox_perk_settings_content = (flipbox_perk_settings_content_SettingsContent);\n;// ./packages/module-library/flipbox-perk/settings-design.js\n\n\n\n\n\n\n\n\nfunction flipbox_perk_settings_design_SettingsDesign({\n  defaultSettingsAttrs\n}) {\n  var _defaultSettingsAttrs, _defaultRenderAttribu, _defaultSettingsAttrs2, _defaultRenderAttribu2;\n  // Module-level groups without `attrName` bind to `module.decoration.*`. `defaultGroupAttr`\n  // keeps Design → Sizing (height, etc.) populated when Divi omits keys after save/reload.\n  const moduleDeco = defaultSettingsAttrs?.module?.decoration;\n  const decorationDefaults = moduleDeco && typeof moduleDeco.asMutable === 'function' ? moduleDeco.asMutable({\n    deep: true\n  }) : moduleDeco;\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxFaceDesign\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Face', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxFaceFonts\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fonts', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"face_title.decoration.font\",\n    defaultAttr: flipboxFaceTitleFontGroupDefaultAttr,\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      },\n      textAlign: {\n        render: false\n      }\n    },\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"face_subtitle.decoration.font\",\n    defaultAttr: flipboxFaceSubtitleFontGroupDefaultAttr,\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Subtitle', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      textAlign: {\n        render: false\n      }\n    },\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Subtitle', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"face_content.decoration.font\",\n    defaultAttr: flipboxFaceContentFontGroupDefaultAttr,\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Body', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Body', 'dsm-supreme-modules-pro-for-divi')\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxFaceBorders\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Borders', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"face_style.decoration.border\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxFaceShadow\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shadow', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"face_style.decoration.boxShadow\",\n    grouped: false\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxFrontTypography\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Front', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxFrontText\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Front text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextGroup, {\n    attrName: \"front_text\",\n    defaultAttr: flipboxFrontTextGroupDefaultAttr,\n    grouped: false,\n    fields: {\n      textShadowGroup: {\n        render: true\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"front_content_orientation.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text Vertical Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Vertical alignment of the title, subtitle, body, and button inside the face.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxFd.front_content_orientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      'flex-start': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'flex-end': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxFrontImageIcon\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image & Icon', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"front_icon_placement.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image/Icon Placement', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Position of the image or icon relative to the text.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxFd.front_icon_placement\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      top: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top', 'dsm-supreme-modules-pro-for-divi')\n      },\n      left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxFrontIcon\",\n    preset: \"design\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"front_icon_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Color', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxFd.front_icon_color\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, {\n    attrName: \"front_icon_style.decoration.background\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"front_use_circle.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Circle Icon', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxFd.front_use_circle\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"front_circle_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Circle Color', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxFd.front_circle_color\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"front_use_circle_border.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Circle Border', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxFd.front_use_circle_border\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"front_circle_border_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Circle Border Color', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxFd.front_circle_border_color\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"front_use_icon_font_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Icon Font Size', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxFd.front_use_icon_font_size\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"front_icon_font_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Font Size', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxFd.front_icon_font_size\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 120,\n    defaultUnit: \"px\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxFrontIconSizing\",\n    preset: \"design\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Sizing', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"front_icon_style.decoration.spacing\",\n    defaultAttr: flipboxFrontIconStyleSpacingDefault,\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi')\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxFrontIconBoxShadow\",\n    preset: \"design\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Box Shadow', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"front_icon_style.decoration.boxShadow\",\n    defaultGroupAttr: flipboxFrontIconStyleBoxShadowDefault,\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxFrontIconBorder\",\n    preset: \"design\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Border', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"front_icon_style.decoration.border\",\n    defaultGroupAttr: flipboxFrontIconStyleBorderDefault,\n    grouped: false\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxFrontImage\",\n    preset: \"design\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"front_image_max_width.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Width', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Maximum width of the image.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxFd.front_image_max_width\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: \"%\"\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxFrontImageSizing\",\n    preset: \"design\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Sizing', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"front_image_style.decoration.spacing\",\n    defaultAttr: flipboxFrontImageStyleSpacingDefault,\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, {\n    attrName: \"front_image_style.decoration.sizing\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxFrontImageBoxShadow\",\n    preset: \"design\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Box Shadow', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"front_image_style.decoration.boxShadow\",\n    defaultGroupAttr: flipboxFrontImageStyleBoxShadowDefault,\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxFrontImageBorder\",\n    preset: \"design\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Border', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"front_image_style.decoration.border\",\n    defaultGroupAttr: flipboxFrontImageStyleBorderDefault,\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxFrontImageFilters\",\n    preset: \"design\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Filters', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, {\n    attrName: \"front_image_style.decoration.filters\",\n    grouped: false\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"front_title.decoration.font\",\n    defaultAttr: flipboxFrontTitleFontGroupDefaultAttr,\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: true\n      }\n    },\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"front_subtitle.decoration.font\",\n    defaultAttr: flipboxFrontSubtitleFontGroupDefaultAttr,\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Subtitle', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Subtitle', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"front_content.decoration.font\",\n    defaultAttr: flipboxFrontContentFontGroupDefaultAttr,\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Body', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Body', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ButtonGroupContainer, {\n    attrName: \"front_button\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi'),\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi'),\n    defaultGroupAttr: (0,lodash.merge)({}, (_defaultSettingsAttrs = defaultSettingsAttrs?.front_button?.decoration?.asMutable?.({\n      deep: true\n    })) !== null && _defaultSettingsAttrs !== void 0 ? _defaultSettingsAttrs : {}, (_defaultRenderAttribu = flipbox_perk_module_default_render_attributes_namespaceObject?.front_button?.decoration) !== null && _defaultRenderAttribu !== void 0 ? _defaultRenderAttribu : {})\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"front_face.decoration.spacing\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Spacing', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Spacing', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, {\n    attrName: \"front_face.decoration.sizing\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Sizing', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Sizing', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"front_face.decoration.border\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Border', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Border', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"front_face.decoration.boxShadow\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Box Shadow', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Box Shadow', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, {\n    attrName: \"front_face.decoration.filters\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Filters', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Filters', 'dsm-supreme-modules-pro-for-divi')\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxBackTypography\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Back', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxBackText\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Back text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextGroup, {\n    attrName: \"back_text\",\n    defaultAttr: flipboxBackTextGroupDefaultAttr,\n    grouped: false,\n    fields: {\n      textShadowGroup: {\n        render: true\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"back_content_orientation.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text Vertical Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Vertical alignment of the title, subtitle, body, and button inside the face.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxFd.back_content_orientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      'flex-start': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'flex-end': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxBackImageIcon\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image & Icon', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"back_icon_placement.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image/Icon Placement', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Position of the image or icon relative to the text.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxFd.back_icon_placement\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      top: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top', 'dsm-supreme-modules-pro-for-divi')\n      },\n      left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxBackIcon\",\n    preset: \"design\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"back_icon_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Color', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxFd.back_icon_color\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, {\n    attrName: \"back_icon_style.decoration.background\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"back_use_circle.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Circle Icon', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxFd.back_use_circle\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"back_circle_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Circle Color', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxFd.back_circle_color\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"back_use_circle_border.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Circle Border', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxFd.back_use_circle_border\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"back_circle_border_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Circle Border Color', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxFd.back_circle_border_color\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"back_use_icon_font_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Icon Font Size', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxFd.back_use_icon_font_size\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"back_icon_font_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Font Size', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxFd.back_icon_font_size\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 120,\n    defaultUnit: \"px\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxBackIconSizing\",\n    preset: \"design\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Sizing', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"back_icon_style.decoration.spacing\",\n    defaultAttr: flipboxBackIconStyleSpacingDefault,\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi')\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxBackIconBoxShadow\",\n    preset: \"design\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Box Shadow', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"back_icon_style.decoration.boxShadow\",\n    defaultGroupAttr: flipboxBackIconStyleBoxShadowDefault,\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxBackIconBorder\",\n    preset: \"design\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Border', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"back_icon_style.decoration.border\",\n    defaultGroupAttr: flipboxBackIconStyleBorderDefault,\n    grouped: false\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxBackImage\",\n    preset: \"design\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"back_image_max_width.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Width', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Maximum width of the image.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: flipboxFd.back_image_max_width\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: \"%\"\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxBackImageSizing\",\n    preset: \"design\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Sizing', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"back_image_style.decoration.spacing\",\n    defaultAttr: flipboxBackImageStyleSpacingDefault,\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, {\n    attrName: \"back_image_style.decoration.sizing\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxBackImageBoxShadow\",\n    preset: \"design\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Box Shadow', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"back_image_style.decoration.boxShadow\",\n    defaultGroupAttr: flipboxBackImageStyleBoxShadowDefault,\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxBackImageBorder\",\n    preset: \"design\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Border', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"back_image_style.decoration.border\",\n    defaultGroupAttr: flipboxBackImageStyleBorderDefault,\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"flipboxBackImageFilters\",\n    preset: \"design\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Filters', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, {\n    attrName: \"back_image_style.decoration.filters\",\n    grouped: false\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"back_title.decoration.font\",\n    defaultAttr: flipboxBackTitleFontGroupDefaultAttr,\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: true\n      }\n    },\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"back_subtitle.decoration.font\",\n    defaultAttr: flipboxBackSubtitleFontGroupDefaultAttr,\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Subtitle', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Subtitle', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"back_content.decoration.font\",\n    defaultAttr: flipboxBackContentFontGroupDefaultAttr,\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Body', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Body', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ButtonGroupContainer, {\n    attrName: \"back_button\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi'),\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi'),\n    defaultGroupAttr: (0,lodash.merge)({}, (_defaultSettingsAttrs2 = defaultSettingsAttrs?.back_button?.decoration?.asMutable?.({\n      deep: true\n    })) !== null && _defaultSettingsAttrs2 !== void 0 ? _defaultSettingsAttrs2 : {}, (_defaultRenderAttribu2 = flipbox_perk_module_default_render_attributes_namespaceObject?.back_button?.decoration) !== null && _defaultRenderAttribu2 !== void 0 ? _defaultRenderAttribu2 : {})\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"back_face.decoration.spacing\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Spacing', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Spacing', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, {\n    attrName: \"back_face.decoration.sizing\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Sizing', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Sizing', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"back_face.decoration.border\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Border', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Border', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"back_face.decoration.boxShadow\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Box Shadow', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Box Shadow', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, {\n    attrName: \"back_face.decoration.filters\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Filters', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Filters', 'dsm-supreme-modules-pro-for-divi')\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    defaultGroupAttr: decorationDefaults?.spacing\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, {\n    defaultGroupAttr: decorationDefaults?.sizing\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    defaultGroupAttr: decorationDefaults?.border\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    defaultGroupAttr: decorationDefaults?.boxShadow\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, {\n    defaultGroupAttr: decorationDefaults?.animation\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, {\n    defaultGroupAttr: decorationDefaults?.filters\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, {\n    defaultGroupAttr: decorationDefaults?.transform\n  }));\n}\n/* harmony default export */ const flipbox_perk_settings_design = (flipbox_perk_settings_design_SettingsDesign);\n;// ./packages/module-library/flipbox-perk/settings-advanced.js\n// Divi package dependencies.\n\n\n\n/**\n * Flipbox advanced settings.\n */\nfunction flipbox_perk_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_flipbox\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const flipbox_perk_settings_advanced = (flipbox_perk_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/flipbox-perk/flipbox-button-align.js\n\nconst flipbox_button_align_ALIGNMENT_VALUES = ['left', 'center', 'right'];\n\n/**\n * Map `*.decoration.button` alignment to innerContent for responsive CommonStyle.\n *\n * @param {Record<string, unknown>|undefined} buttonDec Plain `decoration.button` subtree.\n * @return {Record<string, unknown>|undefined} `{ innerContent: { desktop|tablet|phone: { value } } }`.\n */\nconst flipboxButtonDecorationAlignmentAsInnerContent = buttonDec => {\n  if (!buttonDec || 'object' !== typeof buttonDec) {\n    return undefined;\n  }\n  const innerContent = {};\n  for (const bp of ['desktop', 'tablet', 'phone']) {\n    var _valObj$textAlign;\n    const branch = buttonDec[bp];\n    if (!branch || 'object' !== typeof branch) {\n      continue;\n    }\n    const valObj = branch.value;\n    const raw = valObj && 'object' === typeof valObj ? (_valObj$textAlign = valObj.textAlign) !== null && _valObj$textAlign !== void 0 ? _valObj$textAlign : valObj.alignment : undefined;\n    if ('string' !== typeof raw) {\n      continue;\n    }\n    const normalized = raw.trim().toLowerCase();\n    if (flipbox_button_align_ALIGNMENT_VALUES.includes(normalized)) {\n      innerContent[bp] = {\n        value: normalized\n      };\n    }\n  }\n  return Object.keys(innerContent).length > 0 ? {\n    innerContent\n  } : undefined;\n};\n\n/**\n * Wrapper alignment: text-align (inline-block button) + margin auto (fit-content wrapper).\n *\n * @param {{ attrValue?: string }} attr CommonStyle params.\n * @return {string}\n */\nconst flipboxButtonWrapperAlignDeclaration = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'text-align': true\n    }\n  });\n  if ('left' === attrValue) {\n    declarations.add('text-align', 'left');\n    declarations.add('margin-left', '0');\n    declarations.add('margin-right', 'auto');\n  }\n  if ('center' === attrValue) {\n    declarations.add('text-align', 'center');\n    declarations.add('margin-left', 'auto');\n    declarations.add('margin-right', 'auto');\n  }\n  if ('right' === attrValue) {\n    declarations.add('text-align', 'right');\n    declarations.add('margin-left', 'auto');\n    declarations.add('margin-right', '0');\n  }\n  return declarations.value;\n};\n;// ./packages/module-library/flipbox-perk/flipbox-text-group-attr.js\n/**\n * Resolve `divi/text` (TextGroup) attrs for flipbox faces: `textOptionsClassnames` / `divi/text` expect\n * `{ text: { … } }` plus optional **`textShadow`** (Divi `TextStyle::style` reads `attr.textShadow`).\n *\n * VB stores live edits on `*_text.text`; schema defaults sit on `advanced.text.text`. Merge so omitted\n * `color` still resolves. Text shadow is stored on `*_text.textShadow` or `advanced.text.textShadow`\n * (face fallbacks) and must be included or Design → Text shadow emits **no CSS**.\n *\n * @param {Object} attrs   Module attrs.\n * @param {string} prefix `front` or `back`.\n * @return {Object} Shape for `textOptionsClassnames` / `module-styles` → `divi/text`.\n */\n\n/**\n * @param {Object|undefined} t    `front_text` | `back_text`.\n * @param {Object|undefined} f    `front_face` | `back_face`.\n * @param {Object|undefined} advT `t.advanced.text`\n * @param {Object|undefined} advF `f.advanced.text`\n * @return {Object|undefined}\n */\nfunction pickFlipFaceTextShadow(t, f, advT, advF) {\n  const candidates = [t?.textShadow, advT?.textShadow, f?.textShadow, advF?.textShadow];\n  for (const c of candidates) {\n    if (c && 'object' === typeof c && !Array.isArray(c) && Object.keys(c).length > 0) {\n      return c;\n    }\n  }\n  return undefined;\n}\n\n/**\n * @param {Object|undefined} base\n * @param {Object|undefined} override\n * @return {Object}\n */\nfunction mergeBreakpointTextValues(base, override) {\n  const bps = ['desktop', 'tablet', 'phone'];\n  const out = {};\n  for (const bp of bps) {\n    const bo = base?.[bp];\n    const ov = override?.[bp];\n    if (!bo && !ov) {\n      continue;\n    }\n    const bv = bo?.value && 'object' === typeof bo.value && !Array.isArray(bo.value) ? bo.value : {};\n    const ovv = ov?.value && 'object' === typeof ov.value && !Array.isArray(ov.value) ? ov.value : {};\n    out[bp] = {\n      ...(bo || {}),\n      ...(ov || {}),\n      value: {\n        ...bv,\n        ...ovv\n      }\n    };\n  }\n  return out;\n}\n\n/**\n * Flat breakpoint map from `*_text.text` or `advanced.text.text` (may be wrapped as `{ text: { desktop…} }`).\n *\n * @param {*} node\n * @return {Object|null}\n */\nfunction unwrapTextBreakpointMap(node) {\n  if (!node || 'object' !== typeof node || Array.isArray(node)) {\n    return null;\n  }\n  if (node.text && 'object' === typeof node.text && !Array.isArray(node.text) && (node.text.desktop || node.text.tablet || node.text.phone)) {\n    return node.text;\n  }\n  if (node.desktop || node.tablet || node.phone) {\n    return node;\n  }\n  if (node.text && 'object' === typeof node.text && !Array.isArray(node.text)) {\n    return unwrapTextBreakpointMap(node.text);\n  }\n  return null;\n}\n\n/**\n * @param {Object} attrs   Module attrs.\n * @param {string} prefix `front` or `back`.\n * @return {Object}\n */\nfunction flipboxResolveFlipFaceTextGroupAttr(attrs, prefix) {\n  var _t$text;\n  const t = attrs?.[`${prefix}_text`];\n  const f = attrs?.[`${prefix}_face`];\n  const advT = t?.advanced?.text;\n  const advF = f?.advanced?.text;\n  const rawBase = advT?.text && 'object' === typeof advT.text && !Array.isArray(advT.text) ? advT.text : advF?.text && 'object' === typeof advF.text && !Array.isArray(advF.text) ? advF.text : null;\n  const baseMap = unwrapTextBreakpointMap(rawBase);\n  const vbMap = unwrapTextBreakpointMap((_t$text = t?.text) !== null && _t$text !== void 0 ? _t$text : f?.text);\n  let result;\n  if (vbMap && baseMap) {\n    result = {\n      text: mergeBreakpointTextValues(baseMap, vbMap)\n    };\n  } else if (vbMap) {\n    result = {\n      text: vbMap\n    };\n  } else if (advT?.text && 'object' === typeof advT.text) {\n    const inner = unwrapTextBreakpointMap(advT.text);\n    result = inner ? {\n      text: inner\n    } : {\n      ...advT\n    };\n  } else if (advF?.text && 'object' === typeof advF.text) {\n    const inner = unwrapTextBreakpointMap(advF.text);\n    result = inner ? {\n      text: inner\n    } : {\n      ...advF\n    };\n  } else {\n    var _ref;\n    const fallback = (_ref = advT !== null && advT !== void 0 ? advT : advF) !== null && _ref !== void 0 ? _ref : {};\n    result = {\n      ...fallback\n    };\n  }\n  const ts = pickFlipFaceTextShadow(t, f, advT, advF);\n  return ts ? {\n    ...result,\n    textShadow: ts\n  } : result;\n}\n;// ./packages/module-library/flipbox-perk/module-styles.js\n\n\n\n\n\n\n\n/**\n * Font family + weight for `.et-pb-icon` (matches Card icon_style_declaration minus pseudo content;\n * glyph is text children from processFontIcon).\n *\n * @param {{ attrValue?: Record<string, unknown> }} attr Params from CommonStyle.\n * @return {string}\n */\nconst flipboxIconFontCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const raw = attrValue && typeof attrValue === 'object' && !Array.isArray(attrValue) ? attrValue : {};\n  const icon = raw && typeof raw.desktop === 'object' && raw.desktop && typeof raw.desktop.value === 'object' ? raw.desktop.value : raw;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string'\n  });\n  if (!icon || typeof icon !== 'object') {\n    return declarations.value;\n  }\n  if (icon.type) {\n    const fontFamily = 'fa' === icon.type ? 'FontAwesome' : 'ETmodules';\n    declarations.add('font-family', fontFamily);\n  } else if (icon.unicode) {\n    declarations.add('font-family', 'ETmodules');\n  }\n  if (icon.weight) {\n    declarations.add('font-weight', String(icon.weight));\n  }\n  return declarations.value;\n};\nconst flipboxResolveSimpleColorCss = raw => {\n  if ('string' === typeof raw && '' !== raw.trim()) {\n    return raw.trim();\n  }\n  if (raw && 'object' === typeof raw) {\n    if ('string' === typeof raw.hex && '' !== raw.hex.trim()) {\n      return raw.hex.trim();\n    }\n    if ('string' === typeof raw.rgba && '' !== raw.rgba.trim()) {\n      return raw.rgba.trim();\n    }\n  }\n  return '';\n};\n\n/**\n * Circle icon shape (matches FlipboxPerk::flipbox_icon_circle_shape_declaration / Card).\n *\n * @param {{ important?: Record<string, boolean> }} attr Params from CommonStyle.\n * @return {string}\n */\nconst flipboxIconCircleShapeDeclaration = attr => {\n  var _attr$important;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: (_attr$important = attr?.important) !== null && _attr$important !== void 0 ? _attr$important : {}\n  });\n  declarations.add('border-radius', '50%');\n  declarations.add('display', 'inline-flex');\n  declarations.add('align-items', 'center');\n  declarations.add('justify-content', 'center');\n  declarations.add('padding', '0.35em');\n  declarations.add('line-height', '1');\n  declarations.add('box-sizing', 'border-box');\n  declarations.add('vertical-align', 'middle');\n  declarations.add('aspect-ratio', '1');\n  return declarations.value;\n};\n\n/**\n * Circle fill color (matches FlipboxPerk::flipbox_icon_circle_fill_declaration / Card).\n *\n * @param {{ attrValue?: unknown, important?: Record<string, boolean> }} attr Params from CommonStyle.\n * @return {string}\n */\nconst flipboxIconCircleFillDeclaration = attr => {\n  var _attr$important2;\n  let color = flipboxResolveSimpleColorCss(attr?.attrValue);\n  if ('' === color) {\n    color = '#f4f4f4';\n  }\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: (_attr$important2 = attr?.important) !== null && _attr$important2 !== void 0 ? _attr$important2 : {}\n  });\n  declarations.add('background-color', color);\n  return declarations.value;\n};\n\n/**\n * Circle border color (matches FlipboxPerk::flipbox_icon_border_declaration / Card).\n *\n * @param {{ attrValue?: unknown, important?: Record<string, boolean> }} attr Params from CommonStyle.\n * @return {string}\n */\nconst flipboxIconBorderStyleFunc = attr => {\n  let resolved = flipboxResolveSimpleColorCss(attr?.attrValue);\n  if ('' === resolved) {\n    resolved = '#333333';\n  }\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      borderColor: true\n    }\n  });\n  declarations.add('border-style', 'solid');\n  declarations.add('border-width', '2px');\n  declarations.add('border-color', resolved);\n  return declarations.value;\n};\n\n/**\n * Flipbox module styles (module + faces + typography).\n */\nconst flipbox_perk_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _getAttrByMode4, _getAttrByMode5, _getAttrByMode6, _getAttrByMode7, _getAttrByMode8, _attrs$module$decorat, _attrs$module$decorat2, _attrs$front_use_circ, _attrs$back_use_circl;\n  // Match PHP FlipboxPerk::render_face: missing use_icon defaults to \"off\" (image mode). In VB, desktop.value\n  // is often omitted until toggled; strict `=== 'off'` hid image max-width CommonStyle on the canvas.\n  const frontUseIcon = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.front_use_icon?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'off';\n  const backUseIcon = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.back_use_icon?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'off';\n  const frontUseIconFontSize = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.front_use_icon_font_size?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'off';\n  const backUseIconFontSize = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.back_use_icon_font_size?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : 'off';\n  const frontUseCircle = (_getAttrByMode5 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.front_use_circle?.innerContent)) !== null && _getAttrByMode5 !== void 0 ? _getAttrByMode5 : 'off';\n  const backUseCircle = (_getAttrByMode6 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.back_use_circle?.innerContent)) !== null && _getAttrByMode6 !== void 0 ? _getAttrByMode6 : 'off';\n  const frontUseCircleBorderRaw = (_getAttrByMode7 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.front_use_circle_border?.innerContent)) !== null && _getAttrByMode7 !== void 0 ? _getAttrByMode7 : 'off';\n  const backUseCircleBorderRaw = (_getAttrByMode8 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.back_use_circle_border?.innerContent)) !== null && _getAttrByMode8 !== void 0 ? _getAttrByMode8 : 'off';\n  const frontUseCircleBorder = 'on' === frontUseCircle && 'on' === frontUseCircleBorderRaw;\n  const backUseCircleBorder = 'on' === backUseCircle && 'on' === backUseCircleBorderRaw;\n  const frontFaceTextAdvanced = flipboxResolveFlipFaceTextGroupAttr(attrs, 'front');\n  const backFaceTextAdvanced = flipboxResolveFlipFaceTextGroupAttr(attrs, 'back');\n  const frontButtonAlignAttr = flipboxButtonDecorationAlignmentAsInnerContent(attrs?.front_button?.decoration?.button);\n  const backButtonAlignAttr = flipboxButtonDecorationAlignmentAsInnerContent(attrs?.back_button?.decoration?.button);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      },\n      advancedStyles: [{\n        componentName: 'divi/background',\n        props: {\n          attr: (_attrs$module$decorat = attrs?.module?.decoration?.background) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n        }\n      }, {\n        componentName: 'divi/common',\n        props: {\n          attr: (_attrs$module$decorat2 = attrs?.module?.decoration?.border) !== null && _attrs$module$decorat2 !== void 0 ? _attrs$module$decorat2 : {},\n          declarationFunction: params => {\n            var _attrs$module$decorat3;\n            return (0,external_divi_styleLibrary_namespaceObject.overflowForBorderRadiusStyleDeclaration)(params, (_attrs$module$decorat3 = attrs?.module?.decoration?.overflow) !== null && _attrs$module$decorat3 !== void 0 ? _attrs$module$decorat3 : {});\n          }\n        }\n      }]\n    }\n  }), elements.style({\n    attrName: 'front_text',\n    styleProps: {\n      advancedStyles: [{\n        componentName: 'divi/text',\n        props: {\n          selector: `${orderClass} .dsm-flipbox-face-front .dsm_flipbox_wrapper`,\n          attr: frontFaceTextAdvanced\n        }\n      }]\n    }\n  }), elements.style({\n    attrName: 'back_text',\n    styleProps: {\n      advancedStyles: [{\n        componentName: 'divi/text',\n        props: {\n          selector: `${orderClass} .dsm-flipbox-face-back .dsm_flipbox_wrapper`,\n          attr: backFaceTextAdvanced\n        }\n      }]\n    }\n  }), 'off' === frontUseIcon && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, elements.style({\n    attrName: 'front_image_max_width'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-flipbox-face-front .dsm_flipbox_child_image_wrap`,\n    attr: attrs?.front_image_max_width?.innerContent,\n    property: \"max-width\"\n  })), 'off' === backUseIcon && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, elements.style({\n    attrName: 'back_image_max_width'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-flipbox-face-back .dsm_flipbox_child_image_wrap`,\n    attr: attrs?.back_image_max_width?.innerContent,\n    property: \"max-width\"\n  })), elements.style({\n    attrName: 'face_style'\n  }), elements.style({\n    attrName: 'face_title'\n  }), elements.style({\n    attrName: 'face_subtitle'\n  }), elements.style({\n    attrName: 'face_content'\n  }), elements.style({\n    attrName: 'front_face'\n  }), elements.style({\n    attrName: 'back_face'\n  }), elements.style({\n    attrName: 'front_image_style'\n  }), elements.style({\n    attrName: 'back_image_style'\n  }), 'on' === frontUseIcon && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-flipbox-face-front .dsm_flipbox_child_image .et-pb-icon`,\n    attr: attrs?.front_font_icon?.innerContent,\n    declarationFunction: flipboxIconFontCss\n  }), 'on' === backUseIcon && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-flipbox-face-back .dsm_flipbox_child_image .et-pb-icon`,\n    attr: attrs?.back_font_icon?.innerContent,\n    declarationFunction: flipboxIconFontCss\n  }), 'on' === frontUseIcon && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, elements.style({\n    attrName: 'front_icon_color'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-flipbox-face-front .dsm_flipbox_child_image .et-pb-icon`,\n    attr: attrs?.front_icon_color?.innerContent,\n    property: \"color\"\n  })), 'on' === backUseIcon && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, elements.style({\n    attrName: 'back_icon_color'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-flipbox-face-back .dsm_flipbox_child_image .et-pb-icon`,\n    attr: attrs?.back_icon_color?.innerContent,\n    property: \"color\"\n  })), 'on' === frontUseIcon && 'on' === frontUseIconFontSize && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, elements.style({\n    attrName: 'front_icon_font_size'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-flipbox-face-front .dsm_flipbox_child_image .et-pb-icon`,\n    attr: attrs?.front_icon_font_size?.innerContent,\n    property: \"font-size\"\n  })), 'on' === backUseIcon && 'on' === backUseIconFontSize && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, elements.style({\n    attrName: 'back_icon_font_size'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-flipbox-face-back .dsm_flipbox_child_image .et-pb-icon`,\n    attr: attrs?.back_icon_font_size?.innerContent,\n    property: \"font-size\"\n  })), 'on' === frontUseIcon && 'on' === frontUseCircle && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-flipbox-face-front .dsm_flipbox_child_image .et-pb-icon`,\n    attr: (_attrs$front_use_circ = attrs?.front_use_circle?.innerContent) !== null && _attrs$front_use_circ !== void 0 ? _attrs$front_use_circ : {\n      desktop: {\n        value: 'on'\n      }\n    },\n    declarationFunction: flipboxIconCircleShapeDeclaration\n  }), elements.style({\n    attrName: 'front_circle_color'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-flipbox-face-front .dsm_flipbox_child_image .et-pb-icon`,\n    attr: attrs?.front_circle_color?.innerContent,\n    declarationFunction: flipboxIconCircleFillDeclaration\n  })), 'on' === backUseIcon && 'on' === backUseCircle && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-flipbox-face-back .dsm_flipbox_child_image .et-pb-icon`,\n    attr: (_attrs$back_use_circl = attrs?.back_use_circle?.innerContent) !== null && _attrs$back_use_circl !== void 0 ? _attrs$back_use_circl : {\n      desktop: {\n        value: 'on'\n      }\n    },\n    declarationFunction: flipboxIconCircleShapeDeclaration\n  }), elements.style({\n    attrName: 'back_circle_color'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-flipbox-face-back .dsm_flipbox_child_image .et-pb-icon`,\n    attr: attrs?.back_circle_color?.innerContent,\n    declarationFunction: flipboxIconCircleFillDeclaration\n  })), 'on' === frontUseIcon && frontUseCircleBorder && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, elements.style({\n    attrName: 'front_circle_border_color'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-flipbox-face-front .dsm_flipbox_child_image .et-pb-icon`,\n    attr: attrs?.front_circle_border_color?.innerContent,\n    declarationFunction: flipboxIconBorderStyleFunc\n  })), 'on' === backUseIcon && backUseCircleBorder && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, elements.style({\n    attrName: 'back_circle_border_color'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-flipbox-face-back .dsm_flipbox_child_image .et-pb-icon`,\n    attr: attrs?.back_circle_border_color?.innerContent,\n    declarationFunction: flipboxIconBorderStyleFunc\n  })), elements.style({\n    attrName: 'front_icon_style'\n  }), elements.style({\n    attrName: 'back_icon_style'\n  }), elements.style({\n    attrName: 'front_title'\n  }), elements.style({\n    attrName: 'back_title'\n  }), elements.style({\n    attrName: 'front_subtitle'\n  }), elements.style({\n    attrName: 'back_subtitle'\n  }), elements.style({\n    attrName: 'front_content'\n  }), elements.style({\n    attrName: 'back_content'\n  }), elements.style({\n    attrName: 'front_button'\n  }), elements.style({\n    attrName: 'back_button'\n  }), frontButtonAlignAttr ? /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-flipbox-face-front .et_pb_button_module_wrapper`,\n    attr: frontButtonAlignAttr,\n    declarationFunction: flipboxButtonWrapperAlignDeclaration\n  }) : null, backButtonAlignAttr ? /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-flipbox-face-back .et_pb_button_module_wrapper`,\n    attr: backButtonAlignAttr,\n    declarationFunction: flipboxButtonWrapperAlignDeclaration\n  }) : null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs?.css\n  }));\n};\n;// ./packages/module-library/flipbox-perk/edit.js\nfunction flipbox_perk_edit_extends() {\n  return flipbox_perk_edit_extends = Object.assign ? Object.assign.bind() : function (n) {\n    for (var e = 1; e < arguments.length; e++) {\n      var t = arguments[e];\n      for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n    }\n    return n;\n  }, flipbox_perk_edit_extends.apply(null, arguments);\n}\n\n\n\n\n\n\n\n\n\n\n\n\n\n/**\n * Normalize upload innerContent for img src (matches tilt-image / icon-divider).\n *\n * @param {*} raw From getAttrByMode( attrs.*_image.innerContent ).\n * @return {string}\n */\nfunction flipbox_perk_edit_getUploadValueForDynamicData(raw) {\n  if (raw == null || raw === '') {\n    return '';\n  }\n  if (typeof raw === 'string' || typeof raw === 'number') {\n    return String(raw);\n  }\n  if (typeof raw === 'object') {\n    if (typeof raw.src === 'string' && raw.src !== '') {\n      return raw.src;\n    }\n    if (typeof raw.url === 'string' && raw.url !== '') {\n      return raw.url;\n    }\n  }\n  return '';\n}\n\n/**\n * Plain text from heading attr for image alt in the builder (matches PHP fallback).\n *\n * @param {*} raw From getAttrByMode( attrs.*_title.innerContent ).\n * @return {string}\n */\nfunction getFlipboxFaceTitlePlainTextForAlt(raw) {\n  if (raw == null || raw === '') {\n    return '';\n  }\n  if (typeof raw === 'string') {\n    return raw.replace(/<[^>]+>/g, '').trim();\n  }\n  if (typeof raw === 'object' && raw !== null && typeof raw.text === 'string') {\n    return raw.text.replace(/<[^>]+>/g, '').trim();\n  }\n  return '';\n}\n\n/**\n * Whether a text/url innerContent value is set (static string or dynamic object).\n *\n * @param {*} raw From getAttrByMode( attrs.*_button_*?.innerContent ).\n * @return {boolean}\n */\nfunction flipboxButtonFieldIsPresent(raw) {\n  if (raw == null || raw === '') {\n    return false;\n  }\n  if (typeof raw === 'string') {\n    return raw.trim() !== '';\n  }\n  if (typeof raw === 'object') {\n    return !(0,lodash.isEmpty)(raw);\n  }\n  return false;\n}\nconst flipbox_perk_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}), elements.scriptData({\n  attrName: 'front_text'\n}), elements.scriptData({\n  attrName: 'back_text'\n}), elements.scriptData({\n  attrName: 'front_face'\n}), elements.scriptData({\n  attrName: 'back_face'\n}));\n\n/**\n * One flip face (front/back): matches PHP {@see FlipboxPerk::render_face} + elements.render bindings.\n *\n * @param {Object}   props\n * @param {Object}   props.attrs    Module attrs.\n * @param {Object}   props.elements Elements API.\n * @param {'front'|'back'} props.prefix Face.\n * @param {boolean}         [props.clickTriggerButtonMode] VB: trigger is click + target is button (front only).\n * @param {Function}        [props.onClickFlipToggle]      Toggle click flip state (front button mode).\n * @param {string}          [props.flipTrigger]            hover|click — for aria-hidden on faces.\n * @param {string}          [props.flipClickMode]          whole|button.\n * @param {boolean}         [props.clickFlipShowsBack]     VB click mode: back face is visible.\n */\nfunction FlipboxFaceEdit({\n  attrs,\n  elements,\n  prefix,\n  clickTriggerButtonMode = false,\n  onClickFlipToggle,\n  flipTrigger,\n  flipClickMode,\n  clickFlipShowsBack = false\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _getAttrByMode4, _getAttrByMode5, _getAttrByMode6, _coClassMap$contentOr, _attrs$decoration;\n  const useIcon = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.[`${prefix}_use_icon`]?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'off';\n  const btnTextRaw = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.[`${prefix}_button_text`]?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : '';\n  const btnUrlRaw = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.[`${prefix}_button_url`]?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : '';\n  const {\n    resolvedValue: resolvedBtnUrl\n  } = (0,external_divi_dynamicData_namespaceObject.useDynamicData)(btnUrlRaw);\n  const newWin = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.[`${prefix}_button_url_new_window`]?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : 'off';\n  const contentOrientation = (_getAttrByMode5 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.[`${prefix}_content_orientation`]?.innerContent)) !== null && _getAttrByMode5 !== void 0 ? _getAttrByMode5 : 'center';\n  const iconPlacementRaw = (_getAttrByMode6 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.[`${prefix}_icon_placement`]?.innerContent)) !== null && _getAttrByMode6 !== void 0 ? _getAttrByMode6 : 'top';\n  const iconPlacement = ['top', 'left', 'right'].includes(iconPlacementRaw) ? iconPlacementRaw : 'top';\n  const coClassMap = {\n    'flex-start': 'dsm_flipbox_content_vertical_top',\n    center: 'dsm_flipbox_content_vertical_center',\n    'flex-end': 'dsm_flipbox_content_vertical_bottom'\n  };\n  const contentOrientationClass = (_coClassMap$contentOr = coClassMap[contentOrientation]) !== null && _coClassMap$contentOr !== void 0 ? _coClassMap$contentOr : 'dsm_flipbox_content_vertical_center';\n  const iconPickerVal = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.[`${prefix}_font_icon`]?.innerContent);\n  const hasPickerIcon = 'on' === useIcon && iconPickerVal && 'object' === typeof iconPickerVal && (iconPickerVal.unicode || iconPickerVal.type);\n  const imageRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.[`${prefix}_image`]?.innerContent);\n  const imageSrcForCanvas = flipbox_perk_edit_getUploadValueForDynamicData(imageRaw);\n  const titleRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.[`${prefix}_title`]?.innerContent);\n  const imageAltText = getFlipboxFaceTitlePlainTextForAlt(titleRaw);\n  const useCircle = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.[`${prefix}_use_circle`]?.innerContent) === 'on';\n  const useCircleBorderRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.[`${prefix}_use_circle_border`]?.innerContent);\n  const useCircleBorder = useCircle && useCircleBorderRaw === 'on';\n  const iconClasses = ['et-pb-icon'];\n  if (useCircle) {\n    iconClasses.push('et-pb-icon-circle');\n  }\n  if (useCircleBorder) {\n    iconClasses.push('et-pb-icon-circle-border');\n  }\n  const faceAriaHidden = 'click' === flipTrigger && ('whole' === flipClickMode || clickTriggerButtonMode) && ('front' === prefix && clickFlipShowsBack || 'back' === prefix && !clickFlipShowsBack);\n  const iconHostClassName = iconClasses.filter(className => 'et-pb-icon' !== className).join(' ');\n  const imageBlock = hasPickerIcon ? /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_flipbox_child_image\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm_flipbox_child_image_wrap\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(ModuleIconHost, {\n    icon: iconPickerVal,\n    className: iconHostClassName,\n    nativeRender: \"inline\"\n  }))) : /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_flipbox_child_image\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm_flipbox_child_image_wrap\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: imageSrcForCanvas\n  }, resolved => resolved ? /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n    src: resolved,\n    alt: imageAltText,\n    loading: \"lazy\",\n    decoding: \"async\",\n    className: \"dsm-flipbox-face-img\"\n  }) : null)));\n  const showImageArea = hasPickerIcon || 'off' === useIcon && imageSrcForCanvas.trim() !== '';\n  const btnHref = typeof resolvedBtnUrl === 'string' && '' !== resolvedBtnUrl.trim() ? resolvedBtnUrl.trim() : typeof btnUrlRaw === 'string' && '' !== btnUrlRaw.trim() ? btnUrlRaw.trim() : '#';\n  const showButton = flipboxButtonFieldIsPresent(btnTextRaw) && flipboxButtonFieldIsPresent(btnUrlRaw);\n  const buttonIconSettings = attrs?.[`${prefix}_button`]?.decoration?.button?.desktop?.value?.icon?.settings;\n  const hasButtonIcon = Boolean(buttonIconSettings && (buttonIconSettings.unicode || buttonIconSettings.type));\n  const buttonDataIcon = buttonIconSettings && !isDsmIcon(buttonIconSettings) ? (0,external_divi_iconLibrary_namespaceObject.processFontIcon)(buttonIconSettings) || '' : '';\n  const faceTextGroupClasses = (0,external_divi_module_namespaceObject.textOptionsClassnames)(flipboxResolveFlipFaceTextGroupAttr(attrs, prefix));\n  const faceDecorationClasses = (0,external_divi_module_namespaceObject.elementClassnames)({\n    attrs: (_attrs$decoration = attrs?.[`${prefix}_face`]?.decoration) !== null && _attrs$decoration !== void 0 ? _attrs$decoration : {}\n  });\n  return /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: `dsm_flipbox_child dsm-flipbox-face-${prefix} ${faceDecorationClasses} dsm_flipbox_icon_position_${iconPlacement} ${contentOrientationClass}`.trim(),\n    \"aria-hidden\": faceAriaHidden ? 'true' : undefined\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_flipbox_face_inner\"\n  }, showImageArea ? imageBlock : null, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: `dsm_flipbox_wrapper ${faceTextGroupClasses}`.trim()\n  }, elements.render({\n    attrName: `${prefix}_title`\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm-subtitle\"\n  }, elements.render({\n    attrName: `${prefix}_subtitle`\n  })), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-content\"\n  }, elements.render({\n    attrName: `${prefix}_content`,\n    attrSubName: 'text'\n  })), showButton ? /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"et_pb_button_module_wrapper\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"a\", flipbox_perk_edit_extends({\n    className: hasButtonIcon ? 'et_pb_button et_pb_custom_button_icon' : 'et_pb_button',\n    href: btnHref\n  }, buttonDataIcon ? {\n    'data-icon': buttonDataIcon\n  } : {}, 'on' === newWin ? {\n    target: '_blank',\n    rel: 'noopener noreferrer'\n  } : {}, {\n    onClick: e => {\n      e.preventDefault();\n      if (clickTriggerButtonMode && 'function' === typeof onClickFlipToggle) {\n        e.stopPropagation();\n        onClickFlipToggle();\n      }\n    }\n  }), elements.render({\n    attrName: `${prefix}_button_text`,\n    tagName: 'span'\n  }))) : null)));\n}\nfunction flipbox_perk_edit_Edit({\n  attrs,\n  elements,\n  id,\n  name\n}) {\n  var _getAttrByMode7, _getAttrByMode8, _getAttrByMode9, _getAttrByMode0, _getAttrByMode1, _getAttrByMode10, _getAttrByMode11, _getAttrByMode12;\n  const flipboxType = (_getAttrByMode7 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.flipbox_type?.innerContent)) !== null && _getAttrByMode7 !== void 0 ? _getAttrByMode7 : 'flip';\n  const flipboxEffect = (_getAttrByMode8 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.flipbox_effect?.innerContent)) !== null && _getAttrByMode8 !== void 0 ? _getAttrByMode8 : 'right';\n  const flipbox3d = (_getAttrByMode9 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.flipbox_3d?.innerContent)) !== null && _getAttrByMode9 !== void 0 ? _getAttrByMode9 : 'off';\n  const trigger = (_getAttrByMode0 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.flipbox_trigger?.innerContent)) !== null && _getAttrByMode0 !== void 0 ? _getAttrByMode0 : 'hover';\n  const clickMode = (_getAttrByMode1 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.flipbox_click?.innerContent)) !== null && _getAttrByMode1 !== void 0 ? _getAttrByMode1 : 'whole';\n  const slideEffect = (_getAttrByMode10 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.flipbox_slide_effect?.innerContent)) !== null && _getAttrByMode10 !== void 0 ? _getAttrByMode10 : 'slide-up';\n  const zoomOutEffect = (_getAttrByMode11 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.flipbox_zoom_out_effect?.innerContent)) !== null && _getAttrByMode11 !== void 0 ? _getAttrByMode11 : 'zoom-out';\n  const heightMode = (_getAttrByMode12 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.flipbox_height_mode?.innerContent)) !== null && _getAttrByMode12 !== void 0 ? _getAttrByMode12 : 'fixed';\n\n  /**\n   * Click trigger: CSS toggles `.dsm_flipbox_click` (front) vs `.dsm_flipbox_clicked` (back).\n   * Frontend uses `flipbox-frontend.js` (vanilla); VB must mirror behavior because the script does not run on the canvas.\n   */\n  const [clickShowsBack, setClickShowsBack] = (0,external_vendor_React_.useState)(false);\n  (0,external_vendor_React_.useEffect)(() => {\n    if ('click' !== trigger) {\n      setClickShowsBack(false);\n    }\n  }, [trigger]);\n  const triggerClass = 'click' === trigger ? clickShowsBack ? 'dsm_flipbox_clicked' : 'dsm_flipbox_click' : `dsm_flipbox_${trigger}`;\n  const flipClasses = ['dsm-flipbox', 'auto' === heightMode ? 'dsm-flipbox--auto-height' : '', 'flip' === flipboxType ? `dsm-flipbox-effect-${flipboxEffect}` : '', 'flip' === flipboxType && 'on' === flipbox3d ? 'dsm-flipbox-3d' : '', 'zoom-in' === flipboxType ? 'dsm-flipbox-zoom-in' : '', 'fade' === flipboxType ? 'dsm-flipbox-fade' : '', 'zoom-out' === flipboxType ? `dsm-flipbox-zoom dsm-flipbox-${zoomOutEffect}` : '', 'slide' === flipboxType ? `dsm-flipbox-${slideEffect}` : '', triggerClass, 'click' === trigger ? `dsm_flipbox_trigger_${clickMode}` : ''].filter(Boolean).join(' ');\n  const handleClickFlipToggle = () => {\n    setClickShowsBack(v => !v);\n  };\n  const handleFlipboxShellClick = 'click' === trigger && 'whole' === clickMode ? e => {\n    e.stopPropagation();\n    handleClickFlipToggle();\n  } : undefined;\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    stylesComponent: flipbox_perk_module_styles_ModuleStyles,\n    scriptDataComponent: flipbox_perk_edit_ModuleScriptData,\n    classnamesFunction: params => {\n      var _attrs$module$decorat, _attrs$module$advance;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: {\n          ...((_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}),\n          link: (_attrs$module$advance = attrs?.module?.advanced?.link) !== null && _attrs$module$advance !== void 0 ? _attrs$module$advance : {}\n        }\n      }));\n      params.classnamesInstance.add('dsm_flipbox');\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), elements.styleComponents({\n    attrName: 'front_text'\n  }), elements.styleComponents({\n    attrName: 'back_text'\n  }), elements.styleComponents({\n    attrName: 'front_face'\n  }), elements.styleComponents({\n    attrName: 'back_face'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: flipClasses,\n    onClick: handleFlipboxShellClick,\n    role: \"group\",\n    \"aria-label\": (0,external_window_vendor_wp_i18n_namespaceObject.__)('Flip box with front and back content', 'dsm-supreme-modules-pro-for-divi'),\n    \"data-dsm-flip-trigger\": trigger,\n    tabIndex: 'click' === trigger && 'whole' === clickMode ? 0 : undefined,\n    onKeyDown: 'click' === trigger && 'whole' === clickMode ? e => {\n      if ('Enter' === e.key || ' ' === e.key) {\n        e.preventDefault();\n        e.stopPropagation();\n        handleClickFlipToggle();\n      }\n    } : undefined\n  }, /*#__PURE__*/external_vendor_React_default().createElement(FlipboxFaceEdit, {\n    attrs: attrs,\n    elements: elements,\n    prefix: \"front\",\n    clickTriggerButtonMode: 'click' === trigger && 'button' === clickMode,\n    onClickFlipToggle: handleClickFlipToggle,\n    flipTrigger: trigger,\n    flipClickMode: clickMode,\n    clickFlipShowsBack: clickShowsBack\n  }), /*#__PURE__*/external_vendor_React_default().createElement(FlipboxFaceEdit, {\n    attrs: attrs,\n    elements: elements,\n    prefix: \"back\",\n    flipTrigger: trigger,\n    flipClickMode: clickMode,\n    clickFlipShowsBack: clickShowsBack\n  })));\n}\n/* harmony default export */ const flipbox_perk_edit = (flipbox_perk_edit_Edit);\n;// ./packages/module-library/flipbox-perk/conversion-outline.js\n/**\n * D4 → D5 Flipbox (`dsm_flipbox` + `dsm_flipbox_child`).\n *\n * D4 uses two child modules per flip box: first child = front face, second = back face.\n * D5 stores both faces in one `dsm/flipbox` block (`front_*` / `back_*`).\n *\n * Divi’s migrator converts parent and children as separate steps; merging two child\n * shortcodes into one block is not handled by this outline alone. After migration,\n * re-save or re-map legacy layouts if needed. Parent-level typography (D4 parent\n * advanced fonts) land on `face_*` (both faces); PHP mirrors into `front_*` / `back_*` when those\n * per-face font decorations are still empty (see {@see ConversionAttrs::hydrate_flipbox_face_shared_fonts_into_per_face_when_empty}).\n */\nconst flipbox_perk_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'face_style.decoration.border'\n    },\n    box_shadow: {\n      default: 'face_style.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    display_conditions: 'module.decoration.conditions',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    margin_padding: 'module.decoration.spacing',\n    max_width: 'module.decoration.sizing',\n    height: 'module.decoration.sizing',\n    link_options: 'module.advanced.link',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    fonts: {\n      header: 'face_title.decoration.font',\n      content: 'face_content.decoration.font',\n      subhead: 'face_subtitle.decoration.font'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    // D4 custom range on `.dsm-flipbox`. Must use `*.height` like AdvancedOptionConversion::getSizingHeightConversionMap\n    // so `*` becomes `desktop.value` / `tablet.value` / `phone.value` — not the whole `sizing` object.\n    flipbox_height: 'module.decoration.sizing.*.height',\n    flipbox_trigger: 'flipbox_trigger.innerContent.*',\n    flipbox_click: 'flipbox_click.innerContent.*',\n    flipbox_type: 'flipbox_type.innerContent.*',\n    flipbox_effect: 'flipbox_effect.innerContent.*',\n    flipbox_3d: 'flipbox_3d.innerContent.*',\n    flipbox_slide_effect: 'flipbox_slide_effect.innerContent.*',\n    flipbox_zoom_out_effect: 'flipbox_zoom_out_effect.innerContent.*',\n    flipbox_speed: 'flipbox_speed.innerContent.*',\n    flipbox_height_mode: 'flipbox_height_mode.innerContent.*',\n    header_level: 'face_title.decoration.font.font.*.headingLevel',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/flipbox-perk/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmFlipbox', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/flipbox': {\n      name: 'divi-supreme/flipbox',\n      viewBox: '0 0 30 30',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 13.523438 4.203125 C 13.101562 4.203125 12.757812 3.855469 12.757812 3.433594 C 12.757812 3.011719 13.101562 2.667969 13.523438 2.667969 C 13.945312 2.667969 14.292969 3.011719 14.292969 3.433594 C 14.292969 3.855469 13.945312 4.203125 13.523438 4.203125 Z M 13.523438 3.160156 C 13.375 3.160156 13.25 3.285156 13.25 3.433594 C 13.25 3.582031 13.375 3.707031 13.523438 3.707031 C 13.671875 3.707031 13.796875 3.582031 13.796875 3.433594 C 13.789062 3.277344 13.671875 3.160156 13.523438 3.160156 Z M 13.523438 3.160156 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 4.859375 12.425781 C 4.4375 12.425781 4.089844 12.082031 4.089844 11.660156 C 4.089844 11.234375 4.4375 10.890625 4.859375 10.890625 C 5.28125 10.890625 5.625 11.234375 5.625 11.660156 C 5.632812 12.082031 5.289062 12.425781 4.859375 12.425781 Z M 4.859375 11.386719 C 4.710938 11.386719 4.585938 11.507812 4.585938 11.660156 C 4.585938 11.808594 4.710938 11.933594 4.859375 11.933594 C 5.007812 11.933594 5.132812 11.808594 5.132812 11.660156 C 5.132812 11.507812 5.007812 11.386719 4.859375 11.386719 Z M 4.859375 11.386719 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 13.738281 13.195312 L 9.746094 13.195312 L 7.492188 9.5 L 7.5625 9.375 C 7.703125 9.121094 8.023438 8.902344 8.371094 8.824219 C 8.660156 8.761719 8.917969 8.800781 9.105469 8.9375 C 9.15625 8.976562 9.285156 9.070312 9.636719 9.605469 L 9.636719 7.15625 C 9.652344 6.8125 9.875 6.175781 10.617188 6.175781 C 10.957031 6.175781 11.152344 6.3125 11.257812 6.433594 C 11.507812 6.710938 11.496094 7.089844 11.488281 7.175781 L 11.488281 8.667969 L 12.859375 8.667969 C 13.183594 8.667969 13.429688 8.761719 13.585938 8.945312 C 13.753906 9.140625 13.75 9.375 13.738281 9.449219 Z M 10.015625 12.710938 L 13.257812 12.710938 L 13.265625 9.398438 C 13.265625 9.398438 13.273438 9.316406 13.222656 9.253906 C 13.164062 9.191406 13.039062 9.152344 12.863281 9.152344 L 11.019531 9.152344 L 11.019531 7.144531 C 11.023438 7.074219 11.011719 6.875 10.90625 6.761719 C 10.84375 6.691406 10.75 6.660156 10.617188 6.660156 C 10.171875 6.660156 10.128906 7.089844 10.121094 7.171875 L 10.121094 11.355469 L 9.675781 10.582031 C 9.066406 9.523438 8.867188 9.347656 8.828125 9.324219 C 8.753906 9.273438 8.628906 9.261719 8.476562 9.292969 C 8.320312 9.328125 8.164062 9.410156 8.0625 9.5 Z M 10.015625 12.710938 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.875 8.535156 L 6.246094 9.167969 C 6.175781 9.238281 6.175781 9.351562 6.246094 9.414062 C 6.277344 9.445312 6.328125 9.464844 6.371094 9.464844 C 6.414062 9.464844 6.460938 9.445312 6.496094 9.414062 L 7.546875 8.363281 L 6.496094 7.316406 C 6.429688 7.246094 6.320312 7.246094 6.25 7.316406 C 6.183594 7.386719 6.183594 7.5 6.25 7.5625 L 6.875 8.1875 C 4.152344 8.175781 3.019531 7.601562 3.019531 6.457031 C 3.019531 5.304688 5.347656 4.335938 8.09375 4.335938 C 10.84375 4.335938 13.171875 5.304688 13.171875 6.457031 C 13.171875 6.550781 13.246094 6.632812 13.347656 6.632812 C 13.441406 6.632812 13.523438 6.554688 13.523438 6.457031 C 13.523438 5.070312 11.140625 3.984375 8.09375 3.984375 C 5.050781 3.984375 2.667969 5.070312 2.667969 6.457031 C 2.660156 7.828125 3.863281 8.523438 6.875 8.535156 Z M 6.875 8.535156 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/flipbox-perk/flipbox-insert-attrs.js\n/**\n * Persist flipbox tutorial copy into stored attrs on insert (FAQ child gets this via parent; flipbox is a parent module).\n *\n * @package DiviSupreme\n */\n\n\n\n\nconst FLIPBOX_MODULE_NAME = 'dsm/flipbox';\nconst PLACEHOLDER_INNER_BY_ATTR = {\n  front_title: flipboxFrontTitlePlaceholderInner,\n  back_title: flipboxBackTitlePlaceholderInner,\n  front_subtitle: flipboxFrontSubtitlePlaceholderInner,\n  back_subtitle: flipboxBackSubtitlePlaceholderInner,\n  front_content: flipboxFrontContentPlaceholderInner,\n  back_content: flipboxBackContentPlaceholderInner,\n  front_button_text: flipboxFrontButtonTextPlaceholderInner,\n  back_button_text: flipboxBackButtonTextPlaceholderInner,\n  front_button_url: flipboxFrontButtonUrlPlaceholderInner,\n  back_button_url: flipboxBackButtonUrlPlaceholderInner\n};\n\n/**\n * @param {*} value Desktop innerContent value leaf.\n * @return {boolean}\n */\nfunction flipboxHeadingValueIsEmpty(value) {\n  if (value == null) {\n    return true;\n  }\n  if ('string' === typeof value) {\n    return '' === value.trim();\n  }\n  if ('object' === typeof value && null !== value) {\n    const text = value.text;\n    return 'string' !== typeof text || '' === text.trim();\n  }\n  return true;\n}\n\n/**\n * @param {*} value Desktop innerContent value leaf.\n * @return {boolean}\n */\nfunction flipboxPlainTextValueIsEmpty(value) {\n  if (value == null) {\n    return true;\n  }\n  if ('string' === typeof value) {\n    return '' === value.trim();\n  }\n  return false;\n}\n\n/**\n * @param {Record<string, unknown>} attrs Module attrs.\n * @param {string}                    attrName Attribute key.\n * @param {( value: unknown ) => boolean} isEmpty Value emptiness check.\n * @return {boolean}\n */\nfunction flipboxShouldHydrateInnerContent(attrs, attrName, isEmpty) {\n  if (!attrs || 'object' !== typeof attrs) {\n    return false;\n  }\n  if (!Object.prototype.hasOwnProperty.call(attrs, attrName)) {\n    return true;\n  }\n  const branch = attrs[attrName];\n  if (!branch || 'object' !== typeof branch) {\n    return true;\n  }\n  if (!Object.prototype.hasOwnProperty.call(branch, 'innerContent')) {\n    return true;\n  }\n  const desktop = branch.innerContent?.desktop;\n  if (!desktop || 'object' !== typeof desktop) {\n    return true;\n  }\n  if (!Object.prototype.hasOwnProperty.call(desktop, 'value')) {\n    return true;\n  }\n  return isEmpty(desktop.value);\n}\n\n/**\n * @param {Record<string, unknown>} attrs Module attrs (mutated copy).\n * @param {string}                    attrName Attribute key.\n * @param {Record<string, unknown>}   innerContent Placeholder innerContent slice.\n * @param {( value: unknown ) => boolean} isEmpty Value emptiness check.\n */\nfunction flipboxHydrateInnerContentWhenEmpty(attrs, attrName, innerContent, isEmpty) {\n  if (!flipboxShouldHydrateInnerContent(attrs, attrName, isEmpty)) {\n    return;\n  }\n  attrs[attrName] = (0,lodash.merge)({}, attrs[attrName], {\n    innerContent\n  });\n}\n\n/**\n * @param {Record<string, unknown>|undefined} attrs Incoming module attrs.\n * @return {Record<string, unknown>}\n */\nfunction flipboxMergePlaceholderTextIntoAttrs(attrs) {\n  const next = (0,lodash.merge)({}, attrs);\n  Object.entries(PLACEHOLDER_INNER_BY_ATTR).forEach(([attrName, innerContent]) => {\n    const isEmpty = attrName.includes('_content') || attrName.includes('_title') ? flipboxHeadingValueIsEmpty : flipboxPlainTextValueIsEmpty;\n    flipboxHydrateInnerContentWhenEmpty(next, attrName, innerContent, isEmpty);\n  });\n  return next;\n}\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.addModule.attrs', 'dsm/flipbox-insert-placeholders', (attrs, context) => {\n  if (FLIPBOX_MODULE_NAME !== context?.name) {\n    return attrs;\n  }\n  return flipboxMergePlaceholderTextIntoAttrs(attrs);\n});\n;// ./packages/module-library/flipbox-perk/flipbox-preset-attrs-map.js\n/**\n * Keep flipbox text/content attrs classified as `content` in the VB preset attrs map.\n *\n * @package DiviSupreme\n */\n\n\n\nconst flipbox_preset_attrs_map_FLIPBOX_MODULE_NAME = 'dsm/flipbox';\nconst FLIPBOX_CONTENT_ATTRS = ['front_title.innerContent', 'back_title.innerContent', 'front_subtitle.innerContent', 'back_subtitle.innerContent', 'front_content.innerContent', 'back_content.innerContent', 'front_button_text.innerContent', 'back_button_text.innerContent', 'front_button_url.innerContent', 'back_button_url.innerContent', 'front_button_url_new_window.innerContent', 'back_button_url_new_window.innerContent', 'front_use_icon.innerContent', 'back_use_icon.innerContent', 'front_font_icon.innerContent', 'back_font_icon.innerContent', 'front_image.innerContent', 'back_image.innerContent', 'front_content_orientation.innerContent', 'back_content_orientation.innerContent', 'front_icon_placement.innerContent', 'back_icon_placement.innerContent', 'flipbox_trigger.innerContent', 'flipbox_click.innerContent', 'flipbox_type.innerContent', 'flipbox_effect.innerContent', 'flipbox_3d.innerContent', 'flipbox_slide_effect.innerContent', 'flipbox_zoom_out_effect.innerContent', 'flipbox_speed.innerContent', 'flipbox_height_mode.innerContent', 'front_face.decoration.background', 'back_face.decoration.background'];\n\n/**\n * @param {Record<string, { attrName: string, subName?: string, preset: string | string[] }>} map\n * @param {string} moduleName\n * @return {Record<string, { attrName: string, subName?: string, preset: string | string[] }>}\n */\nfunction mergeFlipboxContentPresetAttrs(map, moduleName) {\n  if (flipbox_preset_attrs_map_FLIPBOX_MODULE_NAME !== moduleName) {\n    return map;\n  }\n  const updated = {\n    ...map\n  };\n  for (const attrName of FLIPBOX_CONTENT_ATTRS) {\n    updated[attrName] = {\n      attrName,\n      preset: 'content'\n    };\n  }\n  for (const base of ['front_title.innerContent', 'back_title.innerContent', 'front_content.innerContent', 'back_content.innerContent']) {\n    updated[`${base}__text`] = {\n      attrName: base,\n      subName: 'text',\n      preset: 'content'\n    };\n  }\n  return updated;\n}\n\n/**\n * @return {void}\n */\nfunction refreshCachedFlipboxPresetMapIfNeeded() {\n  try {\n    const cached = (0,external_window_vendor_wp_data_namespaceObject.select)('divi/global-data').getPresetAttrsMap(flipbox_preset_attrs_map_FLIPBOX_MODULE_NAME);\n    const fixed = mergeFlipboxContentPresetAttrs(cached ? {\n      ...cached\n    } : {}, flipbox_preset_attrs_map_FLIPBOX_MODULE_NAME);\n    if (cached) {\n      const sampleKey = 'front_title.innerContent__text';\n      if (JSON.stringify(cached[sampleKey]?.preset) === JSON.stringify(fixed[sampleKey]?.preset)) {\n        return;\n      }\n    }\n    (0,external_window_vendor_wp_data_namespaceObject.dispatch)('divi/global-data').setPresetAttrsMap({\n      moduleName: flipbox_preset_attrs_map_FLIPBOX_MODULE_NAME,\n      map: fixed\n    });\n  } catch {\n    // VB store not ready.\n  }\n}\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.conversion.presets.attrs.map', 'dsm/flipbox-preset-content-attrs', mergeFlipboxContentPresetAttrs);\n(0,external_window_vendor_wp_hooks_namespaceObject.addAction)('divi.moduleLibrary.registerModuleLibraryStore.after', 'dsm/flipbox-preset-content-map', refreshCachedFlipboxPresetMapIfNeeded);\nlet isRefreshing = false;\n(0,external_window_vendor_wp_data_namespaceObject.subscribe)(() => {\n  if (isRefreshing) {\n    return;\n  }\n  isRefreshing = true;\n  refreshCachedFlipboxPresetMapIfNeeded();\n  isRefreshing = false;\n});\n;// ./packages/module-library/flipbox-perk/flipbox-preset-content-guard.js\n/**\n * Prevent flipbox content attrs from being stripped when saving a style preset.\n *\n * @package DiviSupreme\n */\n\n\n\nconst flipbox_preset_content_guard_FLIPBOX_MODULE_NAME = 'dsm/flipbox';\nconst FLIPBOX_PROTECTED_TOP_KEYS = new Set(['front_title', 'back_title', 'front_subtitle', 'back_subtitle', 'front_content', 'back_content', 'front_button_text', 'back_button_text', 'front_button_url', 'back_button_url', 'front_button_url_new_window', 'back_button_url_new_window', 'front_use_icon', 'back_use_icon', 'front_font_icon', 'back_font_icon', 'front_image', 'back_image', 'front_content_orientation', 'back_content_orientation', 'front_icon_placement', 'back_icon_placement', 'flipbox_trigger', 'flipbox_click', 'flipbox_type', 'flipbox_effect', 'flipbox_3d', 'flipbox_slide_effect', 'flipbox_zoom_out_effect', 'flipbox_speed', 'flipbox_height_mode']);\nconst FLIPBOX_PROTECTED_INNER_PREFIXES = ['front_title.innerContent', 'back_title.innerContent', 'front_subtitle.innerContent', 'back_subtitle.innerContent', 'front_content.innerContent', 'back_content.innerContent', 'front_button_text.innerContent', 'back_button_text.innerContent', 'front_button_url.innerContent', 'back_button_url.innerContent', 'front_button_url_new_window.innerContent', 'back_button_url_new_window.innerContent', 'front_use_icon.innerContent', 'back_use_icon.innerContent', 'front_font_icon.innerContent', 'back_font_icon.innerContent', 'front_image.innerContent', 'back_image.innerContent', 'front_content_orientation.innerContent', 'back_content_orientation.innerContent', 'front_icon_placement.innerContent', 'back_icon_placement.innerContent', 'flipbox_trigger.innerContent', 'flipbox_click.innerContent', 'flipbox_type.innerContent', 'flipbox_effect.innerContent', 'flipbox_3d.innerContent', 'flipbox_slide_effect.innerContent', 'flipbox_zoom_out_effect.innerContent', 'flipbox_speed.innerContent', 'flipbox_height_mode.innerContent', 'front_face.decoration.background', 'back_face.decoration.background'];\n\n/**\n * @param {string} attrPath Flattened attr path.\n * @return {boolean}\n */\nfunction flipboxPresetShouldProtectAttrPath(attrPath) {\n  if ('string' !== typeof attrPath || '' === attrPath) {\n    return false;\n  }\n  if (FLIPBOX_PROTECTED_TOP_KEYS.has(attrPath)) {\n    return true;\n  }\n  for (const prefix of FLIPBOX_PROTECTED_INNER_PREFIXES) {\n    if (attrPath === prefix || attrPath.startsWith(`${prefix}.`)) {\n      return true;\n    }\n  }\n  return false;\n}\n\n/**\n * @param {string} moduleId Module id.\n * @return {boolean}\n */\nfunction flipboxPresetGuardTargetsModule(moduleId) {\n  try {\n    const module = (0,external_window_vendor_wp_data_namespaceObject.select)('divi/edit-post').getModule(moduleId);\n    return flipbox_preset_content_guard_FLIPBOX_MODULE_NAME === module?.name;\n  } catch {\n    return false;\n  }\n}\n\n/**\n * @return {void}\n */\nfunction patchFlipboxRemoveModuleAttributes() {\n  let store;\n  try {\n    store = (0,external_window_vendor_wp_data_namespaceObject.dispatch)('divi/edit-post');\n  } catch {\n    return;\n  }\n  if (!store?.removeModuleAttributes || store.__dsmFlipboxPresetContentGuard) {\n    return;\n  }\n  const originalRemove = store.removeModuleAttributes.bind(store);\n  store.removeModuleAttributes = args => {\n    if (!args || !flipboxPresetGuardTargetsModule(args.id) || !Array.isArray(args.attrNames)) {\n      return originalRemove(args);\n    }\n    const filtered = args.attrNames.filter(path => !flipboxPresetShouldProtectAttrPath(path));\n    if (filtered.length === args.attrNames.length) {\n      return originalRemove(args);\n    }\n    return originalRemove({\n      ...args,\n      attrNames: filtered\n    });\n  };\n  store.__dsmFlipboxPresetContentGuard = true;\n}\n(0,external_window_vendor_wp_hooks_namespaceObject.addAction)('divi.moduleLibrary.registerModuleLibraryStore.after', 'dsm/flipbox-preset-content-guard', patchFlipboxRemoveModuleAttributes);\npatchFlipboxRemoveModuleAttributes();\n;// ./packages/module-library/flipbox-perk/index.js\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst FLIPBOX_CHILD = 'dsm/flipbox-child';\nconst flipboxModule = {\n  metadata: flipbox_perk_module_namespaceObject,\n  conversionOutline: flipbox_perk_conversion_outline_conversionOutline,\n  childrenName: [FLIPBOX_CHILD],\n  template: buildParentDefaultChildTemplate(FLIPBOX_CHILD, 2),\n  renderers: {\n    edit: flipbox_perk_edit,\n    styles: flipbox_perk_module_styles_ModuleStyles\n  },\n  defaultAttrs: flipboxModuleDefaultAttrs,\n  callbacks: {\n    content: {\n      elements: external_divi_moduleUtils_namespaceObject.elementsCallbacks\n    }\n  },\n  settings: {\n    content: flipbox_perk_settings_content,\n    design: flipbox_perk_settings_design,\n    advanced: flipbox_perk_settings_advanced\n  },\n  placeholderContent: flipboxPlaceholderContent\n};\n/* harmony default export */ const flipbox_perk = (flipboxModule);\n;// ./packages/module-library/flipbox-child/module.json\nconst flipbox_child_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/flipbox-child\",\"d4Shortcode\":\"dsm_flipbox_child\",\"title\":\"Flipbox Face\",\"titles\":\"Flipbox Faces\",\"category\":\"child-module\",\"moduleIcon\":\"divi-supreme/flipbox\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"title\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-title\",\"attributes\":{\"class\":\"dsm-title et_pb_module_header\"},\"tagName\":\"h4\",\"inlineEditor\":\"plainText\",\"elementType\":\"headingLink\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-title\",\"hover\":\"{{selector}}:hover .dsm-title\"}}}},\"settings\":{\"decoration\":{}}},\"subtitle\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-subtitle\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-subtitle\",\"hover\":\"{{selector}}:hover .dsm-subtitle\"}}}},\"settings\":{\"decoration\":{}}},\"content\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-content\",\"inlineEditor\":\"RichText\",\"elementType\":\"content\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-content\",\"hover\":\"{{selector}}:hover .dsm-content\"}}}},\"settings\":{\"decoration\":{}}},\"use_icon\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"font_icon\":{\"type\":\"object\",\"inlineEditor\":\"IconPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image\":{\"type\":\"object\",\"inlineEditor\":\"UploadContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_flipbox_child_image .dsm_flipbox_child_image_wrap\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm_flipbox_child_image .dsm_flipbox_child_image_wrap\"},\"boxShadow\":{\"selector\":\"{{selector}} .dsm_flipbox_child_image .dsm_flipbox_child_image_wrap\",\"useOverlay\":true},\"spacing\":{\"selector\":\"{{selector}} .dsm_flipbox_child_image\"},\"sizing\":{\"selector\":\"{{selector}} .dsm_flipbox_child_image .dsm_flipbox_child_image_wrap\"},\"filters\":{\"selector\":\"{{selector}} .dsm_flipbox_child_image\"}},\"settings\":{\"decoration\":{\"boxShadow\":{},\"filters\":{}}}},\"icon_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_flipbox_child_image .et-pb-icon\",\"childrenSanitizer\":\"et_core_esc_previously\",\"settings\":{\"decoration\":{\"background\":{},\"boxShadow\":{}}},\"styleProps\":{\"background\":{\"selector\":\"{{selector}} .dsm_flipbox_child_image .et-pb-icon\",\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm_flipbox_child_image .et-pb-icon\",\"hover\":\"{{selector}}:hover .dsm_flipbox_child_image .et-pb-icon\"}}},\"spacing\":{\"selector\":\"{{selector}} .dsm_flipbox_child_image .et-pb-icon\"},\"boxShadow\":{\"selector\":\"{{selector}} .dsm_flipbox_child_image .et-pb-icon\",\"useOverlay\":true},\"border\":{\"selector\":\"{{selector}} .dsm_flipbox_child_image .et-pb-icon\"}}},\"icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContianer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_circle\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"circle_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContianer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_circle_border\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"circle_border_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContianer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_icon_font_size\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"icon_font_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_max_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"icon_placement\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button\":{\"type\":\"object\",\"selector\":\"{{selector}} .et_pb_button_module_wrapper .et_pb_button\",\"default\":{\"decoration\":{\"button\":{\"desktop\":{\"value\":{\"enable\":\"off\",\"icon\":{\"enable\":\"on\",\"onHover\":\"on\"}}}},\"border\":{\"desktop\":{\"value\":{\"styles\":{\"all\":{\"color\":\"\"}}}}},\"font\":{\"font\":{\"desktop\":{\"value\":{\"color\":\"\"}}}}}},\"elementType\":\"button\"},\"button_text\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\",\"tagName\":\"span\"},\"button_url\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_url_new_window\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"content_orientation\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/flipbox-child/conversion-outline.json\nconst flipbox_child_conversion_outline_namespaceObject = /*#__PURE__*/JSON.parse('{\"_comment\":\"D4 dsm_flipbox_child → dsm/flipbox-child (merged into dsm/flipbox by FlipboxChildMergeMigrator).\",\"advanced\":{\"admin_label\":\"module.meta.adminLabel\",\"animation\":\"module.decoration.animation\",\"background\":\"module.decoration.background\",\"button\":{\"button\":\"button\"},\"borders\":{\"default\":\"module.decoration.border\",\"image\":\"image_style.decoration.border\"},\"box_shadow\":{\"default\":\"module.decoration.boxShadow\",\"image\":\"image_style.decoration.boxShadow\"},\"disabled_on\":\"module.decoration.disabledOn\",\"display_conditions\":\"module.decoration.conditions\",\"module\":\"module.advanced.htmlAttributes\",\"overflow\":\"module.decoration.overflow\",\"position_fields\":\"module.decoration.position\",\"scroll\":\"module.decoration.scroll\",\"sticky\":\"module.decoration.sticky\",\"transform\":\"module.decoration.transform\",\"transition\":\"module.decoration.transition\",\"z_index\":\"module.decoration.zIndex\",\"margin_padding\":\"module.decoration.spacing\",\"max_width\":\"module.decoration.sizing\",\"height\":\"module.decoration.sizing\",\"link_options\":\"module.advanced.link\",\"filters\":{\"default\":\"module.decoration.filters\",\"child_filters_target\":\"image_style.decoration.filters\"},\"text\":\"module.advanced.text\",\"fonts\":{\"header\":\"title.decoration.font\",\"content\":\"content.decoration.font\",\"subhead\":\"subtitle.decoration.font\"}},\"css\":{\"after\":\"css.*.after\",\"before\":\"css.*.before\",\"free_form\":\"css.*.freeForm\",\"main_element\":\"css.*.mainElement\"},\"module\":{\"title\":\"title.innerContent.*.text\",\"subtitle\":\"subtitle.innerContent.*\",\"content\":\"content.innerContent.*\",\"use_icon\":\"use_icon.innerContent.*\",\"font_icon\":\"font_icon.innerContent.*\",\"image\":\"image.innerContent.*\",\"button_text\":\"button_text.innerContent.*\",\"button_url\":\"button_url.innerContent.*\",\"button_url_new_window\":\"button_url_new_window.innerContent.*\",\"content_orientation\":\"content_orientation.innerContent.*\",\"icon_color\":\"icon_color.innerContent.*\",\"use_circle\":\"use_circle.innerContent.*\",\"circle_color\":\"circle_color.innerContent.*\",\"use_circle_border\":\"use_circle_border.innerContent.*\",\"circle_border_color\":\"circle_border_color.innerContent.*\",\"use_icon_font_size\":\"use_icon_font_size.innerContent.*\",\"icon_font_size\":\"icon_font_size.innerContent.*\",\"image_max_width\":\"image_max_width.innerContent.*\",\"icon_placement\":\"icon_placement.innerContent.*\",\"module_id\":\"module.decoration.attributes.*\",\"module_class\":\"module.decoration.attributes.*\"},\"valueExpansionFunctionMap\":{\"module_id\":\"dsm_convert_module_id_to_decoration_attributes\",\"module_class\":\"dsm_convert_module_class_to_decoration_attributes\",\"font_icon\":\"convertFontIcon\"}}');\n;// ./packages/module-library/flipbox-child/index.js\n/**\n * Flipbox child: faces are edited on the parent `dsm/flipbox` after migration merge.\n */\n\n\n\nconst flipbox_child_Edit = () => /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n  className: \"dsm-flipbox-child-vb-placeholder et-vb-module-placeholder\"\n});\nconst flipboxChildModule = {\n  metadata: flipbox_child_module_namespaceObject,\n  conversionOutline: flipbox_child_conversion_outline_namespaceObject,\n  parentsName: ['dsm/flipbox'],\n  renderers: {\n    edit: flipbox_child_Edit\n  }\n};\n/* harmony default export */ const flipbox_child = (flipboxChildModule);\n;// ./packages/module-library/icon-list/module.json\nconst icon_list_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/icon-list\",\"d4Shortcode\":\"dsm_icon_list\",\"title\":\"Supreme Icon List\",\"titles\":\"Supreme Icon Lists\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/icon-list\",\"childrenName\":[\"dsm/icon-list-child\"],\"childModuleName\":\"dsm/icon-list-child\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"default\":{\"meta\":{\"adminLabel\":{\"desktop\":{\"value\":\"Supreme Icon List\"}}}},\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"icon_background_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"icon_gap_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"icon_padding\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"icon_font_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"list_layout\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"list_alignment\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"list_vertical_alignment\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"list_direction\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"list_space_between\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"list_background\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"list_padding\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_icon_list_child\",\"inlineEditor\":\"CustomPadding\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"text_indent\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_background_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_padding\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_max_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"item_styling\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_icon_list_child\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm_icon_list_child\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm_icon_list_child\",\"useOverlay\":true}}},\"icon_styling\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_icon_list_icon\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm_icon_list_icon\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm_icon_list_icon\",\"useOverlay\":true}}},\"image_styling\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_icon_list_image img\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm_icon_list_image img\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm_icon_list_image img\",\"useOverlay\":true}}},\"text\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_icon_list_text\",\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/icon-list/conversion-outline.js\nconst icon_list_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    module: 'module.advanced.htmlAttributes',\n    borders: {\n      default: 'module.decoration.border',\n      image: 'image_styling.decoration.border',\n      icon: 'icon_styling.decoration.border',\n      list_item: 'item_styling.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow',\n      icon: 'icon_styling.decoration.boxShadow',\n      image: 'image_styling.decoration.boxShadow',\n      list_item: 'item_styling.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    fonts: {\n      text: 'text.decoration.font'\n    },\n    /** D4 `get_advanced_fields_config()['text']` (text shadow on list row). */\n    text_shadow: {\n      default: 'module.advanced.text.textShadow'\n    },\n    margin_padding: 'module.decoration.spacing'\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    icon_color: 'icon_color.innerContent.*',\n    icon_background_color: 'icon_background_color.innerContent.*',\n    icon_gap_width: 'icon_gap_width.innerContent.*',\n    icon_padding: 'icon_padding.innerContent.*',\n    icon_font_size: 'icon_font_size.innerContent.*',\n    list_layout: 'list_layout.innerContent.*',\n    list_alignment: 'list_alignment.innerContent.*',\n    list_vertical_alignment: 'list_vertical_alignment.innerContent.*',\n    list_direction: 'list_direction.innerContent.*',\n    list_space_between: 'list_space_between.innerContent.*',\n    list_background: 'list_background.innerContent.*',\n    list_padding: 'list_padding.decoration.spacing.*.padding',\n    text_indent: 'text_indent.innerContent.*',\n    image_background_color: 'image_background_color.innerContent.*',\n    image_padding: 'image_padding.innerContent.*',\n    image_max_width: 'image_max_width.innerContent.*'\n  },\n  // D4 custom_padding → D5 SpacingGroup; needs convertSpacing (same as dsm/card badge_padding).\n  valueExpansionFunctionMap: {\n    list_padding: 'convertSpacing'\n  }\n};\n;// ./packages/module-library/icon-list/settings-content.js\n\n\n\n\nfunction icon_list_settings_content_SettingsContent({\n  defaultSettingsAttrs\n}) {\n  var _defaultSettingsAttrs;\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(ChildDraggableModuleList, {\n    childModuleName: \"dsm/icon-list-child\",\n    addTitle: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Add New Item', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: (_defaultSettingsAttrs = defaultSettingsAttrs?.adminLabel) !== null && _defaultSettingsAttrs !== void 0 ? _defaultSettingsAttrs : {\n      desktop: {\n        value: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon List', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }));\n}\n/* harmony default export */ const icon_list_settings_content = (icon_list_settings_content_SettingsContent);\n;// ./packages/module-library/icon-list/settings-design.js\n\n\n\n\n\n\n/**\n * Visual Builder defaults aligned with Divi 4 `DSM_Icon_List`:\n * `get_fields()` / `get_advanced_fields_config()` defaults and `default_on_front`.\n */\n\n/** D4 advanced_fields `fonts.text` */\nconst iconListTextFontDefaultAttr = {\n  font: {\n    desktop: {\n      value: {\n        size: '14px',\n        lineHeight: '1.7em',\n        letterSpacing: '0px'\n      }\n    }\n  }\n};\nfunction icon_list_settings_design_SettingsDesign() {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"text\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"text_indent.innerContent\",\n    defaultAttr: {\n      desktop: {\n        value: '5px'\n      }\n    },\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text Indent', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can add padding between the icons and the text.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    grouped: false,\n    attrName: \"text.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: iconListTextFontDefaultAttr,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"icon\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"icon_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom color for your icon.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"icon_background_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom background color for your icon.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"icon_gap_width.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Gap Width', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom gap width for the icon.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 10,\n    step: 0.1,\n    defaultUnit: 'em',\n    allowedUnits: ['em', 'px', 'rem', '%']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"icon_padding.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Padding', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom padding size for the icon.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 30,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"icon_font_size.innerContent\",\n    defaultAttr: {\n      desktop: {\n        value: '14px'\n      }\n    },\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Font Size', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Control the size of the icon by increasing or decreasing the font size.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 120,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"icon_styling.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"icon_styling.decoration.boxShadow\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"image\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_background_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom background color for your image.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_padding.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Padding', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom padding size for the image.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 30,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_max_width.innerContent\",\n    defaultAttr: {\n      desktop: {\n        value: '24px'\n      }\n    },\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Width', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Adjust the width of the image.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 200,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"image_styling.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"image_styling.decoration.boxShadow\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"list-items\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('List Items', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"list_layout.innerContent\",\n    defaultAttr: {\n      desktop: {\n        value: 'vertical'\n      }\n    },\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Layout', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('The list layout can be either vertical or horizontal.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      vertical: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Vertical', 'dsm-supreme-modules-pro-for-divi')\n      },\n      horizontal: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Horizontal', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"list_alignment.innerContent\",\n    defaultAttr: {\n      desktop: {\n        value: 'flex-start'\n      }\n    },\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('The List can be placed either above, below or in the center of the module.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      'flex-start': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'flex-end': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"list_vertical_alignment.innerContent\",\n    defaultAttr: {\n      desktop: {\n        value: 'center'\n      }\n    },\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Vertical Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('The List can be placed either above, below or in the center of the module.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      'flex-start': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Vertically Centered', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'flex-end': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"list_direction.innerContent\",\n    defaultAttr: {\n      desktop: {\n        value: 'ltr'\n      }\n    },\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Direction', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('The list direction can be either left-to-right or right-to-left.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      ltr: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left to Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rtl: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right to Left', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"list_space_between.innerContent\",\n    defaultAttr: {\n      desktop: {\n        value: '0px'\n      }\n    },\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Space Between', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"list_background.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom color for your list items.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"list_padding.decoration.spacing\",\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"item_styling.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"item_styling.decoration.boxShadow\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const icon_list_settings_design = (icon_list_settings_design_SettingsDesign);\n;// ./packages/module-library/icon-list/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction icon_list_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_icon_list\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const icon_list_settings_advanced = (icon_list_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/icon-list/module-styles.js\n\n\n\n\n\n/**\n * React function component for rendering module style.\n */\nconst icon_list_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  var _getAttrByMode;\n  const listLayoutAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.list_layout?.innerContent);\n  const listDirectionAttr = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.list_direction?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'ltr';\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'icon_styling'\n  }), elements.style({\n    attrName: 'text'\n  }), elements.style({\n    attrName: 'list_padding'\n  }), elements.style({\n    attrName: 'item_styling'\n  }), elements.style({\n    attrName: 'image_styling'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_icon_list_child .dsm_icon_list_icon`,\n    attr: attrs?.icon_gap_width?.innerContent,\n    property: \"width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_icon_list_child .dsm_icon_list_icon`,\n    attr: attrs?.icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_icon_list_child .dsm_icon_list_icon`,\n    attr: attrs?.icon_background_color?.innerContent,\n    property: \"background\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_icon_list_child .dsm_icon_list_icon`,\n    attr: attrs?.icon_padding?.innerContent,\n    property: \"padding\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_icon_list_child .dsm_icon_list_icon`,\n    attr: attrs?.icon_font_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm_icon_list .dsm_icon_list_text`,\n    attr: attrs?.text_indent?.innerContent,\n    declarationFunction: attrValue => {\n      const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n        returnType: 'string',\n        important: true\n      });\n      if ('ltr' === listDirectionAttr) {\n        declarations.add('padding-left', attrValue.attrValue);\n      }\n      if ('rtl' === listDirectionAttr) {\n        declarations.add('padding-right', attrValue.attrValue);\n      }\n      return declarations.value;\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_icon_list_layout_horizontal .dsm_icon_list_child:not(:last-child)`,\n    attr: attrs?.list_space_between?.innerContent,\n    property: \"margin-right\",\n    important: true\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_icon_list_layout_vertical .dsm_icon_list_child:not(:last-child)`,\n    attr: attrs?.list_space_between?.innerContent,\n    property: \"margin-bottom\",\n    important: true\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_icon_list_child`,\n    attr: attrs?.list_background?.innerContent,\n    property: \"background\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_icon_list_child`,\n    attr: attrs?.list_vertical_alignment?.innerContent,\n    property: \"align-items\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_icon_list_child`,\n    attr: attrs?.list_direction?.innerContent,\n    property: \"direction\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_icon_list_layout_vertical.dsm_icon_list_items .dsm_icon_list_child`,\n    attr: attrs?.list_alignment?.innerContent,\n    property: \"justify-content\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_icon_list_layout_horizontal.dsm_icon_list_items`,\n    attr: attrs?.list_alignment?.innerContent,\n    declarationFunction: attrValue => {\n      const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n        returnType: 'string'\n      });\n      let textValue = '';\n      switch (attrValue.attrValue) {\n        case 'flex-start':\n          textValue = 'left';\n          break;\n        case 'center':\n          textValue = 'center';\n          break;\n        case 'flex-end':\n          textValue = 'right';\n          break;\n      }\n      declarations.add('text-align', textValue);\n      return declarations.value;\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_icon_list_image`,\n    attr: attrs?.image_background_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_icon_list_image`,\n    attr: attrs?.image_padding?.innerContent,\n    property: \"padding\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_icon_list_image img`,\n    attr: attrs?.image_max_width?.innerContent,\n    property: \"width\"\n  }));\n};\n;// ./packages/module-library/icon-list/edit.js\n\n\n\n// Divi package dependencies.\n\n\n// Custom dependencies.\n\n\n\n/**\n * React function component for registering module script data.\n */\nconst icon_list_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction icon_list_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements,\n  childrenIds\n}) {\n  var _getAttrByMode, _getAttrByMode2;\n  const listLayoutAttr = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.list_layout?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'vertical';\n  const listDirection = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.list_direction?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'ltr';\n  const directionClass = listDirection === 'ltr' ? 'dsm_icon_list_direction_left' : 'dsm_icon_list_direction_right';\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: icon_list_edit_ModuleScriptData,\n    stylesComponent: icon_list_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: `dsm_icon_list_items dsm_icon_list_layout_${listLayoutAttr} ${directionClass}`\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ChildModulesContainer, {\n    ids: childrenIds\n  })));\n}\n/* harmony default export */ const icon_list_edit = (icon_list_edit_Edit);\n;// ./packages/module-library/icon-list/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmIconListIcon', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/icon-list': {\n      name: 'divi-supreme/icon-list',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 7.960938 3.867188 C 7.628906 3.867188 7.359375 3.597656 7.359375 3.269531 C 7.359375 2.9375 7.628906 2.667969 7.960938 2.667969 C 8.292969 2.667969 8.5625 2.9375 8.5625 3.269531 C 8.5625 3.597656 8.292969 3.867188 7.960938 3.867188 Z M 7.960938 2.996094 C 7.8125 2.996094 7.691406 3.121094 7.691406 3.269531 C 7.691406 3.414062 7.8125 3.539062 7.960938 3.539062 C 8.109375 3.539062 8.230469 3.414062 8.230469 3.269531 C 8.230469 3.121094 8.109375 2.996094 7.960938 2.996094 Z M 7.960938 2.996094 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.425781 10.566406 C 12.09375 10.566406 11.824219 10.292969 11.824219 9.964844 C 11.824219 9.632812 12.09375 9.363281 12.425781 9.363281 C 12.757812 9.363281 13.027344 9.632812 13.027344 9.964844 C 13.027344 10.292969 12.757812 10.566406 12.425781 10.566406 Z M 12.425781 9.695312 C 12.277344 9.695312 12.15625 9.816406 12.15625 9.964844 C 12.15625 10.113281 12.277344 10.234375 12.425781 10.234375 C 12.574219 10.234375 12.695312 10.113281 12.695312 9.964844 C 12.695312 9.816406 12.574219 9.695312 12.425781 9.695312 Z M 12.425781 9.695312 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 4.011719 6.101562 C 3.679688 6.101562 3.410156 5.832031 3.410156 5.5 C 3.410156 5.167969 3.679688 4.898438 4.011719 4.898438 C 4.34375 4.898438 4.613281 5.167969 4.613281 5.5 C 4.613281 5.832031 4.34375 6.101562 4.011719 6.101562 Z M 4.011719 5.230469 C 3.863281 5.230469 3.742188 5.351562 3.742188 5.5 C 3.742188 5.648438 3.863281 5.769531 4.011719 5.769531 C 4.160156 5.769531 4.28125 5.648438 4.28125 5.5 C 4.28125 5.351562 4.160156 5.230469 4.011719 5.230469 Z M 4.011719 5.230469 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 4.835938 6.960938 L 3.359375 6.960938 C 3.007812 6.960938 2.726562 6.65625 2.726562 6.285156 L 2.726562 4.714844 C 2.726562 4.339844 3.007812 4.039062 3.359375 4.039062 L 4.835938 4.039062 C 5.1875 4.039062 5.472656 4.339844 5.472656 4.714844 L 5.472656 6.285156 C 5.476562 6.65625 5.1875 6.960938 4.835938 6.960938 Z M 3.359375 4.382812 C 3.183594 4.382812 3.042969 4.53125 3.042969 4.71875 L 3.042969 6.285156 C 3.042969 6.472656 3.183594 6.621094 3.359375 6.621094 L 4.835938 6.621094 C 5.011719 6.621094 5.15625 6.472656 5.15625 6.285156 L 5.15625 4.714844 C 5.15625 4.527344 5.011719 4.375 4.835938 4.375 L 3.359375 4.375 Z M 3.359375 4.382812 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 4.011719 9.363281 C 3.679688 9.363281 3.410156 9.132812 3.410156 8.847656 C 3.410156 8.5625 3.679688 8.332031 4.011719 8.332031 C 4.34375 8.332031 4.613281 8.5625 4.613281 8.847656 C 4.613281 9.132812 4.34375 9.363281 4.011719 9.363281 Z M 4.011719 8.621094 C 3.863281 8.621094 3.742188 8.722656 3.742188 8.851562 C 3.742188 8.976562 3.863281 9.082031 4.011719 9.082031 C 4.160156 9.082031 4.28125 8.976562 4.28125 8.851562 C 4.28125 8.722656 4.160156 8.621094 4.011719 8.621094 Z M 4.011719 8.621094 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 4.835938 10.222656 L 3.359375 10.222656 C 3.007812 10.222656 2.726562 9.9375 2.726562 9.585938 L 2.726562 8.109375 C 2.726562 7.757812 3.007812 7.472656 3.359375 7.472656 L 4.835938 7.472656 C 5.1875 7.472656 5.472656 7.757812 5.472656 8.109375 L 5.472656 9.585938 C 5.476562 9.933594 5.1875 10.222656 4.835938 10.222656 Z M 3.359375 7.789062 C 3.183594 7.789062 3.042969 7.929688 3.042969 8.105469 L 3.042969 9.582031 C 3.042969 9.757812 3.183594 9.898438 3.359375 9.898438 L 4.835938 9.898438 C 5.011719 9.898438 5.15625 9.757812 5.15625 9.582031 L 5.15625 8.105469 C 5.15625 7.929688 5.011719 7.789062 4.835938 7.789062 Z M 3.359375 7.789062 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 4.011719 12.796875 C 3.679688 12.796875 3.410156 12.527344 3.410156 12.195312 C 3.410156 11.863281 3.679688 11.59375 4.011719 11.59375 C 4.34375 11.59375 4.613281 11.863281 4.613281 12.195312 C 4.613281 12.527344 4.34375 12.796875 4.011719 12.796875 Z M 4.011719 11.925781 C 3.863281 11.925781 3.742188 12.046875 3.742188 12.195312 C 3.742188 12.34375 3.863281 12.464844 4.011719 12.464844 C 4.160156 12.464844 4.28125 12.34375 4.28125 12.195312 C 4.28125 12.046875 4.160156 11.925781 4.011719 11.925781 Z M 4.011719 11.925781 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 4.851562 13.65625 L 3.324219 13.65625 C 2.960938 13.65625 2.667969 13.363281 2.667969 13 L 2.667969 11.472656 C 2.667969 11.109375 2.960938 10.816406 3.324219 10.816406 L 4.851562 10.816406 C 5.214844 10.816406 5.507812 11.109375 5.507812 11.472656 L 5.507812 13 C 5.511719 13.363281 5.214844 13.65625 4.851562 13.65625 Z M 3.324219 11.144531 C 3.140625 11.144531 2.996094 11.289062 2.996094 11.472656 L 2.996094 13 C 2.996094 13.179688 3.140625 13.328125 3.324219 13.328125 L 4.851562 13.328125 C 5.03125 13.328125 5.179688 13.179688 5.179688 13 L 5.179688 11.472656 C 5.179688 11.289062 5.03125 11.144531 4.851562 11.144531 Z M 3.324219 11.144531 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.101562 5.285156 L 10.878906 5.285156 L 10.878906 5.617188 L 6.101562 5.617188 Z M 6.101562 5.285156 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.101562 8.679688 L 10.878906 8.679688 L 10.878906 9.011719 L 6.101562 9.011719 Z M 6.101562 8.679688 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.101562 12.066406 L 10.878906 12.066406 L 10.878906 12.398438 L 6.101562 12.398438 Z M 6.101562 12.066406 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/icon-list/index.js\n// External library dependencies.\n\n\n// Wordpress dependencies.\n\n\n\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\n\n\nconst ICON_LIST_CHILD = 'dsm/icon-list-child';\nconst iconListModule = {\n  metadata: icon_list_module_namespaceObject,\n  conversionOutline: icon_list_conversion_outline_conversionOutline,\n  renderers: {\n    edit: icon_list_edit,\n    styles: icon_list_module_styles_ModuleStyles\n  },\n  childrenName: [ICON_LIST_CHILD],\n  template: buildParentDefaultChildTemplate(ICON_LIST_CHILD, 3),\n  callbacks: buildChildDraggableListCallbacks([ICON_LIST_CHILD]),\n  settings: {\n    content: icon_list_settings_content,\n    design: icon_list_settings_design,\n    advanced: icon_list_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    list_layout: {\n      innerContent: {\n        desktop: {\n          value: 'vertical'\n        }\n      }\n    },\n    list_direction: {\n      innerContent: {\n        desktop: {\n          value: 'ltr'\n        }\n      }\n    }\n  }\n};\n/* harmony default export */ const icon_list = (iconListModule);\n;// ./packages/module-library/icon-list-child/module.json\nconst icon_list_child_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/icon-list-child\",\"d4Shortcode\":\"dsm_icon_list_child\",\"title\":\"Supreme Icon List\",\"titles\":\"Supreme Icon Lists\",\"category\":\"child-module\",\"parentsName\":[\"dsm/icon-list\"],\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"default\":{\"meta\":{\"adminLabel\":{\"desktop\":{\"value\":\"Icon List Item\"}}}},\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"text\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"selector\":\".dsm_icon_list_items {{selector}} .dsm_icon_list_text\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_icon\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"font_icon\":{\"type\":\"object\",\"inlineEditor\":\"FontIconPicker\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"icon_background_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"icon_padding\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"icon_font_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image\":{\"type\":\"object\",\"inlineEditor\":\"UploadContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_background_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_padding\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_tooltip\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"content\":{\"type\":\"object\",\"inlineEditor\":\"RichTextContainer\",\"selector\":\"{{selector}}.et_pb_module .react-tooltip\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"tooltip_placement\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"tooltip_background_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"tooltip_padding\":{\"type\":\"object\",\"selector\":\"{{selector}}.et_pb_module .react-tooltip\",\"inlineEditor\":\"customPadding\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"tooltip_max_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_max_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"iconStyling\":{\"type\":\"object\",\"selector\":\"{{selector}}.et_pb_module .dsm_icon_list_wrapper .dsm_icon_list_icon\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}}.et_pb_module .dsm_icon_list_wrapper .dsm_icon_list_icon\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}}.et_pb_module .dsm_icon_list_wrapper .dsm_icon_list_icon\",\"useOverlay\":true}}},\"imageStyling\":{\"type\":\"object\",\"selector\":\"{{selector}}.et_pb_module .dsm_icon_list_image\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}}.et_pb_module .dsm_icon_list_image\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}}.et_pb_module .dsm_icon_list_image\",\"useOverlay\":true}}}}}');\n;// ./packages/module-library/icon-list-child/settings-content.js\n\n\n\n\n\n\n\n/** D4 `font_icon` default_on_front `&#x50;||divi||400`. */\nconst iconListChildFontIconDefaultAttr = {\n  desktop: {\n    value: {\n      type: 'divi',\n      unicode: '&#x50;',\n      weight: '400'\n    }\n  }\n};\nfunction icon_list_child_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  var _getAttrByMode, _getAttrByMode2;\n  const useIconAttr = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_icon?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'on';\n  const useTooltipAttr = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_tooltip?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'off';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"content\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"text.innerContent\",\n    defaultAttr: {\n      desktop: {\n        value: 'Icon List Item'\n      }\n    },\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Icon', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose whether icon set below should be used.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'on'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"font_icon.innerContent\",\n    defaultAttr: iconListChildFontIconDefaultAttr,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Choose an icon to display with your text.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useIconAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"icon_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom color for your icon.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useIconAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"icon_background_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom background color for your icon.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useIconAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image.innerContent\",\n    subName: \"src\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' !== useIconAttr,\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"tooltip\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tooltip', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_tooltip.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Tooltip', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'off'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"content.innerContent\",\n    subName: \"text\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useTooltipAttr,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    },\n    defaultAttr: {\n      desktop: {\n        value: {\n          text: ''\n        }\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RichTextContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const icon_list_child_settings_content = (icon_list_child_settings_content_SettingsContent);\n;// ./packages/module-library/icon-list-child/settings-design.js\n\n\n\n\n\n\n\n/** D4 `DSM_Icon_List_Child` advanced_fields `fonts.text` */\nconst iconListChildTextFontDefaultAttr = {\n  font: {\n    desktop: {\n      value: {\n        size: '14px',\n        lineHeight: '1.7em',\n        letterSpacing: '0px'\n      }\n    }\n  }\n};\n\n/** D4 `fonts.tooltip` */\nconst iconListChildTooltipFontDefaultAttr = {\n  font: {\n    desktop: {\n      value: {\n        size: '13px',\n        lineHeight: '1.4em',\n        letterSpacing: '0px'\n      }\n    }\n  }\n};\nfunction icon_list_child_settings_design_SettingsDesign({\n  attrs\n}) {\n  var _getAttrByMode;\n  const useIconAttr = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_icon?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'on';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"icon\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"icon_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom color for your icon.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useIconAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"icon_background_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom background color for your icon.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useIconAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"icon_padding.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Padding', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom padding size for the icon.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useIconAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 30,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"icon_font_size.innerContent\",\n    defaultAttr: {\n      desktop: {\n        value: '14px'\n      }\n    },\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Font Size', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Control the size of the icon by increasing or decreasing the font size.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useIconAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 120,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"iconStyling.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"iconStyling.decoration.boxShadow\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"image\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_background_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom background color for your image.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' !== useIconAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_padding.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Padding', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom padding size for the image.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' !== useIconAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 30,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_max_width.innerContent\",\n    defaultAttr: {\n      desktop: {\n        value: '24px'\n      }\n    },\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Width', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Adjust the width of the image.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' !== useIconAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 200,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"imageStyling.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"imageStyling.decoration.boxShadow\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"tooltip\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tooltip', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"tooltip_placement.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Placement', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    defaultAttr: {\n      desktop: {\n        value: 'right'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      top: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top', 'dsm-supreme-modules-pro-for-divi')\n      },\n      right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom', 'dsm-supreme-modules-pro-for-divi')\n      },\n      left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"tooltip_background_color.innerContent\",\n    defaultAttr: {\n      desktop: {\n        value: 'rgba(34,34,34,0.9)'\n      }\n    },\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"tooltip_padding.decoration.spacing\",\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"tooltip_max_width.innerContent\",\n    defaultAttr: {\n      desktop: {\n        value: '180px'\n      }\n    },\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tooltip Max Width', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 320,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"content.decoration.font\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tooltip', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: iconListChildTooltipFontDefaultAttr,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"text.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: iconListChildTextFontDefaultAttr,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null));\n}\n/* harmony default export */ const icon_list_child_settings_design = (icon_list_child_settings_design_SettingsDesign);\n;// ./packages/module-library/icon-list-child/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction icon_list_child_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_icon_list_child\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const icon_list_child_settings_advanced = (icon_list_child_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/icon-list-child/module-styles.js\n\n\n\n\n\nconst icon_list_child_module_styles_iconFontCss = buildLegacyPseudoIconFontCss;\nconst module_styles_webfontGlyphSelector = orderClass => `${orderClass}.et_pb_module .dsm_icon_list_wrapper .et-pb-icon.dsm_icon_list_icon .dsm-webfont-icon-glyph`;\nconst module_styles_iconHostSelector = orderClass => `${orderClass}.et_pb_module .dsm_icon_list_wrapper .et-pb-icon.dsm_icon_list_icon`;\n\n/**\n * React function component for rendering module style.\n */\nconst icon_list_child_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  const iconListIconBase = `${orderClass}.dsm_icon_list_child .dsm_icon_list_wrapper > .dsm_icon_list_icon`;\n  const iconListIconHover = `${orderClass}.dsm_icon_list_child:hover .dsm_icon_list_wrapper > .dsm_icon_list_icon`;\n  /** @type {Record<string, Record<string, string>>} */\n  const iconListIconSelectors = {\n    desktop: {\n      value: iconListIconBase,\n      hover: iconListIconHover\n    },\n    tablet: {\n      value: iconListIconBase,\n      hover: iconListIconHover\n    },\n    phone: {\n      value: iconListIconBase,\n      hover: iconListIconHover\n    }\n  };\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'iconStyling'\n  }), elements.style({\n    attrName: 'imageStyling'\n  }), elements.style({\n    attrName: 'text'\n  }), elements.style({\n    attrName: 'tooltip_padding'\n  }), elements.style({\n    attrName: 'content'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_icon_list_icon::after`,\n    attr: attrs?.font_icon?.innerContent,\n    declarationFunction: icon_list_child_module_styles_iconFontCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: iconListIconBase,\n    selectors: iconListIconSelectors,\n    orderClass: orderClass,\n    attr: attrs?.icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: module_styles_iconHostSelector(orderClass),\n    attr: attrs?.icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: module_styles_webfontGlyphSelector(orderClass),\n    attr: attrs?.icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: iconListIconBase,\n    selectors: iconListIconSelectors,\n    orderClass: orderClass,\n    attr: attrs?.icon_background_color?.innerContent,\n    property: \"background\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.et_pb_module .dsm_icon_list_image`,\n    attr: attrs?.image_background_color?.innerContent,\n    property: \"background\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.et_pb_module .dsm_icon_list_image`,\n    attr: attrs?.image_padding?.innerContent,\n    property: \"padding\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.et_pb_module .dsm_icon_list_image img`,\n    attr: attrs?.image_max_width?.innerContent,\n    property: \"width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.et_pb_module .dsm_icon_list_wrapper .dsm_icon_list_icon`,\n    attr: attrs?.icon_padding?.innerContent,\n    property: \"padding\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.et_pb_module .dsm_icon_list_wrapper .dsm_icon_list_icon`,\n    attr: attrs?.icon_font_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: module_styles_iconHostSelector(orderClass),\n    attr: attrs?.icon_font_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: module_styles_webfontGlyphSelector(orderClass),\n    attr: attrs?.icon_font_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .react-tooltip`,\n    attr: attrs?.tooltip_background_color?.innerContent,\n    property: \"background\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .react-tooltip`,\n    attr: attrs?.tooltip_max_width?.innerContent,\n    property: \"width\"\n  }));\n};\n;// ./packages/module-library/icon-list-child/edit.js\nfunction icon_list_child_edit_extends() {\n  return icon_list_child_edit_extends = Object.assign ? Object.assign.bind() : function (n) {\n    for (var e = 1; e < arguments.length; e++) {\n      var t = arguments[e];\n      for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n    }\n    return n;\n  }, icon_list_child_edit_extends.apply(null, arguments);\n}\n\n\n\n\n\n// Divi package dependencies.\n\n\n\n\n// Custom dependencies.\n\n\n\n\n\n\n/**\n * Normalize upload innerContent for DynamicValueResolver and img src (D5 shape: { src, id }).\n *\n * @param {*} raw From getAttrByMode( attrs.image.innerContent ).\n * @return {string}\n */\nfunction icon_list_child_edit_getUploadValueForDynamicData(raw) {\n  if (raw == null || raw === '') {\n    return '';\n  }\n  if (typeof raw === 'string' || typeof raw === 'number') {\n    return String(raw);\n  }\n  if (typeof raw === 'object') {\n    if (typeof raw.src === 'string' && raw.src !== '') {\n      return raw.src;\n    }\n    if (typeof raw.url === 'string' && raw.url !== '') {\n      return raw.url;\n    }\n  }\n  return '';\n}\n\n/**\n * React function component for registering module script data.\n */\n\nconst icon_list_child_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}), elements.scriptData({\n  attrName: 'content'\n}));\n\n/**\n * Extract rich text HTML from innerContent raw value (must not call hooks).\n *\n * @param {unknown} raw From `getAttrByMode( attrs.content.innerContent )`.\n * @return {string}\n */\nfunction extractRichTextHtml(raw) {\n  if (typeof raw === 'string') {\n    return raw;\n  }\n  if (raw && typeof raw === 'object' && typeof raw.text === 'string') {\n    return raw.text;\n  }\n  return '';\n}\n\n/**\n * True when rich HTML has visible text (ignores empty tags / &nbsp;).\n *\n * @param {string} html HTML string.\n * @return {boolean}\n */\nfunction edit_richTextHasContent(html) {\n  if ('string' !== typeof html || '' === html.trim()) {\n    return false;\n  }\n  if ('undefined' !== typeof document) {\n    const tmp = document.createElement('div');\n    tmp.innerHTML = html;\n    return (tmp.textContent || '').trim() !== '';\n  }\n  return html.replace(/<[^>]*>/g, '').replace(/&nbsp;/gi, ' ').trim() !== '';\n}\nfunction icon_list_child_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  var _getAttrByMode, _attrs$image$innerCon, _getAttrByMode2, _attrs$content$innerC, _getAttrByMode3, _attrs$module$advance;\n  const {} = attrs;\n  const useIconAttr = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_icon?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'on';\n  const imageUrlAttr = icon_list_child_edit_getUploadValueForDynamicData((0,external_divi_moduleUtils_namespaceObject.getAttrByMode)((_attrs$image$innerCon = attrs?.image?.innerContent) !== null && _attrs$image$innerCon !== void 0 ? _attrs$image$innerCon : {}));\n  const useTooltipAttr = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_tooltip?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'off';\n  // Always call getAttrByMode — skipping when innerContent is missing adds hooks on first keystroke (#310).\n  const tooltipContentAttrForDynamic = extractRichTextHtml((0,external_divi_moduleUtils_namespaceObject.getAttrByMode)((_attrs$content$innerC = attrs?.content?.innerContent) !== null && _attrs$content$innerC !== void 0 ? _attrs$content$innerC : {}));\n  const tooltipPlacementAttr = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.tooltip_placement?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'right';\n  const linkUrlAttr = attrs?.module?.advanced?.link?.desktop?.value?.url;\n  const linkTargetAttr = (_attrs$module$advance = attrs?.module?.advanced?.link?.desktop?.value?.target) !== null && _attrs$module$advance !== void 0 ? _attrs$module$advance : 'off';\n  const fontIconAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.font_icon?.innerContent);\n  const imageMarkup = /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm_icon_list_image\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: imageUrlAttr\n  }, resolvedImage => {\n    const src = icon_list_child_edit_getUploadValueForDynamicData(resolvedImage);\n    return src ? /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n      src: src,\n      alt: \"\"\n    }) : null;\n  }));\n  const iconMarkup = /*#__PURE__*/external_vendor_React_default().createElement(ModuleIconHost, {\n    icon: fontIconAttr,\n    className: \"dsm_icon_list_icon\"\n  });\n  const orderClass = getChildModuleOrderClass(id, 'dsm_icon_list_child', 0);\n  const iconListInner = /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm_icon_list_wrapper\"\n  }, 'off' === useIconAttr && imageMarkup, 'on' === useIconAttr && iconMarkup), /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm_icon_list_text\"\n  }, elements.render({\n    attrName: 'text'\n  })));\n  const tooltipMarkup = 'on' === useTooltipAttr ? /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: tooltipContentAttrForDynamic\n  }, resolvedTooltipHtml => {\n    const html = typeof resolvedTooltipHtml === 'string' ? resolvedTooltipHtml : '';\n    const htmlForTooltip = edit_richTextHasContent(html) ? `<div class=\"dsm_icon_list_child_tooltip_body\">${html}</div>` : undefined;\n    return /*#__PURE__*/external_vendor_React_default().createElement(M, {\n      className: \"dsm_icon_list_child_tooltip_wrapper tippy-tooltip\",\n      place: tooltipPlacementAttr,\n      anchorSelect: `.${orderClass} .dsm_icon_list_text`,\n      effect: \"solid\",\n      html: htmlForTooltip\n    });\n  }) : null;\n  const markupWithTooltip = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-tooltip dsm_icon_list_tooltip\"\n  }, iconListInner, tooltipMarkup);\n  const markupWithOutTooltip = iconListInner;\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    tag: \"li\",\n    scriptDataComponent: icon_list_child_edit_ModuleScriptData,\n    stylesComponent: icon_list_child_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n      params.classnamesInstance.add('dsm_icon_list_child');\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), linkUrlAttr && /*#__PURE__*/external_vendor_React_default().createElement(\"a\", icon_list_child_edit_extends({\n    href: linkUrlAttr\n  }, 'on' === linkTargetAttr ? {\n    target: '_blank',\n    rel: 'noopener noreferrer'\n  } : {}), 'off' === useTooltipAttr && markupWithOutTooltip, 'on' === useTooltipAttr && markupWithTooltip), !linkUrlAttr && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, 'off' === useTooltipAttr && markupWithOutTooltip, 'on' === useTooltipAttr && markupWithTooltip));\n}\n/* harmony default export */ const icon_list_child_edit = (icon_list_child_edit_Edit);\n;// ./packages/module-library/icon-list-child/conversion-outline.js\n\nconst icon_list_child_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    fonts: {\n      text: 'text.decoration.font',\n      tooltip: 'tooltip.decoration.font'\n    },\n    margin_padding: 'module.decoration.spacing',\n    height: 'module.decoration.sizing',\n    link_options: 'module.advanced.link',\n    max_width: 'module.decoration.sizing',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex'\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    // D4 uses custom `url` / `url_new_window` (not standard link_options attrs).\n    url: 'module.advanced.link.*.value.url',\n    url_new_window: 'module.advanced.link.*.value.target',\n    text: 'text.innerContent.*',\n    use_icon: 'use_icon.innerContent.*',\n    font_icon: 'font_icon.innerContent.*',\n    icon_color: 'icon_color.innerContent.*',\n    icon_background_color: 'icon_background_color.innerContent.*',\n    icon_padding: 'icon_padding.innerContent.*',\n    icon_font_size: 'icon_font_size.innerContent.*',\n    image: 'image.innerContent.*',\n    alt: 'alt.innerContent.*',\n    image_background_color: 'image_background_color.innerContent.*',\n    image_padding: 'image_padding.innerContent.*',\n    use_tooltip: 'use_tooltip.innerContent.*',\n    content: 'content.innerContent.*',\n    tooltip_placement: 'tooltip_placement.innerContent.*',\n    tooltip_background_color: 'tooltip_background_color.innerContent.*',\n    tooltip_padding: 'tooltip_padding.innerContent.*',\n    tooltip_max_width: 'tooltip_max_width.innerContent.*',\n    image_max_width: 'image_max_width.innerContent.*'\n  },\n  valueExpansionFunctionMap: {\n    font_icon: external_divi_conversion_namespaceObject.convertFontIcon\n  }\n};\n;// ./packages/module-library/icon-list-child/index.js\n// External library dependencies.\n\n\n// Wordpress dependencies.\n\n\n\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\nconst iconListChildModule = {\n  metadata: icon_list_child_module_namespaceObject,\n  conversionOutline: icon_list_child_conversion_outline_conversionOutline,\n  parentsName: ['dsm/icon-list'],\n  settings: {\n    content: icon_list_child_settings_content,\n    design: icon_list_child_settings_design,\n    advanced: icon_list_child_settings_advanced\n  },\n  renderers: {\n    edit: icon_list_child_edit,\n    styles: icon_list_child_module_styles_ModuleStyles\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    text: {\n      innerContent: {\n        desktop: {\n          value: 'Icon List Item'\n        }\n      }\n    },\n    use_icon: {\n      innerContent: {\n        desktop: {\n          value: 'on'\n        }\n      }\n    },\n    font_icon: {\n      innerContent: {\n        desktop: {\n          value: {\n            type: 'divi',\n            unicode: '&#x50;',\n            weight: '400'\n          }\n        }\n      }\n    },\n    use_tooltip: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    tooltip_placement: {\n      innerContent: {\n        desktop: {\n          value: 'right'\n        }\n      }\n    }\n  }\n};\n/* harmony default export */ const icon_list_child = (iconListChildModule);\n;// ./packages/module-library/lottie/module.json\nconst lottie_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/lottie\",\"d4Shortcode\":\"dsm_lottie\",\"title\":\"Supreme Lottie\",\"titles\":\"Supreme Lotties\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/lottie\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"lottie_url\":{\"type\":\"object\",\"inlineEditor\":\"UploadContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"lottie_loop\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"loop_no_times\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"lottie_delay\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"lottie_direction\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"lottie_speed\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"lottie_play_on_hover\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"lottie_trigger_method\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"lottie_scroll\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"lottie_mouseout_action\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"lottie_animation_viewport\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/lottie/module-default-render-attributes.json\nconst lottie_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"module\":{\"decoration\":{}},\"lottie_url\":{\"innerContent\":{\"desktop\":{\"value\":{\"src\":\"\"}}}},\"lottie_loop\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"loop_no_times\":{\"innerContent\":{\"desktop\":{\"value\":\"0\"}}},\"lottie_delay\":{\"innerContent\":{\"desktop\":{\"value\":\"0ms\"}}},\"lottie_direction\":{\"innerContent\":{\"desktop\":{\"value\":\"1\"}}},\"lottie_speed\":{\"innerContent\":{\"desktop\":{\"value\":\"1\"}}},\"lottie_play_on_hover\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"lottie_trigger_method\":{\"innerContent\":{\"desktop\":{\"value\":\"on_hover\"}}},\"lottie_scroll\":{\"innerContent\":{\"desktop\":{\"value\":\"page\"}}},\"lottie_mouseout_action\":{\"innerContent\":{\"desktop\":{\"value\":\"no_action\"}}},\"lottie_animation_viewport\":{\"innerContent\":{\"desktop\":{\"value\":\"80%\"}}}}');\n;// ./packages/module-library/lottie/lottie-vb-default-attrs.js\n/**\n * Visual Builder `defaultAttr` / `defaultGroupAttr` slices from\n * `module-default-render-attributes.json` (D4 `default_on_front` + `default`,\n * with `lottie_scroll` effective default `page`; D4 listed `on_hover` by mistake for that field).\n */\n\n\nconst lottieFieldDefaultInnerContent = Object.fromEntries(Object.entries(lottie_module_default_render_attributes_namespaceObject).filter(([, attr]) => attr && attr.innerContent).map(([key, attr]) => [key, attr.innerContent]));\n;// ./packages/module-library/lottie/conversion-outline.js\n/**\n * D4 `default_on_front` values (divi-4 Lottie.php). When innerContent is omitted after migration\n * or save, VB visibility uses these — keep in sync with module-default-render-attributes.json.\n */\nconst LOTTIE_LOOP_DEFAULT = 'on';\nconst LOTTIE_PLAY_ON_HOVER_DEFAULT = 'off';\n\n/** Shown only when play-on-hover trigger mode is active; D4 default for trigger method select. */\nconst LOTTIE_TRIGGER_METHOD_DEFAULT = 'on_hover';\nconst lottie_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    display_conditions: 'module.decoration.conditions',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    module: 'module.advanced.htmlAttributes',\n    margin_padding: 'module.decoration.spacing',\n    link_options: 'module.advanced.link',\n    height: 'module.decoration.sizing',\n    max_width: 'module.decoration.sizing',\n    text: 'module.advanced.text',\n    text_shadow: {\n      default: 'module.advanced.text.textShadow'\n    },\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex'\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    // D4 upload URL → D5 `UploadContainer` leaf `src` (use `subName=\"src\"` in settings).\n    lottie_url: 'lottie_url.innerContent.*.src',\n    lottie_loop: 'lottie_loop.innerContent.*',\n    loop_no_times: 'loop_no_times.innerContent.*',\n    lottie_delay: 'lottie_delay.innerContent.*',\n    lottie_direction: 'lottie_direction.innerContent.*',\n    lottie_speed: 'lottie_speed.innerContent.*',\n    lottie_play_on_hover: 'lottie_play_on_hover.innerContent.*',\n    lottie_trigger_method: 'lottie_trigger_method.innerContent.*',\n    lottie_scroll: 'lottie_scroll.innerContent.*',\n    lottie_mouseout_action: 'lottie_mouseout_action.innerContent.*',\n    lottie_animation_viewport: 'lottie_animation_viewport.innerContent.*',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/lottie/settings-content.js\n\n// Wordpress dependencies.\n\n// Divi package dependencies.\n\n\n\n\n\n\n\n/**\n * Matches `Lottie.php` / D4: loop is on unless explicitly `off` or `false`.\n *\n * @param {unknown} raw\n * @return {boolean}\n */\nfunction isDsmLottieLoopEnabled(raw) {\n  return raw !== 'off' && raw !== false;\n}\n\n/**\n * D4 yes_no / D5 Toggle considered \"on\" (migration may use bool or legacy strings).\n *\n * @param {unknown} raw\n * @return {boolean}\n */\nfunction isDsmLottieTriggerOn(raw) {\n  return raw === true || raw === 'on' || raw === 'yes';\n}\nfunction lottie_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  const isAttrEmpty = (/** @type {unknown} */v) => v === undefined || v === null || v === '';\n  const loopRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.lottie_loop?.innerContent);\n  const loopEffective = isAttrEmpty(loopRaw) ? LOTTIE_LOOP_DEFAULT : loopRaw;\n  const loopEnabled = isDsmLottieLoopEnabled(loopEffective);\n  const playOnHoverRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.lottie_play_on_hover?.innerContent);\n  const playOnHoverEffective = isAttrEmpty(playOnHoverRaw) ? LOTTIE_PLAY_ON_HOVER_DEFAULT : playOnHoverRaw;\n  const triggerOn = isDsmLottieTriggerOn(playOnHoverEffective);\n  const triggerMethodRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.lottie_trigger_method?.innerContent);\n  const triggerMethodEffective = triggerOn && isAttrEmpty(triggerMethodRaw) ? LOTTIE_TRIGGER_METHOD_DEFAULT : triggerMethodRaw;\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Supreme Lottie', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"lottie_url.innerContent\",\n    subName: \"src\",\n    defaultAttr: lottieFieldDefaultInnerContent.lottie_url,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Lottie / dotLottie file (.json or .lottie)', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, {\n    dataType: \"audio\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"lottie_loop.innerContent\",\n    defaultAttr: lottieFieldDefaultInnerContent.lottie_loop,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Loop', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose whether or not your Lottie will animate in loop.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: !triggerOn\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"loop_no_times.innerContent\",\n    defaultAttr: lottieFieldDefaultInnerContent.loop_no_times,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Number of times', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('This option is only available if Yes is selected for Loop. Enter the number of times you wish to have the animation loop before stopping.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: loopEnabled && !triggerOn\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 10,\n    step: 1,\n    defaultUnit: '',\n    allowedUnits: ['']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"lottie_delay.innerContent\",\n    defaultAttr: lottieFieldDefaultInnerContent.lottie_delay,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Delay', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Delay the lottie animation (in ms).', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 8000,\n    step: 1,\n    defaultUnit: '',\n    allowedUnits: ['']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"lottie_direction.innerContent\",\n    defaultAttr: lottieFieldDefaultInnerContent.lottie_direction,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Direction', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      1: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Normal', 'dsm-supreme-modules-pro-for-divi')\n      },\n      '-1': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Reverse', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"lottie_speed.innerContent\",\n    defaultAttr: lottieFieldDefaultInnerContent.lottie_speed,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Speed (More is faster)', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('The speed of the animation.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0.1,\n    max: 2.5,\n    step: 0.1,\n    defaultUnit: '',\n    allowedUnits: ['']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"lottie_play_on_hover.innerContent\",\n    defaultAttr: lottieFieldDefaultInnerContent.lottie_play_on_hover,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Trigger', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose whether or not your Lottie will animate on hover.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"lottie_trigger_method.innerContent\",\n    defaultAttr: lottieFieldDefaultInnerContent.lottie_trigger_method,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Trigger Method', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: triggerOn\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      on_hover: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Play Animation  On Hover/Mouse Over', 'dsm-supreme-modules-pro-for-divi')\n      },\n      on_click: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Play Animation On Click', 'dsm-supreme-modules-pro-for-divi')\n      },\n      on_scroll: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Play Animation On Scroll', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"lottie_scroll.innerContent\",\n    defaultAttr: lottieFieldDefaultInnerContent.lottie_scroll,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Relative To', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: triggerOn && 'on_scroll' === triggerMethodEffective\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      page: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Entire Page', 'dsm-supreme-modules-pro-for-divi')\n      },\n      row: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Within This Section/Row', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"lottie_mouseout_action.innerContent\",\n    defaultAttr: lottieFieldDefaultInnerContent.lottie_mouseout_action,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('On Mouseout Action', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: triggerOn && 'on_hover' === triggerMethodEffective\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      no_action: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('No Action', 'dsm-supreme-modules-pro-for-divi')\n      },\n      stop: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Stop', 'dsm-supreme-modules-pro-for-divi')\n      },\n      pause: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pause', 'dsm-supreme-modules-pro-for-divi')\n      },\n      reverse: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Reverse', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"lottie_animation_viewport.innerContent\",\n    defaultAttr: lottieFieldDefaultInnerContent.lottie_animation_viewport,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animate in Viewport', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animation when the element is in viewport.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: !triggerOn\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    step: 1,\n    defaultUnit: '',\n    allowedUnits: ['']\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const lottie_settings_content = (lottie_settings_content_SettingsContent);\n;// ./packages/module-library/lottie/settings-design.js\n\n\n// Divi package dependencies.\n\n\n/**\n * D4 `DSM_Lottie` has no custom Design fields beyond standard module decoration\n * (sizing, spacing, border, shadow, filters, transform, animation). D5 uses Divi\n * schema defaults via `defaultSettingsAttrs.module.decoration`; `defaultGroupAttr`\n * keeps controls populated when keys are omitted after save (matches D4 parity).\n */\nfunction lottie_settings_design_SettingsDesign({\n  defaultSettingsAttrs\n}) {\n  const moduleDeco = defaultSettingsAttrs?.module?.decoration;\n  const decorationDefaults = moduleDeco && typeof moduleDeco.asMutable === 'function' ? moduleDeco.asMutable({\n    deep: true\n  }) : moduleDeco;\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, {\n    defaultGroupAttr: decorationDefaults?.sizing\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    defaultGroupAttr: decorationDefaults?.spacing\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    defaultGroupAttr: decorationDefaults?.border\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    defaultGroupAttr: decorationDefaults?.boxShadow\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, {\n    defaultGroupAttr: decorationDefaults?.filters\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, {\n    defaultGroupAttr: decorationDefaults?.transform\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, {\n    defaultGroupAttr: decorationDefaults?.animation\n  }));\n}\n/* harmony default export */ const lottie_settings_design = (lottie_settings_design_SettingsDesign);\n;// ./packages/module-library/lottie/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction lottie_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_lottie\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const lottie_settings_advanced = (lottie_settings_advanced_SettingsAdvanced);\n// EXTERNAL MODULE: ./node_modules/lottie-web/build/player/lottie.js\nvar lottie = __webpack_require__(\"./node_modules/lottie-web/build/player/lottie.js\");\nvar lottie_default = /*#__PURE__*/__webpack_require__.n(lottie);\n;// ./node_modules/@lottiefiles/lottie-interactivity/dist/lottie-interactivity.es.js\nfunction e(t){return(e=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e})(t)}function t(e,t){if(!(e instanceof t))throw new TypeError(\"Cannot call a class as a function\")}function n(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,\"value\"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){if(null==e)return{};var n,i,a=function(e,t){if(null==e)return{};var n,i,a={},r=Object.keys(e);for(i=0;i<r.length;i++)n=r[i],t.indexOf(n)>=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(i=0;i<r.length;i++)n=r[i],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}function r(e,t){var n=t.get(e);if(!n)throw new TypeError(\"attempted to get private field on non-instance\");return n.get?n.get.call(e):n.value}var o={player:\"lottie-player\"},s=\"[lottieInteractivity]:\",lottie_interactivity_es_l=function(){function l(){var n=this,M=arguments.length>0&&void 0!==arguments[0]?arguments[0]:o,C=M.actions,A=M.container,T=M.mode,H=M.player,O=a(M,[\"actions\",\"container\",\"mode\",\"player\"]);if(t(this,l),lottie_interactivity_es_c.set(this,{writable:!0,value:function(){if(n.player){var e=function(){n.player.addEventListener(\"enterFrame\",r(n,lottie_interactivity_es_E)),n.container.addEventListener(\"mouseenter\",r(n,lottie_interactivity_es_g)),n.container.addEventListener(\"mouseleave\",r(n,lottie_interactivity_es_w)),n.container.addEventListener(\"touchstart\",r(n,lottie_interactivity_es_g),{passive:!0}),n.container.addEventListener(\"touchend\",r(n,lottie_interactivity_es_w),{passive:!0})},t=function(){n.container.addEventListener(\"mouseenter\",r(n,lottie_interactivity_es_g)),n.container.addEventListener(\"mouseleave\",r(n,lottie_interactivity_es_w)),n.container.addEventListener(\"touchstart\",r(n,lottie_interactivity_es_g),{passive:!0}),n.container.addEventListener(\"touchend\",r(n,lottie_interactivity_es_w),{passive:!0})};n.stateHandler.set(\"loop\",(function(){n.actions[n.interactionIdx].loop?n.player.loop=parseInt(n.actions[n.interactionIdx].loop)-1:n.player.loop=!0,n.player.autoplay=!0})),n.stateHandler.set(\"autoplay\",(function(){n.player.loop=!1,n.player.autoplay=!0})),n.stateHandler.set(\"click\",(function(){n.player.loop=!1,n.player.autoplay=!1,n.container.addEventListener(\"click\",r(n,lottie_interactivity_es_p))})),n.stateHandler.set(\"hover\",(function(){n.player.loop=!1,n.player.autoplay=!1,n.container.addEventListener(\"mouseenter\",r(n,lottie_interactivity_es_p)),n.container.addEventListener(\"touchstart\",r(n,lottie_interactivity_es_p),{passive:!0})})),n.stateHandler.set(\"hold\",t),n.stateHandler.set(\"pauseHold\",t),n.transitionHandler.set(\"click\",(function(){n.container.addEventListener(\"click\",r(n,lottie_interactivity_es_h))})),n.transitionHandler.set(\"hover\",(function(){n.container.addEventListener(\"mouseenter\",r(n,lottie_interactivity_es_h)),n.container.addEventListener(\"touchstart\",r(n,lottie_interactivity_es_h),{passive:!0})})),n.transitionHandler.set(\"hold\",e),n.transitionHandler.set(\"pauseHold\",e),n.transitionHandler.set(\"repeat\",(function(){n.player.loop=!0,n.player.autoplay=!0;n.player.addEventListener(\"loopComplete\",(function e(){r(n,lottie_interactivity_es_f).call(n,{handler:e})}))})),n.transitionHandler.set(\"onComplete\",(function(){\"loop\"===n.actions[n.interactionIdx].state?n.player.addEventListener(\"loopComplete\",r(n,lottie_interactivity_es_m)):n.player.addEventListener(\"complete\",r(n,lottie_interactivity_es_m))})),n.transitionHandler.set(\"seek\",(function(){n.player.stop(),n.player.addEventListener(\"enterFrame\",r(n,lottie_interactivity_es_L)),n.container.addEventListener(\"mousemove\",r(n,lottie_interactivity_es_y)),n.container.addEventListener(\"touchmove\",r(n,lottie_interactivity_es_u),{passive:!1}),n.container.addEventListener(\"mouseout\",r(n,lottie_interactivity_es_v))}))}}}),lottie_interactivity_es_p.set(this,{writable:!0,value:function(){var e=n.actions[n.interactionIdx].forceFlag;e||!0!==n.player.isPaused?e&&r(n,lottie_interactivity_es_x).call(n,!0):r(n,lottie_interactivity_es_x).call(n,!0)}}),lottie_interactivity_es_d.set(this,{writable:!0,value:function(){0===n.clickCounter?(n.player.play(),n.clickCounter++):(n.clickCounter++,n.player.setDirection(-1*n.player.playDirection),n.player.play())}}),lottie_interactivity_es_h.set(this,{writable:!0,value:function(){var e=n.actions[n.interactionIdx].forceFlag,t=n.actions[n.interactionIdx].state,i=n.actions[n.interactionIdx].transition;if(\"chain\"===n.mode){if(n.actions[n.interactionIdx].count){var a=parseInt(n.actions[n.interactionIdx].count);if(n.clickCounter<a-1)return void(n.clickCounter+=1)}return n.clickCounter=0,!e&&\"click\"===i&&\"click\"===t||\"hover\"===i&&\"hover\"===t?n.transitionHandler.get(\"onComplete\").call():n.nextInteraction(),n.container.removeEventListener(\"click\",r(n,lottie_interactivity_es_h)),void n.container.removeEventListener(\"mouseenter\",r(n,lottie_interactivity_es_h))}e||!0!==n.player.isPaused?e&&n.player.goToAndPlay(0,!0):n.player.goToAndPlay(0,!0)}}),lottie_interactivity_es_y.set(this,{writable:!0,value:function(e){r(n,lottie_interactivity_es_S).call(n,e.clientX,e.clientY)}}),lottie_interactivity_es_u.set(this,{writable:!0,value:function(e){e.cancelable&&e.preventDefault(),r(n,lottie_interactivity_es_S).call(n,e.touches[0].clientX,e.touches[0].clientY)}}),lottie_interactivity_es_v.set(this,{writable:!0,value:function(){r(n,lottie_interactivity_es_S).call(n,-1,-1)}}),lottie_interactivity_es_m.set(this,{writable:!0,value:function(){\"loop\"===n.actions[n.interactionIdx].state?n.player.removeEventListener(\"loopComplete\",r(n,lottie_interactivity_es_m)):n.player.removeEventListener(\"complete\",r(n,lottie_interactivity_es_m)),n.nextInteraction()}}),lottie_interactivity_es_f.set(this,{writable:!0,value:function(e){var t=e.handler,i=1;n.actions[n.interactionIdx].repeat&&(i=n.actions[n.interactionIdx].repeat),n.playCounter>=i-1?(n.playCounter=0,n.player.removeEventListener(\"loopComplete\",t),n.player.loop=!1,n.player.autoplay=!1,n.nextInteraction()):n.playCounter+=1}}),lottie_interactivity_es_L.set(this,{writable:!0,value:function(){var e=n.actions[n.interactionIdx].frames;e&&n.player.currentFrame>=parseInt(e[1])-1&&(n.player.removeEventListener(\"enterFrame\",r(n,lottie_interactivity_es_L)),n.container.removeEventListener(\"mousemove\",r(n,lottie_interactivity_es_y)),n.container.removeEventListener(\"mouseout\",r(n,lottie_interactivity_es_v)),setTimeout(n.nextInteraction,0))}}),lottie_interactivity_es_E.set(this,{writable:!0,value:function(){var e=n.actions[n.interactionIdx].frames;(e&&n.player.currentFrame>=e[1]||n.player.currentFrame>=n.player.totalFrames-1)&&(n.player.removeEventListener(\"enterFrame\",r(n,lottie_interactivity_es_E)),n.container.removeEventListener(\"mouseenter\",r(n,lottie_interactivity_es_g)),n.container.removeEventListener(\"mouseleave\",r(n,lottie_interactivity_es_w)),n.container.removeEventListener(\"touchstart\",r(n,lottie_interactivity_es_g),{passive:!0}),n.container.removeEventListener(\"touchend\",r(n,lottie_interactivity_es_w),{passive:!0}),n.player.pause(),n.holdStatus=!1,n.nextInteraction()),-1===n.player.playDirection&&e&&n.player.currentFrame<e[0]&&n.player.pause()}}),lottie_interactivity_es_g.set(this,{writable:!0,value:function(){-1!==n.player.playDirection&&null!==n.holdStatus&&n.holdStatus||(n.player.setDirection(1),n.player.play(),n.holdStatus=!0)}}),lottie_interactivity_es_w.set(this,{writable:!0,value:function(){\"hold\"===n.actions[n.interactionIdx].transition||\"hold\"===n.actions[n.interactionIdx].state||\"hold\"===n.actions[0].type?(n.player.setDirection(-1),n.player.play()):\"pauseHold\"!==n.actions[n.interactionIdx].transition&&\"pauseHold\"!==n.actions[n.interactionIdx].state&&\"pauseHold\"!==n.actions[0].type||n.player.pause(),n.holdStatus=!1}}),lottie_interactivity_es_I.set(this,{writable:!0,value:function(){if(n.container.removeEventListener(\"click\",r(n,lottie_interactivity_es_h)),n.container.removeEventListener(\"click\",r(n,lottie_interactivity_es_p)),n.container.removeEventListener(\"mouseenter\",r(n,lottie_interactivity_es_h)),n.container.removeEventListener(\"touchstart\",r(n,lottie_interactivity_es_h)),n.container.removeEventListener(\"touchmove\",r(n,lottie_interactivity_es_u)),n.container.removeEventListener(\"mouseenter\",r(n,lottie_interactivity_es_p)),n.container.removeEventListener(\"touchstart\",r(n,lottie_interactivity_es_p)),n.container.removeEventListener(\"mouseenter\",r(n,lottie_interactivity_es_g)),n.container.removeEventListener(\"touchstart\",r(n,lottie_interactivity_es_g)),n.container.removeEventListener(\"mouseleave\",r(n,lottie_interactivity_es_w)),n.container.removeEventListener(\"mousemove\",r(n,lottie_interactivity_es_y)),n.container.removeEventListener(\"mouseout\",r(n,lottie_interactivity_es_v)),n.container.removeEventListener(\"touchend\",r(n,lottie_interactivity_es_w)),n.player)try{n.player.removeEventListener(\"loopComplete\",r(n,lottie_interactivity_es_m)),n.player.removeEventListener(\"complete\",r(n,lottie_interactivity_es_m)),n.player.removeEventListener(\"enterFrame\",r(n,lottie_interactivity_es_L)),n.player.removeEventListener(\"enterFrame\",r(n,lottie_interactivity_es_E))}catch(e){}}}),i(this,\"jumpToInteraction\",(function(e){r(n,lottie_interactivity_es_I).call(n),n.interactionIdx=e,n.interactionIdx<0?n.interactionIdx=0:n.interactionIdx,n.nextInteraction(!1)})),i(this,\"nextInteraction\",(function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];n.oldInterctionIdx=n.interactionIdx,r(n,lottie_interactivity_es_I).call(n),n.player.loop=!1;var t=n.actions[n.interactionIdx].jumpTo;t?t>=0&&t<n.actions.length?(n.interactionIdx=t,r(n,lottie_interactivity_es_k).call(n,{ignorePath:!1})):(n.interactionIdx=0,n.player.goToAndStop(0,!0),r(n,lottie_interactivity_es_k).call(n,{ignorePath:!1})):(e&&n.interactionIdx++,n.interactionIdx>=n.actions.length?n.actions[n.actions.length-1].reset?(n.interactionIdx=0,n.player.resetSegments(!0),n.actions[n.interactionIdx].frames?n.player.goToAndStop(n.actions[n.interactionIdx].frames,!0):n.player.goToAndStop(0,!0),r(n,lottie_interactivity_es_k).call(n,{ignorePath:!1})):(n.interactionIdx=n.actions.length-1,r(n,lottie_interactivity_es_k).call(n,{ignorePath:!1})):r(n,lottie_interactivity_es_k).call(n,{ignorePath:!1})),n.container.dispatchEvent(new CustomEvent(\"transition\",{bubbles:!0,composed:!0,detail:{oldIndex:n.oldInterctionIdx,newIndex:n.interactionIdx}}))})),lottie_interactivity_es_x.set(this,{writable:!0,value:function(e){var t=n.actions[n.interactionIdx].frames;if(!t)return n.player.resetSegments(!0),void n.player.goToAndPlay(0,!0);\"string\"==typeof t?n.player.goToAndPlay(t,e):n.player.playSegments(t,e)}}),lottie_interactivity_es_b.set(this,{writable:!0,value:function(){var t=n.actions[n.interactionIdx].path;if(!t)if(\"object\"===e(n.enteredPlayer)&&\"AnimationItem\"===n.enteredPlayer.constructor.name){if(t=n.enteredPlayer,n.player===t)return void r(n,lottie_interactivity_es_k).call(n,{ignorePath:!0})}else{var i=(t=n.loadedAnimation).substr(t.lastIndexOf(\"/\")+1);if(i=i.substr(0,i.lastIndexOf(\".json\")),n.player.fileName===i)return void r(n,lottie_interactivity_es_k).call(n,{ignorePath:!0})}var a=n.container.getBoundingClientRect(),o=\"width: \"+a.width+\"px !important; height: \"+a.height+\"px !important; background: \"+n.container.style.background;if(n.container.setAttribute(\"style\",o),\"object\"!==e(n.enteredPlayer)||\"AnimationItem\"!==n.enteredPlayer.constructor.name){if(\"string\"==typeof n.enteredPlayer){var l=document.querySelector(n.enteredPlayer);l&&\"LOTTIE-PLAYER\"===l.nodeName&&(n.attachedListeners||(l.addEventListener(\"ready\",(function(){n.container.style.width=\"\",n.container.style.height=\"\"})),l.addEventListener(\"load\",(function(){n.player=l.getLottie(),r(n,lottie_interactivity_es_k).call(n,{ignorePath:!0})})),n.attachedListeners=!0),l.load(t))}else n.enteredPlayer instanceof HTMLElement&&\"LOTTIE-PLAYER\"===n.enteredPlayer.nodeName&&(n.attachedListeners||(n.enteredPlayer.addEventListener(\"ready\",(function(){n.container.style.width=\"\",n.container.style.height=\"\"})),n.enteredPlayer.addEventListener(\"load\",(function(){n.player=n.enteredPlayer.getLottie(),r(n,lottie_interactivity_es_k).call(n,{ignorePath:!0})})),n.attachedListeners=!0),n.enteredPlayer.load(t));if(!n.player)throw new Error(\"\".concat(s,\" Specified player is invalid.\"),n.enteredPlayer)}else{if(!window.lottie)throw new Error(\"\".concat(s,\" A Lottie player is required.\"));n.stop(),n.container.innerHTML=\"\",\"object\"===e(t)&&\"AnimationItem\"===t.constructor.name?n.player=window.lottie.loadAnimation({loop:!1,autoplay:!1,animationData:t.animationData,container:n.container}):n.player=window.lottie.loadAnimation({loop:!1,autoplay:!1,path:t,container:n.container}),n.player.addEventListener(\"DOMLoaded\",(function(){n.container.style.width=\"\",n.container.style.height=\"\",r(n,lottie_interactivity_es_k).call(n,{ignorePath:!0})}))}n.clickCounter=0,n.playCounter=0}}),lottie_interactivity_es_k.set(this,{writable:!0,value:function(e){var t=e.ignorePath,i=n.actions[n.interactionIdx].frames,a=n.actions[n.interactionIdx].state,o=n.actions[n.interactionIdx].transition,s=n.actions[n.interactionIdx].path,l=n.stateHandler.get(a),c=n.transitionHandler.get(o),p=n.actions[n.interactionIdx].speed?n.actions[n.interactionIdx].speed:1,d=n.actions[n.interactionIdx].delay?n.actions[n.interactionIdx].delay:0;t||!(s||n.actions[n.actions.length-1].reset&&0===n.interactionIdx)?setTimeout((function(){i&&(n.player.autoplay=!1,n.player.resetSegments(!0),n.player.goToAndStop(i[0],!0)),l?l.call():\"none\"===a&&(n.player.loop=!1,n.player.autoplay=!1),c&&c.call(),n.player.autoplay&&(n.player.resetSegments(!0),r(n,lottie_interactivity_es_x).call(n,!0)),n.player.setSpeed(p)}),d):r(n,lottie_interactivity_es_b).call(n)}}),lottie_interactivity_es_S.set(this,{writable:!0,value:function(e,t){if(-1!==e&&-1!==t){var i=n.getContainerCursorPosition(e,t);e=i.x,t=i.y}var a=n.actions.find((function(n){var i=n.position;if(i){if(Array.isArray(i.x)&&Array.isArray(i.y))return e>=i.x[0]&&e<=i.x[1]&&t>=i.y[0]&&t<=i.y[1];if(!Number.isNaN(i.x)&&!Number.isNaN(i.y))return e===i.x&&t===i.y}return!1}));if(a)if(\"seek\"===a.type||\"seek\"===a.transition){var r=(e-a.position.x[0])/(a.position.x[1]-a.position.x[0]),o=(t-a.position.y[0])/(a.position.y[1]-a.position.y[0]);n.player.playSegments(a.frames,!0),a.position.y[0]<0&&a.position.y[1]>1?n.player.goToAndStop(Math.floor(r*n.player.totalFrames),!0):n.player.goToAndStop(Math.ceil((r+o)/2*n.player.totalFrames),!0)}else\"loop\"===a.type?n.player.playSegments(a.frames,!0):\"play\"===a.type?(!0===n.player.isPaused&&n.player.resetSegments(),n.player.playSegments(a.frames)):\"stop\"===a.type&&(n.player.resetSegments(!0),n.player.goToAndStop(a.frames[0],!0))}}),lottie_interactivity_es_P.set(this,{writable:!0,value:function(){var e=n.getContainerVisibility(),t=n.actions.find((function(t){var n=t.visibility;return e>=n[0]&&e<=n[1]}));if(t)if(\"seek\"===t.type){var i=t.frames[0],a=2==t.frames.length?t.frames[1]:n.player.totalFrames-1;null!==n.assignedSegment&&(n.player.resetSegments(!0),n.assignedSegment=null),n.player.goToAndStop(i+Math.round((e-t.visibility[0])/(t.visibility[1]-t.visibility[0])*(a-i)),!0)}else if(\"loop\"===t.type)n.player.loop=!0,(null===n.assignedSegment||n.assignedSegment!==t.frames||!0===n.player.isPaused)&&(n.player.playSegments(t.frames,!0),n.assignedSegment=t.frames);else if(\"play\"===t.type||\"playOnce\"===t.type){if(\"playOnce\"===t.type&&!n.scrolledAndPlayed)return n.scrolledAndPlayed=!0,n.player.resetSegments(!0),void(t.frames?n.player.playSegments(t.frames,!0):n.player.play());\"play\"===t.type&&n.player.isPaused&&(n.player.resetSegments(!0),t.frames?n.player.playSegments(t.frames,!0):n.player.play())}else\"stop\"===t.type&&n.player.goToAndStop(t.frames[0],!0)}}),this.enteredPlayer=H,\"object\"!==e(H)||\"AnimationItem\"!==H.constructor.name){if(\"string\"==typeof H){var W=document.querySelector(H);W&&\"LOTTIE-PLAYER\"===W.nodeName&&(H=W.getLottie())}else H instanceof HTMLElement&&\"LOTTIE-PLAYER\"===H.nodeName&&(H=H.getLottie());if(!H){var F=s+\"Specified player:\"+H+\" is invalid.\";throw new Error(F)}}\"string\"==typeof A&&(A=document.querySelector(A)),A||(A=H.wrapper),this.player=H,this.loadedAnimation=this.player.path+this.player.fileName+\".json\",this.attachedListeners=!1,this.container=A,this.mode=T,this.actions=C,this.options=O,this.assignedSegment=null,this.scrolledAndPlayed=!1,this.interactionIdx=0,this.oldInterctionIdx=0,this.clickCounter=0,this.playCounter=0,this.stateHandler=new Map,this.transitionHandler=new Map}var M,C,A;return M=l,(C=[{key:\"getContainerVisibility\",value:function(){var e=this.container.getBoundingClientRect(),t=e.top,n=e.height;return(window.innerHeight-t)/(window.innerHeight+n)}},{key:\"getContainerCursorPosition\",value:function(e,t){var n=this.container.getBoundingClientRect(),i=n.top;return{x:(e-n.left)/n.width,y:(t-i)/n.height}}},{key:\"initScrollMode\",value:function(){this.player.stop(),window.addEventListener(\"scroll\",r(this,lottie_interactivity_es_P),!0)}},{key:\"initCursorMode\",value:function(){this.actions&&1===this.actions.length?\"click\"===this.actions[0].type?(this.player.loop=!1,this.player.stop(),this.container.addEventListener(\"click\",r(this,lottie_interactivity_es_h))):\"hover\"===this.actions[0].type?(this.player.loop=!1,this.player.stop(),this.container.addEventListener(\"mouseenter\",r(this,lottie_interactivity_es_h)),this.container.addEventListener(\"touchstart\",r(this,lottie_interactivity_es_h),{passive:!0})):\"toggle\"===this.actions[0].type?(this.player.loop=!1,this.player.stop(),this.container.addEventListener(\"click\",r(this,lottie_interactivity_es_d))):\"hold\"===this.actions[0].type||\"pauseHold\"===this.actions[0].type?(this.container.addEventListener(\"mouseenter\",r(this,lottie_interactivity_es_g)),this.container.addEventListener(\"mouseleave\",r(this,lottie_interactivity_es_w)),this.container.addEventListener(\"touchstart\",r(this,lottie_interactivity_es_g),{passive:!0}),this.container.addEventListener(\"touchend\",r(this,lottie_interactivity_es_w),{passive:!0})):\"seek\"===this.actions[0].type&&(this.player.loop=!0,this.player.stop(),this.container.addEventListener(\"mousemove\",r(this,lottie_interactivity_es_y)),this.container.addEventListener(\"touchmove\",r(this,lottie_interactivity_es_u),{passive:!1}),this.container.addEventListener(\"mouseout\",r(this,lottie_interactivity_es_v))):(this.player.loop=!0,this.player.stop(),this.container.addEventListener(\"mousemove\",r(this,lottie_interactivity_es_y)),this.container.addEventListener(\"mouseleave\",r(this,lottie_interactivity_es_v)),r(this,lottie_interactivity_es_S).call(this,-1,-1))}},{key:\"initChainMode\",value:function(){r(this,lottie_interactivity_es_c).call(this),this.player.loop=!1,this.player.stop(),r(this,lottie_interactivity_es_k).call(this,{ignorePath:!1})}},{key:\"start\",value:function(){var e=this;\"scroll\"===this.mode?this.player.isLoaded?this.initScrollMode():this.player.addEventListener(\"DOMLoaded\",(function(){e.initScrollMode()})):\"cursor\"===this.mode?this.player.isLoaded?this.initCursorMode():this.player.addEventListener(\"DOMLoaded\",(function(){e.initCursorMode()})):\"chain\"===this.mode&&(this.player.isLoaded?this.initChainMode():this.player.addEventListener(\"DOMLoaded\",(function(){e.initChainMode()})))}},{key:\"redefineOptions\",value:function(t){var n=t.actions,i=t.container,r=t.mode,o=t.player,l=a(t,[\"actions\",\"container\",\"mode\",\"player\"]);if(this.stop(),this.enteredPlayer=o,\"object\"!==e(o)||\"AnimationItem\"!==o.constructor.name){if(\"string\"==typeof o){var c=document.querySelector(o);c&&\"LOTTIE-PLAYER\"===c.nodeName&&(o=c.getLottie())}else o instanceof HTMLElement&&\"LOTTIE-PLAYER\"===o.nodeName&&(o=o.getLottie());if(!o)throw new Error(s+\"Specified player:\"+o+\" is invalid.\",o)}\"string\"==typeof i&&(i=document.querySelector(i)),i||(i=o.wrapper),this.player=o,this.loadedAnimation=this.player.path+this.player.fileName+\".json\",this.attachedListeners=!1,this.container=i,this.mode=r,this.actions=n,this.options=l,this.assignedSegment=null,this.scrolledAndPlayed=!1,this.interactionIdx=0,this.clickCounter=0,this.playCounter=0,this.holdStatus=null,this.stateHandler=new Map,this.transitionHandler=new Map,this.start()}},{key:\"stop\",value:function(){if(\"scroll\"===this.mode&&window.removeEventListener(\"scroll\",r(this,lottie_interactivity_es_P),!0),\"cursor\"===this.mode&&(this.container.removeEventListener(\"click\",r(this,lottie_interactivity_es_h)),this.container.removeEventListener(\"click\",r(this,lottie_interactivity_es_d)),this.container.removeEventListener(\"mouseenter\",r(this,lottie_interactivity_es_h)),this.container.removeEventListener(\"touchstart\",r(this,lottie_interactivity_es_h)),this.container.removeEventListener(\"touchmove\",r(this,lottie_interactivity_es_u)),this.container.removeEventListener(\"mousemove\",r(this,lottie_interactivity_es_y)),this.container.removeEventListener(\"mouseleave\",r(this,lottie_interactivity_es_v)),this.container.removeEventListener(\"touchstart\",r(this,lottie_interactivity_es_g)),this.container.removeEventListener(\"touchend\",r(this,lottie_interactivity_es_w))),\"chain\"===this.mode&&(this.container.removeEventListener(\"click\",r(this,lottie_interactivity_es_h)),this.container.removeEventListener(\"click\",r(this,lottie_interactivity_es_p)),this.container.removeEventListener(\"mouseenter\",r(this,lottie_interactivity_es_h)),this.container.removeEventListener(\"touchstart\",r(this,lottie_interactivity_es_h)),this.container.removeEventListener(\"touchmove\",r(this,lottie_interactivity_es_u)),this.container.removeEventListener(\"mouseenter\",r(this,lottie_interactivity_es_p)),this.container.removeEventListener(\"touchstart\",r(this,lottie_interactivity_es_p)),this.container.removeEventListener(\"mouseenter\",r(this,lottie_interactivity_es_g)),this.container.removeEventListener(\"touchstart\",r(this,lottie_interactivity_es_g)),this.container.removeEventListener(\"mouseleave\",r(this,lottie_interactivity_es_w)),this.container.removeEventListener(\"mousemove\",r(this,lottie_interactivity_es_y)),this.container.removeEventListener(\"mouseout\",r(this,lottie_interactivity_es_v)),this.container.removeEventListener(\"touchend\",r(this,lottie_interactivity_es_w)),this.player))try{this.player.removeEventListener(\"loopComplete\",r(this,lottie_interactivity_es_m)),this.player.removeEventListener(\"complete\",r(this,lottie_interactivity_es_m)),this.player.removeEventListener(\"enterFrame\",r(this,lottie_interactivity_es_L)),this.player.removeEventListener(\"enterFrame\",r(this,lottie_interactivity_es_E))}catch(e){}this.player&&(this.player.destroy(),this.player=null)}}])&&n(M.prototype,C),A&&n(M,A),l}(),lottie_interactivity_es_c=new WeakMap,lottie_interactivity_es_p=new WeakMap,lottie_interactivity_es_d=new WeakMap,lottie_interactivity_es_h=new WeakMap,lottie_interactivity_es_y=new WeakMap,lottie_interactivity_es_u=new WeakMap,lottie_interactivity_es_v=new WeakMap,lottie_interactivity_es_m=new WeakMap,lottie_interactivity_es_f=new WeakMap,lottie_interactivity_es_L=new WeakMap,lottie_interactivity_es_E=new WeakMap,lottie_interactivity_es_g=new WeakMap,lottie_interactivity_es_w=new WeakMap,lottie_interactivity_es_I=new WeakMap,lottie_interactivity_es_x=new WeakMap,lottie_interactivity_es_b=new WeakMap,lottie_interactivity_es_k=new WeakMap,lottie_interactivity_es_S=new WeakMap,lottie_interactivity_es_P=new WeakMap,lottie_interactivity_es_M=function(e){var t=new lottie_interactivity_es_l(e);return t.start(),t};/* harmony default export */ const lottie_interactivity_es = (lottie_interactivity_es_M);\n//# sourceMappingURL=lottie-interactivity.es.js.map\n\n;// ./packages/module-library/lottie/module-styles.js\n\n\n\n/**\n * React function component for rendering module style.\n */\nconst lottie_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextStyle, {\n    selector: orderClass,\n    attr: attrs?.module?.advanced?.text\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'header'\n  }), elements.style({\n    attrName: 'color'\n  }), elements.style({\n    attrName: 'divider_weight'\n  }), elements.style({\n    attrName: 'divider_style'\n  }), elements.style({\n    attrName: 'text_gap'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-divider`,\n    attr: attrs?.color?.innerContent,\n    property: \"border-top-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-divider`,\n    attr: attrs?.divider_weight?.innerContent,\n    property: \"border-top-width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-divider`,\n    attr: attrs?.divider_style?.innerContent,\n    property: \"border-top-style\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-text-divider-wrapper`,\n    attr: attrs?.text_gap?.innerContent,\n    property: \"gap\"\n  }));\n};\n;// ./packages/module-library/lottie/lottie-scroll-sync.js\n/**\n * Scroll-linked frame index for Lottie (page vs row/section), shared by frontend + VB.\n */\n\n/**\n * @param {unknown} mode Stored `lottie_scroll` (`page` | `row`).\n * @return {'page'|'row'}\n */\nfunction normalizeLottieScrollMode(mode) {\n  const s = String(mode !== null && mode !== void 0 ? mode : '').trim().toLowerCase();\n  return 'page' === s ? 'page' : 'row';\n}\n\n/**\n * Document scrollable height minus viewport (jQuery `$(document).height() - $(window).height()`).\n *\n * @return {number}\n */\nfunction getDocumentScrollRange() {\n  const body = document.body;\n  const docEl = document.documentElement;\n  const scrollHeight = Math.max(body.scrollHeight, body.offsetHeight, docEl.scrollHeight, docEl.offsetHeight, docEl.clientHeight);\n  const winH = window.innerHeight;\n  return Math.max(1, scrollHeight - winH);\n}\n\n/**\n * Element offset top relative to document (matches jQuery `offset().top`).\n *\n * @param {HTMLElement} element\n * @return {number}\n */\nfunction getOffsetTop(el) {\n  const rect = el.getBoundingClientRect();\n  return rect.top + window.pageYOffset;\n}\n\n/**\n * @param {HTMLElement|null} wrapEl     Module wrapper element.\n * @param {'page'|'row'}     scrollMode   Normalized mode.\n * @param {number}           totalFrames  Animation total frames (>= 1).\n * @return {number} Frame index in [0, totalFrames - 1].\n */\nfunction computeLottieScrollFrameIndex(wrapEl, scrollMode, totalFrames) {\n  const tf = Math.max(1, Math.round(Number(totalFrames)) || 1);\n  const maxF = Math.max(0, tf - 1);\n  if ('page' === scrollMode) {\n    const docRange = getDocumentScrollRange();\n    const scrollPercent = Math.max(0, Math.min(100, Math.round(100 * window.pageYOffset / docRange)));\n    return Math.max(0, Math.min(maxF, Math.round(scrollPercent / 100 * maxF)));\n  }\n  if (!wrapEl) {\n    return 0;\n  }\n  const row = wrapEl.closest('.et_pb_row');\n  const section = wrapEl.closest('.et_pb_section');\n  const ref = row || section || wrapEl.closest('.et_pb_module');\n  if (!ref) {\n    return 0;\n  }\n  const refTop = getOffsetTop(ref);\n  const refH = Math.max(ref.offsetHeight || 1, 1);\n  const winH = window.innerHeight;\n  const scrollTop = window.pageYOffset;\n  const triggerLine = scrollTop + winH * 0.5;\n  const start = refTop - winH * 0.1;\n  const end = refTop + refH;\n  const span = Math.max(1, end - start);\n  let p = (triggerLine - start) / span;\n  p = Math.max(0, Math.min(1, p));\n  return Math.max(0, Math.min(maxF, Math.round(p * maxF)));\n}\n;// ./packages/module-library/lottie/lottie-load-utils.js\n/**\n * Inline Lottie JSON (e.g. Divi core: data:application/json;base64,...).\n */\n\n/**\n * Parse Lottie JSON embedded in a data: URI (base64 or comma JSON), same family as native Divi Lottie.\n *\n * @param {unknown} src Value from upload/URL (often `innerContent` `src` string).\n * @return {Record<string, unknown>|null} Parsed animation object, or null if not a data-URI JSON Lottie.\n */\nfunction parseLottieJsonFromDataUri(src) {\n  if (typeof src !== 'string') {\n    return null;\n  }\n  const s = src.trim();\n  if (!s.startsWith('data:')) {\n    return null;\n  }\n  const base64Match = /^data:application\\/json(?:;[\\w.=-]+)*;base64,([\\s\\S]+)$/i.exec(s);\n  if (base64Match) {\n    try {\n      const jsonText = atob(base64Match[1].replace(/\\s/g, ''));\n      const data = JSON.parse(jsonText);\n      return data && typeof data === 'object' ? (/** @type {Record<string, unknown>} */data) : null;\n    } catch {\n      return null;\n    }\n  }\n  const plainMatch = /^data:application\\/json(?:;[\\w.=-]+)*,(.*)$/i.exec(s);\n  if (plainMatch) {\n    const payload = plainMatch[1];\n    const tryParse = (/** @type {string} */jsonText) => {\n      const data = JSON.parse(jsonText);\n      return data && typeof data === 'object' ? (/** @type {Record<string, unknown>} */data) : null;\n    };\n    try {\n      return tryParse(decodeURIComponent(payload));\n    } catch {\n      try {\n        return tryParse(payload);\n      } catch {\n        return null;\n      }\n    }\n  }\n  return null;\n}\n\n/**\n * Build the `path` vs `animationData` slice for lottie-web `loadAnimation`.\n *\n * @param {string} pathOrSrc Remote URL, relative path, or `data:application/json...` inline JSON.\n * @return { { path: string } | { animationData: Record<string, unknown> } }\n */\nfunction getLottieWebLoadSource(pathOrSrc) {\n  const animationData = parseLottieJsonFromDataUri(pathOrSrc);\n  if (animationData) {\n    return {\n      animationData\n    };\n  }\n  return {\n    path: pathOrSrc\n  };\n}\n;// ./packages/module-library/lottie/edit.js\n\n\n\n\n// Divi package dependencies.\n\n\n\n// Custom dependencies.\n\n\n\nif (typeof window !== 'undefined' && !window.dsmLottieInteractivity) {\n  window.dsmLottieInteractivity = {\n    create: lottie_interactivity_es_M\n  };\n}\n\n/**\n * @param {unknown} raw\n * @return {number}\n */\nfunction parseDelayMs(raw) {\n  if (raw == null || raw === '') {\n    return 0;\n  }\n  const s = String(raw).replace(/ms/gi, '').trim();\n  const n = parseInt(s, 10);\n  return Number.isFinite(n) ? Math.max(0, n) : 0;\n}\n\n/**\n * @param {string} path\n * @return {boolean}\n */\nfunction isDotLottiePath(path) {\n  return typeof path === 'string' && /\\.lottie(\\?|#|$)/i.test(path);\n}\n\n/**\n * @param {{ hover: boolean, loopNo: string|number, loopOn: boolean }} p\n * @return {boolean|number}\n */\nfunction getLegacyLoopProp({\n  hover,\n  loopNo,\n  loopOn\n}) {\n  if (hover) {\n    return false;\n  }\n  if (!loopOn) {\n    return false;\n  }\n  const raw = String(loopNo !== null && loopNo !== void 0 ? loopNo : '').trim();\n  if ('' === raw) {\n    return true;\n  }\n  const n = parseInt(raw, 10);\n  if (!Number.isFinite(n) || n <= 0) {\n    return true;\n  }\n  return n;\n}\n\n/**\n * React function component for registering module script data.\n */\nconst lottie_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\n\n/**\n * @param {import('lottie-web').AnimationItem} animation\n * @param {HTMLElement} wrapEl\n * @param {string} scrollMode\n * @return {() => void} Remove scroll/resize listeners.\n */\nfunction bindLottieWebScrollVb(animation, wrapEl, scrollMode) {\n  const mode = normalizeLottieScrollMode(scrollMode);\n  let ticking = false;\n  const apply = () => {\n    if (!animation || typeof animation.goToAndStop !== 'function') {\n      return;\n    }\n    const totalFrame = Math.floor(animation.totalFrames || 0);\n    if (totalFrame <= 1) {\n      return;\n    }\n    const frame = computeLottieScrollFrameIndex(wrapEl, mode, totalFrame);\n    animation.goToAndStop(frame, true);\n  };\n  const onScroll = () => {\n    if (ticking) {\n      return;\n    }\n    ticking = true;\n    window.requestAnimationFrame(() => {\n      ticking = false;\n      apply();\n    });\n  };\n  window.addEventListener('scroll', onScroll, {\n    passive: true\n  });\n  window.addEventListener('resize', onScroll);\n  apply();\n  return () => {\n    window.removeEventListener('scroll', onScroll);\n    window.removeEventListener('resize', onScroll);\n  };\n}\n\n/**\n * @param {import('@lottiefiles/dotlottie-web').DotLottie} player\n * @param {HTMLElement} wrapEl\n * @param {string} scrollMode\n * @return {() => void} Remove scroll/resize listeners.\n */\nfunction bindDotLottieScrollVb(player, wrapEl, scrollMode) {\n  const mode = normalizeLottieScrollMode(scrollMode);\n  let ticking = false;\n  const apply = () => {\n    if (!player || typeof player.setFrame !== 'function') {\n      return;\n    }\n    const totalFrame = Math.max(1, Math.floor(player.totalFrames || 1));\n    const frame = computeLottieScrollFrameIndex(wrapEl, mode, totalFrame);\n    player.setFrame(frame);\n  };\n  const onScroll = () => {\n    if (ticking) {\n      return;\n    }\n    ticking = true;\n    window.requestAnimationFrame(() => {\n      ticking = false;\n      apply();\n    });\n  };\n  window.addEventListener('scroll', onScroll, {\n    passive: true\n  });\n  window.addEventListener('resize', onScroll);\n  apply();\n  return () => {\n    window.removeEventListener('scroll', onScroll);\n    window.removeEventListener('resize', onScroll);\n  };\n}\nfunction lottie_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  var _rawUrl$src;\n  const rawUrl = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.lottie_url?.innerContent);\n  const url = typeof rawUrl === 'object' && rawUrl !== null && 'src' in rawUrl ? String((_rawUrl$src = rawUrl.src) !== null && _rawUrl$src !== void 0 ? _rawUrl$src : '') : String(rawUrl !== null && rawUrl !== void 0 ? rawUrl : '');\n  const lottieLoopOn = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.lottie_loop?.innerContent) === 'on';\n  const loopNumberTimes = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.loop_no_times?.innerContent);\n  const delayRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.lottie_delay?.innerContent);\n  const speed = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.lottie_speed?.innerContent);\n  const direction = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.lottie_direction?.innerContent);\n  const playOnHover = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.lottie_play_on_hover?.innerContent);\n  const mouseAction = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.lottie_mouseout_action?.innerContent);\n  const triggerMethod = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.lottie_trigger_method?.innerContent);\n  const lottieScroll = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.lottie_scroll?.innerContent);\n  const viewportRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.lottie_animation_viewport?.innerContent);\n  const lottieContainer = (0,external_vendor_React_.useRef)(null);\n  const animRef = (0,external_vendor_React_.useRef)(null);\n  const dotRef = (0,external_vendor_React_.useRef)(null);\n  const waypointRef = (0,external_vendor_React_.useRef)(null);\n  const moduleId = `dsm-lottie-${id}`;\n  const hoverOn = playOnHover === 'on';\n  const loopProp = getLegacyLoopProp({\n    hover: hoverOn,\n    loopNo: loopNumberTimes,\n    loopOn: lottieLoopOn\n  });\n  (0,external_vendor_React_.useEffect)(() => {\n    const el = document.getElementById(moduleId);\n    if (!el || !url) {\n      return;\n    }\n    let cancelled = false;\n\n    /** @type {() => void} */\n    let teardownScroll = () => {};\n    /** @type {() => void} */\n    let teardownColumnHover = () => {};\n    /** @type {() => void} */\n    let teardownClick = () => {};\n    /** @type {null | EventListener} */\n    let domLoadedScrollHandler = null;\n    const cleanup = () => {\n      if (animRef.current && domLoadedScrollHandler) {\n        animRef.current.removeEventListener('DOMLoaded', domLoadedScrollHandler);\n        domLoadedScrollHandler = null;\n      }\n      teardownScroll();\n      teardownScroll = () => {};\n      teardownColumnHover();\n      teardownColumnHover = () => {};\n      teardownClick();\n      teardownClick = () => {};\n      if (waypointRef.current?.destroy) {\n        waypointRef.current.destroy();\n        waypointRef.current = null;\n      }\n      if (animRef.current) {\n        animRef.current.destroy();\n        animRef.current = null;\n      }\n      if (dotRef.current) {\n        dotRef.current.destroy();\n        dotRef.current = null;\n      }\n    };\n    cleanup();\n    const run = async () => {\n      if (isDotLottiePath(url)) {\n        const wasmUrl = typeof window !== 'undefined' && window.diviSupreme5?.lottieWasmUrl;\n        const {\n          DotLottie\n        } = await __webpack_require__.e(/*! import() | dotlottie-vb */ \"dotlottie\").then(__webpack_require__.bind(__webpack_require__, /*! @lottiefiles/dotlottie-web */ \"./node_modules/@lottiefiles/dotlottie-web/dist/index.js\"));\n        if (cancelled) {\n          return;\n        }\n        if (wasmUrl && typeof DotLottie.setWasmUrl === 'function') {\n          DotLottie.setWasmUrl(wasmUrl);\n        }\n        while (el.firstChild) {\n          el.removeChild(el.firstChild);\n        }\n        const canvas = document.createElement('canvas');\n        canvas.style.width = '100%';\n        canvas.style.height = '100%';\n        canvas.style.display = 'block';\n        el.appendChild(canvas);\n        const dirNum = Number(direction);\n        const mode = dirNum < 0 ? 'reverse' : 'forward';\n        let loop = false;\n        let loopCount = 0;\n        if (hoverOn) {\n          loop = false;\n          loopCount = 0;\n        } else if (loopProp === false) {\n          loop = false;\n        } else if (loopProp === true) {\n          loop = true;\n          loopCount = 0;\n        } else {\n          const n = /** @type {number} */loopProp;\n          if (n <= 1) {\n            loop = false;\n            loopCount = 0;\n          } else {\n            loop = true;\n            loopCount = n - 1;\n          }\n        }\n        const player = new DotLottie({\n          canvas,\n          src: url,\n          autoplay: !hoverOn,\n          loop,\n          loopCount,\n          mode,\n          speed: speed !== undefined ? Number(speed) : 1,\n          useFrameInterpolation: true,\n          renderConfig: {\n            autoResize: true\n          }\n        });\n        dotRef.current = player;\n        await new Promise(resolve => {\n          if (player.isLoaded) {\n            resolve();\n            return;\n          }\n          player.addEventListener('load', () => resolve());\n        });\n        if (cancelled) {\n          player.destroy();\n          return;\n        }\n        if (hoverOn) {\n          let resumeHoverAfterPause = false;\n          player.setFrame(0);\n          player.pause();\n          const mouseEnterHandler = () => {\n            player.setMode(dirNum < 0 ? 'reverse' : 'forward');\n            if (resumeHoverAfterPause && mouseAction === 'pause') {\n              resumeHoverAfterPause = false;\n              player.play();\n              return;\n            }\n            resumeHoverAfterPause = false;\n            player.setSegment(0, Math.max(0, player.totalFrames - 1));\n            player.play();\n          };\n          const mouseLeaveHandler = () => {\n            switch (mouseAction) {\n              case 'no_action':\n                break;\n              case 'stop':\n                resumeHoverAfterPause = false;\n                player.stop();\n                break;\n              case 'pause':\n                player.pause();\n                resumeHoverAfterPause = true;\n                break;\n              case 'reverse':\n                {\n                  resumeHoverAfterPause = false;\n                  const rev = dirNum < 0 ? 'forward' : 'reverse';\n                  player.setMode(rev);\n                  player.play();\n                  break;\n                }\n              default:\n                resumeHoverAfterPause = false;\n                player.stop();\n            }\n          };\n          if (triggerMethod === 'on_hover') {\n            const column = el.closest('.et_pb_column');\n            if (column) {\n              column.addEventListener('mouseenter', mouseEnterHandler);\n              column.addEventListener('mouseleave', mouseLeaveHandler);\n              teardownColumnHover = () => {\n                column.removeEventListener('mouseenter', mouseEnterHandler);\n                column.removeEventListener('mouseleave', mouseLeaveHandler);\n              };\n            }\n          }\n          if (triggerMethod === 'on_click') {\n            el.addEventListener('click', mouseEnterHandler);\n            teardownClick = () => el.removeEventListener('click', mouseEnterHandler);\n          }\n          if (triggerMethod === 'on_scroll') {\n            teardownScroll = bindDotLottieScrollVb(player, el, lottieScroll);\n          }\n        } else {\n          player.pause();\n          if (typeof Waypoint !== 'undefined') {\n            waypointRef.current = new Waypoint({\n              element: el,\n              handler(dir) {\n                if (dir === 'down') {\n                  setTimeout(() => {\n                    player.play();\n                  }, parseDelayMs(delayRaw));\n                } else {\n                  player.pause();\n                }\n              },\n              offset: String(viewportRaw !== null && viewportRaw !== void 0 ? viewportRaw : '80%')\n            });\n          } else {\n            player.play();\n          }\n        }\n        return;\n      }\n      while (el.firstChild) {\n        el.removeChild(el.firstChild);\n      }\n      const lottieWebLoop = hoverOn ? false : loopProp === 1 ? false : loopProp;\n      const animation = lottie_default().loadAnimation({\n        container: el,\n        renderer: 'svg',\n        loop: lottieWebLoop,\n        autoplay: false,\n        ...getLottieWebLoadSource(url),\n        rendererSettings: {\n          progressiveLoad: false\n        }\n      });\n      animRef.current = animation;\n      animation.setSpeed(Number(speed));\n      animation.setDirection(Number(direction));\n      if (hoverOn) {\n        let resumeHoverAfterPause = false;\n        animation.addEventListener('DOMLoaded', function () {\n          animation.goToAndStop(0, true);\n        });\n        const mouseEnterHandler = () => {\n          var _animation$animationD;\n          animation.setDirection(Number(direction));\n          if (resumeHoverAfterPause && mouseAction === 'pause') {\n            resumeHoverAfterPause = false;\n            animation.play();\n            return;\n          }\n          resumeHoverAfterPause = false;\n          const totalFrames = Math.round((_animation$animationD = animation.animationData?.op) !== null && _animation$animationD !== void 0 ? _animation$animationD : animation.totalFrames);\n          animation.playSegments([0, totalFrames], true);\n        };\n        const mouseLeaveHandler = () => {\n          switch (mouseAction) {\n            case 'no_action':\n              break;\n            case 'stop':\n              resumeHoverAfterPause = false;\n              animation.stop();\n              break;\n            case 'pause':\n              animation.pause();\n              resumeHoverAfterPause = true;\n              break;\n            case 'reverse':\n              resumeHoverAfterPause = false;\n              animation.setDirection(Number(direction) * -1);\n              animation.play();\n              break;\n          }\n        };\n        if (triggerMethod === 'on_hover') {\n          const column = el.closest('.et_pb_column');\n          if (column) {\n            column.addEventListener('mouseenter', mouseEnterHandler);\n            column.addEventListener('mouseleave', mouseLeaveHandler);\n            teardownColumnHover = () => {\n              column.removeEventListener('mouseenter', mouseEnterHandler);\n              column.removeEventListener('mouseleave', mouseLeaveHandler);\n            };\n          }\n        }\n        if (triggerMethod === 'on_click') {\n          el.addEventListener('click', mouseEnterHandler);\n          teardownClick = () => el.removeEventListener('click', mouseEnterHandler);\n        }\n        if (triggerMethod === 'on_scroll') {\n          const onDomLoadedScroll = () => {\n            teardownScroll();\n            teardownScroll = bindLottieWebScrollVb(animation, el, lottieScroll);\n          };\n          domLoadedScrollHandler = onDomLoadedScroll;\n          animation.addEventListener('DOMLoaded', onDomLoadedScroll);\n        }\n      } else if (typeof Waypoint !== 'undefined') {\n        waypointRef.current = new Waypoint({\n          element: el,\n          handler(dir) {\n            if (dir === 'down') {\n              setTimeout(() => {\n                animation.play();\n              }, parseDelayMs(delayRaw));\n            } else {\n              animation.pause();\n            }\n          },\n          offset: String(viewportRaw !== null && viewportRaw !== void 0 ? viewportRaw : '80%')\n        });\n      } else {\n        animation.play();\n      }\n    };\n    void run();\n    return () => {\n      cancelled = true;\n      cleanup();\n    };\n  }, [url, lottieLoopOn, loopNumberTimes, delayRaw, speed, direction, playOnHover, mouseAction, triggerMethod, lottieScroll, viewportRaw, loopProp, hoverOn, moduleId, id]);\n  const refreshKey = [speed, lottieLoopOn, loopNumberTimes, delayRaw, url, direction, playOnHover, mouseAction, triggerMethod, lottieScroll, viewportRaw].join(',');\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: lottie_edit_ModuleScriptData,\n    stylesComponent: lottie_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    key: refreshKey,\n    ref: lottieContainer,\n    id: moduleId,\n    className: \"dsm_lottie_wrapper\"\n  }));\n}\n/* harmony default export */ const lottie_edit = (lottie_edit_Edit);\n;// ./packages/module-library/lottie/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmLottie', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/lottie': {\n      name: 'divi-supreme/lottie',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.191406 13.578125 L 2.859375 13.578125 C 2.460938 13.578125 2.132812 13.25 2.132812 12.851562 L 2.132812 12.289062 C 2.132812 11.890625 2.460938 11.5625 2.859375 11.5625 L 12.191406 11.5625 C 12.589844 11.5625 12.917969 11.890625 12.917969 12.289062 L 12.917969 12.851562 C 12.910156 13.253906 12.589844 13.578125 12.191406 13.578125 Z M 2.859375 12.101562 C 2.753906 12.101562 2.671875 12.183594 2.671875 12.289062 L 2.671875 12.851562 C 2.671875 12.953125 2.753906 13.039062 2.859375 13.039062 L 12.191406 13.039062 C 12.296875 13.039062 12.378906 12.953125 12.378906 12.851562 L 12.378906 12.289062 C 12.378906 12.183594 12.296875 12.101562 12.191406 12.101562 Z M 2.859375 12.101562 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 5.414062 10.882812 C 4.882812 10.882812 4.449219 10.449219 4.449219 9.917969 C 4.449219 9.386719 4.882812 8.953125 5.414062 8.953125 C 5.945312 8.953125 6.378906 9.386719 6.378906 9.917969 C 6.378906 10.449219 5.945312 10.882812 5.414062 10.882812 Z M 5.414062 9.484375 C 5.175781 9.484375 4.980469 9.679688 4.980469 9.917969 C 4.980469 10.15625 5.175781 10.351562 5.414062 10.351562 C 5.652344 10.351562 5.847656 10.15625 5.847656 9.917969 C 5.847656 9.679688 5.652344 9.484375 5.414062 9.484375 Z M 5.414062 9.484375 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.792969 4.597656 C 12.261719 4.597656 11.828125 4.164062 11.828125 3.632812 C 11.828125 3.101562 12.261719 2.667969 12.792969 2.667969 C 13.324219 2.667969 13.757812 3.101562 13.757812 3.632812 C 13.757812 4.164062 13.324219 4.597656 12.792969 4.597656 Z M 12.792969 3.207031 C 12.554688 3.207031 12.359375 3.402344 12.359375 3.640625 C 12.359375 3.875 12.554688 4.074219 12.792969 4.074219 C 13.03125 4.074219 13.226562 3.875 13.226562 3.640625 C 13.21875 3.394531 13.03125 3.207031 12.792969 3.207031 Z M 12.792969 3.207031 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 9.375 10.394531 C 8.320312 10.394531 7.460938 9.535156 7.460938 8.480469 C 7.460938 7.421875 8.320312 6.5625 9.375 6.5625 C 10.433594 6.5625 11.292969 7.421875 11.292969 8.480469 C 11.285156 9.542969 10.425781 10.394531 9.375 10.394531 Z M 9.375 7.109375 C 8.613281 7.109375 8 7.722656 8 8.484375 C 8 9.246094 8.613281 9.863281 9.375 9.863281 C 10.140625 9.863281 10.753906 9.246094 10.753906 8.484375 C 10.746094 7.722656 10.132812 7.109375 9.375 7.109375 Z M 9.375 7.109375 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 5.132812 7.28125 C 4.074219 7.28125 3.214844 6.421875 3.214844 5.367188 C 3.214844 4.308594 4.074219 3.449219 5.132812 3.449219 C 6.1875 3.449219 7.046875 4.308594 7.046875 5.367188 C 7.039062 6.421875 6.179688 7.28125 5.132812 7.28125 Z M 5.132812 3.996094 C 4.367188 3.996094 3.753906 4.609375 3.753906 5.375 C 3.753906 6.136719 4.367188 6.75 5.132812 6.75 C 5.894531 6.75 6.507812 6.136719 6.507812 5.375 C 6.507812 4.609375 5.886719 3.996094 5.132812 3.996094 Z M 5.132812 3.996094 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/lottie/index.js\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\nconst lottieModule = {\n  metadata: lottie_module_namespaceObject,\n  conversionOutline: lottie_conversion_outline_conversionOutline,\n  renderers: {\n    edit: lottie_edit,\n    styles: lottie_module_styles_ModuleStyles\n  },\n  defaultAttrs: {\n    ...lottie_module_default_render_attributes_namespaceObject\n  },\n  settings: {\n    content: lottie_settings_content,\n    design: lottie_settings_design,\n    advanced: lottie_settings_advanced\n  },\n  placeholderContent: {\n    ...lottie_module_default_render_attributes_namespaceObject\n  }\n};\n/* harmony default export */ const module_library_lottie = (lottieModule);\n;// ./packages/module-library/line-hover/module.json\nconst line_hover_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/line-hover\",\"d4Shortcode\":\"dsm_line_hover\",\"title\":\"Supreme Line Hover\",\"titles\":\"Supreme Line Hover\",\"category\":\"module\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\"},\"header\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"selector\":\"{{selector}} .dsm-line-hover-link\",\"tagName\":\"span\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"animation_effect\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"animation_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"#2EA3F2\"},\"tablet\":{\"value\":\"#2EA3F2\"},\"phone\":{\"value\":\"#2EA3F2\"}}}},\"align\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"link\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"link_url_target\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"animation_duration\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"animation_delay\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/line-hover/module-default-render-attributes.json\nconst line_hover_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"animation_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#2EA3F2\"},\"tablet\":{\"value\":\"#2EA3F2\"},\"phone\":{\"value\":\"#2EA3F2\"}}}}');\n;// ./packages/module-library/line-hover/line-hover-vb-default-attrs.js\n\n\n/**\n * Defaults for Visual Builder `FieldContainer` `defaultAttr` (matches `defaultAttrs` / placeholder).\n */\nconst lhFieldDefaults = line_hover_module_default_render_attributes_namespaceObject;\n;// ./packages/module-library/line-hover/settings-content.js\n\n// Wordpress dependencies.\n\n// Divi package dependencies.\n\n\n\n\nfunction line_hover_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'divi_supreme')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"header.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'divi_supreme'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'divi_supreme'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      preset: 'content',\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"animation_effect.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animation Effect', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      underline_sweep_right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('⁠Underline Sweep Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      double_line_reveal: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('⁠Double Line Reveal', 'dsm-supreme-modules-pro-for-divi')\n      },\n      double_line_sweep_right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Double Line Sweep Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      underline_swipe_text_shift: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Underline Swipe & Text Shift', 'dsm-supreme-modules-pro-for-divi')\n      },\n      line_sweep_across: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('⁠Line Sweep Across', 'dsm-supreme-modules-pro-for-divi')\n      },\n      lines_connect: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('⁠Lines Connect', 'dsm-supreme-modules-pro-for-divi')\n      },\n      lines_pop_up: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Lines Pop up', 'dsm-supreme-modules-pro-for-divi')\n      },\n      dashed_line_animate: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Dashed Line Animate', 'dsm-supreme-modules-pro-for-divi')\n      },\n      underline_shift: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Underline Shift', 'dsm-supreme-modules-pro-for-divi')\n      },\n      glitch_effect: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Glitch Effect', 'dsm-supreme-modules-pro-for-divi')\n      },\n      upward_line_sweep: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Upward Line Sweep', 'dsm-supreme-modules-pro-for-divi')\n      },\n      line_bends_animation: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('⁠Line Bends Animation', 'dsm-supreme-modules-pro-for-divi')\n      },\n      line_expands_inward: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('⁠Line Expands Inward', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zigzag_line_animation: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zigzag Line Animation', 'dsm-supreme-modules-pro-for-divi')\n      },\n      pulse_line_effect: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pulse Line Effect', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"animation_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animation Color', 'divi_supreme'),\n    description: \"\",\n    defaultAttr: lhFieldDefaults.animation_color\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"animation_duration.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animation Duration', 'divi_supreme'),\n    description: \"\",\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 100,\n    max: 10000,\n    step: 100,\n    defaultUnit: 'ms',\n    allowedUnits: ['ms']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"animation_delay.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animation Delay', 'divi_supreme'),\n    description: \"\",\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 10000,\n    step: 100,\n    defaultUnit: 'ms',\n    allowedUnits: ['ms']\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"link\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Link', 'divi_supreme'),\n    preset: \"content\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"link.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Link URL', 'divi_supreme'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'divi_supreme'),\n    features: {\n      dynamicContent: {\n        type: 'url'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"link_url_target.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Link URL Target', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      _self: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The Current Tab', 'dsm-supreme-modules-pro-for-divi')\n      },\n      _blank: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In A Blank Tab', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const line_hover_settings_content = (line_hover_settings_content_SettingsContent);\n;// ./packages/module-library/line-hover/settings-design.js\n\n// Wordpress dependencies.\n\n// Divi package dependencies.\n\n\n\nfunction line_hover_settings_design_SettingsDesign({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"alignment\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Alignment', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"align.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose the image alignment.', 'dsm-supreme-modules-pro-for-divi'),\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"header.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      },\n      textAlign: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const line_hover_settings_design = (line_hover_settings_design_SettingsDesign);\n;// ./packages/module-library/line-hover/settings-advanced.js\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\nfunction line_hover_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.IdClassesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \"\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const line_hover_settings_advanced = (line_hover_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/line-hover/module-styles.js\n\n\n\n\n/**\n * React function component for rendering module style.\n */\nconst line_hover_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  const animationEffect = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.animation_effect?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'header'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-line-hover-container`,\n    attr: attrs?.align?.innerContent,\n    property: \"text-align\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-line-hover-link::before, ${orderClass} .dsm-line-hover-link::after`,\n    attr: attrs?.animation_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_line_bends_animation svg, ${orderClass} .dsm_line_expands_inward svg, ${orderClass} .dsm_zigzag_line_animation svg`,\n    attr: attrs?.animation_color?.innerContent,\n    property: \"stroke\"\n  }));\n};\n;// ./packages/module-library/line-hover/edit.js\nfunction line_hover_edit_extends() {\n  return line_hover_edit_extends = Object.assign ? Object.assign.bind() : function (n) {\n    for (var e = 1; e < arguments.length; e++) {\n      var t = arguments[e];\n      for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n    }\n    return n;\n  }, line_hover_edit_extends.apply(null, arguments);\n}\n\n\n// Divi package dependencies.\n\n\n\n\n// Custom dependencies.\n\n\n/**\n * React function component for registering module script data.\n */\nconst line_hover_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction line_hover_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  const buttonText = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.header?.innerContent);\n  const animationEffect = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.animation_effect?.innerContent);\n  const animationDuration = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.animation_duration?.innerContent);\n  const animationDelay = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.animation_delay?.innerContent);\n  const effect12Svg = /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", {\n    class: \"link__graphic link__graphic--slide\",\n    width: \"300%\",\n    height: \"100%\",\n    viewBox: \"0 0 1200 60\",\n    preserveAspectRatio: \"none\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"path\", {\n    d: \"M0,56.5c0,0,298.666,0,399.333,0C448.336,56.5,513.994,46,597,46c77.327,0,135,10.5,200.999,10.5c95.996,0,402.001,0,402.001,0\"\n  }));\n  const effect13Svg = /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", {\n    class: \"link__graphic link__graphic--stroke link__graphic--arc\",\n    width: \"100%\",\n    height: \"1.2em\",\n    viewBox: \"0 0 59 18\",\n    preserveAspectRatio: \"none\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"path\", {\n    d: \"M.945.149C12.3 16.142 43.573 22.572 58.785 10.842\",\n    pathLength: \"1\"\n  }));\n  const effect14Svg = /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", {\n    class: \"link__graphic link__graphic--stroke link__graphic--scribble\",\n    width: \"100%\",\n    height: \"0.6em\",\n    viewBox: \"0 0 101 9\",\n    preserveAspectRatio: \"none\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"path\", {\n    d: \"M.426 1.973C4.144 1.567 17.77-.514 21.443 1.48 24.296 3.026 24.844 4.627 27.5 7c3.075 2.748 6.642-4.141 10.066-4.688 7.517-1.2 13.237 5.425 17.59 2.745C58.5 3 60.464-1.786 66 2c1.996 1.365 3.174 3.737 5.286 4.41 5.423 1.727 25.34-7.981 29.14-1.294\",\n    pathLength: \"1\"\n  }));\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: line_hover_edit_ModuleScriptData,\n    stylesComponent: line_hover_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-line-hover-container\",\n    style: {\n      ...(animationDuration && {\n        '--dsm-animation-duration': animationDuration\n      }),\n      ...(animationDelay && {\n        '--dsm-animation-delay': animationDelay\n      })\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"a\", line_hover_edit_extends({\n    className: `dsm-line-hover-link dsm_${animationEffect}`\n  }, 'underline_swipe_text_shift' === animationEffect && {\n    'data-text': buttonText\n  }), elements.render({\n    attrName: 'header'\n  }), 'line_bends_animation' === animationEffect && effect12Svg, 'line_expands_inward' === animationEffect && effect13Svg, 'zigzag_line_animation' === animationEffect && effect14Svg)));\n}\n/* harmony default export */ const line_hover_edit = (line_hover_edit_Edit);\n;// ./packages/module-library/line-hover/conversion-outline.js\n\n\n// Compare this to wp.data.select('divi/settings').getSetting('shortcodeModuleDefinitions').et_pb_blurb.fields\n\nconst line_hover_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    fonts: {\n      header: 'header.decoration.font'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    header: 'header.innerContent.*.text',\n    color: 'color.innerContent.*',\n    divider_weight: 'divider_weight.innerContent.*',\n    divider_style: 'divider_style.innerContent.*',\n    divider_position: 'divider_position.innerContent.*',\n    text_alignment: 'divider_alignment.innerContent.*',\n    text_gap: 'text_gap.innerContent.*'\n  }\n};\n// EXTERNAL MODULE: ./packages/module-library/line-hover/icon.js\nvar icon = __webpack_require__(\"./packages/module-library/line-hover/icon.js\");\n;// ./packages/module-library/line-hover/index.js\n// External library dependencies.\n\n// Wordpress dependencies.\n\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\nconst textDividerModule = {\n  metadata: line_hover_module_namespaceObject,\n  conversionOutline: line_hover_conversion_outline_conversionOutline,\n  renderers: {\n    edit: line_hover_edit\n  },\n  defaultAttrs: {\n    ...line_hover_module_default_render_attributes_namespaceObject\n  },\n  settings: {\n    content: line_hover_settings_content,\n    design: line_hover_settings_design,\n    advanced: line_hover_settings_advanced\n  },\n  placeholderContent: {\n    ...line_hover_module_default_render_attributes_namespaceObject,\n    module: {\n      decoration: {}\n    },\n    header: {\n      innerContent: {\n        desktop: {\n          value: 'Line Hover'\n        }\n      }\n    },\n    animation_effect: {\n      innerContent: {\n        desktop: {\n          value: 'underline_sweep_right'\n        }\n      }\n    },\n    link_url_target: {\n      innerContent: {\n        desktop: {\n          value: '_self'\n        }\n      }\n    },\n    animation_duration: {\n      innerContent: {\n        desktop: {\n          value: '300ms'\n        }\n      }\n    },\n    animation_delay: {\n      innerContent: {\n        desktop: {\n          value: '0ms'\n        }\n      }\n    }\n  }\n};\n/* harmony default export */ const line_hover = (textDividerModule);\n;// ./packages/module-library/mask-text/module.json\nconst mask_text_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/mask-text\",\"d4Shortcode\":\"dsm_mask_text\",\"title\":\"Supreme Mask Text\",\"titles\":\"Supreme Mask Text\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/mask-text\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"default\":{\"advanced\":{\"text\":{\"text\":{\"desktop\":{\"value\":{\"color\":\"light\"}}}}}},\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"mask_text\":{\"type\":\"object\",\"label\":\"Mask Text\",\"inlineEditor\":\"plainText\",\"tagName\":\"span\",\"selector\":\"{{selector}} .dsm-mask-text\",\"childrenSanitizer\":\"et_core_esc_previously\",\"settings\":{\"decoration\":{\"font\":{}}},\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-mask-text\",\"hover\":\"{{selector}}:hover .dsm-mask-text\"}}}}},\"image\":{\"type\":\"object\",\"label\":\"Background Image\",\"inlineEditor\":\"UploadContainer\",\"elementType\":\"image\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_background_size\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_background_position\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_background_repeat\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"heading_html_tag\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"css\":{\"type\":\"object\",\"inlineEditor\":\"codemirror\",\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/mask-text/module-default-render-attributes.json\nconst mask_text_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"module\":{\"decoration\":{},\"advanced\":{\"text\":{\"text\":{\"desktop\":{\"value\":{\"color\":\"light\"}}}}}},\"mask_text\":{\"innerContent\":{\"desktop\":{\"value\":\"Mask Text\"}},\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"size\":\"48px\",\"weight\":\"700\"}}}}}},\"image\":{\"innerContent\":{\"desktop\":{\"value\":{\"src\":\"\",\"id\":\"\"}}}},\"image_background_size\":{\"innerContent\":{\"desktop\":{\"value\":\"cover\"}}},\"image_background_position\":{\"innerContent\":{\"desktop\":{\"value\":\"center\"}}},\"image_background_repeat\":{\"innerContent\":{\"desktop\":{\"value\":\"no-repeat\"}}},\"heading_html_tag\":{\"innerContent\":{\"desktop\":{\"value\":\"h2\"}}}}');\n;// ./packages/module-library/mask-text/mask-text-vb-default-attrs.js\nvar _defaultRenderAttribu;\n/**\n * Visual Builder `defaultAttr` from `module-default-render-attributes.json`.\n *\n * @package DiviSupreme\n */\n\n\n\n/**\n * `FontGroup` `attrName=\"mask_text.decoration.font\"`.\n */\n/** Matches `module-default-render-attributes.json` → `mask_text.decoration.font`. */\nconst maskTextFontGroupDefaultAttr = (_defaultRenderAttribu = mask_text_module_default_render_attributes_namespaceObject.mask_text?.decoration?.font) !== null && _defaultRenderAttribu !== void 0 ? _defaultRenderAttribu : {\n  font: {\n    desktop: {\n      value: {\n        size: '48px',\n        weight: '700'\n      }\n    }\n  }\n};\n\n/** FieldContainer `defaultAttr` slices keyed by attribute name. */\nconst maskTextFieldDefaultInnerContent = Object.fromEntries(Object.entries(mask_text_module_default_render_attributes_namespaceObject).filter(([, attr]) => attr && typeof attr === 'object' && attr.innerContent).map(([key, attr]) => [key, attr.innerContent]));\n\n/** @type {typeof maskTextFieldDefaultInnerContent} */\nconst maskTextFd = maskTextFieldDefaultInnerContent;\n\n/**\n * Must match `index.js` → `placeholderContent.image.innerContent` (upload object shape).\n */\nconst maskTextImageUploadVbDefaultAttr = {\n  desktop: {\n    value: {\n      src: 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTA4MCIgaGVpZ2h0PSI1NDAiIHZpZXdCb3g9IjAgMCAxMDgwIDU0MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPHBhdGggZmlsbD0iI0VCRUJFQiIgZD0iTTAgMGgxMDgwdjU0MEgweiIvPgogICAgICAgIDxwYXRoIGQ9Ik00NDUuNjQ5IDU0MGgtOTguOTk1TDE0NC42NDkgMzM3Ljk5NSAwIDQ4Mi42NDR2LTk4Ljk5NWwxMTYuMzY1LTExNi4zNjVjMTUuNjItMTUuNjIgNDAuOTQ3LTE1LjYyIDU2LjU2OCAwTDQ0NS42NSA1NDB6IiBmaWxsLW9wYWNpdHk9Ii4xIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgICAgICA8Y2lyY2xlIGZpbGwtb3BhY2l0eT0iLjA1IiBmaWxsPSIjMDAwIiBjeD0iMzMxIiBjeT0iMTQ4IiByPSI3MCIvPgogICAgICAgIDxwYXRoIGQ9Ik0xMDgwIDM3OXYxMTMuMTM3TDcyOC4xNjIgMTQwLjMgMzI4LjQ2MiA1NDBIMjE1LjMyNEw2OTkuODc4IDU1LjQ0NmMxNS42Mi0xNS42MiA0MC45NDgtMTUuNjIgNTYuNTY4IDBMMTA4MCAzNzl6IiBmaWxsLW9wYWNpdHk9Ii4yIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgIDwvZz4KPC9zdmc+Cg==',\n      id: ''\n    },\n    hover: {\n      src: '',\n      id: ''\n    }\n  }\n};\n;// ./packages/module-library/mask-text/settings-content.js\n\n\n\n\n\n\nfunction mask_text_settings_content_SettingsContent({\n  defaultSettingsAttrs\n}) {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mask_text\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Mask Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"mask_text.innerContent\",\n    defaultAttr: maskTextFd.mask_text,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Mask Text', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mask_image\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Mask Image', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image.innerContent\",\n    subName: \"src\",\n    defaultAttr: maskTextImageUploadVbDefaultAttr,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Image', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      preset: 'content',\n      sticky: false,\n      responsive: true,\n      hover: true\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_background_size.innerContent\",\n    defaultAttr: maskTextFd.image_background_size,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Image Size', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      cover: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Cover', 'dsm-supreme-modules-pro-for-divi')\n      },\n      contain: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fit', 'dsm-supreme-modules-pro-for-divi')\n      },\n      initial: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Actual Size', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_background_position.innerContent\",\n    defaultAttr: maskTextFd.image_background_position,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Image Position', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      top_left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      top: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top', 'dsm-supreme-modules-pro-for-divi')\n      },\n      top_right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center_left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center_right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom_left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom_right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Right', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_background_repeat.innerContent\",\n    defaultAttr: maskTextFd.image_background_repeat,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Image Repeat', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      'no-repeat': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('No Repeat', 'dsm-supreme-modules-pro-for-divi')\n      },\n      repeat: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Repeat', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'repeat-x': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Repeat X (horizontal)', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'repeat-y': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Repeat Y (vertical)', 'dsm-supreme-modules-pro-for-divi')\n      },\n      space: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Space', 'dsm-supreme-modules-pro-for-divi')\n      },\n      round: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Round', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const mask_text_settings_content = (mask_text_settings_content_SettingsContent);\n;// ./packages/module-library/mask-text/settings-design.js\n\n\n\n\n\n\nfunction mask_text_settings_design_SettingsDesign() {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"dsm-mask-text-heading\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Heading Settings', 'dsm-supreme-modules-pro-for-divi'),\n    preset: \"content\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"heading_html_tag.innerContent\",\n    defaultAttr: maskTextFd.heading_html_tag,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Heading HTML Tag', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', '')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      h1: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('H1', 'dsm-supreme-modules-pro-for-divi')\n      },\n      h2: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('H2', 'dsm-supreme-modules-pro-for-divi')\n      },\n      h3: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('H3', 'dsm-supreme-modules-pro-for-divi')\n      },\n      h4: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('H4', 'dsm-supreme-modules-pro-for-divi')\n      },\n      h5: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('H5', 'dsm-supreme-modules-pro-for-divi')\n      },\n      h6: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('H6', 'dsm-supreme-modules-pro-for-divi')\n      },\n      div: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('div', 'dsm-supreme-modules-pro-for-divi')\n      },\n      span: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('span', 'dsm-supreme-modules-pro-for-divi')\n      },\n      p: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('p', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"dsm-mask-text-font\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Mask Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"mask_text.decoration.font\",\n    defaultAttr: maskTextFontGroupDefaultAttr,\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Mask Text', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const mask_text_settings_design = (mask_text_settings_design_SettingsDesign);\n;// ./packages/module-library/mask-text/settings-advanced.js\n\nfunction mask_text_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_mask_text\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const mask_text_settings_advanced = (mask_text_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/mask-text/module-styles.js\n\n\n\n\n/**\n * @param {unknown} raw InnerContent value (string or upload object).\n * @return {string}\n */\nconst getImageSrc = raw => {\n  if (typeof raw === 'string' || typeof raw === 'number') {\n    return String(raw);\n  }\n  if (raw && typeof raw === 'object' && raw.src) {\n    return String(raw.src);\n  }\n  if (raw && typeof raw === 'object' && raw.url) {\n    return String(raw.url);\n  }\n  return '';\n};\nconst backgroundImageFunc = attr => {\n  const {\n    attrValue\n  } = attr;\n  const src = getImageSrc(attrValue);\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'background-image': true\n    }\n  });\n  if (src) {\n    declarations.add('background-image', `url(\"${src}\")`);\n  }\n  return declarations.value;\n};\nconst backgroundImagePositionFunc = attr => {\n  const {\n    attrValue\n  } = attr;\n  const raw = typeof attrValue === 'string' ? attrValue : '';\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'background-position': true\n    }\n  });\n  declarations.add('background-position', raw.replace(/_/g, ' '));\n  return declarations.value;\n};\nconst mask_text_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextStyle, {\n    selector: orderClass,\n    attr: attrs?.module?.advanced?.text\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'mask_text'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-mask-text`,\n    attr: attrs?.image?.innerContent,\n    declarationFunction: backgroundImageFunc\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-mask-text`,\n    attr: attrs?.image_background_position?.innerContent,\n    declarationFunction: backgroundImagePositionFunc\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-mask-text`,\n    attr: attrs?.image_background_size?.innerContent,\n    property: \"background-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-mask-text`,\n    attr: attrs?.image_background_repeat?.innerContent,\n    property: \"background-repeat\"\n  }));\n};\n;// ./packages/module-library/mask-text/edit.js\n\n\n\n\nconst mask_text_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction mask_text_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  const HeadingHtmlTag = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.heading_html_tag?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: mask_text_edit_ModuleScriptData,\n    stylesComponent: mask_text_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"et_pb_module_inner\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(HeadingHtmlTag, {\n    className: \"dsm-mask-text et_pb_module_header\"\n  }, elements.render({\n    attrName: 'mask_text'\n  }))));\n}\n/* harmony default export */ const mask_text_edit = (mask_text_edit_Edit);\n;// ./packages/module-library/mask-text/conversion-outline.js\nconst mask_text_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    margin_padding: 'module.decoration.spacing',\n    max_width: 'module.decoration.sizing',\n    height: 'module.decoration.sizing',\n    link_options: 'module.advanced.link',\n    fonts: {\n      header: 'mask_text.decoration.font'\n    },\n    text: 'module.advanced.text',\n    text_shadow: {\n      default: 'module.advanced.text.textShadow'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    mask_text: 'mask_text.innerContent.*',\n    // Match core upload mapping so hover/desktop write `…desktop.hover.src` / `…desktop.value.src`, not a raw string on `hover`.\n    image: 'image.innerContent.*.src',\n    image_background_size: 'image_background_size.innerContent.*',\n    image_background_position: 'image_background_position.innerContent.*',\n    image_background_repeat: 'image_background_repeat.innerContent.*',\n    heading_html_tag: 'heading_html_tag.innerContent.*',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/mask-text/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmMaskText', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/mask-text': {\n      name: 'divi-supreme/mask-text',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 3.546875 6.542969 C 3.0625 6.542969 2.667969 6.144531 2.667969 5.660156 C 2.667969 5.175781 3.0625 4.78125 3.546875 4.78125 C 4.03125 4.78125 4.425781 5.175781 4.425781 5.660156 C 4.425781 6.152344 4.03125 6.542969 3.546875 6.542969 Z M 3.546875 5.273438 C 3.328125 5.273438 3.152344 5.453125 3.152344 5.667969 C 3.152344 5.886719 3.328125 6.0625 3.546875 6.0625 C 3.761719 6.0625 3.941406 5.886719 3.941406 5.667969 C 3.941406 5.453125 3.757812 5.273438 3.546875 5.273438 Z M 3.546875 5.273438 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.1875 3.359375 C 11.703125 3.359375 11.304688 2.964844 11.304688 2.480469 C 11.304688 1.996094 11.703125 1.601562 12.1875 1.601562 C 12.671875 1.601562 13.066406 1.996094 13.066406 2.480469 C 13.066406 2.964844 12.671875 3.359375 12.1875 3.359375 Z M 12.1875 2.085938 C 11.96875 2.085938 11.789062 2.261719 11.789062 2.480469 C 11.789062 2.695312 11.96875 2.875 12.1875 2.875 C 12.402344 2.875 12.582031 2.695312 12.582031 2.480469 C 12.582031 2.261719 12.402344 2.085938 12.1875 2.085938 Z M 12.1875 2.085938 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.460938 14 C 11.976562 14 11.582031 13.605469 11.582031 13.121094 C 11.582031 12.636719 11.976562 12.242188 12.460938 12.242188 C 12.945312 12.242188 13.339844 12.636719 13.339844 13.121094 C 13.347656 13.605469 12.953125 14 12.460938 14 Z M 12.460938 12.726562 C 12.246094 12.726562 12.066406 12.90625 12.066406 13.121094 C 12.066406 13.339844 12.246094 13.515625 12.460938 13.515625 C 12.679688 13.515625 12.855469 13.339844 12.855469 13.121094 C 12.855469 12.90625 12.679688 12.726562 12.460938 12.726562 Z M 12.460938 12.726562 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.320312 3.699219 L 5.964844 3.699219 C 5.453125 3.699219 5.046875 4.113281 5.046875 4.617188 L 5.046875 8.3125 L 5.53125 8.3125 L 5.53125 4.617188 C 5.53125 4.378906 5.722656 4.183594 5.964844 4.183594 L 12.320312 4.183594 C 12.558594 4.183594 12.753906 4.375 12.753906 4.617188 L 12.753906 10.972656 C 12.753906 11.210938 12.5625 11.40625 12.320312 11.40625 L 5.964844 11.40625 C 5.945312 11.40625 5.933594 11.40625 5.914062 11.398438 L 5.914062 11.890625 L 12.320312 11.890625 C 12.832031 11.890625 13.238281 11.476562 13.238281 10.972656 L 13.238281 4.617188 C 13.238281 4.113281 12.824219 3.699219 12.320312 3.699219 Z M 12.320312 3.699219 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.605469 13.308594 L 3.953125 13.308594 L 3.953125 12.816406 C 4.101562 12.816406 4.210938 12.777344 4.28125 12.699219 C 4.40625 12.566406 4.414062 12.324219 4.40625 12.25 L 4.40625 9.792969 L 3.667969 9.792969 C 3.484375 9.792969 3.324219 9.863281 3.203125 10.003906 C 3.121094 10.097656 2.984375 10.136719 2.863281 10.085938 C 2.742188 10.042969 2.667969 9.925781 2.667969 9.800781 L 2.667969 8.070312 L 7.90625 8.070312 L 7.90625 9.800781 C 7.90625 9.925781 7.832031 10.042969 7.710938 10.085938 C 7.589844 10.132812 7.457031 10.097656 7.371094 10.003906 C 7.25 9.863281 7.089844 9.792969 6.90625 9.792969 L 6.160156 9.792969 L 6.160156 12.253906 C 6.15625 12.332031 6.167969 12.574219 6.289062 12.707031 C 6.359375 12.785156 6.46875 12.820312 6.613281 12.820312 L 6.613281 13.308594 Z M 4.789062 12.820312 L 5.773438 12.820312 C 5.644531 12.5625 5.65625 12.292969 5.65625 12.214844 L 5.65625 9.300781 L 6.894531 9.300781 C 7.078125 9.300781 7.257812 9.347656 7.410156 9.429688 L 7.410156 8.5625 L 3.152344 8.5625 L 3.152344 9.429688 C 3.304688 9.347656 3.484375 9.300781 3.667969 9.300781 L 4.90625 9.300781 L 4.90625 12.214844 C 4.90625 12.285156 4.917969 12.5625 4.789062 12.820312 Z M 4.789062 12.820312 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/mask-text/index.js\n\n\n\n\n\n\n\n\n\n\n/** Same SVG data URI as `dsm/card` and `dsm/blob-image` placeholder image (VB + new module insert). */\nconst maskTextPlaceholderImageSrc = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTA4MCIgaGVpZ2h0PSI1NDAiIHZpZXdCb3g9IjAgMCAxMDgwIDU0MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPHBhdGggZmlsbD0iI0VCRUJFQiIgZD0iTTAgMGgxMDgwdjU0MEgweiIvPgogICAgICAgIDxwYXRoIGQ9Ik00NDUuNjQ5IDU0MGgtOTguOTk1TDE0NC42NDkgMzM3Ljk5NSAwIDQ4Mi42NDR2LTk4Ljk5NWwxMTYuMzY1LTExNi4zNjVjMTUuNjItMTUuNjIgNDAuOTQ3LTE1LjYyIDU2LjU2OCAwTDQ0NS42NSA1NDB6IiBmaWxsLW9wYWNpdHk9Ii4xIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgICAgICA8Y2lyY2xlIGZpbGwtb3BhY2l0eT0iLjA1IiBmaWxsPSIjMDAwIiBjeD0iMzMxIiBjeT0iMTQ4IiByPSI3MCIvPgogICAgICAgIDxwYXRoIGQ9Ik0xMDgwIDM3OXYxMTMuMTM3TDcyOC4xNjIgMTQwLjMgMzI4LjQ2MiA1NDBIMjE1LjMyNEw2OTkuODc4IDU1LjQ0NmMxNS42Mi0xNS42MiA0MC45NDgtMTUuNjIgNTYuNTY4IDBMMTA4MCAzNzl6IiBmaWxsLW9wYWNpdHk9Ii4yIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgIDwvZz4KPC9zdmc+Cg==';\nconst mask_text_defaultAttrs = {\n  ...mask_text_module_default_render_attributes_namespaceObject,\n  image: {\n    innerContent: {\n      desktop: {\n        value: {\n          src: '',\n          id: ''\n        }\n      }\n    }\n  }\n};\nconst maskTextModule = {\n  metadata: mask_text_module_namespaceObject,\n  conversionOutline: mask_text_conversion_outline_conversionOutline,\n  renderers: {\n    edit: mask_text_edit,\n    styles: mask_text_module_styles_ModuleStyles\n  },\n  defaultAttrs: mask_text_defaultAttrs,\n  settings: {\n    content: mask_text_settings_content,\n    design: mask_text_settings_design,\n    advanced: mask_text_settings_advanced\n  },\n  placeholderContent: {\n    ...mask_text_module_default_render_attributes_namespaceObject,\n    module: {\n      decoration: {}\n    },\n    mask_text: {\n      ...mask_text_module_default_render_attributes_namespaceObject.mask_text,\n      innerContent: {\n        desktop: {\n          value: 'Mask Text'\n        }\n      }\n    },\n    image: {\n      innerContent: {\n        desktop: {\n          value: {\n            src: maskTextPlaceholderImageSrc,\n            id: ''\n          }\n        }\n      }\n    },\n    heading_html_tag: {\n      innerContent: {\n        desktop: {\n          value: 'h2'\n        }\n      }\n    }\n  }\n};\n/* harmony default export */ const mask_text = (maskTextModule);\n;// ./packages/module-library/menu/module.json\nconst menu_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/menu\",\"d4Shortcode\":\"dsm_menu\",\"title\":\"Supreme Menu\",\"titles\":\"Supreme Menu\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/menu\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}},\"default\":{\"advanced\":{\"text\":{\"text\":{\"desktop\":{\"value\":{\"color\":\"light\"}}}}}}},\"title\":{\"type\":\"object\",\"selector\":\"{{selector}} .et_pb_module_header\",\"attributes\":{\"class\":\"dsm-menu-title et_pb_module_header\"},\"tagName\":\"h4\",\"inlineEditor\":\"plainText\",\"elementType\":\"headingLink\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-menu-title.et_pb_module_header\",\"hover\":\"{{selector}}:hover .dsm-menu-title.et_pb_module_header\"}}}}},\"menu\":{\"type\":\"object\",\"selector\":\"{{selector}} ul.dsm-menu li a\",\"inlineEditor\":\"plainText\",\"elementType\":\"headingLink\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} ul.dsm-menu li a\",\"hover\":\"{{selector}}:hover ul.dsm-menu li a\"}}}}},\"sub_menu\":{\"type\":\"object\",\"selector\":\"{{selector}} ul.dsm-menu .menu-item-has-children .sub-menu li a\",\"inlineEditor\":\"plainText\",\"elementType\":\"headingLink\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} ul.dsm-menu .menu-item-has-children .sub-menu li a\",\"hover\":\"{{selector}}:hover ul.dsm-menu .menu-item-has-children .sub-menu li a\"}}}}},\"title_bottom_gap\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"menu_id\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"menu_alignment\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"submenu_collapse\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_schema_markup\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"menu_link_text_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"active_link_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"menu_link_text_active_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"menu_link_text_visited_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"menu_space_between\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"menu_layout\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"menu_left_space\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"list_style_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"list_style_position\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"list_style_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"submenu_left_space\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"menu_animation\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"menu_animation_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"underline_animation\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"underline_animation_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"submenu_arrow_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"submenu_arrow_background_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"submenu_arrow_gap\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"submenu_arrow_padding\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-menu-submenu-collapse .et-pb-icon\",\"inlineEditor\":\"spacingGroup\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"submenu_arrow_font_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_submenu_collapse\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-menu-submenu-collapse .et-pb-icon\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-menu-submenu-collapse .et-pb-icon\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-menu-submenu-collapse .et-pb-icon\",\"useOverlay\":true}}}}}');\n;// ./packages/module-library/menu/module-default-render-attributes.json\nconst menu_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"module\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}},\"advanced\":{\"text\":{\"text\":{\"desktop\":{\"value\":{\"color\":\"light\"}}}}}},\"title\":{\"innerContent\":{\"desktop\":{\"value\":{\"text\":\"\",\"url\":\"\",\"target\":\"off\"}}},\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"headingLevel\":\"h4\"}}}}}},\"menu\":{\"innerContent\":{\"desktop\":{\"value\":{\"text\":\"\",\"url\":\"\",\"target\":\"off\"}}}},\"sub_menu\":{\"innerContent\":{\"desktop\":{\"value\":{\"text\":\"\",\"url\":\"\",\"target\":\"off\"}}}},\"title_bottom_gap\":{\"innerContent\":{\"desktop\":{\"value\":\"10px\"}}},\"menu_id\":{\"innerContent\":{\"desktop\":{\"value\":\"select-menu\"}}},\"submenu_collapse\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"use_schema_markup\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"menu_link_text_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"active_link_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"menu_link_text_active_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"menu_link_text_visited_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"menu_space_between\":{\"innerContent\":{\"desktop\":{\"value\":\"0px\"}}},\"menu_layout\":{\"innerContent\":{\"desktop\":{\"value\":\"vertical\"}}},\"menu_left_space\":{\"innerContent\":{\"desktop\":{\"value\":\"0px\"}}},\"menu_alignment\":{\"innerContent\":{\"desktop\":{\"value\":\"left\"}}},\"list_style_type\":{\"innerContent\":{\"desktop\":{\"value\":\"disc\"}}},\"list_style_position\":{\"innerContent\":{\"desktop\":{\"value\":\"inside\"}}},\"list_style_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"submenu_left_space\":{\"innerContent\":{\"desktop\":{\"value\":\"20px\"}}},\"menu_animation\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"menu_animation_type\":{\"innerContent\":{\"desktop\":{\"value\":\"underline\"}}},\"underline_animation\":{\"innerContent\":{\"desktop\":{\"value\":\"left-right\"}}},\"underline_animation_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#2ea3f2\"}}},\"submenu_arrow_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#2ea3f2\"}}},\"submenu_arrow_background_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"submenu_arrow_gap\":{\"innerContent\":{\"desktop\":{\"value\":\"7px\"}}},\"submenu_arrow_font_size\":{\"innerContent\":{\"desktop\":{\"value\":\"16px\"}}},\"dsm_submenu_collapse\":{\"decoration\":{\"border\":{},\"boxShadow\":{}}}}');\n;// ./packages/module-library/menu/menu-vb-default-attrs.js\n/**\n * Visual Builder `defaultAttr` slices from `module-default-render-attributes.json`.\n * Used only in `settings-content.js` and `settings-design.js`.\n *\n * @package DiviSupreme\n */\n\n\nconst menuFieldDefaultInnerContent = Object.fromEntries(Object.entries(menu_module_default_render_attributes_namespaceObject).filter(([, attr]) => attr && attr.innerContent).map(([key, attr]) => [key, attr.innerContent]));\n;// ./packages/module-library/menu/settings-content.js\n\n// Wordpress dependencies.\n\n\n// Divi package dependencies.\n\n\n\n\n\nfunction menu_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  const {\n    menu: menuData\n  } = use_menu();\n  const getProcessedMenu = () => {\n    var _raw$terms;\n    const processedMenu = {};\n    const raw = menuData;\n    const terms = Array.isArray(raw) ? raw : (_raw$terms = raw?.terms) !== null && _raw$terms !== void 0 ? _raw$terms : [];\n    terms.forEach(term => {\n      processedMenu[term.term_id] = {\n        label: term.name\n      };\n    });\n    return processedMenu;\n  };\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Menu', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"title.innerContent\",\n    subName: \"text\",\n    defaultAttr: menuFieldDefaultInnerContent.title,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Menu Title', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('The title will appear above the menu.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"menu_id.innerContent\",\n    defaultAttr: menuFieldDefaultInnerContent.menu_id,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Menu', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Select a menu that should be used in the module.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      'select-menu': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Select a menu', 'dsm-supreme-modules-pro-for-divi')\n      },\n      ...getProcessedMenu()\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"submenu_collapse.innerContent\",\n    defaultAttr: menuFieldDefaultInnerContent.submenu_collapse,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Collapse Sub Menu', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose whether your submenu should be collapsed.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_schema_markup.innerContent\",\n    defaultAttr: menuFieldDefaultInnerContent.use_schema_markup,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Schema Markup', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose whether your menu should use Schema Markup structured data.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const menu_settings_content = (menu_settings_content_SettingsContent);\n;// ./packages/module-library/menu/settings-design.js\n\n// Wordpress dependencies.\n\n// Divi package dependencies.\n\n\n\n\n\nfunction menu_settings_design_SettingsDesign({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  const submenuCollapsible = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.submenu_collapse?.innerContent);\n  const menuAnimation = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.menu_animation?.innerContent);\n  const menuLayoutRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.menu_layout?.innerContent);\n  const menuLayout = String(menuLayoutRaw !== null && menuLayoutRaw !== void 0 ? menuLayoutRaw : '').trim() || 'vertical';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"title\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"title_bottom_gap.innerContent\",\n    defaultAttr: menuFieldDefaultInnerContent.title_bottom_gap,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Gap', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnits: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"title.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: true\n      }\n    },\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"layout\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Layout', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"menu_layout.innerContent\",\n    defaultAttr: menuFieldDefaultInnerContent.menu_layout,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Menu Layout', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      vertical: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Vertical', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"menu\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Menu', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"menu_link_text_color.innerContent\",\n    defaultAttr: menuFieldDefaultInnerContent.menu_link_text_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Menu Link Color', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"active_link_color.innerContent\",\n    defaultAttr: menuFieldDefaultInnerContent.active_link_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Active Link Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('An active link is the page currently being visited.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"menu_link_text_active_color.innerContent\",\n    defaultAttr: menuFieldDefaultInnerContent.menu_link_text_active_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Menu Link Active Color (:active pseudo)', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('The :active pseudo selector styles a link while it is being activated.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"menu_link_text_visited_color.innerContent\",\n    defaultAttr: menuFieldDefaultInnerContent.menu_link_text_visited_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Menu Link Visited Color', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"menu_space_between.innerContent\",\n    defaultAttr: menuFieldDefaultInnerContent.menu_space_between,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Space Between', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnits: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"menu_left_space.innerContent\",\n    defaultAttr: menuFieldDefaultInnerContent.menu_left_space,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left Spacing', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'vertical' === menuLayout\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnits: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"list_style_type.innerContent\",\n    defaultAttr: menuFieldDefaultInnerContent.list_style_type,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('List Style Type', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'vertical' === menuLayout\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      none: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('None', 'dsm-supreme-modules-pro-for-divi')\n      },\n      disc: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Disc', 'dsm-supreme-modules-pro-for-divi')\n      },\n      circle: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Circle', 'dsm-supreme-modules-pro-for-divi')\n      },\n      decimal: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Decimal', 'dsm-supreme-modules-pro-for-divi')\n      },\n      square: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Square', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"list_style_position.innerContent\",\n    defaultAttr: menuFieldDefaultInnerContent.list_style_position,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('List Style Position', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'vertical' === menuLayout\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      inside: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inside', 'dsm-supreme-modules-pro-for-divi')\n      },\n      outside: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Outside', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"list_style_color.innerContent\",\n    defaultAttr: menuFieldDefaultInnerContent.list_style_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('List Style Color', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'vertical' === menuLayout\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"menu_alignment.innerContent\",\n    defaultAttr: menuFieldDefaultInnerContent.menu_alignment,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Menu Text Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"menu.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Menu', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      },\n      textAlign: {\n        render: false\n      }\n    },\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"sub_menu\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Sub Menu', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"submenu_left_space.innerContent\",\n    defaultAttr: menuFieldDefaultInnerContent.submenu_left_space,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left Spacing', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'vertical' === menuLayout\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnits: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"sub_menu.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Sub Menu', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    },\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"sub_menu_collapse\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Sub Menu Collapse', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"submenu_arrow_color.innerContent\",\n    defaultAttr: menuFieldDefaultInnerContent.submenu_arrow_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Arrow Color', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === submenuCollapsible\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"submenu_arrow_background_color.innerContent\",\n    defaultAttr: menuFieldDefaultInnerContent.submenu_arrow_background_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Arrow Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === submenuCollapsible\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"submenu_arrow_padding.decoration.spacing\",\n    visible: 'on' === submenuCollapsible,\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"submenu_arrow_gap.innerContent\",\n    defaultAttr: menuFieldDefaultInnerContent.submenu_arrow_gap,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Arrow Gap', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === submenuCollapsible\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"submenu_arrow_font_size.innerContent\",\n    defaultAttr: menuFieldDefaultInnerContent.submenu_arrow_font_size,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Arrow Font Size', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === submenuCollapsible\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 120,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"dsm_submenu_collapse.decoration.border\",\n    visible: 'on' === submenuCollapsible,\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"dsm_submenu_collapse.decoration.boxShadow\",\n    visible: 'on' === submenuCollapsible,\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"animation\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animation', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"menu_animation.innerContent\",\n    defaultAttr: menuFieldDefaultInnerContent.menu_animation,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Link Hover Animation', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Choose whether or not to have hover animation on your menu links.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"menu_animation_type.innerContent\",\n    defaultAttr: menuFieldDefaultInnerContent.menu_animation_type,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animation Type', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === menuAnimation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      underline: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Underline', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"underline_animation.innerContent\",\n    defaultAttr: menuFieldDefaultInnerContent.underline_animation,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Underline Animation', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === menuAnimation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      'left-right': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left to Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'right-left': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right to Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'center-out': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center Out', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"underline_animation_color.innerContent\",\n    defaultAttr: menuFieldDefaultInnerContent.underline_animation_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animation Color', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === menuAnimation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, {\n    grouped: false\n  })));\n}\n/* harmony default export */ const menu_settings_design = (menu_settings_design_SettingsDesign);\n;// ./packages/module-library/menu/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction menu_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_menu\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const menu_settings_advanced = (menu_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/menu/module-styles.js\n\n\n\n\n/**\n * React function component for rendering module style.\n */\nconst menu_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  const underlineAnimation = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.underline_animation?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextStyle, {\n    selector: orderClass,\n    attr: attrs?.module?.advanced?.text\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'title'\n  }), elements.style({\n    attrName: 'menu'\n  }), elements.style({\n    attrName: 'sub_menu'\n  }), elements.style({\n    attrName: 'dsm_submenu_collapse'\n  }), elements.style({\n    attrName: 'submenu_arrow_padding'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-menu-title`,\n    attr: attrs?.title_bottom_gap?.innerContent,\n    property: \"padding-bottom\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-menu-container`,\n    attr: attrs?.menu_alignment?.innerContent,\n    property: \"text-align\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} ul.dsm-menu li a`,\n    attr: attrs?.menu_link_text_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} ul.dsm-menu li.current-menu-item a`,\n    attr: attrs?.active_link_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} ul.dsm-menu li a:active`,\n    attr: attrs?.menu_link_text_active_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} ul.dsm-menu li a:visited`,\n    attr: attrs?.menu_link_text_visited_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-menu li:not(:last-child)`,\n    attr: attrs?.menu_space_between?.innerContent,\n    property: \"margin-bottom\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-menu .menu-item-has-children .sub-menu>li`,\n    attr: attrs?.menu_space_between?.innerContent,\n    property: \"margin-top\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} ul.dsm-menu`,\n    attr: attrs?.menu_left_space?.innerContent,\n    property: \"padding-left\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} ul.dsm-menu, ${orderClass} ul.dsm-menu .sub-menu`,\n    attr: attrs?.list_style_type?.innerContent,\n    property: \"list-style-type\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} ul.dsm-menu, ${orderClass} ul.dsm-menu .sub-menu`,\n    attr: attrs?.list_style_position?.innerContent,\n    property: \"list-style-position\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} ul.dsm-menu li`,\n    attr: attrs?.list_style_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-menu .menu-item-has-children .sub-menu`,\n    attr: attrs?.submenu_left_space?.innerContent,\n    property: \"padding-left\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-menu-animation-${underlineAnimation} li a::after`,\n    attr: attrs?.underline_animation_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} ul.dsm-menu-submenu-collapse li a .et-pb-icon`,\n    attr: attrs?.submenu_arrow_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} ul.dsm-menu-submenu-collapse li a .et-pb-icon`,\n    attr: attrs?.submenu_arrow_background_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} ul.dsm-menu-submenu-collapse li a .et-pb-icon`,\n    attr: attrs?.submenu_arrow_font_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} ul.dsm-menu-submenu-collapse li a`,\n    attr: attrs?.submenu_arrow_gap?.innerContent,\n    property: \"gap\"\n  }));\n};\n;// ./packages/module-library/menu/dsm-menu-subcollapse-bind.js\n/**\n * Collapsible submenu: pure DOM, no jQuery.\n * Toggles `li.menu-item-has-children.dsm-submenu-active`; CSS shows/hides `> .sub-menu`.\n * Syncs `aria-expanded` / `aria-controls`, Escape to close innermost open submenu.\n *\n * @package DiviSupreme\n */\n\n/**\n * @param {HTMLElement} root       Root that contains the menu markup (FE: `ul`, VB: module wrapper).\n * @param {object}      [options]\n * @param {boolean}     [options.capture=true]\n * @param {boolean}     [options.stopPropagation=false] Set true in Visual Builder so the canvas does not eat the click.\n * @return {void|function(): void} Teardown when returned.\n */\nfunction bindDsmMenuSubmenuCollapse(root, options = {}) {\n  if (!root || typeof root.addEventListener !== 'function') {\n    return;\n  }\n  const capture = options.capture !== false;\n  const stopPropagation = options.stopPropagation === true;\n\n  /**\n   * Assign stable ids and `aria-controls` on parent links (PHP sets `aria-haspopup` / initial `aria-expanded`).\n   */\n  const setupSubmenuA11y = () => {\n    root.querySelectorAll('li.menu-item-has-children').forEach(li => {\n      const link = li.querySelector(':scope > a');\n      const submenu = li.querySelector(':scope > .sub-menu');\n      if (!link || !submenu) {\n        return;\n      }\n      if (!submenu.id) {\n        const m = li.id && /^menu-item-(\\d+)$/.exec(li.id);\n        submenu.id = m ? `dsm-submenu-${m[1]}` : `dsm-submenu-${Math.random().toString(36).slice(2, 11)}`;\n      }\n      link.setAttribute('aria-controls', submenu.id);\n      if (!link.hasAttribute('aria-haspopup')) {\n        link.setAttribute('aria-haspopup', 'true');\n      }\n      const expanded = li.classList.contains('dsm-submenu-active');\n      link.setAttribute('aria-expanded', expanded ? 'true' : 'false');\n    });\n  };\n  setupSubmenuA11y();\n  const clearNestedActive = branchRoot => {\n    branchRoot.querySelectorAll('li.menu-item-has-children.dsm-submenu-active').forEach(nestedLi => {\n      nestedLi.classList.remove('dsm-submenu-active');\n      const toggleA = nestedLi.querySelector(':scope > a');\n      if (toggleA) {\n        toggleA.setAttribute('aria-expanded', 'false');\n      }\n      const ic = nestedLi.querySelector(':scope > a .et-pb-icon');\n      if (ic) {\n        ic.textContent = '3';\n      }\n    });\n  };\n  const onClick = event => {\n    if (!root.contains(event.target)) {\n      return;\n    }\n    const link = event.target.closest('li.menu-item-has-children > a');\n    if (!link || !root.contains(link)) {\n      return;\n    }\n    const li = link.parentElement;\n    if (!li || !li.classList.contains('menu-item-has-children')) {\n      return;\n    }\n    event.preventDefault();\n    if (stopPropagation) {\n      event.stopPropagation();\n    }\n    let icon = link.querySelector('.et-pb-icon');\n    if (!icon) {\n      icon = document.createElement('span');\n      icon.className = 'et-pb-icon';\n      icon.setAttribute('aria-hidden', 'true');\n      link.appendChild(icon);\n    }\n    if (!icon.textContent?.trim()) {\n      icon.textContent = '3';\n    }\n    const wasActive = li.classList.contains('dsm-submenu-active');\n    const directSub = li.querySelector(':scope > .sub-menu');\n    if (!wasActive && directSub) {\n      clearNestedActive(directSub);\n    }\n    if (wasActive) {\n      clearNestedActive(li);\n    }\n    li.classList.toggle('dsm-submenu-active', !wasActive);\n    const nowActive = li.classList.contains('dsm-submenu-active');\n    link.setAttribute('aria-expanded', nowActive ? 'true' : 'false');\n    icon.textContent = nowActive ? '2' : '3';\n  };\n  const onKeyDown = event => {\n    if (event.key !== 'Escape') {\n      return;\n    }\n    const ae = document.activeElement;\n    if (!ae || !root.contains(ae)) {\n      return;\n    }\n    let node = ae;\n    let liToClose = null;\n    while (node && node !== root) {\n      if (node.matches && node.matches('li.menu-item-has-children.dsm-submenu-active')) {\n        liToClose = node;\n        break;\n      }\n      node = node.parentElement;\n    }\n    if (!liToClose) {\n      return;\n    }\n    event.preventDefault();\n    liToClose.classList.remove('dsm-submenu-active');\n    const toggleLink = liToClose.querySelector(':scope > a');\n    if (toggleLink) {\n      toggleLink.setAttribute('aria-expanded', 'false');\n      const ic = toggleLink.querySelector('.et-pb-icon');\n      if (ic) {\n        ic.textContent = '3';\n      }\n    }\n    clearNestedActive(liToClose);\n  };\n  root.addEventListener('click', onClick, capture);\n  root.addEventListener('keydown', onKeyDown, capture);\n  return () => {\n    root.removeEventListener('click', onClick, capture);\n    root.removeEventListener('keydown', onKeyDown, capture);\n  };\n}\n\n/** Bind each collapse menu `<ul>` once (frontend). */\nfunction bindAllDsmMenuSubmenuCollapseRoots() {\n  document.querySelectorAll('ul.dsm-menu-submenu-collapse').forEach(ul => {\n    if (ul.dataset.dsmSubmenuCollapseBound === '1') {\n      return;\n    }\n    ul.dataset.dsmSubmenuCollapseBound = '1';\n    bindDsmMenuSubmenuCollapse(ul, {\n      capture: true,\n      stopPropagation: false\n    });\n  });\n}\n;// ./packages/module-library/menu/edit.js\n\n\n\n\n\n\nconst menu_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction menu_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  var _getAttrByMode;\n  const rootRef = (0,external_vendor_React_.useRef)(null);\n  const [output, setOutput] = (0,external_vendor_React_.useState)('');\n  const [isLoading, setLoading] = (0,external_vendor_React_.useState)(false);\n  const menuId = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.menu_id?.innerContent);\n  const listStyleType = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.list_style_type?.innerContent);\n  const menuLayout = String((_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.menu_layout?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : '').trim() || 'vertical';\n  const menuAnimation = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.menu_animation?.innerContent);\n  const menuAnimationType = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.menu_animation_type?.innerContent);\n  const underlineAnimation = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.underline_animation?.innerContent);\n  const submenuCollapse = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.submenu_collapse?.innerContent);\n  const useSchemaMarkup = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_schema_markup?.innerContent);\n  const handleMenuLoading = (0,external_vendor_React_.useCallback)(async () => {\n    if (typeof wp?.ajax?.settings?.url === 'undefined') {\n      return;\n    }\n    if (typeof window === 'undefined' || !window.dsmMenu?.renderNonce) {\n      return;\n    }\n    setLoading(true);\n    try {\n      const body = new URLSearchParams();\n      body.set('action', 'dsm_menu');\n      body.set('nonce', window.dsmMenu.renderNonce);\n      body.set('id', String(menuId !== null && menuId !== void 0 ? menuId : ''));\n      body.set('list_style_type', String(listStyleType !== null && listStyleType !== void 0 ? listStyleType : ''));\n      body.set('menu_layout', menuLayout);\n      body.set('menu_animation', String(menuAnimation !== null && menuAnimation !== void 0 ? menuAnimation : ''));\n      body.set('menu_animation_type', String(menuAnimationType !== null && menuAnimationType !== void 0 ? menuAnimationType : ''));\n      body.set('underline_animation', String(underlineAnimation !== null && underlineAnimation !== void 0 ? underlineAnimation : ''));\n      body.set('submenu_collapse', String(submenuCollapse !== null && submenuCollapse !== void 0 ? submenuCollapse : ''));\n      body.set('use_schema_markup', String(useSchemaMarkup !== null && useSchemaMarkup !== void 0 ? useSchemaMarkup : ''));\n      const res = await fetch(wp.ajax.settings.url, {\n        method: 'POST',\n        credentials: 'same-origin',\n        headers: {\n          'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8'\n        },\n        body: body.toString()\n      });\n      const html = await res.text();\n      setOutput(html);\n    } catch {\n      setOutput('');\n    } finally {\n      setLoading(false);\n    }\n  }, [menuId, listStyleType, menuLayout, menuAnimation, menuAnimationType, underlineAnimation, submenuCollapse, useSchemaMarkup]);\n  (0,external_vendor_React_.useEffect)(() => {\n    void handleMenuLoading();\n  }, [handleMenuLoading]);\n  const isCollapsibleMenu = 'on' === submenuCollapse ? 'dsm-menu-submenu-collapse' : '';\n  (0,external_vendor_React_.useEffect)(() => {\n    if (isLoading || !output || 'on' !== submenuCollapse) {\n      return;\n    }\n    const root = rootRef.current;\n    if (!root) {\n      return;\n    }\n    const teardown = bindDsmMenuSubmenuCollapse(root, {\n      capture: true,\n      stopPropagation: true\n    });\n    return typeof teardown === 'function' ? teardown : undefined;\n  }, [isLoading, output, submenuCollapse]);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: menu_edit_ModuleScriptData,\n    stylesComponent: menu_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), elements.render({\n    attrName: 'title'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    ref: rootRef\n  }, isLoading ? /*#__PURE__*/external_vendor_React_default().createElement(external_divi_uiLibrary_namespaceObject.Loading, null) : /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: isCollapsibleMenu,\n    dangerouslySetInnerHTML: {\n      __html: output\n    }\n  })));\n}\n/* harmony default export */ const menu_edit = (menu_edit_Edit);\n;// ./packages/module-library/menu/conversion-outline.js\nconst menu_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border',\n      submenu_collapse: 'dsm_submenu_collapse.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow',\n      submenu_collapse: 'dsm_submenu_collapse.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    fonts: {\n      header: 'title.decoration.font',\n      menu: 'menu.decoration.font',\n      sub_menu: 'sub_menu.decoration.font'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    title: 'title.innerContent.*.text',\n    title_bottom_gap: 'title_bottom_gap.innerContent.*',\n    menu_id: 'menu_id.innerContent.*',\n    submenu_collapse: 'submenu_collapse.innerContent.*',\n    use_schema_markup: 'use_schema_markup.innerContent.*',\n    menu_link_text_color: 'menu_link_text_color.innerContent.*',\n    active_link_color: 'active_link_color.innerContent.*',\n    menu_link_text_active_color: 'menu_link_text_active_color.innerContent.*',\n    menu_link_text_visited_color: 'menu_link_text_visited_color.innerContent.*',\n    menu_space_between: 'menu_space_between.innerContent.*',\n    menu_layout: 'menu_layout.innerContent.*',\n    menu_left_space: 'menu_left_space.innerContent.*',\n    list_style_type: 'list_style_type.innerContent.*',\n    list_style_position: 'list_style_position.innerContent.*',\n    list_style_color: 'list_style_color.innerContent.*',\n    submenu_left_space: 'submenu_left_space.innerContent.*',\n    menu_animation: 'menu_animation.innerContent.*',\n    menu_animation_type: 'menu_animation_type.innerContent.*',\n    underline_animation: 'underline_animation.innerContent.*',\n    underline_animation_color: 'underline_animation_color.innerContent.*',\n    submenu_arrow_color: 'submenu_arrow_color.innerContent.*',\n    submenu_arrow_background_color: 'submenu_arrow_background_color.innerContent.*',\n    submenu_arrow_gap: 'submenu_arrow_gap.innerContent.*',\n    submenu_arrow_padding: 'submenu_arrow_padding.innerContent.*',\n    submenu_arrow_font_size: 'submenu_arrow_font_size.innerContent.*',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/menu/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmMenu', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/menu': {\n      name: 'divi-supreme/menu',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.902344 4.910156 C 11.578125 4.910156 11.3125 4.644531 11.3125 4.320312 C 11.3125 3.996094 11.578125 3.734375 11.902344 3.734375 C 12.222656 3.734375 12.488281 3.996094 12.488281 4.320312 C 12.488281 4.644531 12.222656 4.910156 11.902344 4.910156 Z M 11.902344 4.058594 C 11.753906 4.058594 11.636719 4.175781 11.636719 4.320312 C 11.636719 4.464844 11.753906 4.585938 11.902344 4.585938 C 12.046875 4.585938 12.164062 4.464844 12.164062 4.320312 C 12.164062 4.175781 12.046875 4.058594 11.902344 4.058594 Z M 11.902344 4.058594 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 4.320312 10.863281 C 3.996094 10.863281 3.734375 10.597656 3.734375 10.273438 C 3.734375 9.949219 3.996094 9.6875 4.320312 9.6875 C 4.644531 9.6875 4.910156 9.949219 4.910156 10.273438 C 4.914062 10.597656 4.648438 10.863281 4.320312 10.863281 Z M 4.320312 10.007812 C 4.175781 10.007812 4.058594 10.128906 4.058594 10.273438 C 4.058594 10.417969 4.175781 10.539062 4.320312 10.539062 C 4.464844 10.539062 4.585938 10.417969 4.585938 10.273438 C 4.585938 10.128906 4.464844 10.007812 4.320312 10.007812 Z M 4.320312 10.007812 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 7.726562 8.660156 L 6.261719 8.660156 C 5.753906 8.660156 5.339844 8.246094 5.339844 7.738281 L 5.339844 6.273438 C 5.339844 5.765625 5.753906 5.351562 6.261719 5.351562 L 7.730469 5.351562 C 8.238281 5.351562 8.648438 5.765625 8.648438 6.273438 L 8.648438 7.742188 C 8.644531 8.25 8.234375 8.660156 7.726562 8.660156 Z M 6.261719 5.679688 C 5.933594 5.679688 5.667969 5.949219 5.667969 6.273438 L 5.667969 7.742188 C 5.667969 8.070312 5.9375 8.335938 6.261719 8.335938 L 7.730469 8.335938 C 8.058594 8.335938 8.320312 8.066406 8.320312 7.742188 L 8.320312 6.273438 C 8.320312 5.945312 8.054688 5.679688 7.730469 5.679688 Z M 6.261719 5.679688 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.625 8.660156 L 10.15625 8.660156 C 9.648438 8.660156 9.234375 8.246094 9.234375 7.738281 L 9.234375 6.273438 C 9.234375 5.765625 9.648438 5.351562 10.15625 5.351562 L 11.625 5.351562 C 12.132812 5.351562 12.546875 5.765625 12.546875 6.273438 L 12.546875 7.742188 C 12.546875 8.25 12.132812 8.660156 11.625 8.660156 Z M 10.15625 5.679688 C 9.828125 5.679688 9.5625 5.949219 9.5625 6.273438 L 9.5625 7.742188 C 9.5625 8.070312 9.832031 8.335938 10.15625 8.335938 L 11.625 8.335938 C 11.953125 8.335938 12.21875 8.066406 12.21875 7.742188 L 12.21875 6.273438 C 12.21875 5.945312 11.949219 5.679688 11.625 5.679688 Z M 10.15625 5.679688 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 7.726562 12.433594 L 6.261719 12.433594 C 5.753906 12.433594 5.339844 12.019531 5.339844 11.511719 L 5.339844 10.042969 C 5.339844 9.535156 5.753906 9.125 6.261719 9.125 L 7.730469 9.125 C 8.238281 9.125 8.648438 9.535156 8.648438 10.042969 L 8.648438 11.511719 C 8.644531 12.023438 8.234375 12.433594 7.726562 12.433594 Z M 6.261719 9.457031 C 5.933594 9.457031 5.667969 9.722656 5.667969 10.046875 L 5.667969 11.519531 C 5.667969 11.847656 5.9375 12.109375 6.261719 12.109375 L 7.730469 12.109375 C 8.058594 12.109375 8.320312 11.839844 8.320312 11.519531 L 8.320312 10.046875 C 8.320312 9.71875 8.054688 9.457031 7.730469 9.457031 Z M 6.261719 9.457031 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 10.886719 12.328125 C 10.003906 12.328125 9.285156 11.605469 9.285156 10.726562 C 9.285156 9.84375 10.003906 9.125 10.886719 9.125 C 11.769531 9.125 12.488281 9.84375 12.488281 10.726562 C 12.488281 11.613281 11.773438 12.328125 10.886719 12.328125 Z M 10.886719 9.457031 C 10.183594 9.457031 9.613281 10.027344 9.613281 10.730469 C 9.613281 11.433594 10.183594 12.003906 10.886719 12.003906 C 11.589844 12.003906 12.160156 11.433594 12.160156 10.730469 C 12.164062 10.027344 11.589844 9.457031 10.886719 9.457031 Z M 10.886719 9.457031 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/menu/index.js\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n\n\n\n\n\n\nconst menuModule = {\n  metadata: menu_module_namespaceObject,\n  conversionOutline: menu_conversion_outline_conversionOutline,\n  renderers: {\n    edit: menu_edit,\n    styles: menu_module_styles_ModuleStyles\n  },\n  defaultAttrs: {\n    ...menu_module_default_render_attributes_namespaceObject\n  },\n  settings: {\n    content: menu_settings_content,\n    design: menu_settings_design,\n    advanced: menu_settings_advanced\n  },\n  placeholderContent: {\n    ...menu_module_default_render_attributes_namespaceObject,\n    module: {\n      decoration: {}\n    }\n  }\n};\n/* harmony default export */ const menu = (menuModule);\n;// ./packages/module-library/on-scroll-header-animation/module.json\nconst on_scroll_header_animation_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/on-scroll-header-animation\",\"title\":\"Supreme On Scroll Header Animation\",\"titles\":\"Supreme On Scroll Header Animation\",\"category\":\"module\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"title\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-title\",\"tagName\":\"h3\",\"inlineEditor\":\"plainText\",\"elementType\":\"headingLink\",\"childrenSanitizer\":\"et_core_esc_previously\",\"attributes\":{\"class\":\"dsm-title\"},\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-title\",\"hover\":\"{{selector}}:hover .dsm-title\"}}}}},\"animation_effect\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"animation_start_offset\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/on-scroll-header-animation/settings-content.js\n\n\n// Wordpress dependencies.\n\n// Divi package dependencies.\n\n\n\n\n\nfunction on_scroll_header_animation_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  const showInLightbox = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_in_lightbox?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi'),\n    preset: \"content\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"title.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextAreaContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"setting\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Settings', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"animation_effect.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animation Effect', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      twist_reveal: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Twist Reveal', 'dsm-supreme-modules-pro-for-divi')\n      },\n      stretch_up: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Stretch Up', 'dsm-supreme-modules-pro-for-divi')\n      },\n      stretch_down: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Stretch Down', 'dsm-supreme-modules-pro-for-divi')\n      },\n      split_merge: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Split Merge', 'dsm-supreme-modules-pro-for-divi')\n      },\n      letter_cross_in: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Letter Cross-In', 'dsm-supreme-modules-pro-for-divi')\n      },\n      flip_rise: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Flip Rise', 'dsm-supreme-modules-pro-for-divi')\n      },\n      reverse_flip: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Reverse Flip', 'dsm-supreme-modules-pro-for-divi')\n      },\n      shuffle_reveal: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shuffle Reveal', 'dsm-supreme-modules-pro-for-divi')\n      },\n      shrink_left_reveal: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shrink Left Reveal', 'dsm-supreme-modules-pro-for-divi')\n      },\n      random_blur_reveal: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Random Blur Reveal', 'dsm-supreme-modules-pro-for-divi')\n      },\n      slide_rush: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide Rush', 'dsm-supreme-modules-pro-for-divi')\n      },\n      twist_lift: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Twist Lift', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rotate_fade: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rotate Fade', 'dsm-supreme-modules-pro-for-divi')\n      },\n      random_rotateX_reveal: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Random Rotate X Reveal', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zoom_z_reveal: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom Z Reveal', 'dsm-supreme-modules-pro-for-divi')\n      },\n      random_flip_up_reveal: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Random Flip Up Reveal', 'dsm-supreme-modules-pro-for-divi')\n      },\n      word_by_word_3d_reveal: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Word by Word 3D Reveal', 'dsm-supreme-modules-pro-for-divi')\n      },\n      word_by_word_curve_reveal: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Word by Word Curve Reveal', 'dsm-supreme-modules-pro-for-divi')\n      },\n      word_by_word_scale_in: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Word by Word Scale In', 'dsm-supreme-modules-pro-for-divi')\n      },\n      elastic_reveal: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Elastic Reveal', 'dsm-supreme-modules-pro-for-divi')\n      },\n      character_wave: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Character Wave', 'dsm-supreme-modules-pro-for-divi')\n      },\n      word_by_word_corner_scale: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Word by Word Corner Scale', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"animation_start_offset.innerContent\",\n    defaultAttr: {\n      desktop: {\n        value: '100%'\n      }\n    },\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animation start (viewport)', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Where the scroll animation begins: lower values start earlier (higher on the page). 100% is the bottom of the viewport (previous default). Minimum 5% avoids broken scroll ranges for some effects.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 5,\n    max: 100,\n    defaultUnit: \"%\",\n    allowedUnits: ['%'],\n    step: 1\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const on_scroll_header_animation_settings_content = (on_scroll_header_animation_settings_content_SettingsContent);\n;// ./packages/module-library/on-scroll-header-animation/module-styles.js\n\n\n\n\nconst scrollImageSpeedFunc = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      transition: true\n    }\n  });\n  declarations.add('transition', `all ${attrValue}`);\n  return declarations.value;\n};\nconst on_scroll_header_animation_module_styles_iconFontCss = buildLegacyPseudoIconFontCss;\n\n/**\n * React function component for rendering module style.\n */\nconst on_scroll_header_animation_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'title'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.divisupreme_scroll_image img`,\n    attr: attrs?.scroll_image_speed?.innerContent,\n    declarationFunction: scrollImageSpeedFunc\n  }));\n};\n;// ./packages/module-library/on-scroll-header-animation/settings-design.js\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\nfunction on_scroll_header_animation_settings_design_SettingsDesign({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"title.decoration.font\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: true\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const on_scroll_header_animation_settings_design = (on_scroll_header_animation_settings_design_SettingsDesign);\n;// ./packages/module-library/on-scroll-header-animation/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction on_scroll_header_animation_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".divisupreme_scroll_image\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const on_scroll_header_animation_settings_advanced = (on_scroll_header_animation_settings_advanced_SettingsAdvanced);\n;// ./node_modules/gsap/gsap-core.js\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; subClass.__proto__ = superClass; }\n\n/*!\n * GSAP 3.15.0\n * https://gsap.com\n *\n * @license Copyright 2008-2026, GreenSock. All rights reserved.\n * Subject to the terms at https://gsap.com/standard-license\n * @author: Jack Doyle, jack@greensock.com\n*/\n\n/* eslint-disable */\nvar _config = {\n  autoSleep: 120,\n  force3D: \"auto\",\n  nullTargetWarn: 1,\n  units: {\n    lineHeight: \"\"\n  }\n},\n    _defaults = {\n  duration: .5,\n  overwrite: false,\n  delay: 0\n},\n    _suppressOverwrites,\n    _reverting,\n    _context,\n    _bigNum = 1e8,\n    _tinyNum = 1 / _bigNum,\n    _2PI = Math.PI * 2,\n    _HALF_PI = _2PI / 4,\n    _gsID = 0,\n    _sqrt = Math.sqrt,\n    _cos = Math.cos,\n    _sin = Math.sin,\n    _isString = function _isString(value) {\n  return typeof value === \"string\";\n},\n    _isFunction = function _isFunction(value) {\n  return typeof value === \"function\";\n},\n    _isNumber = function _isNumber(value) {\n  return typeof value === \"number\";\n},\n    _isUndefined = function _isUndefined(value) {\n  return typeof value === \"undefined\";\n},\n    _isObject = function _isObject(value) {\n  return typeof value === \"object\";\n},\n    _isNotFalse = function _isNotFalse(value) {\n  return value !== false;\n},\n    _windowExists = function _windowExists() {\n  return typeof window !== \"undefined\";\n},\n    _isFuncOrString = function _isFuncOrString(value) {\n  return _isFunction(value) || _isString(value);\n},\n    _isTypedArray = typeof ArrayBuffer === \"function\" && ArrayBuffer.isView || function () {},\n    // note: IE10 has ArrayBuffer, but NOT ArrayBuffer.isView().\n_isArray = Array.isArray,\n    _randomExp = /random\\([^)]+\\)/g,\n    _commaDelimExp = /,\\s*/g,\n    _strictNumExp = /(?:-?\\.?\\d|\\.)+/gi,\n    //only numbers (including negatives and decimals) but NOT relative values.\n_numExp = /[-+=.]*\\d+[.e\\-+]*\\d*[e\\-+]*\\d*/g,\n    //finds any numbers, including ones that start with += or -=, negative numbers, and ones in scientific notation like 1e-8.\n_numWithUnitExp = /[-+=.]*\\d+[.e-]*\\d*[a-z%]*/g,\n    _complexStringNumExp = /[-+=.]*\\d+\\.?\\d*(?:e-|e\\+)?\\d*/gi,\n    //duplicate so that while we're looping through matches from exec(), it doesn't contaminate the lastIndex of _numExp which we use to search for colors too.\n_relExp = /[+-]=-?[.\\d]+/,\n    _delimitedValueExp = /[^,'\"\\[\\]\\s]+/gi,\n    // previously /[#\\-+.]*\\b[a-z\\d\\-=+%.]+/gi but didn't catch special characters.\n_unitExp = /^[+\\-=e\\s\\d]*\\d+[.\\d]*([a-z]*|%)\\s*$/i,\n    _globalTimeline,\n    _win,\n    _coreInitted,\n    _doc,\n    _globals = {},\n    _installScope = {},\n    _coreReady,\n    _install = function _install(scope) {\n  return (_installScope = _merge(scope, _globals)) && gsap;\n},\n    _missingPlugin = function _missingPlugin(property, value) {\n  return console.warn(\"Invalid property\", property, \"set to\", value, \"Missing plugin? gsap.registerPlugin()\");\n},\n    _warn = function _warn(message, suppress) {\n  return !suppress && console.warn(message);\n},\n    _addGlobal = function _addGlobal(name, obj) {\n  return name && (_globals[name] = obj) && _installScope && (_installScope[name] = obj) || _globals;\n},\n    _emptyFunc = function _emptyFunc() {\n  return 0;\n},\n    _startAtRevertConfig = {\n  suppressEvents: true,\n  isStart: true,\n  kill: false\n},\n    _revertConfigNoKill = {\n  suppressEvents: true,\n  kill: false\n},\n    _revertConfig = {\n  suppressEvents: true\n},\n    _reservedProps = {},\n    _lazyTweens = [],\n    _lazyLookup = {},\n    _lastRenderedFrame,\n    _plugins = {},\n    _effects = {},\n    _nextGCFrame = 30,\n    _harnessPlugins = [],\n    _callbackNames = \"\",\n    _harness = function _harness(targets) {\n  var target = targets[0],\n      harnessPlugin,\n      i;\n  _isObject(target) || _isFunction(target) || (targets = [targets]);\n\n  if (!(harnessPlugin = (target._gsap || {}).harness)) {\n    // find the first target with a harness. We assume targets passed into an animation will be of similar type, meaning the same kind of harness can be used for them all (performance optimization)\n    i = _harnessPlugins.length;\n\n    while (i-- && !_harnessPlugins[i].targetTest(target)) {}\n\n    harnessPlugin = _harnessPlugins[i];\n  }\n\n  i = targets.length;\n\n  while (i--) {\n    targets[i] && (targets[i]._gsap || (targets[i]._gsap = new GSCache(targets[i], harnessPlugin))) || targets.splice(i, 1);\n  }\n\n  return targets;\n},\n    _getCache = function _getCache(target) {\n  return target._gsap || _harness(toArray(target))[0]._gsap;\n},\n    _getProperty = function _getProperty(target, property, v) {\n  return (v = target[property]) && _isFunction(v) ? target[property]() : _isUndefined(v) && target.getAttribute && target.getAttribute(property) || v;\n},\n    _forEachName = function _forEachName(names, func) {\n  return (names = names.split(\",\")).forEach(func) || names;\n},\n    //split a comma-delimited list of names into an array, then run a forEach() function and return the split array (this is just a way to consolidate/shorten some code).\n_round = function _round(value) {\n  return Math.round(value * 100000) / 100000 || 0;\n},\n    _roundPrecise = function _roundPrecise(value) {\n  return Math.round(value * 10000000) / 10000000 || 0;\n},\n    // increased precision mostly for timing values.\n_parseRelative = function _parseRelative(start, value) {\n  var operator = value.charAt(0),\n      end = parseFloat(value.substr(2));\n  start = parseFloat(start);\n  return operator === \"+\" ? start + end : operator === \"-\" ? start - end : operator === \"*\" ? start * end : start / end;\n},\n    _arrayContainsAny = function _arrayContainsAny(toSearch, toFind) {\n  //searches one array to find matches for any of the items in the toFind array. As soon as one is found, it returns true. It does NOT return all the matches; it's simply a boolean search.\n  var l = toFind.length,\n      i = 0;\n\n  for (; toSearch.indexOf(toFind[i]) < 0 && ++i < l;) {}\n\n  return i < l;\n},\n    _lazyRender = function _lazyRender() {\n  var l = _lazyTweens.length,\n      a = _lazyTweens.slice(0),\n      i,\n      tween;\n\n  _lazyLookup = {};\n  _lazyTweens.length = 0;\n\n  for (i = 0; i < l; i++) {\n    tween = a[i];\n    tween && tween._lazy && (tween.render(tween._lazy[0], tween._lazy[1], true)._lazy = 0);\n  }\n},\n    _isRevertWorthy = function _isRevertWorthy(animation) {\n  return !!(animation._initted || animation._startAt || animation.add);\n},\n    _lazySafeRender = function _lazySafeRender(animation, time, suppressEvents, force) {\n  _lazyTweens.length && !_reverting && _lazyRender();\n  animation.render(time, suppressEvents, force || !!(_reverting && time < 0 && _isRevertWorthy(animation)));\n  _lazyTweens.length && !_reverting && _lazyRender(); //in case rendering caused any tweens to lazy-init, we should render them because typically when someone calls seek() or time() or progress(), they expect an immediate render.\n},\n    _numericIfPossible = function _numericIfPossible(value) {\n  var n = parseFloat(value);\n  return (n || n === 0) && (value + \"\").match(_delimitedValueExp).length < 2 ? n : _isString(value) ? value.trim() : value;\n},\n    _passThrough = function _passThrough(p) {\n  return p;\n},\n    _setDefaults = function _setDefaults(obj, defaults) {\n  for (var p in defaults) {\n    p in obj || (obj[p] = defaults[p]);\n  }\n\n  return obj;\n},\n    _setKeyframeDefaults = function _setKeyframeDefaults(excludeDuration) {\n  return function (obj, defaults) {\n    for (var p in defaults) {\n      p in obj || p === \"duration\" && excludeDuration || p === \"ease\" || (obj[p] = defaults[p]);\n    }\n  };\n},\n    _merge = function _merge(base, toMerge) {\n  for (var p in toMerge) {\n    base[p] = toMerge[p];\n  }\n\n  return base;\n},\n    _mergeDeep = function _mergeDeep(base, toMerge) {\n  for (var p in toMerge) {\n    p !== \"__proto__\" && p !== \"constructor\" && p !== \"prototype\" && (base[p] = _isObject(toMerge[p]) ? _mergeDeep(base[p] || (base[p] = {}), toMerge[p]) : toMerge[p]);\n  }\n\n  return base;\n},\n    _copyExcluding = function _copyExcluding(obj, excluding) {\n  var copy = {},\n      p;\n\n  for (p in obj) {\n    p in excluding || (copy[p] = obj[p]);\n  }\n\n  return copy;\n},\n    _inheritDefaults = function _inheritDefaults(vars) {\n  var parent = vars.parent || _globalTimeline,\n      func = vars.keyframes ? _setKeyframeDefaults(_isArray(vars.keyframes)) : _setDefaults;\n\n  if (_isNotFalse(vars.inherit)) {\n    while (parent) {\n      func(vars, parent.vars.defaults);\n      parent = parent.parent || parent._dp;\n    }\n  }\n\n  return vars;\n},\n    _arraysMatch = function _arraysMatch(a1, a2) {\n  var i = a1.length,\n      match = i === a2.length;\n\n  while (match && i-- && a1[i] === a2[i]) {}\n\n  return i < 0;\n},\n    _addLinkedListItem = function _addLinkedListItem(parent, child, firstProp, lastProp, sortBy) {\n  if (firstProp === void 0) {\n    firstProp = \"_first\";\n  }\n\n  if (lastProp === void 0) {\n    lastProp = \"_last\";\n  }\n\n  var prev = parent[lastProp],\n      t;\n\n  if (sortBy) {\n    t = child[sortBy];\n\n    while (prev && prev[sortBy] > t) {\n      prev = prev._prev;\n    }\n  }\n\n  if (prev) {\n    child._next = prev._next;\n    prev._next = child;\n  } else {\n    child._next = parent[firstProp];\n    parent[firstProp] = child;\n  }\n\n  if (child._next) {\n    child._next._prev = child;\n  } else {\n    parent[lastProp] = child;\n  }\n\n  child._prev = prev;\n  child.parent = child._dp = parent;\n  return child;\n},\n    _removeLinkedListItem = function _removeLinkedListItem(parent, child, firstProp, lastProp) {\n  if (firstProp === void 0) {\n    firstProp = \"_first\";\n  }\n\n  if (lastProp === void 0) {\n    lastProp = \"_last\";\n  }\n\n  var prev = child._prev,\n      next = child._next;\n\n  if (prev) {\n    prev._next = next;\n  } else if (parent[firstProp] === child) {\n    parent[firstProp] = next;\n  }\n\n  if (next) {\n    next._prev = prev;\n  } else if (parent[lastProp] === child) {\n    parent[lastProp] = prev;\n  }\n\n  child._next = child._prev = child.parent = null; // don't delete the _dp just so we can revert if necessary. But parent should be null to indicate the item isn't in a linked list.\n},\n    _removeFromParent = function _removeFromParent(child, onlyIfParentHasAutoRemove) {\n  child.parent && (!onlyIfParentHasAutoRemove || child.parent.autoRemoveChildren) && child.parent.remove && child.parent.remove(child);\n  child._act = 0;\n},\n    _uncache = function _uncache(animation, child) {\n  if (animation && (!child || child._end > animation._dur || child._start < 0)) {\n    // performance optimization: if a child animation is passed in we should only uncache if that child EXTENDS the animation (its end time is beyond the end)\n    var a = animation;\n\n    while (a) {\n      a._dirty = 1;\n      a = a.parent;\n    }\n  }\n\n  return animation;\n},\n    _recacheAncestors = function _recacheAncestors(animation) {\n  var parent = animation.parent;\n\n  while (parent && parent.parent) {\n    //sometimes we must force a re-sort of all children and update the duration/totalDuration of all ancestor timelines immediately in case, for example, in the middle of a render loop, one tween alters another tween's timeScale which shoves its startTime before 0, forcing the parent timeline to shift around and shiftChildren() which could affect that next tween's render (startTime). Doesn't matter for the root timeline though.\n    parent._dirty = 1;\n    parent.totalDuration();\n    parent = parent.parent;\n  }\n\n  return animation;\n},\n    _rewindStartAt = function _rewindStartAt(tween, totalTime, suppressEvents, force) {\n  return tween._startAt && (_reverting ? tween._startAt.revert(_revertConfigNoKill) : tween.vars.immediateRender && !tween.vars.autoRevert || tween._startAt.render(totalTime, true, force));\n},\n    _hasNoPausedAncestors = function _hasNoPausedAncestors(animation) {\n  return !animation || animation._ts && _hasNoPausedAncestors(animation.parent);\n},\n    _elapsedCycleDuration = function _elapsedCycleDuration(animation) {\n  return animation._repeat ? _animationCycle(animation._tTime, animation = animation.duration() + animation._rDelay) * animation : 0;\n},\n    // feed in the totalTime and cycleDuration and it'll return the cycle (iteration minus 1) and if the playhead is exactly at the very END, it will NOT bump up to the next cycle.\n_animationCycle = function _animationCycle(tTime, cycleDuration) {\n  var whole = Math.floor(tTime = _roundPrecise(tTime / cycleDuration));\n  return tTime && whole === tTime ? whole - 1 : whole;\n},\n    _parentToChildTotalTime = function _parentToChildTotalTime(parentTime, child) {\n  return (parentTime - child._start) * child._ts + (child._ts >= 0 ? 0 : child._dirty ? child.totalDuration() : child._tDur);\n},\n    _setEnd = function _setEnd(animation) {\n  return animation._end = _roundPrecise(animation._start + (animation._tDur / Math.abs(animation._ts || animation._rts || _tinyNum) || 0));\n},\n    _alignPlayhead = function _alignPlayhead(animation, totalTime) {\n  // adjusts the animation's _start and _end according to the provided totalTime (only if the parent's smoothChildTiming is true and the animation isn't paused). It doesn't do any rendering or forcing things back into parent timelines, etc. - that's what totalTime() is for.\n  var parent = animation._dp;\n\n  if (parent && parent.smoothChildTiming && animation._ts) {\n    animation._start = _roundPrecise(parent._time - (animation._ts > 0 ? totalTime / animation._ts : ((animation._dirty ? animation.totalDuration() : animation._tDur) - totalTime) / -animation._ts));\n\n    _setEnd(animation);\n\n    parent._dirty || _uncache(parent, animation); //for performance improvement. If the parent's cache is already dirty, it already took care of marking the ancestors as dirty too, so skip the function call here.\n  }\n\n  return animation;\n},\n\n/*\n_totalTimeToTime = (clampedTotalTime, duration, repeat, repeatDelay, yoyo) => {\n\tlet cycleDuration = duration + repeatDelay,\n\t\ttime = _round(clampedTotalTime % cycleDuration);\n\tif (time > duration) {\n\t\ttime = duration;\n\t}\n\treturn (yoyo && (~~(clampedTotalTime / cycleDuration) & 1)) ? duration - time : time;\n},\n*/\n_postAddChecks = function _postAddChecks(timeline, child) {\n  var t;\n\n  if (child._time || !child._dur && child._initted || child._start < timeline._time && (child._dur || !child.add)) {\n    // in case, for example, the _start is moved on a tween that has already rendered, or if it's being inserted into a timeline BEFORE where the playhead is currently. Imagine it's at its end state, then the startTime is moved WAY later (after the end of this timeline), it should render at its beginning. Special case: if it's a timeline (has .add() method) and no duration, we can skip rendering because the user may be populating it AFTER adding it to a parent timeline (unconventional, but possible, and we wouldn't want it to get removed if the parent's autoRemoveChildren is true).\n    t = _parentToChildTotalTime(timeline.rawTime(), child);\n\n    if (!child._dur || _clamp(0, child.totalDuration(), t) - child._tTime > _tinyNum) {\n      child.render(t, true);\n    }\n  } //if the timeline has already ended but the inserted tween/timeline extends the duration, we should enable this timeline again so that it renders properly. We should also align the playhead with the parent timeline's when appropriate.\n\n\n  if (_uncache(timeline, child)._dp && timeline._initted && timeline._time >= timeline._dur && timeline._ts) {\n    //in case any of the ancestors had completed but should now be enabled...\n    if (timeline._dur < timeline.duration()) {\n      t = timeline;\n\n      while (t._dp) {\n        t.rawTime() >= 0 && t.totalTime(t._tTime); //moves the timeline (shifts its startTime) if necessary, and also enables it. If it's currently zero, though, it may not be scheduled to render until later so there's no need to force it to align with the current playhead position. Only move to catch up with the playhead.\n\n        t = t._dp;\n      }\n    }\n\n    timeline._zTime = -_tinyNum; // helps ensure that the next render() will be forced (crossingStart = true in render()), even if the duration hasn't changed (we're adding a child which would need to get rendered). Definitely an edge case. Note: we MUST do this AFTER the loop above where the totalTime() might trigger a render() because this _addToTimeline() method gets called from the Animation constructor, BEFORE tweens even record their targets, etc. so we wouldn't want things to get triggered in the wrong order.\n  }\n},\n    _addToTimeline = function _addToTimeline(timeline, child, position, skipChecks) {\n  child.parent && _removeFromParent(child);\n  child._start = _roundPrecise((_isNumber(position) ? position : position || timeline !== _globalTimeline ? _parsePosition(timeline, position, child) : timeline._time) + child._delay);\n  child._end = _roundPrecise(child._start + (child.totalDuration() / Math.abs(child.timeScale()) || 0));\n\n  _addLinkedListItem(timeline, child, \"_first\", \"_last\", timeline._sort ? \"_start\" : 0);\n\n  _isFromOrFromStart(child) || (timeline._recent = child);\n  skipChecks || _postAddChecks(timeline, child);\n  timeline._ts < 0 && _alignPlayhead(timeline, timeline._tTime); // if the timeline is reversed and the new child makes it longer, we may need to adjust the parent's _start (push it back)\n\n  return timeline;\n},\n    _scrollTrigger = function _scrollTrigger(animation, trigger) {\n  return (_globals.ScrollTrigger || _missingPlugin(\"scrollTrigger\", trigger)) && _globals.ScrollTrigger.create(trigger, animation);\n},\n    _attemptInitTween = function _attemptInitTween(tween, time, force, suppressEvents, tTime) {\n  _initTween(tween, time, tTime);\n\n  if (!tween._initted) {\n    return 1;\n  }\n\n  if (!force && tween._pt && !_reverting && (tween._dur && tween.vars.lazy !== false || !tween._dur && tween.vars.lazy) && _lastRenderedFrame !== _ticker.frame) {\n    _lazyTweens.push(tween);\n\n    tween._lazy = [tTime, suppressEvents];\n    return 1;\n  }\n},\n    _parentPlayheadIsBeforeStart = function _parentPlayheadIsBeforeStart(_ref) {\n  var parent = _ref.parent;\n  return parent && parent._ts && parent._initted && !parent._lock && (parent.rawTime() < 0 || _parentPlayheadIsBeforeStart(parent));\n},\n    // check parent's _lock because when a timeline repeats/yoyos and does its artificial wrapping, we shouldn't force the ratio back to 0\n_isFromOrFromStart = function _isFromOrFromStart(_ref2) {\n  var data = _ref2.data;\n  return data === \"isFromStart\" || data === \"isStart\";\n},\n    _renderZeroDurationTween = function _renderZeroDurationTween(tween, totalTime, suppressEvents, force) {\n  var prevRatio = tween.ratio,\n      ratio = totalTime < 0 || !totalTime && (!tween._start && _parentPlayheadIsBeforeStart(tween) && !(!tween._initted && _isFromOrFromStart(tween)) || (tween._ts < 0 || tween._dp._ts < 0) && !_isFromOrFromStart(tween)) ? 0 : 1,\n      // if the tween or its parent is reversed and the totalTime is 0, we should go to a ratio of 0. Edge case: if a from() or fromTo() stagger tween is placed later in a timeline, the \"startAt\" zero-duration tween could initially render at a time when the parent timeline's playhead is technically BEFORE where this tween is, so make sure that any \"from\" and \"fromTo\" startAt tweens are rendered the first time at a ratio of 1.\n  repeatDelay = tween._rDelay,\n      tTime = 0,\n      pt,\n      iteration,\n      prevIteration;\n\n  if (repeatDelay && tween._repeat) {\n    // in case there's a zero-duration tween that has a repeat with a repeatDelay\n    tTime = _clamp(0, tween._tDur, totalTime);\n    iteration = _animationCycle(tTime, repeatDelay);\n    tween._yoyo && iteration & 1 && (ratio = 1 - ratio);\n\n    if (iteration !== _animationCycle(tween._tTime, repeatDelay)) {\n      // if iteration changed\n      prevRatio = 1 - ratio;\n      tween.vars.repeatRefresh && tween._initted && tween.invalidate();\n    }\n  }\n\n  if (ratio !== prevRatio || _reverting || force || tween._zTime === _tinyNum || !totalTime && tween._zTime) {\n    if (!tween._initted && _attemptInitTween(tween, totalTime, force, suppressEvents, tTime)) {\n      // if we render the very beginning (time == 0) of a fromTo(), we must force the render (normal tweens wouldn't need to render at a time of 0 when the prevTime was also 0). This is also mandatory to make sure overwriting kicks in immediately.\n      return;\n    }\n\n    prevIteration = tween._zTime;\n    tween._zTime = totalTime || (suppressEvents ? _tinyNum : 0); // when the playhead arrives at EXACTLY time 0 (right on top) of a zero-duration tween, we need to discern if events are suppressed so that when the playhead moves again (next time), it'll trigger the callback. If events are NOT suppressed, obviously the callback would be triggered in this render. Basically, the callback should fire either when the playhead ARRIVES or LEAVES this exact spot, not both. Imagine doing a timeline.seek(0) and there's a callback that sits at 0. Since events are suppressed on that seek() by default, nothing will fire, but when the playhead moves off of that position, the callback should fire. This behavior is what people intuitively expect.\n\n    suppressEvents || (suppressEvents = totalTime && !prevIteration); // if it was rendered previously at exactly 0 (_zTime) and now the playhead is moving away, DON'T fire callbacks otherwise they'll seem like duplicates.\n\n    tween.ratio = ratio;\n    tween._from && (ratio = 1 - ratio);\n    tween._time = 0;\n    tween._tTime = tTime;\n    pt = tween._pt;\n\n    while (pt) {\n      pt.r(ratio, pt.d);\n      pt = pt._next;\n    }\n\n    totalTime < 0 && _rewindStartAt(tween, totalTime, suppressEvents, true);\n    tween._onUpdate && !suppressEvents && _callback(tween, \"onUpdate\");\n    tTime && tween._repeat && !suppressEvents && tween.parent && _callback(tween, \"onRepeat\");\n\n    if ((totalTime >= tween._tDur || totalTime < 0) && tween.ratio === ratio) {\n      ratio && _removeFromParent(tween, 1);\n\n      if (!suppressEvents && !_reverting) {\n        _callback(tween, ratio ? \"onComplete\" : \"onReverseComplete\", true);\n\n        tween._prom && tween._prom();\n      }\n    }\n  } else if (!tween._zTime) {\n    tween._zTime = totalTime;\n  }\n},\n    _findNextPauseTween = function _findNextPauseTween(animation, prevTime, time) {\n  var child;\n\n  if (time > prevTime) {\n    child = animation._first;\n\n    while (child && child._start <= time) {\n      if (child.data === \"isPause\" && child._start > prevTime) {\n        return child;\n      }\n\n      child = child._next;\n    }\n  } else {\n    child = animation._last;\n\n    while (child && child._start >= time) {\n      if (child.data === \"isPause\" && child._start < prevTime) {\n        return child;\n      }\n\n      child = child._prev;\n    }\n  }\n},\n    _setDuration = function _setDuration(animation, duration, skipUncache, leavePlayhead) {\n  var repeat = animation._repeat,\n      dur = _roundPrecise(duration) || 0,\n      totalProgress = animation._tTime / animation._tDur;\n  totalProgress && !leavePlayhead && (animation._time *= dur / animation._dur);\n  animation._dur = dur;\n  animation._tDur = !repeat ? dur : repeat < 0 ? 1e10 : _roundPrecise(dur * (repeat + 1) + animation._rDelay * repeat);\n  totalProgress > 0 && !leavePlayhead && _alignPlayhead(animation, animation._tTime = animation._tDur * totalProgress);\n  animation.parent && _setEnd(animation);\n  skipUncache || _uncache(animation.parent, animation);\n  return animation;\n},\n    _onUpdateTotalDuration = function _onUpdateTotalDuration(animation) {\n  return animation instanceof Timeline ? _uncache(animation) : _setDuration(animation, animation._dur);\n},\n    _zeroPosition = {\n  _start: 0,\n  endTime: _emptyFunc,\n  totalDuration: _emptyFunc\n},\n    _parsePosition = function _parsePosition(animation, position, percentAnimation) {\n  var labels = animation.labels,\n      recent = animation._recent || _zeroPosition,\n      clippedDuration = animation.duration() >= _bigNum ? recent.endTime(false) : animation._dur,\n      //in case there's a child that infinitely repeats, users almost never intend for the insertion point of a new child to be based on a SUPER long value like that so we clip it and assume the most recently-added child's endTime should be used instead.\n  i,\n      offset,\n      isPercent;\n\n  if (_isString(position) && (isNaN(position) || position in labels)) {\n    //if the string is a number like \"1\", check to see if there's a label with that name, otherwise interpret it as a number (absolute value).\n    offset = position.charAt(0);\n    isPercent = position.substr(-1) === \"%\";\n    i = position.indexOf(\"=\");\n\n    if (offset === \"<\" || offset === \">\") {\n      i >= 0 && (position = position.replace(/=/, \"\"));\n      return (offset === \"<\" ? recent._start : recent.endTime(recent._repeat >= 0)) + (parseFloat(position.substr(1)) || 0) * (isPercent ? (i < 0 ? recent : percentAnimation).totalDuration() / 100 : 1);\n    }\n\n    if (i < 0) {\n      position in labels || (labels[position] = clippedDuration);\n      return labels[position];\n    }\n\n    offset = parseFloat(position.charAt(i - 1) + position.substr(i + 1));\n\n    if (isPercent && percentAnimation) {\n      offset = offset / 100 * (_isArray(percentAnimation) ? percentAnimation[0] : percentAnimation).totalDuration();\n    }\n\n    return i > 1 ? _parsePosition(animation, position.substr(0, i - 1), percentAnimation) + offset : clippedDuration + offset;\n  }\n\n  return position == null ? clippedDuration : +position;\n},\n    _createTweenType = function _createTweenType(type, params, timeline) {\n  var isLegacy = _isNumber(params[1]),\n      varsIndex = (isLegacy ? 2 : 1) + (type < 2 ? 0 : 1),\n      vars = params[varsIndex],\n      irVars,\n      parent;\n\n  isLegacy && (vars.duration = params[1]);\n  vars.parent = timeline;\n\n  if (type) {\n    irVars = vars;\n    parent = timeline;\n\n    while (parent && !(\"immediateRender\" in irVars)) {\n      // inheritance hasn't happened yet, but someone may have set a default in an ancestor timeline. We could do vars.immediateRender = _isNotFalse(_inheritDefaults(vars).immediateRender) but that'd exact a slight performance penalty because _inheritDefaults() also runs in the Tween constructor. We're paying a small kb price here to gain speed.\n      irVars = parent.vars.defaults || {};\n      parent = _isNotFalse(parent.vars.inherit) && parent.parent;\n    }\n\n    vars.immediateRender = _isNotFalse(irVars.immediateRender);\n    type < 2 ? vars.runBackwards = 1 : vars.startAt = params[varsIndex - 1]; // \"from\" vars\n  }\n\n  return new Tween(params[0], vars, params[varsIndex + 1]);\n},\n    _conditionalReturn = function _conditionalReturn(value, func) {\n  return value || value === 0 ? func(value) : func;\n},\n    _clamp = function _clamp(min, max, value) {\n  return value < min ? min : value > max ? max : value;\n},\n    getUnit = function getUnit(value, v) {\n  return !_isString(value) || !(v = _unitExp.exec(value)) ? \"\" : v[1];\n},\n    // note: protect against padded numbers as strings, like \"100.100\". That shouldn't return \"00\" as the unit. If it's numeric, return no unit.\ngsap_core_clamp = function clamp(min, max, value) {\n  return _conditionalReturn(value, function (v) {\n    return _clamp(min, max, v);\n  });\n},\n    _slice = [].slice,\n    _isArrayLike = function _isArrayLike(value, nonEmpty) {\n  return value && _isObject(value) && \"length\" in value && (!nonEmpty && !value.length || value.length - 1 in value && _isObject(value[0])) && !value.nodeType && value !== _win;\n},\n    _flatten = function _flatten(ar, leaveStrings, accumulator) {\n  if (accumulator === void 0) {\n    accumulator = [];\n  }\n\n  return ar.forEach(function (value) {\n    var _accumulator;\n\n    return _isString(value) && !leaveStrings || _isArrayLike(value, 1) ? (_accumulator = accumulator).push.apply(_accumulator, toArray(value)) : accumulator.push(value);\n  }) || accumulator;\n},\n    // takes any value and returns an Array. If it's a string (and leaveStrings isn't true), it'll use document.querySelectorAll() and convert that to an array. It'll also accept iterables like jQuery objects.\ntoArray = function toArray(value, scope, leaveStrings) {\n  return _context && !scope && _context.selector ? _context.selector(value) : _isString(value) && !leaveStrings && (_coreInitted || !_wake()) ? _slice.call((scope || _doc).querySelectorAll(value), 0) : _isArray(value) ? _flatten(value, leaveStrings) : _isArrayLike(value) ? _slice.call(value, 0) : value ? [value] : [];\n},\n    selector = function selector(value) {\n  value = toArray(value)[0] || _warn(\"Invalid scope\") || {};\n  return function (v) {\n    var el = value.current || value.nativeElement || value;\n    return toArray(v, el.querySelectorAll ? el : el === value ? _warn(\"Invalid scope\") || _doc.createElement(\"div\") : value);\n  };\n},\n    shuffle = function shuffle(a) {\n  return a.sort(function () {\n    return .5 - Math.random();\n  });\n},\n    // alternative that's a bit faster and more reliably diverse but bigger:   for (let j, v, i = a.length; i; j = (Math.random() * i) | 0, v = a[--i], a[i] = a[j], a[j] = v); return a;\n// for distributing values across an Array. Can accept a number, a function or (most commonly) an object which can contain the following properties: {base, amount, from, ease, grid, axis, length, each}. Returns a function that expects the following parameters: index, target, array.\ndistribute = function distribute(v) {\n  if (_isFunction(v)) {\n    return v;\n  }\n\n  var vars = _isObject(v) ? v : {\n    each: v\n  },\n      //n:1 is just to indicate v was a number; we leverage that later to set v according to the length we get. If a number is passed in, we treat it like the old stagger value where 0.1, for example, would mean that things would be distributed with 0.1 between each element in the array rather than a total \"amount\" that's chunked out among them all.\n  ease = _parseEase(vars.ease),\n      from = vars.from || 0,\n      base = parseFloat(vars.base) || 0,\n      cache = {},\n      isDecimal = from > 0 && from < 1,\n      ratios = isNaN(from) || isDecimal,\n      axis = vars.axis,\n      ratioX = from,\n      ratioY = from;\n\n  if (_isString(from)) {\n    ratioX = ratioY = {\n      center: .5,\n      edges: .5,\n      end: 1\n    }[from] || 0;\n  } else if (!isDecimal && ratios) {\n    ratioX = from[0];\n    ratioY = from[1];\n  }\n\n  return function (i, target, a) {\n    var l = (a || vars).length,\n        distances = cache[l],\n        originX,\n        originY,\n        x,\n        y,\n        d,\n        j,\n        max,\n        min,\n        wrapAt;\n\n    if (!distances) {\n      wrapAt = vars.grid === \"auto\" ? 0 : (vars.grid || [1, _bigNum])[1];\n\n      if (!wrapAt) {\n        max = -_bigNum;\n\n        while (max < (max = a[wrapAt++].getBoundingClientRect().left) && wrapAt < l) {}\n\n        wrapAt < l && wrapAt--;\n      }\n\n      distances = cache[l] = [];\n      originX = ratios ? Math.min(wrapAt, l) * ratioX - .5 : from % wrapAt;\n      originY = wrapAt === _bigNum ? 0 : ratios ? l * ratioY / wrapAt - .5 : from / wrapAt | 0;\n      max = 0;\n      min = _bigNum;\n\n      for (j = 0; j < l; j++) {\n        x = j % wrapAt - originX;\n        y = originY - (j / wrapAt | 0);\n        distances[j] = d = !axis ? _sqrt(x * x + y * y) : Math.abs(axis === \"y\" ? y : x);\n        d > max && (max = d);\n        d < min && (min = d);\n      }\n\n      from === \"random\" && shuffle(distances);\n      distances.max = max - min;\n      distances.min = min;\n      distances.v = l = (parseFloat(vars.amount) || parseFloat(vars.each) * (wrapAt > l ? l - 1 : !axis ? Math.max(wrapAt, l / wrapAt) : axis === \"y\" ? l / wrapAt : wrapAt) || 0) * (from === \"edges\" ? -1 : 1);\n      distances.b = l < 0 ? base - l : base;\n      distances.u = getUnit(vars.amount || vars.each) || 0; //unit\n\n      ease = ease && l < 0 ? _invertEase(ease) : ease;\n    }\n\n    l = (distances[i] - distances.min) / distances.max || 0;\n    return _roundPrecise(distances.b + (ease ? ease(l) : l) * distances.v) + distances.u; //round in order to work around floating point errors\n  };\n},\n    _roundModifier = function _roundModifier(v) {\n  //pass in 0.1 get a function that'll round to the nearest tenth, or 5 to round to the closest 5, or 0.001 to the closest 1000th, etc.\n  var p = Math.pow(10, ((v + \"\").split(\".\")[1] || \"\").length); //to avoid floating point math errors (like 24 * 0.1 == 2.4000000000000004), we chop off at a specific number of decimal places (much faster than toFixed())\n\n  return function (raw) {\n    var n = _roundPrecise(Math.round(parseFloat(raw) / v) * v * p);\n\n    return (n - n % 1) / p + (_isNumber(raw) ? 0 : getUnit(raw)); // n - n % 1 replaces Math.floor() in order to handle negative values properly. For example, Math.floor(-150.00000000000003) is 151!\n  };\n},\n    snap = function snap(snapTo, value) {\n  var isArray = _isArray(snapTo),\n      radius,\n      is2D;\n\n  if (!isArray && _isObject(snapTo)) {\n    radius = isArray = snapTo.radius || _bigNum;\n\n    if (snapTo.values) {\n      snapTo = toArray(snapTo.values);\n\n      if (is2D = !_isNumber(snapTo[0])) {\n        radius *= radius; //performance optimization so we don't have to Math.sqrt() in the loop.\n      }\n    } else {\n      snapTo = _roundModifier(snapTo.increment);\n    }\n  }\n\n  return _conditionalReturn(value, !isArray ? _roundModifier(snapTo) : _isFunction(snapTo) ? function (raw) {\n    is2D = snapTo(raw);\n    return Math.abs(is2D - raw) <= radius ? is2D : raw;\n  } : function (raw) {\n    var x = parseFloat(is2D ? raw.x : raw),\n        y = parseFloat(is2D ? raw.y : 0),\n        min = _bigNum,\n        closest = 0,\n        i = snapTo.length,\n        dx,\n        dy;\n\n    while (i--) {\n      if (is2D) {\n        dx = snapTo[i].x - x;\n        dy = snapTo[i].y - y;\n        dx = dx * dx + dy * dy;\n      } else {\n        dx = Math.abs(snapTo[i] - x);\n      }\n\n      if (dx < min) {\n        min = dx;\n        closest = i;\n      }\n    }\n\n    closest = !radius || min <= radius ? snapTo[closest] : raw;\n    return is2D || closest === raw || _isNumber(raw) ? closest : closest + getUnit(raw);\n  });\n},\n    random = function random(min, max, roundingIncrement, returnFunction) {\n  return _conditionalReturn(_isArray(min) ? !max : roundingIncrement === true ? !!(roundingIncrement = 0) : !returnFunction, function () {\n    return _isArray(min) ? min[~~(Math.random() * min.length)] : (roundingIncrement = roundingIncrement || 1e-5) && (returnFunction = roundingIncrement < 1 ? Math.pow(10, (roundingIncrement + \"\").length - 2) : 1) && Math.floor(Math.round((min - roundingIncrement / 2 + Math.random() * (max - min + roundingIncrement * .99)) / roundingIncrement) * roundingIncrement * returnFunction) / returnFunction;\n  });\n},\n    pipe = function pipe() {\n  for (var _len = arguments.length, functions = new Array(_len), _key = 0; _key < _len; _key++) {\n    functions[_key] = arguments[_key];\n  }\n\n  return function (value) {\n    return functions.reduce(function (v, f) {\n      return f(v);\n    }, value);\n  };\n},\n    unitize = function unitize(func, unit) {\n  return function (value) {\n    return func(parseFloat(value)) + (unit || getUnit(value));\n  };\n},\n    normalize = function normalize(min, max, value) {\n  return mapRange(min, max, 0, 1, value);\n},\n    _wrapArray = function _wrapArray(a, wrapper, value) {\n  return _conditionalReturn(value, function (index) {\n    return a[~~wrapper(index)];\n  });\n},\n    wrap = function wrap(min, max, value) {\n  // NOTE: wrap() CANNOT be an arrow function! A very odd compiling bug causes problems (unrelated to GSAP).\n  var range = max - min;\n  return _isArray(min) ? _wrapArray(min, wrap(0, min.length), max) : _conditionalReturn(value, function (value) {\n    return (range + (value - min) % range) % range + min;\n  });\n},\n    wrapYoyo = function wrapYoyo(min, max, value) {\n  var range = max - min,\n      total = range * 2;\n  return _isArray(min) ? _wrapArray(min, wrapYoyo(0, min.length - 1), max) : _conditionalReturn(value, function (value) {\n    value = (total + (value - min) % total) % total || 0;\n    return min + (value > range ? total - value : value);\n  });\n},\n    _replaceRandom = function _replaceRandom(s) {\n  return s.replace(_randomExp, function (match) {\n    //replaces all occurrences of random(...) in a string with the calculated random value. can be a range like random(-100, 100, 5) or an array like random([0, 100, 500])\n    var arIndex = match.indexOf(\"[\") + 1,\n        values = match.substring(arIndex || 7, arIndex ? match.indexOf(\"]\") : match.length - 1).split(_commaDelimExp);\n    return random(arIndex ? values : +values[0], arIndex ? 0 : +values[1], +values[2] || 1e-5);\n  });\n},\n    mapRange = function mapRange(inMin, inMax, outMin, outMax, value) {\n  var inRange = inMax - inMin,\n      outRange = outMax - outMin;\n  return _conditionalReturn(value, function (value) {\n    return outMin + ((value - inMin) / inRange * outRange || 0);\n  });\n},\n    interpolate = function interpolate(start, end, progress, mutate) {\n  var func = isNaN(start + end) ? 0 : function (p) {\n    return (1 - p) * start + p * end;\n  };\n\n  if (!func) {\n    var isString = _isString(start),\n        master = {},\n        p,\n        i,\n        interpolators,\n        l,\n        il;\n\n    progress === true && (mutate = 1) && (progress = null);\n\n    if (isString) {\n      start = {\n        p: start\n      };\n      end = {\n        p: end\n      };\n    } else if (_isArray(start) && !_isArray(end)) {\n      interpolators = [];\n      l = start.length;\n      il = l - 2;\n\n      for (i = 1; i < l; i++) {\n        interpolators.push(interpolate(start[i - 1], start[i])); //build the interpolators up front as a performance optimization so that when the function is called many times, it can just reuse them.\n      }\n\n      l--;\n\n      func = function func(p) {\n        p *= l;\n        var i = Math.min(il, ~~p);\n        return interpolators[i](p - i);\n      };\n\n      progress = end;\n    } else if (!mutate) {\n      start = _merge(_isArray(start) ? [] : {}, start);\n    }\n\n    if (!interpolators) {\n      for (p in end) {\n        _addPropTween.call(master, start, p, \"get\", end[p]);\n      }\n\n      func = function func(p) {\n        return _renderPropTweens(p, master) || (isString ? start.p : start);\n      };\n    }\n  }\n\n  return _conditionalReturn(progress, func);\n},\n    _getLabelInDirection = function _getLabelInDirection(timeline, fromTime, backward) {\n  //used for nextLabel() and previousLabel()\n  var labels = timeline.labels,\n      min = _bigNum,\n      p,\n      distance,\n      label;\n\n  for (p in labels) {\n    distance = labels[p] - fromTime;\n\n    if (distance < 0 === !!backward && distance && min > (distance = Math.abs(distance))) {\n      label = p;\n      min = distance;\n    }\n  }\n\n  return label;\n},\n    _callback = function _callback(animation, type, executeLazyFirst) {\n  var v = animation.vars,\n      callback = v[type],\n      prevContext = _context,\n      context = animation._ctx,\n      params,\n      scope,\n      result;\n\n  if (!callback) {\n    return;\n  }\n\n  params = v[type + \"Params\"];\n  scope = v.callbackScope || animation;\n  executeLazyFirst && _lazyTweens.length && _lazyRender(); //in case rendering caused any tweens to lazy-init, we should render them because typically when a timeline finishes, users expect things to have rendered fully. Imagine an onUpdate on a timeline that reports/checks tweened values.\n\n  context && (_context = context);\n  result = params ? callback.apply(scope, params) : callback.call(scope);\n  _context = prevContext;\n  return result;\n},\n    _interrupt = function _interrupt(animation) {\n  _removeFromParent(animation);\n\n  animation.scrollTrigger && animation.scrollTrigger.kill(!!_reverting);\n  animation.progress() < 1 && _callback(animation, \"onInterrupt\");\n  return animation;\n},\n    _quickTween,\n    _registerPluginQueue = [],\n    _createPlugin = function _createPlugin(config) {\n  if (!config) return;\n  config = !config.name && config[\"default\"] || config; // UMD packaging wraps things oddly, so for example MotionPathHelper becomes {MotionPathHelper:MotionPathHelper, default:MotionPathHelper}.\n\n  if (_windowExists() || config.headless) {\n    // edge case: some build tools may pass in a null/undefined value\n    var name = config.name,\n        isFunc = _isFunction(config),\n        Plugin = name && !isFunc && config.init ? function () {\n      this._props = [];\n    } : config,\n        //in case someone passes in an object that's not a plugin, like CustomEase\n    instanceDefaults = {\n      init: _emptyFunc,\n      render: _renderPropTweens,\n      add: _addPropTween,\n      kill: _killPropTweensOf,\n      modifier: _addPluginModifier,\n      rawVars: 0\n    },\n        statics = {\n      targetTest: 0,\n      get: 0,\n      getSetter: _getSetter,\n      aliases: {},\n      register: 0\n    };\n\n    _wake();\n\n    if (config !== Plugin) {\n      if (_plugins[name]) {\n        return;\n      }\n\n      _setDefaults(Plugin, _setDefaults(_copyExcluding(config, instanceDefaults), statics)); //static methods\n\n\n      _merge(Plugin.prototype, _merge(instanceDefaults, _copyExcluding(config, statics))); //instance methods\n\n\n      _plugins[Plugin.prop = name] = Plugin;\n\n      if (config.targetTest) {\n        _harnessPlugins.push(Plugin);\n\n        _reservedProps[name] = 1;\n      }\n\n      name = (name === \"css\" ? \"CSS\" : name.charAt(0).toUpperCase() + name.substr(1)) + \"Plugin\"; //for the global name. \"motionPath\" should become MotionPathPlugin\n    }\n\n    _addGlobal(name, Plugin);\n\n    config.register && config.register(gsap, Plugin, PropTween);\n  } else {\n    _registerPluginQueue.push(config);\n  }\n},\n\n/*\n * --------------------------------------------------------------------------------------\n * COLORS\n * --------------------------------------------------------------------------------------\n */\n_255 = 255,\n    _colorLookup = {\n  aqua: [0, _255, _255],\n  lime: [0, _255, 0],\n  silver: [192, 192, 192],\n  black: [0, 0, 0],\n  maroon: [128, 0, 0],\n  teal: [0, 128, 128],\n  blue: [0, 0, _255],\n  navy: [0, 0, 128],\n  white: [_255, _255, _255],\n  olive: [128, 128, 0],\n  yellow: [_255, _255, 0],\n  orange: [_255, 165, 0],\n  gray: [128, 128, 128],\n  purple: [128, 0, 128],\n  green: [0, 128, 0],\n  red: [_255, 0, 0],\n  pink: [_255, 192, 203],\n  cyan: [0, _255, _255],\n  transparent: [_255, _255, _255, 0]\n},\n    // possible future idea to replace the hard-coded color name values - put this in the ticker.wake() where we set the _doc:\n// let ctx = _doc.createElement(\"canvas\").getContext(\"2d\");\n// _forEachName(\"aqua,lime,silver,black,maroon,teal,blue,navy,white,olive,yellow,orange,gray,purple,green,red,pink,cyan\", color => {ctx.fillStyle = color; _colorLookup[color] = splitColor(ctx.fillStyle)});\n_hue = function _hue(h, m1, m2) {\n  h += h < 0 ? 1 : h > 1 ? -1 : 0;\n  return (h * 6 < 1 ? m1 + (m2 - m1) * h * 6 : h < .5 ? m2 : h * 3 < 2 ? m1 + (m2 - m1) * (2 / 3 - h) * 6 : m1) * _255 + .5 | 0;\n},\n    splitColor = function splitColor(v, toHSL, forceAlpha) {\n  var a = !v ? _colorLookup.black : _isNumber(v) ? [v >> 16, v >> 8 & _255, v & _255] : 0,\n      r,\n      g,\n      b,\n      h,\n      s,\n      l,\n      max,\n      min,\n      d,\n      wasHSL;\n\n  if (!a) {\n    if (v.substr(-1) === \",\") {\n      //sometimes a trailing comma is included and we should chop it off (typically from a comma-delimited list of values like a textShadow:\"2px 2px 2px blue, 5px 5px 5px rgb(255,0,0)\" - in this example \"blue,\" has a trailing comma. We could strip it out inside parseComplex() but we'd need to do it to the beginning and ending values plus it wouldn't provide protection from other potential scenarios like if the user passes in a similar value.\n      v = v.substr(0, v.length - 1);\n    }\n\n    if (_colorLookup[v]) {\n      a = _colorLookup[v];\n    } else if (v.charAt(0) === \"#\") {\n      if (v.length < 6) {\n        //for shorthand like #9F0 or #9F0F (could have alpha)\n        r = v.charAt(1);\n        g = v.charAt(2);\n        b = v.charAt(3);\n        v = \"#\" + r + r + g + g + b + b + (v.length === 5 ? v.charAt(4) + v.charAt(4) : \"\");\n      }\n\n      if (v.length === 9) {\n        // hex with alpha, like #fd5e53ff\n        a = parseInt(v.substr(1, 6), 16);\n        return [a >> 16, a >> 8 & _255, a & _255, parseInt(v.substr(7), 16) / 255];\n      }\n\n      v = parseInt(v.substr(1), 16);\n      a = [v >> 16, v >> 8 & _255, v & _255];\n    } else if (v.substr(0, 3) === \"hsl\") {\n      a = wasHSL = v.match(_strictNumExp);\n\n      if (!toHSL) {\n        h = +a[0] % 360 / 360;\n        s = +a[1] / 100;\n        l = +a[2] / 100;\n        g = l <= .5 ? l * (s + 1) : l + s - l * s;\n        r = l * 2 - g;\n        a.length > 3 && (a[3] *= 1); //cast as number\n\n        a[0] = _hue(h + 1 / 3, r, g);\n        a[1] = _hue(h, r, g);\n        a[2] = _hue(h - 1 / 3, r, g);\n      } else if (~v.indexOf(\"=\")) {\n        //if relative values are found, just return the raw strings with the relative prefixes in place.\n        a = v.match(_numExp);\n        forceAlpha && a.length < 4 && (a[3] = 1);\n        return a;\n      }\n    } else {\n      a = v.match(_strictNumExp) || _colorLookup.transparent;\n    }\n\n    a = a.map(Number);\n  }\n\n  if (toHSL && !wasHSL) {\n    r = a[0] / _255;\n    g = a[1] / _255;\n    b = a[2] / _255;\n    max = Math.max(r, g, b);\n    min = Math.min(r, g, b);\n    l = (max + min) / 2;\n\n    if (max === min) {\n      h = s = 0;\n    } else {\n      d = max - min;\n      s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\n      h = max === r ? (g - b) / d + (g < b ? 6 : 0) : max === g ? (b - r) / d + 2 : (r - g) / d + 4;\n      h *= 60;\n    }\n\n    a[0] = ~~(h + .5);\n    a[1] = ~~(s * 100 + .5);\n    a[2] = ~~(l * 100 + .5);\n  }\n\n  forceAlpha && a.length < 4 && (a[3] = 1);\n  return a;\n},\n    _colorOrderData = function _colorOrderData(v) {\n  // strips out the colors from the string, finds all the numeric slots (with units) and returns an array of those. The Array also has a \"c\" property which is an Array of the index values where the colors belong. This is to help work around issues where there's a mis-matched order of color/numeric data like drop-shadow(#f00 0px 1px 2px) and drop-shadow(0x 1px 2px #f00). This is basically a helper function used in _formatColors()\n  var values = [],\n      c = [],\n      i = -1;\n  v.split(_colorExp).forEach(function (v) {\n    var a = v.match(_numWithUnitExp) || [];\n    values.push.apply(values, a);\n    c.push(i += a.length + 1);\n  });\n  values.c = c;\n  return values;\n},\n    _formatColors = function _formatColors(s, toHSL, orderMatchData) {\n  var result = \"\",\n      colors = (s + result).match(_colorExp),\n      type = toHSL ? \"hsla(\" : \"rgba(\",\n      i = 0,\n      c,\n      shell,\n      d,\n      l;\n\n  if (!colors) {\n    return s;\n  }\n\n  colors = colors.map(function (color) {\n    return (color = splitColor(color, toHSL, 1)) && type + (toHSL ? color[0] + \",\" + color[1] + \"%,\" + color[2] + \"%,\" + color[3] : color.join(\",\")) + \")\";\n  });\n\n  if (orderMatchData) {\n    d = _colorOrderData(s);\n    c = orderMatchData.c;\n\n    if (c.join(result) !== d.c.join(result)) {\n      shell = s.replace(_colorExp, \"1\").split(_numWithUnitExp);\n      l = shell.length - 1;\n\n      for (; i < l; i++) {\n        result += shell[i] + (~c.indexOf(i) ? colors.shift() || type + \"0,0,0,0)\" : (d.length ? d : colors.length ? colors : orderMatchData).shift());\n      }\n    }\n  }\n\n  if (!shell) {\n    shell = s.split(_colorExp);\n    l = shell.length - 1;\n\n    for (; i < l; i++) {\n      result += shell[i] + colors[i];\n    }\n  }\n\n  return result + shell[l];\n},\n    _colorExp = function () {\n  var s = \"(?:\\\\b(?:(?:rgb|rgba|hsl|hsla)\\\\(.+?\\\\))|\\\\B#(?:[0-9a-f]{3,4}){1,2}\\\\b\",\n      //we'll dynamically build this Regular Expression to conserve file size. After building it, it will be able to find rgb(), rgba(), # (hexadecimal), and named color values like red, blue, purple, etc.,\n  p;\n\n  for (p in _colorLookup) {\n    s += \"|\" + p + \"\\\\b\";\n  }\n\n  return new RegExp(s + \")\", \"gi\");\n}(),\n    _hslExp = /hsl[a]?\\(/,\n    _colorStringFilter = function _colorStringFilter(a) {\n  var combined = a.join(\" \"),\n      toHSL;\n  _colorExp.lastIndex = 0;\n\n  if (_colorExp.test(combined)) {\n    toHSL = _hslExp.test(combined);\n    a[1] = _formatColors(a[1], toHSL);\n    a[0] = _formatColors(a[0], toHSL, _colorOrderData(a[1])); // make sure the order of numbers/colors match with the END value.\n\n    return true;\n  }\n},\n\n/*\n * --------------------------------------------------------------------------------------\n * TICKER\n * --------------------------------------------------------------------------------------\n */\n_tickerActive,\n    _ticker = function () {\n  var _getTime = Date.now,\n      _lagThreshold = 500,\n      _adjustedLag = 33,\n      _startTime = _getTime(),\n      _lastUpdate = _startTime,\n      _gap = 1000 / 240,\n      _nextTime = _gap,\n      _listeners = [],\n      _id,\n      _req,\n      _raf,\n      _self,\n      _delta,\n      _i,\n      _tick = function _tick(v) {\n    var elapsed = _getTime() - _lastUpdate,\n        manual = v === true,\n        overlap,\n        dispatch,\n        time,\n        frame;\n\n    (elapsed > _lagThreshold || elapsed < 0) && (_startTime += elapsed - _adjustedLag);\n    _lastUpdate += elapsed;\n    time = _lastUpdate - _startTime;\n    overlap = time - _nextTime;\n\n    if (overlap > 0 || manual) {\n      frame = ++_self.frame;\n      _delta = time - _self.time * 1000;\n      _self.time = time = time / 1000;\n      _nextTime += overlap + (overlap >= _gap ? 4 : _gap - overlap);\n      dispatch = 1;\n    }\n\n    manual || (_id = _req(_tick)); //make sure the request is made before we dispatch the \"tick\" event so that timing is maintained. Otherwise, if processing the \"tick\" requires a bunch of time (like 15ms) and we're using a setTimeout() that's based on 16.7ms, it'd technically take 31.7ms between frames otherwise.\n\n    if (dispatch) {\n      for (_i = 0; _i < _listeners.length; _i++) {\n        // use _i and check _listeners.length instead of a variable because a listener could get removed during the loop, and if that happens to an element less than the current index, it'd throw things off in the loop.\n        _listeners[_i](time, _delta, frame, v);\n      }\n    }\n  };\n\n  _self = {\n    time: 0,\n    frame: 0,\n    tick: function tick() {\n      _tick(true);\n    },\n    deltaRatio: function deltaRatio(fps) {\n      return _delta / (1000 / (fps || 60));\n    },\n    wake: function wake() {\n      if (_coreReady) {\n        if (!_coreInitted && _windowExists()) {\n          _win = _coreInitted = window;\n          _doc = _win.document || {};\n          _globals.gsap = gsap;\n          (_win.gsapVersions || (_win.gsapVersions = [])).push(gsap.version);\n\n          _install(_installScope || _win.GreenSockGlobals || !_win.gsap && _win || {});\n\n          _registerPluginQueue.forEach(_createPlugin);\n        }\n\n        _raf = typeof requestAnimationFrame !== \"undefined\" && requestAnimationFrame;\n        _id && _self.sleep();\n\n        _req = _raf || function (f) {\n          return setTimeout(f, _nextTime - _self.time * 1000 + 1 | 0);\n        };\n\n        _tickerActive = 1;\n\n        _tick(2);\n      }\n    },\n    sleep: function sleep() {\n      (_raf ? cancelAnimationFrame : clearTimeout)(_id);\n      _tickerActive = 0;\n      _req = _emptyFunc;\n    },\n    lagSmoothing: function lagSmoothing(threshold, adjustedLag) {\n      _lagThreshold = threshold || Infinity; // zero should be interpreted as basically unlimited\n\n      _adjustedLag = Math.min(adjustedLag || 33, _lagThreshold);\n    },\n    fps: function fps(_fps) {\n      _gap = 1000 / (_fps || 240);\n      _nextTime = _self.time * 1000 + _gap;\n    },\n    add: function add(callback, once, prioritize) {\n      var func = once ? function (t, d, f, v) {\n        callback(t, d, f, v);\n\n        _self.remove(func);\n      } : callback;\n\n      _self.remove(callback);\n\n      _listeners[prioritize ? \"unshift\" : \"push\"](func);\n\n      _wake();\n\n      return func;\n    },\n    remove: function remove(callback, i) {\n      ~(i = _listeners.indexOf(callback)) && _listeners.splice(i, 1) && _i >= i && _i--;\n    },\n    _listeners: _listeners\n  };\n  return _self;\n}(),\n    _wake = function _wake() {\n  return !_tickerActive && _ticker.wake();\n},\n    //also ensures the core classes are initialized.\n\n/*\n* -------------------------------------------------\n* EASING\n* -------------------------------------------------\n*/\n_easeMap = {},\n    _customEaseExp = /^[\\d.\\-M][\\d.\\-,\\s]/,\n    _quotesExp = /[\"']/g,\n    _parseObjectInString = function _parseObjectInString(value) {\n  //takes a string like \"{wiggles:10, type:anticipate})\" and turns it into a real object. Notice it ends in \")\" and includes the {} wrappers. This is because we only use this function for parsing ease configs and prioritized optimization rather than reusability.\n  var obj = {},\n      split = value.substr(1, value.length - 3).split(\":\"),\n      key = split[0],\n      i = 1,\n      l = split.length,\n      index,\n      val,\n      parsedVal;\n\n  for (; i < l; i++) {\n    val = split[i];\n    index = i !== l - 1 ? val.lastIndexOf(\",\") : val.length;\n    parsedVal = val.substr(0, index);\n    obj[key] = isNaN(parsedVal) ? parsedVal.replace(_quotesExp, \"\").trim() : +parsedVal;\n    key = val.substr(index + 1).trim();\n  }\n\n  return obj;\n},\n    _valueInParentheses = function _valueInParentheses(value) {\n  var open = value.indexOf(\"(\") + 1,\n      close = value.indexOf(\")\"),\n      nested = value.indexOf(\"(\", open);\n  return value.substring(open, ~nested && nested < close ? value.indexOf(\")\", close + 1) : close);\n},\n    _configEaseFromString = function _configEaseFromString(name) {\n  //name can be a string like \"elastic.out(1,0.5)\", and pass in _easeMap as obj and it'll parse it out and call the actual function like _easeMap.Elastic.easeOut.config(1,0.5). It will also parse custom ease strings as long as CustomEase is loaded and registered (internally as _easeMap._CE).\n  var split = (name + \"\").split(\"(\"),\n      ease = _easeMap[split[0]];\n  return ease && split.length > 1 && ease.config ? ease.config.apply(null, ~name.indexOf(\"{\") ? [_parseObjectInString(split[1])] : _valueInParentheses(name).split(\",\").map(_numericIfPossible)) : _easeMap._CE && _customEaseExp.test(name) ? _easeMap._CE(\"\", name) : ease;\n},\n    _invertEase = function _invertEase(ease) {\n  return function (p) {\n    return 1 - ease(1 - p);\n  };\n},\n    _parseEase = function _parseEase(ease, defaultEase) {\n  return !ease ? defaultEase : (_isFunction(ease) ? ease : _easeMap[ease] || _configEaseFromString(ease)) || defaultEase;\n},\n    _insertEase = function _insertEase(names, easeIn, easeOut, easeInOut) {\n  if (easeOut === void 0) {\n    easeOut = function easeOut(p) {\n      return 1 - easeIn(1 - p);\n    };\n  }\n\n  if (easeInOut === void 0) {\n    easeInOut = function easeInOut(p) {\n      return p < .5 ? easeIn(p * 2) / 2 : 1 - easeIn((1 - p) * 2) / 2;\n    };\n  }\n\n  var ease = {\n    easeIn: easeIn,\n    easeOut: easeOut,\n    easeInOut: easeInOut\n  },\n      lowercaseName;\n\n  _forEachName(names, function (name) {\n    _easeMap[name] = _globals[name] = ease;\n    _easeMap[lowercaseName = name.toLowerCase()] = easeOut;\n\n    for (var p in ease) {\n      _easeMap[lowercaseName + (p === \"easeIn\" ? \".in\" : p === \"easeOut\" ? \".out\" : \".inOut\")] = _easeMap[name + \".\" + p] = ease[p];\n    }\n  });\n\n  return ease;\n},\n    _easeInOutFromOut = function _easeInOutFromOut(easeOut) {\n  return function (p) {\n    return p < .5 ? (1 - easeOut(1 - p * 2)) / 2 : .5 + easeOut((p - .5) * 2) / 2;\n  };\n},\n    _configElastic = function _configElastic(type, amplitude, period) {\n  var p1 = amplitude >= 1 ? amplitude : 1,\n      //note: if amplitude is < 1, we simply adjust the period for a more natural feel. Otherwise the math doesn't work right and the curve starts at 1.\n  p2 = (period || (type ? .3 : .45)) / (amplitude < 1 ? amplitude : 1),\n      p3 = p2 / _2PI * (Math.asin(1 / p1) || 0),\n      easeOut = function easeOut(p) {\n    return p === 1 ? 1 : p1 * Math.pow(2, -10 * p) * _sin((p - p3) * p2) + 1;\n  },\n      ease = type === \"out\" ? easeOut : type === \"in\" ? function (p) {\n    return 1 - easeOut(1 - p);\n  } : _easeInOutFromOut(easeOut);\n\n  p2 = _2PI / p2; //precalculate to optimize\n\n  ease.config = function (amplitude, period) {\n    return _configElastic(type, amplitude, period);\n  };\n\n  return ease;\n},\n    _configBack = function _configBack(type, overshoot) {\n  if (overshoot === void 0) {\n    overshoot = 1.70158;\n  }\n\n  var easeOut = function easeOut(p) {\n    return p ? --p * p * ((overshoot + 1) * p + overshoot) + 1 : 0;\n  },\n      ease = type === \"out\" ? easeOut : type === \"in\" ? function (p) {\n    return 1 - easeOut(1 - p);\n  } : _easeInOutFromOut(easeOut);\n\n  ease.config = function (overshoot) {\n    return _configBack(type, overshoot);\n  };\n\n  return ease;\n}; // a cheaper (kb and cpu) but more mild way to get a parameterized weighted ease by feeding in a value between -1 (easeIn) and 1 (easeOut) where 0 is linear.\n// _weightedEase = ratio => {\n// \tlet y = 0.5 + ratio / 2;\n// \treturn p => (2 * (1 - p) * p * y + p * p);\n// },\n// a stronger (but more expensive kb/cpu) parameterized weighted ease that lets you feed in a value between -1 (easeIn) and 1 (easeOut) where 0 is linear.\n// _weightedEaseStrong = ratio => {\n// \tratio = .5 + ratio / 2;\n// \tlet o = 1 / 3 * (ratio < .5 ? ratio : 1 - ratio),\n// \t\tb = ratio - o,\n// \t\tc = ratio + o;\n// \treturn p => p === 1 ? p : 3 * b * (1 - p) * (1 - p) * p + 3 * c * (1 - p) * p * p + p * p * p;\n// };\n\n\n_forEachName(\"Linear,Quad,Cubic,Quart,Quint,Strong\", function (name, i) {\n  var power = i < 5 ? i + 1 : i;\n\n  _insertEase(name + \",Power\" + (power - 1), i ? function (p) {\n    return Math.pow(p, power);\n  } : function (p) {\n    return p;\n  }, function (p) {\n    return 1 - Math.pow(1 - p, power);\n  }, function (p) {\n    return p < .5 ? Math.pow(p * 2, power) / 2 : 1 - Math.pow((1 - p) * 2, power) / 2;\n  });\n});\n\n_easeMap.Linear.easeNone = _easeMap.none = _easeMap.Linear.easeIn;\n\n_insertEase(\"Elastic\", _configElastic(\"in\"), _configElastic(\"out\"), _configElastic());\n\n(function (n, c) {\n  var n1 = 1 / c,\n      n2 = 2 * n1,\n      n3 = 2.5 * n1,\n      easeOut = function easeOut(p) {\n    return p < n1 ? n * p * p : p < n2 ? n * Math.pow(p - 1.5 / c, 2) + .75 : p < n3 ? n * (p -= 2.25 / c) * p + .9375 : n * Math.pow(p - 2.625 / c, 2) + .984375;\n  };\n\n  _insertEase(\"Bounce\", function (p) {\n    return 1 - easeOut(1 - p);\n  }, easeOut);\n})(7.5625, 2.75);\n\n_insertEase(\"Expo\", function (p) {\n  return Math.pow(2, 10 * (p - 1)) * p + p * p * p * p * p * p * (1 - p);\n}); // previously 2 ** (10 * (p - 1)) but that doesn't end up with the value quite at the right spot so we do a blended ease to ensure it lands where it should perfectly.\n\n\n_insertEase(\"Circ\", function (p) {\n  return -(_sqrt(1 - p * p) - 1);\n});\n\n_insertEase(\"Sine\", function (p) {\n  return p === 1 ? 1 : -_cos(p * _HALF_PI) + 1;\n});\n\n_insertEase(\"Back\", _configBack(\"in\"), _configBack(\"out\"), _configBack());\n\n_easeMap.SteppedEase = _easeMap.steps = _globals.SteppedEase = {\n  config: function config(steps, immediateStart) {\n    if (steps === void 0) {\n      steps = 1;\n    }\n\n    var p1 = 1 / steps,\n        p2 = steps + (immediateStart ? 0 : 1),\n        p3 = immediateStart ? 1 : 0,\n        max = 1 - _tinyNum;\n    return function (p) {\n      return ((p2 * _clamp(0, max, p) | 0) + p3) * p1;\n    };\n  }\n};\n_defaults.ease = _easeMap[\"quad.out\"];\n\n_forEachName(\"onComplete,onUpdate,onStart,onRepeat,onReverseComplete,onInterrupt\", function (name) {\n  return _callbackNames += name + \",\" + name + \"Params,\";\n});\n/*\n * --------------------------------------------------------------------------------------\n * CACHE\n * --------------------------------------------------------------------------------------\n */\n\n\nvar GSCache = function GSCache(target, harness) {\n  this.id = _gsID++;\n  target._gsap = this;\n  this.target = target;\n  this.harness = harness;\n  this.get = harness ? harness.get : _getProperty;\n  this.set = harness ? harness.getSetter : _getSetter;\n};\n/*\n * --------------------------------------------------------------------------------------\n * ANIMATION\n * --------------------------------------------------------------------------------------\n */\n\nvar Animation = /*#__PURE__*/function () {\n  function Animation(vars) {\n    this.vars = vars;\n    this._delay = +vars.delay || 0;\n\n    if (this._repeat = vars.repeat === Infinity ? -2 : vars.repeat || 0) {\n      // TODO: repeat: Infinity on a timeline's children must flag that timeline internally and affect its totalDuration, otherwise it'll stop in the negative direction when reaching the start.\n      this._rDelay = vars.repeatDelay || 0;\n      this._yoyo = !!vars.yoyo || !!vars.yoyoEase;\n    }\n\n    this._ts = 1;\n\n    _setDuration(this, +vars.duration, 1, 1);\n\n    this.data = vars.data;\n\n    if (_context) {\n      this._ctx = _context;\n\n      _context.data.push(this);\n    }\n\n    _tickerActive || _ticker.wake();\n  }\n\n  var _proto = Animation.prototype;\n\n  _proto.delay = function delay(value) {\n    if (value || value === 0) {\n      this.parent && this.parent.smoothChildTiming && this.startTime(this._start + value - this._delay);\n      this._delay = value;\n      return this;\n    }\n\n    return this._delay;\n  };\n\n  _proto.duration = function duration(value) {\n    return arguments.length ? this.totalDuration(this._repeat > 0 ? value + (value + this._rDelay) * this._repeat : value) : this.totalDuration() && this._dur;\n  };\n\n  _proto.totalDuration = function totalDuration(value) {\n    if (!arguments.length) {\n      return this._tDur;\n    }\n\n    this._dirty = 0;\n    return _setDuration(this, this._repeat < 0 ? value : (value - this._repeat * this._rDelay) / (this._repeat + 1));\n  };\n\n  _proto.totalTime = function totalTime(_totalTime, suppressEvents) {\n    _wake();\n\n    if (!arguments.length) {\n      return this._tTime;\n    }\n\n    var parent = this._dp;\n\n    if (parent && parent.smoothChildTiming && this._ts) {\n      _alignPlayhead(this, _totalTime);\n\n      !parent._dp || parent.parent || _postAddChecks(parent, this); // edge case: if this is a child of a timeline that already completed, for example, we must re-activate the parent.\n      //in case any of the ancestor timelines had completed but should now be enabled, we should reset their totalTime() which will also ensure that they're lined up properly and enabled. Skip for animations that are on the root (wasteful). Example: a TimelineLite.exportRoot() is performed when there's a paused tween on the root, the export will not complete until that tween is unpaused, but imagine a child gets restarted later, after all [unpaused] tweens have completed. The start of that child would get pushed out, but one of the ancestors may have completed.\n\n      while (parent && parent.parent) {\n        if (parent.parent._time !== parent._start + (parent._ts >= 0 ? parent._tTime / parent._ts : (parent.totalDuration() - parent._tTime) / -parent._ts)) {\n          parent.totalTime(parent._tTime, true);\n        }\n\n        parent = parent.parent;\n      }\n\n      if (!this.parent && this._dp.autoRemoveChildren && (this._ts > 0 && _totalTime < this._tDur || this._ts < 0 && _totalTime > 0 || !this._tDur && !_totalTime)) {\n        //if the animation doesn't have a parent, put it back into its last parent (recorded as _dp for exactly cases like this). Limit to parents with autoRemoveChildren (like globalTimeline) so that if the user manually removes an animation from a timeline and then alters its playhead, it doesn't get added back in.\n        _addToTimeline(this._dp, this, this._start - this._delay);\n      }\n    }\n\n    if (this._tTime !== _totalTime || !this._dur && !suppressEvents || this._initted && Math.abs(this._zTime) === _tinyNum || !this._initted && this._dur && _totalTime || !_totalTime && !this._initted && (this.add || this._ptLookup)) {\n      // check for _ptLookup on a Tween instance to ensure it has actually finished being instantiated, otherwise if this.reverse() gets called in the Animation constructor, it could trigger a render() here even though the _targets weren't populated, thus when _init() is called there won't be any PropTweens (it'll act like the tween is non-functional)\n      this._ts || (this._pTime = _totalTime); // otherwise, if an animation is paused, then the playhead is moved back to zero, then resumed, it'd revert back to the original time at the pause\n      //if (!this._lock) { // avoid endless recursion (not sure we need this yet or if it's worth the performance hit)\n      //   this._lock = 1;\n\n      _lazySafeRender(this, _totalTime, suppressEvents); //   this._lock = 0;\n      //}\n\n    }\n\n    return this;\n  };\n\n  _proto.time = function time(value, suppressEvents) {\n    return arguments.length ? this.totalTime(Math.min(this.totalDuration(), value + _elapsedCycleDuration(this)) % (this._dur + this._rDelay) || (value ? this._dur : 0), suppressEvents) : this._time; // note: if the modulus results in 0, the playhead could be exactly at the end or the beginning, and we always defer to the END with a non-zero value, otherwise if you set the time() to the very end (duration()), it would render at the START!\n  };\n\n  _proto.totalProgress = function totalProgress(value, suppressEvents) {\n    return arguments.length ? this.totalTime(this.totalDuration() * value, suppressEvents) : this.totalDuration() ? Math.min(1, this._tTime / this._tDur) : this.rawTime() >= 0 && this._initted ? 1 : 0;\n  };\n\n  _proto.progress = function progress(value, suppressEvents) {\n    return arguments.length ? this.totalTime(this.duration() * (this._yoyo && !(this.iteration() & 1) ? 1 - value : value) + _elapsedCycleDuration(this), suppressEvents) : this.duration() ? Math.min(1, this._time / this._dur) : this.rawTime() > 0 ? 1 : 0;\n  };\n\n  _proto.iteration = function iteration(value, suppressEvents) {\n    var cycleDuration = this.duration() + this._rDelay;\n\n    return arguments.length ? this.totalTime(this._time + (value - 1) * cycleDuration, suppressEvents) : this._repeat ? _animationCycle(this._tTime, cycleDuration) + 1 : 1;\n  } // potential future addition:\n  // isPlayingBackwards() {\n  // \tlet animation = this,\n  // \t\torientation = 1; // 1 = forward, -1 = backward\n  // \twhile (animation) {\n  // \t\torientation *= animation.reversed() || (animation.repeat() && !(animation.iteration() & 1)) ? -1 : 1;\n  // \t\tanimation = animation.parent;\n  // \t}\n  // \treturn orientation < 0;\n  // }\n  ;\n\n  _proto.timeScale = function timeScale(value, suppressEvents) {\n    if (!arguments.length) {\n      return this._rts === -_tinyNum ? 0 : this._rts; // recorded timeScale. Special case: if someone calls reverse() on an animation with timeScale of 0, we assign it -_tinyNum to remember it's reversed.\n    }\n\n    if (this._rts === value) {\n      return this;\n    }\n\n    var tTime = this.parent && this._ts ? _parentToChildTotalTime(this.parent._time, this) : this._tTime; // make sure to do the parentToChildTotalTime() BEFORE setting the new _ts because the old one must be used in that calculation.\n    // future addition? Up side: fast and minimal file size. Down side: only works on this animation; if a timeline is reversed, for example, its childrens' onReverse wouldn't get called.\n    //(+value < 0 && this._rts >= 0) && _callback(this, \"onReverse\", true);\n    // prioritize rendering where the parent's playhead lines up instead of this._tTime because there could be a tween that's animating another tween's timeScale in the same rendering loop (same parent), thus if the timeScale tween renders first, it would alter _start BEFORE _tTime was set on that tick (in the rendering loop), effectively freezing it until the timeScale tween finishes.\n\n    this._rts = +value || 0;\n    this._ts = this._ps || value === -_tinyNum ? 0 : this._rts; // _ts is the functional timeScale which would be 0 if the animation is paused.\n\n    this.totalTime(_clamp(-Math.abs(this._delay), this.totalDuration(), tTime), suppressEvents !== false);\n\n    _setEnd(this); // if parent.smoothChildTiming was false, the end time didn't get updated in the _alignPlayhead() method, so do it here.\n\n\n    return _recacheAncestors(this);\n  };\n\n  _proto.paused = function paused(value) {\n    if (!arguments.length) {\n      return this._ps;\n    } // possible future addition - if an animation is removed from its parent and then .restart() or .play() or .resume() is called, perhaps we should force it back into the globalTimeline but be careful because what if it's already at its end? We don't want it to just persist forever and not get released for GC.\n    // !this.parent && !value && this._tTime < this._tDur && this !== _globalTimeline && _globalTimeline.add(this);\n\n\n    if (this._ps !== value) {\n      this._ps = value;\n\n      if (value) {\n        this._pTime = this._tTime || Math.max(-this._delay, this.rawTime()); // if the pause occurs during the delay phase, make sure that's factored in when resuming.\n\n        this._ts = this._act = 0; // _ts is the functional timeScale, so a paused tween would effectively have a timeScale of 0. We record the \"real\" timeScale as _rts (recorded time scale)\n      } else {\n        _wake();\n\n        this._ts = this._rts; //only defer to _pTime (pauseTime) if tTime is zero. Remember, someone could pause() an animation, then scrub the playhead and resume(). If the parent doesn't have smoothChildTiming, we render at the rawTime() because the startTime won't get updated.\n\n        this.totalTime(this.parent && !this.parent.smoothChildTiming ? this.rawTime() : this._tTime || this._pTime, this.progress() === 1 && Math.abs(this._zTime) !== _tinyNum && (this._tTime -= _tinyNum)); // edge case: animation.progress(1).pause().play() wouldn't render again because the playhead is already at the end, but the call to totalTime() below will add it back to its parent...and not remove it again (since removing only happens upon rendering at a new time). Offsetting the _tTime slightly is done simply to cause the final render in totalTime() that'll pop it off its timeline (if autoRemoveChildren is true, of course). Check to make sure _zTime isn't -_tinyNum to avoid an edge case where the playhead is pushed to the end but INSIDE a tween/callback, the timeline itself is paused thus halting rendering and leaving a few unrendered. When resuming, it wouldn't render those otherwise.\n      }\n    }\n\n    return this;\n  };\n\n  _proto.startTime = function startTime(value) {\n    if (arguments.length) {\n      this._start = _roundPrecise(value);\n      var parent = this.parent || this._dp;\n      parent && (parent._sort || !this.parent) && _addToTimeline(parent, this, this._start - this._delay);\n      return this;\n    }\n\n    return this._start;\n  };\n\n  _proto.endTime = function endTime(includeRepeats) {\n    return this._start + (_isNotFalse(includeRepeats) ? this.totalDuration() : this.duration()) / Math.abs(this._ts || 1);\n  };\n\n  _proto.rawTime = function rawTime(wrapRepeats) {\n    var parent = this.parent || this._dp; // _dp = detached parent\n\n    return !parent ? this._tTime : wrapRepeats && (!this._ts || this._repeat && this._time && this.totalProgress() < 1) ? this._tTime % (this._dur + this._rDelay) : !this._ts ? this._tTime : _parentToChildTotalTime(parent.rawTime(wrapRepeats), this);\n  };\n\n  _proto.revert = function revert(config) {\n    if (config === void 0) {\n      config = _revertConfig;\n    }\n\n    var prevIsReverting = _reverting;\n    _reverting = config;\n\n    if (_isRevertWorthy(this)) {\n      this.timeline && this.timeline.revert(config);\n      this.totalTime(-0.01, config.suppressEvents);\n    }\n\n    this.data !== \"nested\" && config.kill !== false && this.kill();\n    _reverting = prevIsReverting;\n    return this;\n  };\n\n  _proto.globalTime = function globalTime(rawTime) {\n    var animation = this,\n        time = arguments.length ? rawTime : animation.rawTime();\n\n    while (animation) {\n      time = animation._start + time / (Math.abs(animation._ts) || 1);\n      animation = animation._dp;\n    }\n\n    return !this.parent && this._sat ? this._sat.globalTime(rawTime) : time; // the _startAt tweens for .fromTo() and .from() that have immediateRender should always be FIRST in the timeline (important for context.revert()). \"_sat\" stands for _startAtTween, referring to the parent tween that created the _startAt. We must discern if that tween had immediateRender so that we can know whether or not to prioritize it in revert().\n  };\n\n  _proto.repeat = function repeat(value) {\n    if (arguments.length) {\n      this._repeat = value === Infinity ? -2 : value;\n      return _onUpdateTotalDuration(this);\n    }\n\n    return this._repeat === -2 ? Infinity : this._repeat;\n  };\n\n  _proto.repeatDelay = function repeatDelay(value) {\n    if (arguments.length) {\n      var time = this._time;\n      this._rDelay = value;\n\n      _onUpdateTotalDuration(this);\n\n      return time ? this.time(time) : this;\n    }\n\n    return this._rDelay;\n  };\n\n  _proto.yoyo = function yoyo(value) {\n    if (arguments.length) {\n      this._yoyo = value;\n      return this;\n    }\n\n    return this._yoyo;\n  };\n\n  _proto.seek = function seek(position, suppressEvents) {\n    return this.totalTime(_parsePosition(this, position), _isNotFalse(suppressEvents));\n  };\n\n  _proto.restart = function restart(includeDelay, suppressEvents) {\n    this.play().totalTime(includeDelay ? -this._delay : 0, _isNotFalse(suppressEvents));\n    this._dur || (this._zTime = -_tinyNum); // ensures onComplete fires on a zero-duration animation that gets restarted.\n\n    return this;\n  };\n\n  _proto.play = function play(from, suppressEvents) {\n    from != null && this.seek(from, suppressEvents);\n    return this.reversed(false).paused(false);\n  };\n\n  _proto.reverse = function reverse(from, suppressEvents) {\n    from != null && this.seek(from || this.totalDuration(), suppressEvents);\n    return this.reversed(true).paused(false);\n  };\n\n  _proto.pause = function pause(atTime, suppressEvents) {\n    atTime != null && this.seek(atTime, suppressEvents);\n    return this.paused(true);\n  };\n\n  _proto.resume = function resume() {\n    return this.paused(false);\n  };\n\n  _proto.reversed = function reversed(value) {\n    if (arguments.length) {\n      !!value !== this.reversed() && this.timeScale(-this._rts || (value ? -_tinyNum : 0)); // in case timeScale is zero, reversing would have no effect so we use _tinyNum.\n\n      return this;\n    }\n\n    return this._rts < 0;\n  };\n\n  _proto.invalidate = function invalidate() {\n    this._initted = this._act = 0;\n    this._zTime = -_tinyNum;\n    return this;\n  };\n\n  _proto.isActive = function isActive() {\n    var parent = this.parent || this._dp,\n        start = this._start,\n        rawTime;\n    return !!(!parent || this._ts && this._initted && parent.isActive() && (rawTime = parent.rawTime(true)) >= start && rawTime < this.endTime(true) - _tinyNum);\n  };\n\n  _proto.eventCallback = function eventCallback(type, callback, params) {\n    var vars = this.vars;\n\n    if (arguments.length > 1) {\n      if (!callback) {\n        delete vars[type];\n      } else {\n        vars[type] = callback;\n        params && (vars[type + \"Params\"] = params);\n        type === \"onUpdate\" && (this._onUpdate = callback);\n      }\n\n      return this;\n    }\n\n    return vars[type];\n  };\n\n  _proto.then = function then(onFulfilled) {\n    var self = this,\n        prevProm = self._prom;\n    return new Promise(function (resolve) {\n      var f = _isFunction(onFulfilled) ? onFulfilled : _passThrough,\n          _resolve = function _resolve() {\n        var _then = self.then;\n        self.then = null; // temporarily null the then() method to avoid an infinite loop (see https://github.com/greensock/GSAP/issues/322)\n\n        prevProm && prevProm();\n        _isFunction(f) && (f = f(self)) && (f.then || f === self) && (self.then = _then);\n        resolve(f);\n        self.then = _then;\n      };\n\n      if (self._initted && self.totalProgress() === 1 && self._ts >= 0 || !self._tTime && self._ts < 0) {\n        _resolve();\n      } else {\n        self._prom = _resolve;\n      }\n    });\n  };\n\n  _proto.kill = function kill() {\n    _interrupt(this);\n  };\n\n  return Animation;\n}();\n\n_setDefaults(Animation.prototype, {\n  _time: 0,\n  _start: 0,\n  _end: 0,\n  _tTime: 0,\n  _tDur: 0,\n  _dirty: 0,\n  _repeat: 0,\n  _yoyo: false,\n  parent: null,\n  _initted: false,\n  _rDelay: 0,\n  _ts: 1,\n  _dp: 0,\n  ratio: 0,\n  _zTime: -_tinyNum,\n  _prom: 0,\n  _ps: false,\n  _rts: 1\n});\n/*\n * -------------------------------------------------\n * TIMELINE\n * -------------------------------------------------\n */\n\n\nvar Timeline = /*#__PURE__*/function (_Animation) {\n  _inheritsLoose(Timeline, _Animation);\n\n  function Timeline(vars, position) {\n    var _this;\n\n    if (vars === void 0) {\n      vars = {};\n    }\n\n    _this = _Animation.call(this, vars) || this;\n    _this.labels = {};\n    _this.smoothChildTiming = !!vars.smoothChildTiming;\n    _this.autoRemoveChildren = !!vars.autoRemoveChildren;\n    _this._sort = _isNotFalse(vars.sortChildren);\n    _globalTimeline && _addToTimeline(vars.parent || _globalTimeline, _assertThisInitialized(_this), position);\n    vars.reversed && _this.reverse();\n    vars.paused && _this.paused(true);\n    vars.scrollTrigger && _scrollTrigger(_assertThisInitialized(_this), vars.scrollTrigger);\n    return _this;\n  }\n\n  var _proto2 = Timeline.prototype;\n\n  _proto2.to = function to(targets, vars, position) {\n    _createTweenType(0, arguments, this);\n\n    return this;\n  };\n\n  _proto2.from = function from(targets, vars, position) {\n    _createTweenType(1, arguments, this);\n\n    return this;\n  };\n\n  _proto2.fromTo = function fromTo(targets, fromVars, toVars, position) {\n    _createTweenType(2, arguments, this);\n\n    return this;\n  };\n\n  _proto2.set = function set(targets, vars, position) {\n    vars.duration = 0;\n    vars.parent = this;\n    _inheritDefaults(vars).repeatDelay || (vars.repeat = 0);\n    vars.immediateRender = !!vars.immediateRender;\n    new Tween(targets, vars, _parsePosition(this, position), 1);\n    return this;\n  };\n\n  _proto2.call = function call(callback, params, position) {\n    return _addToTimeline(this, Tween.delayedCall(0, callback, params), position);\n  } //ONLY for backward compatibility! Maybe delete?\n  ;\n\n  _proto2.staggerTo = function staggerTo(targets, duration, vars, stagger, position, onCompleteAll, onCompleteAllParams) {\n    vars.duration = duration;\n    vars.stagger = vars.stagger || stagger;\n    vars.onComplete = onCompleteAll;\n    vars.onCompleteParams = onCompleteAllParams;\n    vars.parent = this;\n    new Tween(targets, vars, _parsePosition(this, position));\n    return this;\n  };\n\n  _proto2.staggerFrom = function staggerFrom(targets, duration, vars, stagger, position, onCompleteAll, onCompleteAllParams) {\n    vars.runBackwards = 1;\n    _inheritDefaults(vars).immediateRender = _isNotFalse(vars.immediateRender);\n    return this.staggerTo(targets, duration, vars, stagger, position, onCompleteAll, onCompleteAllParams);\n  };\n\n  _proto2.staggerFromTo = function staggerFromTo(targets, duration, fromVars, toVars, stagger, position, onCompleteAll, onCompleteAllParams) {\n    toVars.startAt = fromVars;\n    _inheritDefaults(toVars).immediateRender = _isNotFalse(toVars.immediateRender);\n    return this.staggerTo(targets, duration, toVars, stagger, position, onCompleteAll, onCompleteAllParams);\n  };\n\n  _proto2.render = function render(totalTime, suppressEvents, force) {\n    var prevTime = this._time,\n        tDur = this._dirty ? this.totalDuration() : this._tDur,\n        dur = this._dur,\n        tTime = totalTime <= 0 ? 0 : _roundPrecise(totalTime),\n        // if a paused timeline is resumed (or its _start is updated for another reason...which rounds it), that could result in the playhead shifting a **tiny** amount and a zero-duration child at that spot may get rendered at a different ratio, like its totalTime in render() may be 1e-17 instead of 0, for example.\n    crossingStart = this._zTime < 0 !== totalTime < 0 && (this._initted || !dur),\n        time,\n        child,\n        next,\n        iteration,\n        cycleDuration,\n        prevPaused,\n        pauseTween,\n        timeScale,\n        prevStart,\n        prevIteration,\n        yoyo,\n        isYoyo;\n    this !== _globalTimeline && tTime > tDur && totalTime >= 0 && (tTime = tDur);\n\n    if (tTime !== this._tTime || force || crossingStart) {\n      if (prevTime !== this._time && dur) {\n        //if totalDuration() finds a child with a negative startTime and smoothChildTiming is true, things get shifted around internally so we need to adjust the time accordingly. For example, if a tween starts at -30 we must shift EVERYTHING forward 30 seconds and move this timeline's startTime backward by 30 seconds so that things align with the playhead (no jump).\n        tTime += this._time - prevTime;\n        totalTime += this._time - prevTime;\n      }\n\n      time = tTime;\n      prevStart = this._start;\n      timeScale = this._ts;\n      prevPaused = !timeScale;\n\n      if (crossingStart) {\n        dur || (prevTime = this._zTime); //when the playhead arrives at EXACTLY time 0 (right on top) of a zero-duration timeline, we need to discern if events are suppressed so that when the playhead moves again (next time), it'll trigger the callback. If events are NOT suppressed, obviously the callback would be triggered in this render. Basically, the callback should fire either when the playhead ARRIVES or LEAVES this exact spot, not both. Imagine doing a timeline.seek(0) and there's a callback that sits at 0. Since events are suppressed on that seek() by default, nothing will fire, but when the playhead moves off of that position, the callback should fire. This behavior is what people intuitively expect.\n\n        (totalTime || !suppressEvents) && (this._zTime = totalTime);\n      }\n\n      if (this._repeat) {\n        //adjust the time for repeats and yoyos\n        yoyo = this._yoyo;\n        cycleDuration = dur + this._rDelay;\n\n        if (this._repeat < -1 && totalTime < 0) {\n          return this.totalTime(cycleDuration * 100 + totalTime, suppressEvents, force);\n        }\n\n        time = _roundPrecise(tTime % cycleDuration); //round to avoid floating point errors. (4 % 0.8 should be 0 but some browsers report it as 0.79999999!)\n\n        if (tTime === tDur) {\n          // the tDur === tTime is for edge cases where there's a lengthy decimal on the duration and it may reach the very end but the time is rendered as not-quite-there (remember, tDur is rounded to 4 decimals whereas dur isn't)\n          iteration = this._repeat;\n          time = dur;\n        } else {\n          prevIteration = _roundPrecise(tTime / cycleDuration); // full decimal version of iterations, not the previous iteration (we're reusing prevIteration variable for efficiency)\n\n          iteration = ~~prevIteration;\n\n          if (iteration && iteration === prevIteration) {\n            time = dur;\n            iteration--;\n          }\n\n          time > dur && (time = dur);\n        }\n\n        prevIteration = _animationCycle(this._tTime, cycleDuration);\n        !prevTime && this._tTime && prevIteration !== iteration && this._tTime - prevIteration * cycleDuration - this._dur <= 0 && (prevIteration = iteration); // edge case - if someone does addPause() at the very beginning of a repeating timeline, that pause is technically at the same spot as the end which causes this._time to get set to 0 when the totalTime would normally place the playhead at the end. See https://gsap.com/forums/topic/23823-closing-nav-animation-not-working-on-ie-and-iphone-6-maybe-other-older-browser/?tab=comments#comment-113005 also, this._tTime - prevIteration * cycleDuration - this._dur <= 0 just checks to make sure it wasn't previously in the \"repeatDelay\" portion\n\n        if (yoyo && iteration & 1) {\n          time = dur - time;\n          isYoyo = 1;\n        }\n        /*\n        make sure children at the end/beginning of the timeline are rendered properly. If, for example,\n        a 3-second long timeline rendered at 2.9 seconds previously, and now renders at 3.2 seconds (which\n        would get translated to 2.8 seconds if the timeline yoyos or 0.2 seconds if it just repeats), there\n        could be a callback or a short tween that's at 2.95 or 3 seconds in which wouldn't render. So\n        we need to push the timeline to the end (and/or beginning depending on its yoyo value). Also we must\n        ensure that zero-duration tweens at the very beginning or end of the Timeline work.\n        */\n\n\n        if (iteration !== prevIteration && !this._lock) {\n          var rewinding = yoyo && prevIteration & 1,\n              doesWrap = rewinding === (yoyo && iteration & 1);\n          iteration < prevIteration && (rewinding = !rewinding);\n          prevTime = rewinding ? 0 : tTime % dur ? dur : tTime; // if the playhead is landing exactly at the end of an iteration, use that totalTime rather than only the duration, otherwise it'll skip the 2nd render since it's effectively at the same time.\n\n          this._lock = 1;\n          this.render(prevTime || (isYoyo ? 0 : _roundPrecise(iteration * cycleDuration)), suppressEvents, !dur)._lock = 0;\n          this._tTime = tTime; // if a user gets the iteration() inside the onRepeat, for example, it should be accurate.\n\n          !suppressEvents && this.parent && _callback(this, \"onRepeat\");\n\n          if (this.vars.repeatRefresh && !isYoyo) {\n            this.invalidate()._lock = 1;\n            prevIteration = iteration; // otherwise, the onStart() may fire on the 2nd iteration.\n          }\n\n          if (prevTime && prevTime !== this._time || prevPaused !== !this._ts || this.vars.onRepeat && !this.parent && !this._act) {\n            // if prevTime is 0 and we render at the very end, _time will be the end, thus won't match. So in this edge case, prevTime won't match _time but that's okay. If it gets killed in the onRepeat, eject as well.\n            return this;\n          }\n\n          dur = this._dur; // in case the duration changed in the onRepeat\n\n          tDur = this._tDur;\n\n          if (doesWrap) {\n            this._lock = 2;\n            prevTime = rewinding ? dur : -0.0001;\n            this.render(prevTime, true);\n            this.vars.repeatRefresh && !isYoyo && this.invalidate();\n          }\n\n          this._lock = 0;\n\n          if (!this._ts && !prevPaused) {\n            return this;\n          }\n        }\n      }\n\n      if (this._hasPause && !this._forcing && this._lock < 2) {\n        pauseTween = _findNextPauseTween(this, _roundPrecise(prevTime), _roundPrecise(time));\n\n        if (pauseTween) {\n          tTime -= time - (time = pauseTween._start);\n        }\n      }\n\n      this._tTime = tTime;\n      this._time = time;\n      this._act = !!timeScale; // as long as it's not paused, force it to be active so that if the user renders independent of the parent timeline, it'll be forced to re-render on the next tick.\n\n      if (!this._initted) {\n        this._onUpdate = this.vars.onUpdate;\n        this._initted = 1;\n        this._zTime = totalTime;\n        prevTime = 0; // upon init, the playhead should always go forward; someone could invalidate() a completed timeline and then if they restart(), that would make child tweens render in reverse order which could lock in the wrong starting values if they build on each other, like tl.to(obj, {x: 100}).to(obj, {x: 0}).\n      }\n\n      if (!prevTime && tTime && dur && !suppressEvents && !prevIteration) {\n        _callback(this, \"onStart\");\n\n        if (this._tTime !== tTime) {\n          // in case the onStart triggered a render at a different spot, eject. Like if someone did animation.pause(0.5) or something inside the onStart.\n          return this;\n        }\n      }\n\n      if (time >= prevTime && totalTime >= 0) {\n        child = this._first;\n\n        while (child) {\n          next = child._next;\n\n          if ((child._act || time >= child._start) && child._ts && pauseTween !== child) {\n            if (child.parent !== this) {\n              // an extreme edge case - the child's render could do something like kill() the \"next\" one in the linked list, or reparent it. In that case we must re-initiate the whole render to be safe.\n              return this.render(totalTime, suppressEvents, force);\n            }\n\n            child.render(child._ts > 0 ? (time - child._start) * child._ts : (child._dirty ? child.totalDuration() : child._tDur) + (time - child._start) * child._ts, suppressEvents, force);\n\n            if (time !== this._time || !this._ts && !prevPaused) {\n              //in case a tween pauses or seeks the timeline when rendering, like inside of an onUpdate/onComplete\n              pauseTween = 0;\n              next && (tTime += this._zTime = -_tinyNum); // it didn't finish rendering, so flag zTime as negative so that the next time render() is called it'll be forced (to render any remaining children)\n\n              break;\n            }\n          }\n\n          child = next;\n        }\n      } else {\n        child = this._last;\n        var adjustedTime = totalTime < 0 ? totalTime : time; //when the playhead goes backward beyond the start of this timeline, we must pass that information down to the child animations so that zero-duration tweens know whether to render their starting or ending values.\n\n        while (child) {\n          next = child._prev;\n\n          if ((child._act || adjustedTime <= child._end) && child._ts && pauseTween !== child) {\n            if (child.parent !== this) {\n              // an extreme edge case - the child's render could do something like kill() the \"next\" one in the linked list, or reparent it. In that case we must re-initiate the whole render to be safe.\n              return this.render(totalTime, suppressEvents, force);\n            }\n\n            child.render(child._ts > 0 ? (adjustedTime - child._start) * child._ts : (child._dirty ? child.totalDuration() : child._tDur) + (adjustedTime - child._start) * child._ts, suppressEvents, force || _reverting && _isRevertWorthy(child)); // if reverting, we should always force renders of initted tweens (but remember that .fromTo() or .from() may have a _startAt but not _initted yet). If, for example, a .fromTo() tween with a stagger (which creates an internal timeline) gets reverted BEFORE some of its child tweens render for the first time, it may not properly trigger them to revert.\n\n            if (time !== this._time || !this._ts && !prevPaused) {\n              //in case a tween pauses or seeks the timeline when rendering, like inside of an onUpdate/onComplete\n              pauseTween = 0;\n              next && (tTime += this._zTime = adjustedTime ? -_tinyNum : _tinyNum); // it didn't finish rendering, so adjust zTime so that so that the next time render() is called it'll be forced (to render any remaining children)\n\n              break;\n            }\n          }\n\n          child = next;\n        }\n      }\n\n      if (pauseTween && !suppressEvents) {\n        this.pause();\n        pauseTween.render(time >= prevTime ? 0 : -_tinyNum)._zTime = time >= prevTime ? 1 : -1;\n\n        if (this._ts) {\n          //the callback resumed playback! So since we may have held back the playhead due to where the pause is positioned, go ahead and jump to where it's SUPPOSED to be (if no pause happened).\n          this._start = prevStart; //if the pause was at an earlier time and the user resumed in the callback, it could reposition the timeline (changing its startTime), throwing things off slightly, so we make sure the _start doesn't shift.\n\n          _setEnd(this);\n\n          return this.render(totalTime, suppressEvents, force);\n        }\n      }\n\n      this._onUpdate && !suppressEvents && _callback(this, \"onUpdate\", true);\n      if (tTime === tDur && this._tTime >= this.totalDuration() || !tTime && prevTime) if (prevStart === this._start || Math.abs(timeScale) !== Math.abs(this._ts)) if (!this._lock) {\n        // remember, a child's callback may alter this timeline's playhead or timeScale which is why we need to add some of these checks.\n        (totalTime || !dur) && (tTime === tDur && this._ts > 0 || !tTime && this._ts < 0) && _removeFromParent(this, 1); // don't remove if the timeline is reversed and the playhead isn't at 0, otherwise tl.progress(1).reverse() won't work. Only remove if the playhead is at the end and timeScale is positive, or if the playhead is at 0 and the timeScale is negative.\n\n        if (!suppressEvents && !(totalTime < 0 && !prevTime) && (tTime || prevTime || !tDur)) {\n          _callback(this, tTime === tDur && totalTime >= 0 ? \"onComplete\" : \"onReverseComplete\", true);\n\n          this._prom && !(tTime < tDur && this.timeScale() > 0) && this._prom();\n        }\n      }\n    }\n\n    return this;\n  };\n\n  _proto2.add = function add(child, position) {\n    var _this2 = this;\n\n    _isNumber(position) || (position = _parsePosition(this, position, child));\n\n    if (!(child instanceof Animation)) {\n      if (_isArray(child)) {\n        child.forEach(function (obj) {\n          return _this2.add(obj, position);\n        });\n        return this;\n      }\n\n      if (_isString(child)) {\n        return this.addLabel(child, position);\n      }\n\n      if (_isFunction(child)) {\n        child = Tween.delayedCall(0, child);\n      } else {\n        return this;\n      }\n    }\n\n    return this !== child ? _addToTimeline(this, child, position) : this; //don't allow a timeline to be added to itself as a child!\n  };\n\n  _proto2.getChildren = function getChildren(nested, tweens, timelines, ignoreBeforeTime) {\n    if (nested === void 0) {\n      nested = true;\n    }\n\n    if (tweens === void 0) {\n      tweens = true;\n    }\n\n    if (timelines === void 0) {\n      timelines = true;\n    }\n\n    if (ignoreBeforeTime === void 0) {\n      ignoreBeforeTime = -_bigNum;\n    }\n\n    var a = [],\n        child = this._first;\n\n    while (child) {\n      if (child._start >= ignoreBeforeTime) {\n        if (child instanceof Tween) {\n          tweens && a.push(child);\n        } else {\n          timelines && a.push(child);\n          nested && a.push.apply(a, child.getChildren(true, tweens, timelines));\n        }\n      }\n\n      child = child._next;\n    }\n\n    return a;\n  };\n\n  _proto2.getById = function getById(id) {\n    var animations = this.getChildren(1, 1, 1),\n        i = animations.length;\n\n    while (i--) {\n      if (animations[i].vars.id === id) {\n        return animations[i];\n      }\n    }\n  };\n\n  _proto2.remove = function remove(child) {\n    if (_isString(child)) {\n      return this.removeLabel(child);\n    }\n\n    if (_isFunction(child)) {\n      return this.killTweensOf(child);\n    }\n\n    child.parent === this && _removeLinkedListItem(this, child);\n\n    if (child === this._recent) {\n      this._recent = this._last;\n    }\n\n    return _uncache(this);\n  };\n\n  _proto2.totalTime = function totalTime(_totalTime2, suppressEvents) {\n    if (!arguments.length) {\n      return this._tTime;\n    }\n\n    this._forcing = 1;\n\n    if (!this._dp && this._ts) {\n      //special case for the global timeline (or any other that has no parent or detached parent).\n      this._start = _roundPrecise(_ticker.time - (this._ts > 0 ? _totalTime2 / this._ts : (this.totalDuration() - _totalTime2) / -this._ts));\n    }\n\n    _Animation.prototype.totalTime.call(this, _totalTime2, suppressEvents);\n\n    this._forcing = 0;\n    return this;\n  };\n\n  _proto2.addLabel = function addLabel(label, position) {\n    this.labels[label] = _parsePosition(this, position);\n    return this;\n  };\n\n  _proto2.removeLabel = function removeLabel(label) {\n    delete this.labels[label];\n    return this;\n  };\n\n  _proto2.addPause = function addPause(position, callback, params) {\n    var t = Tween.delayedCall(0, callback || _emptyFunc, params);\n    t.data = \"isPause\";\n    this._hasPause = 1;\n    return _addToTimeline(this, t, _parsePosition(this, position));\n  };\n\n  _proto2.removePause = function removePause(position) {\n    var child = this._first;\n    position = _parsePosition(this, position);\n\n    while (child) {\n      if (child._start === position && child.data === \"isPause\") {\n        _removeFromParent(child);\n      }\n\n      child = child._next;\n    }\n  };\n\n  _proto2.killTweensOf = function killTweensOf(targets, props, onlyActive) {\n    var tweens = this.getTweensOf(targets, onlyActive),\n        i = tweens.length;\n\n    while (i--) {\n      _overwritingTween !== tweens[i] && tweens[i].kill(targets, props);\n    }\n\n    return this;\n  };\n\n  _proto2.getTweensOf = function getTweensOf(targets, onlyActive) {\n    var a = [],\n        parsedTargets = toArray(targets),\n        child = this._first,\n        isGlobalTime = _isNumber(onlyActive),\n        // a number is interpreted as a global time. If the animation spans\n    children;\n\n    while (child) {\n      if (child instanceof Tween) {\n        if (_arrayContainsAny(child._targets, parsedTargets) && (isGlobalTime ? (!_overwritingTween || child._initted && child._ts) && child.globalTime(0) <= onlyActive && child.globalTime(child.totalDuration()) > onlyActive : !onlyActive || child.isActive())) {\n          // note: if this is for overwriting, it should only be for tweens that aren't paused and are initted.\n          a.push(child);\n        }\n      } else if ((children = child.getTweensOf(parsedTargets, onlyActive)).length) {\n        a.push.apply(a, children);\n      }\n\n      child = child._next;\n    }\n\n    return a;\n  } // potential future feature - targets() on timelines\n  // targets() {\n  // \tlet result = [];\n  // \tthis.getChildren(true, true, false).forEach(t => result.push(...t.targets()));\n  // \treturn result.filter((v, i) => result.indexOf(v) === i);\n  // }\n  ;\n\n  _proto2.tweenTo = function tweenTo(position, vars) {\n    vars = vars || {};\n\n    var tl = this,\n        endTime = _parsePosition(tl, position),\n        _vars = vars,\n        startAt = _vars.startAt,\n        _onStart = _vars.onStart,\n        onStartParams = _vars.onStartParams,\n        immediateRender = _vars.immediateRender,\n        initted,\n        tween = Tween.to(tl, _setDefaults({\n      ease: vars.ease || \"none\",\n      lazy: false,\n      immediateRender: false,\n      time: endTime,\n      overwrite: \"auto\",\n      duration: vars.duration || Math.abs((endTime - (startAt && \"time\" in startAt ? startAt.time : tl._time)) / tl.timeScale()) || _tinyNum,\n      onStart: function onStart() {\n        tl.pause();\n\n        if (!initted) {\n          var duration = vars.duration || Math.abs((endTime - (startAt && \"time\" in startAt ? startAt.time : tl._time)) / tl.timeScale());\n          tween._dur !== duration && _setDuration(tween, duration, 0, 1).render(tween._time, true, true);\n          initted = 1;\n        }\n\n        _onStart && _onStart.apply(tween, onStartParams || []); //in case the user had an onStart in the vars - we don't want to overwrite it.\n      }\n    }, vars));\n\n    return immediateRender ? tween.render(0) : tween;\n  };\n\n  _proto2.tweenFromTo = function tweenFromTo(fromPosition, toPosition, vars) {\n    return this.tweenTo(toPosition, _setDefaults({\n      startAt: {\n        time: _parsePosition(this, fromPosition)\n      }\n    }, vars));\n  };\n\n  _proto2.recent = function recent() {\n    return this._recent;\n  };\n\n  _proto2.nextLabel = function nextLabel(afterTime) {\n    if (afterTime === void 0) {\n      afterTime = this._time;\n    }\n\n    return _getLabelInDirection(this, _parsePosition(this, afterTime));\n  };\n\n  _proto2.previousLabel = function previousLabel(beforeTime) {\n    if (beforeTime === void 0) {\n      beforeTime = this._time;\n    }\n\n    return _getLabelInDirection(this, _parsePosition(this, beforeTime), 1);\n  };\n\n  _proto2.currentLabel = function currentLabel(value) {\n    return arguments.length ? this.seek(value, true) : this.previousLabel(this._time + _tinyNum);\n  };\n\n  _proto2.shiftChildren = function shiftChildren(amount, adjustLabels, ignoreBeforeTime) {\n    if (ignoreBeforeTime === void 0) {\n      ignoreBeforeTime = 0;\n    }\n\n    var child = this._first,\n        labels = this.labels,\n        p;\n    amount = _roundPrecise(amount);\n\n    while (child) {\n      if (child._start >= ignoreBeforeTime) {\n        child._start += amount;\n        child._end += amount;\n      }\n\n      child = child._next;\n    }\n\n    if (adjustLabels) {\n      for (p in labels) {\n        if (labels[p] >= ignoreBeforeTime) {\n          labels[p] += amount;\n        }\n      }\n    }\n\n    return _uncache(this);\n  };\n\n  _proto2.invalidate = function invalidate(soft) {\n    var child = this._first;\n    this._lock = 0;\n\n    while (child) {\n      child.invalidate(soft);\n      child = child._next;\n    }\n\n    return _Animation.prototype.invalidate.call(this, soft);\n  };\n\n  _proto2.clear = function clear(includeLabels) {\n    if (includeLabels === void 0) {\n      includeLabels = true;\n    }\n\n    var child = this._first,\n        next;\n\n    while (child) {\n      next = child._next;\n      this.remove(child);\n      child = next;\n    }\n\n    this._dp && (this._time = this._tTime = this._pTime = 0);\n    includeLabels && (this.labels = {});\n    return _uncache(this);\n  };\n\n  _proto2.totalDuration = function totalDuration(value) {\n    var max = 0,\n        self = this,\n        child = self._last,\n        prevStart = _bigNum,\n        prev,\n        start,\n        parent;\n\n    if (arguments.length) {\n      return self.timeScale((self._repeat < 0 ? self.duration() : self.totalDuration()) / (self.reversed() ? -value : value));\n    }\n\n    if (self._dirty) {\n      parent = self.parent;\n\n      while (child) {\n        prev = child._prev; //record it here in case the tween changes position in the sequence...\n\n        child._dirty && child.totalDuration(); //could change the tween._startTime, so make sure the animation's cache is clean before analyzing it.\n\n        start = child._start;\n\n        if (start > prevStart && self._sort && child._ts && !self._lock) {\n          //in case one of the tweens shifted out of order, it needs to be re-inserted into the correct position in the sequence\n          self._lock = 1; //prevent endless recursive calls - there are methods that get triggered that check duration/totalDuration when we add().\n\n          _addToTimeline(self, child, start - child._delay, 1)._lock = 0;\n        } else {\n          prevStart = start;\n        }\n\n        if (start < 0 && child._ts) {\n          //children aren't allowed to have negative startTimes unless smoothChildTiming is true, so adjust here if one is found.\n          max -= start;\n\n          if (!parent && !self._dp || parent && parent.smoothChildTiming) {\n            self._start += _roundPrecise(start / self._ts);\n            self._time -= start;\n            self._tTime -= start;\n          }\n\n          self.shiftChildren(-start, false, -1e999);\n          prevStart = 0;\n        }\n\n        child._end > max && child._ts && (max = child._end);\n        child = prev;\n      }\n\n      _setDuration(self, self === _globalTimeline && self._time > max ? self._time : max, 1, 1);\n\n      self._dirty = 0;\n    }\n\n    return self._tDur;\n  };\n\n  Timeline.updateRoot = function updateRoot(time) {\n    if (_globalTimeline._ts) {\n      _lazySafeRender(_globalTimeline, _parentToChildTotalTime(time, _globalTimeline));\n\n      _lastRenderedFrame = _ticker.frame;\n    }\n\n    if (_ticker.frame >= _nextGCFrame) {\n      _nextGCFrame += _config.autoSleep || 120;\n      var child = _globalTimeline._first;\n      if (!child || !child._ts) if (_config.autoSleep && _ticker._listeners.length < 2) {\n        while (child && !child._ts) {\n          child = child._next;\n        }\n\n        child || _ticker.sleep();\n      }\n    }\n  };\n\n  return Timeline;\n}(Animation);\n\n_setDefaults(Timeline.prototype, {\n  _lock: 0,\n  _hasPause: 0,\n  _forcing: 0\n});\n\nvar _addComplexStringPropTween = function _addComplexStringPropTween(target, prop, start, end, setter, stringFilter, funcParam) {\n  //note: we call _addComplexStringPropTween.call(tweenInstance...) to ensure that it's scoped properly. We may call it from within a plugin too, thus \"this\" would refer to the plugin.\n  var pt = new PropTween(this._pt, target, prop, 0, 1, _renderComplexString, null, setter),\n      index = 0,\n      matchIndex = 0,\n      result,\n      startNums,\n      color,\n      endNum,\n      chunk,\n      startNum,\n      hasRandom,\n      a;\n  pt.b = start;\n  pt.e = end;\n  start += \"\"; //ensure values are strings\n\n  end += \"\";\n\n  if (hasRandom = ~end.indexOf(\"random(\")) {\n    end = _replaceRandom(end);\n  }\n\n  if (stringFilter) {\n    a = [start, end];\n    stringFilter(a, target, prop); //pass an array with the starting and ending values and let the filter do whatever it needs to the values.\n\n    start = a[0];\n    end = a[1];\n  }\n\n  startNums = start.match(_complexStringNumExp) || [];\n\n  while (result = _complexStringNumExp.exec(end)) {\n    endNum = result[0];\n    chunk = end.substring(index, result.index);\n\n    if (color) {\n      color = (color + 1) % 5;\n    } else if (chunk.substr(-5) === \"rgba(\") {\n      color = 1;\n    }\n\n    if (endNum !== startNums[matchIndex++]) {\n      startNum = parseFloat(startNums[matchIndex - 1]) || 0; //these nested PropTweens are handled in a special way - we'll never actually call a render or setter method on them. We'll just loop through them in the parent complex string PropTween's render method.\n\n      pt._pt = {\n        _next: pt._pt,\n        p: chunk || matchIndex === 1 ? chunk : \",\",\n        //note: SVG spec allows omission of comma/space when a negative sign is wedged between two numbers, like 2.5-5.3 instead of 2.5,-5.3 but when tweening, the negative value may switch to positive, so we insert the comma just in case.\n        s: startNum,\n        c: endNum.charAt(1) === \"=\" ? _parseRelative(startNum, endNum) - startNum : parseFloat(endNum) - startNum,\n        m: color && color < 4 ? Math.round : 0\n      };\n      index = _complexStringNumExp.lastIndex;\n    }\n  }\n\n  pt.c = index < end.length ? end.substring(index, end.length) : \"\"; //we use the \"c\" of the PropTween to store the final part of the string (after the last number)\n\n  pt.fp = funcParam;\n\n  if (_relExp.test(end) || hasRandom) {\n    pt.e = 0; //if the end string contains relative values or dynamic random(...) values, delete the end it so that on the final render we don't actually set it to the string with += or -= characters (forces it to use the calculated value).\n  }\n\n  this._pt = pt; //start the linked list with this new PropTween. Remember, we call _addComplexStringPropTween.call(tweenInstance...) to ensure that it's scoped properly. We may call it from within a plugin too, thus \"this\" would refer to the plugin.\n\n  return pt;\n},\n    _addPropTween = function _addPropTween(target, prop, start, end, index, targets, modifier, stringFilter, funcParam, optional) {\n  _isFunction(end) && (end = end(index || 0, target, targets));\n  var currentValue = target[prop],\n      parsedStart = start !== \"get\" ? start : !_isFunction(currentValue) ? currentValue : funcParam ? target[prop.indexOf(\"set\") || !_isFunction(target[\"get\" + prop.substr(3)]) ? prop : \"get\" + prop.substr(3)](funcParam) : target[prop](),\n      setter = !_isFunction(currentValue) ? _setterPlain : funcParam ? _setterFuncWithParam : _setterFunc,\n      pt;\n\n  if (_isString(end)) {\n    if (~end.indexOf(\"random(\")) {\n      end = _replaceRandom(end);\n    }\n\n    if (end.charAt(1) === \"=\") {\n      pt = _parseRelative(parsedStart, end) + (getUnit(parsedStart) || 0);\n\n      if (pt || pt === 0) {\n        // to avoid isNaN, like if someone passes in a value like \"!= whatever\"\n        end = pt;\n      }\n    }\n  }\n\n  if (!optional || parsedStart !== end || _forceAllPropTweens) {\n    if (!isNaN(parsedStart * end) && end !== \"\") {\n      // fun fact: any number multiplied by \"\" is evaluated as the number 0!\n      pt = new PropTween(this._pt, target, prop, +parsedStart || 0, end - (parsedStart || 0), typeof currentValue === \"boolean\" ? _renderBoolean : _renderPlain, 0, setter);\n      funcParam && (pt.fp = funcParam);\n      modifier && pt.modifier(modifier, this, target);\n      return this._pt = pt;\n    }\n\n    !currentValue && !(prop in target) && _missingPlugin(prop, end);\n    return _addComplexStringPropTween.call(this, target, prop, parsedStart, end, setter, stringFilter || _config.stringFilter, funcParam);\n  }\n},\n    //creates a copy of the vars object and processes any function-based values (putting the resulting values directly into the copy) as well as strings with \"random()\" in them. It does NOT process relative values.\n_processVars = function _processVars(vars, index, target, targets, tween) {\n  _isFunction(vars) && (vars = _parseFuncOrString(vars, tween, index, target, targets));\n\n  if (!_isObject(vars) || vars.style && vars.nodeType || _isArray(vars) || _isTypedArray(vars)) {\n    return _isString(vars) ? _parseFuncOrString(vars, tween, index, target, targets) : vars;\n  }\n\n  var copy = {},\n      p;\n\n  for (p in vars) {\n    copy[p] = _parseFuncOrString(vars[p], tween, index, target, targets);\n  }\n\n  return copy;\n},\n    _checkPlugin = function _checkPlugin(property, vars, tween, index, target, targets) {\n  var plugin, pt, ptLookup, i;\n\n  if (_plugins[property] && (plugin = new _plugins[property]()).init(target, plugin.rawVars ? vars[property] : _processVars(vars[property], index, target, targets, tween), tween, index, targets) !== false) {\n    tween._pt = pt = new PropTween(tween._pt, target, property, 0, 1, plugin.render, plugin, 0, plugin.priority);\n\n    if (tween !== _quickTween) {\n      ptLookup = tween._ptLookup[tween._targets.indexOf(target)]; //note: we can't use tween._ptLookup[index] because for staggered tweens, the index from the fullTargets array won't match what it is in each individual tween that spawns from the stagger.\n\n      i = plugin._props.length;\n\n      while (i--) {\n        ptLookup[plugin._props[i]] = pt;\n      }\n    }\n  }\n\n  return plugin;\n},\n    _overwritingTween,\n    //store a reference temporarily so we can avoid overwriting itself.\n_forceAllPropTweens,\n    _initTween = function _initTween(tween, time, tTime) {\n  var vars = tween.vars,\n      ease = vars.ease,\n      startAt = vars.startAt,\n      immediateRender = vars.immediateRender,\n      lazy = vars.lazy,\n      onUpdate = vars.onUpdate,\n      runBackwards = vars.runBackwards,\n      yoyoEase = vars.yoyoEase,\n      keyframes = vars.keyframes,\n      autoRevert = vars.autoRevert,\n      dur = tween._dur,\n      prevStartAt = tween._startAt,\n      targets = tween._targets,\n      parent = tween.parent,\n      fullTargets = parent && parent.data === \"nested\" ? parent.vars.targets : targets,\n      autoOverwrite = tween._overwrite === \"auto\" && !_suppressOverwrites,\n      tl = tween.timeline,\n      reverseEase = vars.easeReverse || yoyoEase,\n      cleanVars,\n      i,\n      p,\n      pt,\n      target,\n      hasPriority,\n      gsData,\n      harness,\n      plugin,\n      ptLookup,\n      index,\n      harnessVars,\n      overwritten;\n  tl && (!keyframes || !ease) && (ease = \"none\");\n  tween._ease = _parseEase(ease, _defaults.ease);\n  tween._rEase = reverseEase && (_parseEase(reverseEase) || tween._ease);\n  tween._from = !tl && !!vars.runBackwards; //nested timelines should never run backwards - the backwards-ness is in the child tweens.\n\n  if (tween._from) tween.ratio = 1;\n\n  if (!tl || keyframes && !vars.stagger) {\n    //if there's an internal timeline, skip all the parsing because we passed that task down the chain.\n    harness = targets[0] ? _getCache(targets[0]).harness : 0;\n    harnessVars = harness && vars[harness.prop]; //someone may need to specify CSS-specific values AND non-CSS values, like if the element has an \"x\" property plus it's a standard DOM element. We allow people to distinguish by wrapping plugin-specific stuff in a css:{} object for example.\n\n    cleanVars = _copyExcluding(vars, _reservedProps);\n\n    if (prevStartAt) {\n      prevStartAt._zTime < 0 && prevStartAt.progress(1); // in case it's a lazy startAt that hasn't rendered yet.\n\n      time < 0 && runBackwards && immediateRender && !autoRevert ? prevStartAt.render(-1, true) : prevStartAt.revert(runBackwards && dur ? _revertConfigNoKill : _startAtRevertConfig); // if it's a \"startAt\" (not \"from()\" or runBackwards: true), we only need to do a shallow revert (keep transforms cached in CSSPlugin)\n      // don't just _removeFromParent(prevStartAt.render(-1, true)) because that'll leave inline styles. We're creating a new _startAt for \"startAt\" tweens that re-capture things to ensure that if the pre-tween values changed since the tween was created, they're recorded.\n\n      prevStartAt._lazy = 0;\n    }\n\n    if (startAt) {\n      _removeFromParent(tween._startAt = Tween.set(targets, _setDefaults({\n        data: \"isStart\",\n        overwrite: false,\n        parent: parent,\n        immediateRender: true,\n        lazy: !prevStartAt && _isNotFalse(lazy),\n        startAt: null,\n        delay: 0,\n        onUpdate: onUpdate && function () {\n          return _callback(tween, \"onUpdate\");\n        },\n        stagger: 0\n      }, startAt))); //copy the properties/values into a new object to avoid collisions, like var to = {x:0}, from = {x:500}; timeline.fromTo(e, from, to).fromTo(e, to, from);\n\n\n      tween._startAt._dp = 0; // don't allow it to get put back into root timeline! Like when revert() is called and totalTime() gets set.\n\n      tween._startAt._sat = tween; // used in globalTime(). _sat stands for _startAtTween\n\n      time < 0 && (_reverting || !immediateRender && !autoRevert) && tween._startAt.revert(_revertConfigNoKill); // rare edge case, like if a render is forced in the negative direction of a non-initted tween.\n\n      if (immediateRender) {\n        if (dur && time <= 0 && tTime <= 0) {\n          // check tTime here because in the case of a yoyo tween whose playhead gets pushed to the end like tween.progress(1), we should allow it through so that the onComplete gets fired properly.\n          time && (tween._zTime = time);\n          return; //we skip initialization here so that overwriting doesn't occur until the tween actually begins. Otherwise, if you create several immediateRender:true tweens of the same target/properties to drop into a Timeline, the last one created would overwrite the first ones because they didn't get placed into the timeline yet before the first render occurs and kicks in overwriting.\n        }\n      }\n    } else if (runBackwards && dur) {\n      // from() tweens must be handled uniquely: their beginning values must be rendered but we don't want overwriting to occur yet (when time is still 0). Wait until the tween actually begins before doing all the routines like overwriting. At that time, we should render at the END of the tween to ensure that things initialize correctly (remember, from() tweens go backwards)\n      if (!prevStartAt) {\n        time && (immediateRender = false); //in rare cases (like if a from() tween runs and then is invalidate()-ed), immediateRender could be true but the initial forced-render gets skipped, so there's no need to force the render in this context when the _time is greater than 0\n\n        p = _setDefaults({\n          overwrite: false,\n          data: \"isFromStart\",\n          //we tag the tween with as \"isFromStart\" so that if [inside a plugin] we need to only do something at the very END of a tween, we have a way of identifying this tween as merely the one that's setting the beginning values for a \"from()\" tween. For example, clearProps in CSSPlugin should only get applied at the very END of a tween and without this tag, from(...{height:100, clearProps:\"height\", delay:1}) would wipe the height at the beginning of the tween and after 1 second, it'd kick back in.\n          lazy: immediateRender && !prevStartAt && _isNotFalse(lazy),\n          immediateRender: immediateRender,\n          //zero-duration tweens render immediately by default, but if we're not specifically instructed to render this tween immediately, we should skip this and merely _init() to record the starting values (rendering them immediately would push them to completion which is wasteful in that case - we'd have to render(-1) immediately after)\n          stagger: 0,\n          parent: parent //ensures that nested tweens that had a stagger are handled properly, like gsap.from(\".class\", {y: gsap.utils.wrap([-100,100]), stagger: 0.5})\n\n        }, cleanVars);\n        harnessVars && (p[harness.prop] = harnessVars); // in case someone does something like .from(..., {css:{}})\n\n        _removeFromParent(tween._startAt = Tween.set(targets, p));\n\n        tween._startAt._dp = 0; // don't allow it to get put back into root timeline!\n\n        tween._startAt._sat = tween; // used in globalTime()\n\n        time < 0 && (_reverting ? tween._startAt.revert(_revertConfigNoKill) : tween._startAt.render(-1, true));\n        tween._zTime = time;\n\n        if (!immediateRender) {\n          _initTween(tween._startAt, _tinyNum, _tinyNum); //ensures that the initial values are recorded\n\n        } else if (!time) {\n          return;\n        }\n      }\n    }\n\n    tween._pt = tween._ptCache = 0;\n    lazy = dur && _isNotFalse(lazy) || lazy && !dur;\n\n    for (i = 0; i < targets.length; i++) {\n      target = targets[i];\n      gsData = target._gsap || _harness(targets)[i]._gsap;\n      tween._ptLookup[i] = ptLookup = {};\n      _lazyLookup[gsData.id] && _lazyTweens.length && _lazyRender(); //if other tweens of the same target have recently initted but haven't rendered yet, we've got to force the render so that the starting values are correct (imagine populating a timeline with a bunch of sequential tweens and then jumping to the end)\n\n      index = fullTargets === targets ? i : fullTargets.indexOf(target);\n\n      if (harness && (plugin = new harness()).init(target, harnessVars || cleanVars, tween, index, fullTargets) !== false) {\n        tween._pt = pt = new PropTween(tween._pt, target, plugin.name, 0, 1, plugin.render, plugin, 0, plugin.priority);\n\n        plugin._props.forEach(function (name) {\n          ptLookup[name] = pt;\n        });\n\n        plugin.priority && (hasPriority = 1);\n      }\n\n      if (!harness || harnessVars) {\n        for (p in cleanVars) {\n          if (_plugins[p] && (plugin = _checkPlugin(p, cleanVars, tween, index, target, fullTargets))) {\n            plugin.priority && (hasPriority = 1);\n          } else {\n            ptLookup[p] = pt = _addPropTween.call(tween, target, p, \"get\", cleanVars[p], index, fullTargets, 0, vars.stringFilter);\n          }\n        }\n      }\n\n      tween._op && tween._op[i] && tween.kill(target, tween._op[i]);\n\n      if (autoOverwrite && tween._pt) {\n        _overwritingTween = tween;\n\n        _globalTimeline.killTweensOf(target, ptLookup, tween.globalTime(time)); // make sure the overwriting doesn't overwrite THIS tween!!!\n\n\n        overwritten = !tween.parent;\n        _overwritingTween = 0;\n      }\n\n      tween._pt && lazy && (_lazyLookup[gsData.id] = 1);\n    }\n\n    hasPriority && _sortPropTweensByPriority(tween);\n    tween._onInit && tween._onInit(tween); //plugins like RoundProps must wait until ALL of the PropTweens are instantiated. In the plugin's init() function, it sets the _onInit on the tween instance. May not be pretty/intuitive, but it's fast and keeps file size down.\n  }\n\n  tween._onUpdate = onUpdate;\n  tween._initted = (!tween._op || tween._pt) && !overwritten; // if overwrittenProps resulted in the entire tween being killed, do NOT flag it as initted or else it may render for one tick.\n\n  keyframes && time <= 0 && tl.render(_bigNum, true, true); // if there's a 0% keyframe, it'll render in the \"before\" state for any staggered/delayed animations thus when the following tween initializes, it'll use the \"before\" state instead of the \"after\" state as the initial values.\n},\n    _updatePropTweens = function _updatePropTweens(tween, property, value, start, startIsRelative, ratio, time, skipRecursion) {\n  var ptCache = (tween._pt && tween._ptCache || (tween._ptCache = {}))[property],\n      pt,\n      rootPT,\n      lookup,\n      i;\n\n  if (!ptCache) {\n    ptCache = tween._ptCache[property] = [];\n    lookup = tween._ptLookup;\n    i = tween._targets.length;\n\n    while (i--) {\n      pt = lookup[i][property];\n\n      if (pt && pt.d && pt.d._pt) {\n        // it's a plugin, so find the nested PropTween\n        pt = pt.d._pt;\n\n        while (pt && pt.p !== property && pt.fp !== property) {\n          // \"fp\" is functionParam for things like setting CSS variables which require .setProperty(\"--var-name\", value)\n          pt = pt._next;\n        }\n      }\n\n      if (!pt) {\n        // there is no PropTween associated with that property, so we must FORCE one to be created and ditch out of this\n        // if the tween has other properties that already rendered at new positions, we'd normally have to rewind to put them back like tween.render(0, true) before forcing an _initTween(), but that can create another edge case like tweening a timeline's progress would trigger onUpdates to fire which could move other things around. It's better to just inform users that .resetTo() should ONLY be used for tweens that already have that property. For example, you can't gsap.to(...{ y: 0 }) and then tween.restTo(\"x\", 200) for example.\n        _forceAllPropTweens = 1; // otherwise, when we _addPropTween() and it finds no change between the start and end values, it skips creating a PropTween (for efficiency...why tween when there's no difference?) but in this case we NEED that PropTween created so we can edit it.\n\n        tween.vars[property] = \"+=0\";\n\n        _initTween(tween, time);\n\n        _forceAllPropTweens = 0;\n        return skipRecursion ? _warn(property + \" not eligible for reset. Try splitting into individual properties\") : 1; // if someone tries to do a quickTo() on a special property like borderRadius which must get split into 4 different properties, that's not eligible for .resetTo().\n      }\n\n      ptCache.push(pt);\n    }\n  }\n\n  i = ptCache.length;\n\n  while (i--) {\n    rootPT = ptCache[i];\n    pt = rootPT._pt || rootPT; // complex values may have nested PropTweens. We only accommodate the FIRST value.\n\n    pt.s = (start || start === 0) && !startIsRelative ? start : pt.s + (start || 0) + ratio * pt.c;\n    pt.c = value - pt.s;\n    rootPT.e && (rootPT.e = _round(value) + getUnit(rootPT.e)); // mainly for CSSPlugin (end value)\n\n    rootPT.b && (rootPT.b = pt.s + getUnit(rootPT.b)); // (beginning value)\n  }\n},\n    _addAliasesToVars = function _addAliasesToVars(targets, vars) {\n  var harness = targets[0] ? _getCache(targets[0]).harness : 0,\n      propertyAliases = harness && harness.aliases,\n      copy,\n      p,\n      i,\n      aliases;\n\n  if (!propertyAliases) {\n    return vars;\n  }\n\n  copy = _merge({}, vars);\n\n  for (p in propertyAliases) {\n    if (p in copy) {\n      aliases = propertyAliases[p].split(\",\");\n      i = aliases.length;\n\n      while (i--) {\n        copy[aliases[i]] = copy[p];\n      }\n    }\n  }\n\n  return copy;\n},\n    // parses multiple formats, like {\"0%\": {x: 100}, {\"50%\": {x: -20}} and { x: {\"0%\": 100, \"50%\": -20} }, and an \"ease\" can be set on any object. We populate an \"allProps\" object with an Array for each property, like {x: [{}, {}], y:[{}, {}]} with data for each property tween. The objects have a \"t\" (time), \"v\", (value), and \"e\" (ease) property. This allows us to piece together a timeline later.\n_parseKeyframe = function _parseKeyframe(prop, obj, allProps, easeEach) {\n  var ease = obj.ease || easeEach || \"power1.inOut\",\n      p,\n      a;\n\n  if (_isArray(obj)) {\n    a = allProps[prop] || (allProps[prop] = []); // t = time (out of 100), v = value, e = ease\n\n    obj.forEach(function (value, i) {\n      return a.push({\n        t: i / (obj.length - 1) * 100,\n        v: value,\n        e: ease\n      });\n    });\n  } else {\n    for (p in obj) {\n      a = allProps[p] || (allProps[p] = []);\n      p === \"ease\" || a.push({\n        t: parseFloat(prop),\n        v: obj[p],\n        e: ease\n      });\n    }\n  }\n},\n    _parseFuncOrString = function _parseFuncOrString(value, tween, i, target, targets) {\n  return _isFunction(value) ? value.call(tween, i, target, targets) : _isString(value) && ~value.indexOf(\"random(\") ? _replaceRandom(value) : value;\n},\n    _staggerTweenProps = _callbackNames + \"repeat,repeatDelay,yoyo,repeatRefresh,yoyoEase,easeReverse,autoRevert\",\n    _staggerPropsToSkip = {};\n\n_forEachName(_staggerTweenProps + \",id,stagger,delay,duration,paused,scrollTrigger\", function (name) {\n  return _staggerPropsToSkip[name] = 1;\n});\n/*\n * --------------------------------------------------------------------------------------\n * TWEEN\n * --------------------------------------------------------------------------------------\n */\n\n\nvar Tween = /*#__PURE__*/function (_Animation2) {\n  _inheritsLoose(Tween, _Animation2);\n\n  function Tween(targets, vars, position, skipInherit) {\n    var _this3;\n\n    if (typeof vars === \"number\") {\n      position.duration = vars;\n      vars = position;\n      position = null;\n    }\n\n    _this3 = _Animation2.call(this, skipInherit ? vars : _inheritDefaults(vars)) || this;\n    var _this3$vars = _this3.vars,\n        duration = _this3$vars.duration,\n        delay = _this3$vars.delay,\n        immediateRender = _this3$vars.immediateRender,\n        stagger = _this3$vars.stagger,\n        overwrite = _this3$vars.overwrite,\n        keyframes = _this3$vars.keyframes,\n        defaults = _this3$vars.defaults,\n        scrollTrigger = _this3$vars.scrollTrigger,\n        parent = vars.parent || _globalTimeline,\n        parsedTargets = (_isArray(targets) || _isTypedArray(targets) ? _isNumber(targets[0]) : \"length\" in vars) ? [targets] : toArray(targets),\n        tl,\n        i,\n        copy,\n        l,\n        p,\n        curTarget,\n        staggerFunc,\n        staggerVarsToMerge;\n    _this3._targets = parsedTargets.length ? _harness(parsedTargets) : _warn(\"GSAP target \" + targets + \" not found. https://gsap.com\", !_config.nullTargetWarn) || [];\n    _this3._ptLookup = []; //PropTween lookup. An array containing an object for each target, having keys for each tweening property\n\n    _this3._overwrite = overwrite;\n\n    if (keyframes || stagger || _isFuncOrString(duration) || _isFuncOrString(delay)) {\n      vars = _this3.vars;\n      var easeReverse = vars.easeReverse || vars.yoyoEase;\n      tl = _this3.timeline = new Timeline({\n        data: \"nested\",\n        defaults: defaults || {},\n        targets: parent && parent.data === \"nested\" ? parent.vars.targets : parsedTargets\n      }); // we need to store the targets because for staggers and keyframes, we end up creating an individual tween for each but function-based values need to know the index and the whole Array of targets.\n\n      tl.kill();\n      tl.parent = tl._dp = _assertThisInitialized(_this3);\n      tl._start = 0;\n\n      if (stagger || _isFuncOrString(duration) || _isFuncOrString(delay)) {\n        l = parsedTargets.length;\n        staggerFunc = stagger && distribute(stagger);\n\n        if (_isObject(stagger)) {\n          //users can pass in callbacks like onStart/onComplete in the stagger object. These should fire with each individual tween.\n          for (p in stagger) {\n            if (~_staggerTweenProps.indexOf(p)) {\n              staggerVarsToMerge || (staggerVarsToMerge = {});\n              staggerVarsToMerge[p] = stagger[p];\n            }\n          }\n        }\n\n        for (i = 0; i < l; i++) {\n          copy = _copyExcluding(vars, _staggerPropsToSkip);\n          copy.stagger = 0;\n          easeReverse && (copy.easeReverse = easeReverse);\n          staggerVarsToMerge && _merge(copy, staggerVarsToMerge);\n          curTarget = parsedTargets[i]; //don't just copy duration or delay because if they're a string or function, we'd end up in an infinite loop because _isFuncOrString() would evaluate as true in the child tweens, entering this loop, etc. So we parse the value straight from vars and default to 0.\n\n          copy.duration = +_parseFuncOrString(duration, _assertThisInitialized(_this3), i, curTarget, parsedTargets);\n          copy.delay = (+_parseFuncOrString(delay, _assertThisInitialized(_this3), i, curTarget, parsedTargets) || 0) - _this3._delay;\n\n          if (!stagger && l === 1 && copy.delay) {\n            // if someone does delay:\"random(1, 5)\", repeat:-1, for example, the delay shouldn't be inside the repeat.\n            _this3._delay = delay = copy.delay;\n            _this3._start += delay;\n            copy.delay = 0;\n          }\n\n          tl.to(curTarget, copy, staggerFunc ? staggerFunc(i, curTarget, parsedTargets) : 0);\n          tl._ease = _easeMap.none;\n        }\n\n        tl.duration() ? duration = delay = 0 : _this3.timeline = 0; // if the timeline's duration is 0, we don't need a timeline internally!\n      } else if (keyframes) {\n        _inheritDefaults(_setDefaults(tl.vars.defaults, {\n          ease: \"none\"\n        }));\n\n        tl._ease = _parseEase(keyframes.ease || vars.ease || \"none\");\n        var time = 0,\n            a,\n            kf,\n            v;\n\n        if (_isArray(keyframes)) {\n          keyframes.forEach(function (frame) {\n            return tl.to(parsedTargets, frame, \">\");\n          });\n          tl.duration(); // to ensure tl._dur is cached because we tap into it for performance purposes in the render() method.\n        } else {\n          copy = {};\n\n          for (p in keyframes) {\n            p === \"ease\" || p === \"easeEach\" || _parseKeyframe(p, keyframes[p], copy, keyframes.easeEach);\n          }\n\n          for (p in copy) {\n            a = copy[p].sort(function (a, b) {\n              return a.t - b.t;\n            });\n            time = 0;\n\n            for (i = 0; i < a.length; i++) {\n              kf = a[i];\n              v = {\n                ease: kf.e,\n                duration: (kf.t - (i ? a[i - 1].t : 0)) / 100 * duration\n              };\n              v[p] = kf.v;\n              tl.to(parsedTargets, v, time);\n              time += v.duration;\n            }\n          }\n\n          tl.duration() < duration && tl.to({}, {\n            duration: duration - tl.duration()\n          }); // in case keyframes didn't go to 100%\n        }\n      }\n\n      duration || _this3.duration(duration = tl.duration());\n    } else {\n      _this3.timeline = 0; //speed optimization, faster lookups (no going up the prototype chain)\n    }\n\n    if (overwrite === true && !_suppressOverwrites) {\n      _overwritingTween = _assertThisInitialized(_this3);\n\n      _globalTimeline.killTweensOf(parsedTargets);\n\n      _overwritingTween = 0;\n    }\n\n    _addToTimeline(parent, _assertThisInitialized(_this3), position);\n\n    vars.reversed && _this3.reverse();\n    vars.paused && _this3.paused(true);\n\n    if (immediateRender || !duration && !keyframes && _this3._start === _roundPrecise(parent._time) && _isNotFalse(immediateRender) && _hasNoPausedAncestors(_assertThisInitialized(_this3)) && parent.data !== \"nested\") {\n      _this3._tTime = -_tinyNum; //forces a render without having to set the render() \"force\" parameter to true because we want to allow lazying by default (using the \"force\" parameter always forces an immediate full render)\n\n      _this3.render(Math.max(0, -delay) || 0); //in case delay is negative\n\n    }\n\n    scrollTrigger && _scrollTrigger(_assertThisInitialized(_this3), scrollTrigger);\n    return _this3;\n  }\n\n  var _proto3 = Tween.prototype;\n\n  _proto3.render = function render(totalTime, suppressEvents, force) {\n    var prevTime = this._time,\n        tDur = this._tDur,\n        dur = this._dur,\n        isNegative = totalTime < 0,\n        tTime = totalTime > tDur - _tinyNum && !isNegative ? tDur : totalTime < _tinyNum ? 0 : totalTime,\n        time,\n        pt,\n        iteration,\n        cycleDuration,\n        prevIteration,\n        isYoyo,\n        ratio,\n        timeline;\n\n    if (!dur) {\n      _renderZeroDurationTween(this, totalTime, suppressEvents, force);\n    } else if (tTime !== this._tTime || !totalTime || force || !this._initted && this._tTime || this._startAt && this._zTime < 0 !== isNegative || this._lazy) {\n      // this senses if we're crossing over the start time, in which case we must record _zTime and force the render, but we do it in this lengthy conditional way for performance reasons (usually we can skip the calculations): this._initted && (this._zTime < 0) !== (totalTime < 0)\n      time = tTime;\n      timeline = this.timeline;\n\n      if (this._repeat) {\n        //adjust the time for repeats and yoyos\n        cycleDuration = dur + this._rDelay;\n\n        if (this._repeat < -1 && isNegative) {\n          return this.totalTime(cycleDuration * 100 + totalTime, suppressEvents, force);\n        }\n\n        time = _roundPrecise(tTime % cycleDuration); //round to avoid floating point errors. (4 % 0.8 should be 0 but some browsers report it as 0.79999999!)\n\n        if (tTime === tDur) {\n          // the tDur === tTime is for edge cases where there's a lengthy decimal on the duration and it may reach the very end but the time is rendered as not-quite-there (remember, tDur is rounded to 4 decimals whereas dur isn't)\n          iteration = this._repeat;\n          time = dur;\n        } else {\n          prevIteration = _roundPrecise(tTime / cycleDuration); // full decimal version of iterations, not the previous iteration (we're reusing prevIteration variable for efficiency)\n\n          iteration = ~~prevIteration;\n\n          if (iteration && iteration === prevIteration) {\n            time = dur;\n            iteration--;\n          } else if (time > dur) {\n            time = dur;\n          }\n        }\n\n        isYoyo = this._yoyo && iteration & 1;\n        if (isYoyo) time = dur - time;\n        prevIteration = _animationCycle(this._tTime, cycleDuration);\n\n        if (time === prevTime && !force && this._initted && iteration === prevIteration) {\n          //could be during the repeatDelay part. No need to render and fire callbacks.\n          this._tTime = tTime;\n          return this;\n        }\n\n        if (iteration !== prevIteration) {\n          //repeatRefresh functionality\n          if (this.vars.repeatRefresh && !isYoyo && !this._lock && time !== cycleDuration && this._initted) {\n            // this._time will === cycleDuration when we render at EXACTLY the end of an iteration. Without this condition, it'd often do the repeatRefresh render TWICE (again on the very next tick).\n            this._lock = force = 1; //force, otherwise if lazy is true, the _attemptInitTween() will return and we'll jump out and get caught bouncing on each tick.\n\n            this.render(_roundPrecise(cycleDuration * iteration), true).invalidate()._lock = 0;\n          }\n        }\n      }\n\n      if (!this._initted) {\n        if (_attemptInitTween(this, isNegative ? totalTime : time, force, suppressEvents, tTime)) {\n          this._tTime = 0; // in constructor if immediateRender is true, we set _tTime to -_tinyNum to have the playhead cross the starting point but we can't leave _tTime as a negative number.\n\n          return this;\n        }\n\n        if (prevTime !== this._time && !(force && this.vars.repeatRefresh && iteration !== prevIteration)) {\n          // rare edge case - during initialization, an onUpdate in the _startAt (.fromTo()) might force this tween to render at a different spot in which case we should ditch this render() call so that it doesn't revert the values. But we also don't want to dump if we're doing a repeatRefresh render!\n          return this;\n        }\n\n        if (dur !== this._dur) {\n          // while initting, a plugin like InertiaPlugin might alter the duration, so rerun from the start to ensure everything renders as it should.\n          return this.render(totalTime, suppressEvents, force);\n        }\n      }\n\n      if (this._rEase) {\n        var inv = time < prevTime;\n\n        if (inv !== this._inv) {\n          var segDur = inv ? prevTime : dur - prevTime;\n          this._inv = inv;\n          if (this._from) this.ratio = 1 - this.ratio;\n          this._invRatio = this.ratio;\n          this._invTime = prevTime;\n          this._invRecip = segDur ? (inv ? -1 : 1) / segDur : 0;\n          this._invScale = inv ? -this.ratio : 1 - this.ratio;\n          this._invEase = inv ? this._rEase : this._ease;\n        }\n\n        this.ratio = ratio = this._invRatio + this._invScale * this._invEase((time - this._invTime) * this._invRecip);\n      } else {\n        this.ratio = ratio = this._ease(time / dur);\n      }\n\n      if (this._from) this.ratio = ratio = 1 - ratio;\n      this._tTime = tTime;\n      this._time = time;\n\n      if (!this._act && this._ts) {\n        this._act = 1; //as long as it's not paused, force it to be active so that if the user renders independent of the parent timeline, it'll be forced to re-render on the next tick.\n\n        this._lazy = 0;\n      }\n\n      if (!prevTime && tTime && !suppressEvents && !prevIteration) {\n        _callback(this, \"onStart\");\n\n        if (this._tTime !== tTime) {\n          // in case the onStart triggered a render at a different spot, eject. Like if someone did animation.pause(0.5) or something inside the onStart.\n          return this;\n        }\n      }\n\n      pt = this._pt;\n\n      while (pt) {\n        pt.r(ratio, pt.d);\n        pt = pt._next;\n      }\n\n      timeline && timeline.render(totalTime < 0 ? totalTime : timeline._dur * timeline._ease(time / this._dur), suppressEvents, force) || this._startAt && (this._zTime = totalTime);\n\n      if (this._onUpdate && !suppressEvents) {\n        isNegative && _rewindStartAt(this, totalTime, suppressEvents, force); //note: for performance reasons, we tuck this conditional logic inside less traveled areas (most tweens don't have an onUpdate). We'd just have it at the end before the onComplete, but the values should be updated before any onUpdate is called, so we ALSO put it here and then if it's not called, we do so later near the onComplete.\n\n        _callback(this, \"onUpdate\");\n      }\n\n      this._repeat && iteration !== prevIteration && this.vars.onRepeat && !suppressEvents && this.parent && _callback(this, \"onRepeat\");\n\n      if ((tTime === this._tDur || !tTime) && this._tTime === tTime) {\n        isNegative && !this._onUpdate && _rewindStartAt(this, totalTime, true, true);\n        (totalTime || !dur) && (tTime === this._tDur && this._ts > 0 || !tTime && this._ts < 0) && _removeFromParent(this, 1); // don't remove if we're rendering at exactly a time of 0, as there could be autoRevert values that should get set on the next tick (if the playhead goes backward beyond the startTime, negative totalTime). Don't remove if the timeline is reversed and the playhead isn't at 0, otherwise tl.progress(1).reverse() won't work. Only remove if the playhead is at the end and timeScale is positive, or if the playhead is at 0 and the timeScale is negative.\n\n        if (!suppressEvents && !(isNegative && !prevTime) && (tTime || prevTime || isYoyo)) {\n          // if prevTime and tTime are zero, we shouldn't fire the onReverseComplete. This could happen if you gsap.to(... {paused:true}).play();\n          _callback(this, tTime === tDur ? \"onComplete\" : \"onReverseComplete\", true);\n\n          this._prom && !(tTime < tDur && this.timeScale() > 0) && this._prom();\n        }\n      }\n    }\n\n    return this;\n  };\n\n  _proto3.targets = function targets() {\n    return this._targets;\n  };\n\n  _proto3.invalidate = function invalidate(soft) {\n    // \"soft\" gives us a way to clear out everything EXCEPT the recorded pre-\"from\" portion of from() tweens. Otherwise, for example, if you tween.progress(1).render(0, true true).invalidate(), the \"from\" values would persist and then on the next render, the from() tweens would initialize and the current value would match the \"from\" values, thus animate from the same value to the same value (no animation). We tap into this in ScrollTrigger's refresh() where we must push a tween to completion and then back again but honor its init state in case the tween is dependent on another tween further up on the page.\n    (!soft || !this.vars.runBackwards) && (this._startAt = 0);\n    this._pt = this._op = this._onUpdate = this._lazy = this.ratio = 0;\n    this._ptLookup = [];\n    this.timeline && this.timeline.invalidate(soft);\n    return _Animation2.prototype.invalidate.call(this, soft);\n  };\n\n  _proto3.resetTo = function resetTo(property, value, start, startIsRelative, skipRecursion) {\n    _tickerActive || _ticker.wake();\n    this._ts || this.play();\n    var time = Math.min(this._dur, (this._dp._time - this._start) * this._ts),\n        ratio;\n    this._initted || _initTween(this, time);\n    ratio = this._ease(time / this._dur); // don't just get tween.ratio because it may not have rendered yet.\n    // possible future addition to allow an object with multiple values to update, like tween.resetTo({x: 100, y: 200}); At this point, it doesn't seem worth the added kb given the fact that most users will likely opt for the convenient gsap.quickTo() way of interacting with this method.\n    // if (_isObject(property)) { // performance optimization\n    // \tfor (p in property) {\n    // \t\tif (_updatePropTweens(this, p, property[p], value ? value[p] : null, start, ratio, time)) {\n    // \t\t\treturn this.resetTo(property, value, start, startIsRelative); // if a PropTween wasn't found for the property, it'll get forced with a re-initialization so we need to jump out and start over again.\n    // \t\t}\n    // \t}\n    // } else {\n\n    if (_updatePropTweens(this, property, value, start, startIsRelative, ratio, time, skipRecursion)) {\n      return this.resetTo(property, value, start, startIsRelative, 1); // if a PropTween wasn't found for the property, it'll get forced with a re-initialization so we need to jump out and start over again.\n    } //}\n\n\n    _alignPlayhead(this, 0);\n\n    this.parent || _addLinkedListItem(this._dp, this, \"_first\", \"_last\", this._dp._sort ? \"_start\" : 0);\n    return this.render(0);\n  };\n\n  _proto3.kill = function kill(targets, vars) {\n    if (vars === void 0) {\n      vars = \"all\";\n    }\n\n    if (!targets && (!vars || vars === \"all\")) {\n      this._lazy = this._pt = 0;\n      this.parent ? _interrupt(this) : this.scrollTrigger && this.scrollTrigger.kill(!!_reverting);\n      return this;\n    }\n\n    if (this.timeline) {\n      var tDur = this.timeline.totalDuration();\n      this.timeline.killTweensOf(targets, vars, _overwritingTween && _overwritingTween.vars.overwrite !== true)._first || _interrupt(this); // if nothing is left tweening, interrupt.\n\n      this.parent && tDur !== this.timeline.totalDuration() && _setDuration(this, this._dur * this.timeline._tDur / tDur, 0, 1); // if a nested tween is killed that changes the duration, it should affect this tween's duration. We must use the ratio, though, because sometimes the internal timeline is stretched like for keyframes where they don't all add up to whatever the parent tween's duration was set to.\n\n      return this;\n    }\n\n    var parsedTargets = this._targets,\n        killingTargets = targets ? toArray(targets) : parsedTargets,\n        propTweenLookup = this._ptLookup,\n        firstPT = this._pt,\n        overwrittenProps,\n        curLookup,\n        curOverwriteProps,\n        props,\n        p,\n        pt,\n        i;\n\n    if ((!vars || vars === \"all\") && _arraysMatch(parsedTargets, killingTargets)) {\n      vars === \"all\" && (this._pt = 0);\n      return _interrupt(this);\n    }\n\n    overwrittenProps = this._op = this._op || [];\n\n    if (vars !== \"all\") {\n      //so people can pass in a comma-delimited list of property names\n      if (_isString(vars)) {\n        p = {};\n\n        _forEachName(vars, function (name) {\n          return p[name] = 1;\n        });\n\n        vars = p;\n      }\n\n      vars = _addAliasesToVars(parsedTargets, vars);\n    }\n\n    i = parsedTargets.length;\n\n    while (i--) {\n      if (~killingTargets.indexOf(parsedTargets[i])) {\n        curLookup = propTweenLookup[i];\n\n        if (vars === \"all\") {\n          overwrittenProps[i] = vars;\n          props = curLookup;\n          curOverwriteProps = {};\n        } else {\n          curOverwriteProps = overwrittenProps[i] = overwrittenProps[i] || {};\n          props = vars;\n        }\n\n        for (p in props) {\n          pt = curLookup && curLookup[p];\n\n          if (pt) {\n            if (!(\"kill\" in pt.d) || pt.d.kill(p) === true) {\n              _removeLinkedListItem(this, pt, \"_pt\");\n            }\n\n            delete curLookup[p];\n          }\n\n          if (curOverwriteProps !== \"all\") {\n            curOverwriteProps[p] = 1;\n          }\n        }\n      }\n    }\n\n    this._initted && !this._pt && firstPT && _interrupt(this); //if all tweening properties are killed, kill the tween. Without this line, if there's a tween with multiple targets and then you killTweensOf() each target individually, the tween would technically still remain active and fire its onComplete even though there aren't any more properties tweening.\n\n    return this;\n  };\n\n  Tween.to = function to(targets, vars) {\n    return new Tween(targets, vars, arguments[2]);\n  };\n\n  Tween.from = function from(targets, vars) {\n    return _createTweenType(1, arguments);\n  };\n\n  Tween.delayedCall = function delayedCall(delay, callback, params, scope) {\n    return new Tween(callback, 0, {\n      immediateRender: false,\n      lazy: false,\n      overwrite: false,\n      delay: delay,\n      onComplete: callback,\n      onReverseComplete: callback,\n      onCompleteParams: params,\n      onReverseCompleteParams: params,\n      callbackScope: scope\n    }); // we must use onReverseComplete too for things like timeline.add(() => {...}) which should be triggered in BOTH directions (forward and reverse)\n  };\n\n  Tween.fromTo = function fromTo(targets, fromVars, toVars) {\n    return _createTweenType(2, arguments);\n  };\n\n  Tween.set = function set(targets, vars) {\n    vars.duration = 0;\n    vars.repeatDelay || (vars.repeat = 0);\n    return new Tween(targets, vars);\n  };\n\n  Tween.killTweensOf = function killTweensOf(targets, props, onlyActive) {\n    return _globalTimeline.killTweensOf(targets, props, onlyActive);\n  };\n\n  return Tween;\n}(Animation);\n\n_setDefaults(Tween.prototype, {\n  _targets: [],\n  _lazy: 0,\n  _startAt: 0,\n  _op: 0,\n  _onInit: 0\n}); //add the pertinent timeline methods to Tween instances so that users can chain conveniently and create a timeline automatically. (removed due to concerns that it'd ultimately add to more confusion especially for beginners)\n// _forEachName(\"to,from,fromTo,set,call,add,addLabel,addPause\", name => {\n// \tTween.prototype[name] = function() {\n// \t\tlet tl = new Timeline();\n// \t\treturn _addToTimeline(tl, this)[name].apply(tl, toArray(arguments));\n// \t}\n// });\n//for backward compatibility. Leverage the timeline calls.\n\n\n_forEachName(\"staggerTo,staggerFrom,staggerFromTo\", function (name) {\n  Tween[name] = function () {\n    var tl = new Timeline(),\n        params = _slice.call(arguments, 0);\n\n    params.splice(name === \"staggerFromTo\" ? 5 : 4, 0, 0);\n    return tl[name].apply(tl, params);\n  };\n});\n/*\n * --------------------------------------------------------------------------------------\n * PROPTWEEN\n * --------------------------------------------------------------------------------------\n */\n\n\nvar _setterPlain = function _setterPlain(target, property, value) {\n  return target[property] = value;\n},\n    _setterFunc = function _setterFunc(target, property, value) {\n  return target[property](value);\n},\n    _setterFuncWithParam = function _setterFuncWithParam(target, property, value, data) {\n  return target[property](data.fp, value);\n},\n    _setterAttribute = function _setterAttribute(target, property, value) {\n  return target.setAttribute(property, value);\n},\n    _getSetter = function _getSetter(target, property) {\n  return _isFunction(target[property]) ? _setterFunc : _isUndefined(target[property]) && target.setAttribute ? _setterAttribute : _setterPlain;\n},\n    _renderPlain = function _renderPlain(ratio, data) {\n  return data.set(data.t, data.p, Math.round((data.s + data.c * ratio) * 1000000) / 1000000, data);\n},\n    _renderBoolean = function _renderBoolean(ratio, data) {\n  return data.set(data.t, data.p, !!(data.s + data.c * ratio), data);\n},\n    _renderComplexString = function _renderComplexString(ratio, data) {\n  var pt = data._pt,\n      s = \"\";\n\n  if (!ratio && data.b) {\n    //b = beginning string\n    s = data.b;\n  } else if (ratio === 1 && data.e) {\n    //e = ending string\n    s = data.e;\n  } else {\n    while (pt) {\n      s = pt.p + (pt.m ? pt.m(pt.s + pt.c * ratio) : Math.round((pt.s + pt.c * ratio) * 10000) / 10000) + s; //we use the \"p\" property for the text inbetween (like a suffix). And in the context of a complex string, the modifier (m) is typically just Math.round(), like for RGB colors.\n\n      pt = pt._next;\n    }\n\n    s += data.c; //we use the \"c\" of the PropTween to store the final chunk of non-numeric text.\n  }\n\n  data.set(data.t, data.p, s, data);\n},\n    _renderPropTweens = function _renderPropTweens(ratio, data) {\n  var pt = data._pt;\n\n  while (pt) {\n    pt.r(ratio, pt.d);\n    pt = pt._next;\n  }\n},\n    _addPluginModifier = function _addPluginModifier(modifier, tween, target, property) {\n  var pt = this._pt,\n      next;\n\n  while (pt) {\n    next = pt._next;\n    pt.p === property && pt.modifier(modifier, tween, target);\n    pt = next;\n  }\n},\n    _killPropTweensOf = function _killPropTweensOf(property) {\n  var pt = this._pt,\n      hasNonDependentRemaining,\n      next;\n\n  while (pt) {\n    next = pt._next;\n\n    if (pt.p === property && !pt.op || pt.op === property) {\n      _removeLinkedListItem(this, pt, \"_pt\");\n    } else if (!pt.dep) {\n      hasNonDependentRemaining = 1;\n    }\n\n    pt = next;\n  }\n\n  return !hasNonDependentRemaining;\n},\n    _setterWithModifier = function _setterWithModifier(target, property, value, data) {\n  data.mSet(target, property, data.m.call(data.tween, value, data.mt), data);\n},\n    _sortPropTweensByPriority = function _sortPropTweensByPriority(parent) {\n  var pt = parent._pt,\n      next,\n      pt2,\n      first,\n      last; //sorts the PropTween linked list in order of priority because some plugins need to do their work after ALL of the PropTweens were created (like RoundPropsPlugin and ModifiersPlugin)\n\n  while (pt) {\n    next = pt._next;\n    pt2 = first;\n\n    while (pt2 && pt2.pr > pt.pr) {\n      pt2 = pt2._next;\n    }\n\n    if (pt._prev = pt2 ? pt2._prev : last) {\n      pt._prev._next = pt;\n    } else {\n      first = pt;\n    }\n\n    if (pt._next = pt2) {\n      pt2._prev = pt;\n    } else {\n      last = pt;\n    }\n\n    pt = next;\n  }\n\n  parent._pt = first;\n}; //PropTween key: t = target, p = prop, r = renderer, d = data, s = start, c = change, op = overwriteProperty (ONLY populated when it's different than p), pr = priority, _next/_prev for the linked list siblings, set = setter, m = modifier, mSet = modifierSetter (the original setter, before a modifier was added)\n\n\nvar PropTween = /*#__PURE__*/function () {\n  function PropTween(next, target, prop, start, change, renderer, data, setter, priority) {\n    this.t = target;\n    this.s = start;\n    this.c = change;\n    this.p = prop;\n    this.r = renderer || _renderPlain;\n    this.d = data || this;\n    this.set = setter || _setterPlain;\n    this.pr = priority || 0;\n    this._next = next;\n\n    if (next) {\n      next._prev = this;\n    }\n  }\n\n  var _proto4 = PropTween.prototype;\n\n  _proto4.modifier = function modifier(func, tween, target) {\n    this.mSet = this.mSet || this.set; //in case it was already set (a PropTween can only have one modifier)\n\n    this.set = _setterWithModifier;\n    this.m = func;\n    this.mt = target; //modifier target\n\n    this.tween = tween;\n  };\n\n  return PropTween;\n}(); //Initialization tasks\n\n_forEachName(_callbackNames + \"parent,duration,ease,delay,overwrite,runBackwards,startAt,yoyo,immediateRender,repeat,repeatDelay,data,paused,reversed,lazy,callbackScope,stringFilter,id,yoyoEase,stagger,inherit,repeatRefresh,keyframes,autoRevert,scrollTrigger,easeReverse\", function (name) {\n  return _reservedProps[name] = 1;\n});\n\n_globals.TweenMax = _globals.TweenLite = Tween;\n_globals.TimelineLite = _globals.TimelineMax = Timeline;\n_globalTimeline = new Timeline({\n  sortChildren: false,\n  defaults: _defaults,\n  autoRemoveChildren: true,\n  id: \"root\",\n  smoothChildTiming: true\n});\n_config.stringFilter = _colorStringFilter;\n\nvar _media = [],\n    _listeners = {},\n    _emptyArray = [],\n    _lastMediaTime = 0,\n    _contextID = 0,\n    _dispatch = function _dispatch(type) {\n  return (_listeners[type] || _emptyArray).map(function (f) {\n    return f();\n  });\n},\n    _onMediaChange = function _onMediaChange() {\n  var time = Date.now(),\n      matches = [];\n\n  if (time - _lastMediaTime > 2) {\n    _dispatch(\"matchMediaInit\");\n\n    _media.forEach(function (c) {\n      var queries = c.queries,\n          conditions = c.conditions,\n          match,\n          p,\n          anyMatch,\n          toggled;\n\n      for (p in queries) {\n        match = _win.matchMedia(queries[p]).matches; // Firefox doesn't update the \"matches\" property of the MediaQueryList object correctly - it only does so as it calls its change handler - so we must re-create a media query here to ensure it's accurate.\n\n        match && (anyMatch = 1);\n\n        if (match !== conditions[p]) {\n          conditions[p] = match;\n          toggled = 1;\n        }\n      }\n\n      if (toggled) {\n        c.revert();\n        anyMatch && matches.push(c);\n      }\n    });\n\n    _dispatch(\"matchMediaRevert\");\n\n    matches.forEach(function (c) {\n      return c.onMatch(c, function (func) {\n        return c.add(null, func);\n      });\n    });\n    _lastMediaTime = time;\n\n    _dispatch(\"matchMedia\");\n  }\n};\n\nvar Context = /*#__PURE__*/function () {\n  function Context(func, scope) {\n    this.selector = scope && selector(scope);\n    this.data = [];\n    this._r = []; // returned/cleanup functions\n\n    this.isReverted = false;\n    this.id = _contextID++; // to work around issues that frameworks like Vue cause by making things into Proxies which make it impossible to do something like _media.indexOf(this) because \"this\" would no longer refer to the Context instance itself - it'd refer to a Proxy! We needed a way to identify the context uniquely\n\n    func && this.add(func);\n  }\n\n  var _proto5 = Context.prototype;\n\n  _proto5.add = function add(name, func, scope) {\n    // possible future addition if we need the ability to add() an animation to a context and for whatever reason cannot create that animation inside of a context.add(() => {...}) function.\n    // if (name && _isFunction(name.revert)) {\n    // \tthis.data.push(name);\n    // \treturn (name._ctx = this);\n    // }\n    if (_isFunction(name)) {\n      scope = func;\n      func = name;\n      name = _isFunction;\n    }\n\n    var self = this,\n        f = function f() {\n      var prev = _context,\n          prevSelector = self.selector,\n          result;\n      prev && prev !== self && prev.data.push(self);\n      scope && (self.selector = selector(scope));\n      _context = self;\n      result = func.apply(self, arguments);\n      _isFunction(result) && self._r.push(result);\n      _context = prev;\n      self.selector = prevSelector;\n      self.isReverted = false;\n      return result;\n    };\n\n    self.last = f;\n    return name === _isFunction ? f(self, function (func) {\n      return self.add(null, func);\n    }) : name ? self[name] = f : f;\n  };\n\n  _proto5.ignore = function ignore(func) {\n    var prev = _context;\n    _context = null;\n    func(this);\n    _context = prev;\n  };\n\n  _proto5.getTweens = function getTweens() {\n    var a = [];\n    this.data.forEach(function (e) {\n      return e instanceof Context ? a.push.apply(a, e.getTweens()) : e instanceof Tween && !(e.parent && e.parent.data === \"nested\") && a.push(e);\n    });\n    return a;\n  };\n\n  _proto5.clear = function clear() {\n    this._r.length = this.data.length = 0;\n  };\n\n  _proto5.kill = function kill(revert, matchMedia) {\n    var _this4 = this;\n\n    if (revert) {\n      (function () {\n        var tweens = _this4.getTweens(),\n            i = _this4.data.length,\n            t;\n\n        while (i--) {\n          // Flip plugin tweens are very different in that they should actually be pushed to their end. The plugin replaces the timeline's .revert() method to do exactly that. But we also need to remove any of those nested tweens inside the flip timeline so that they don't get individually reverted.\n          t = _this4.data[i];\n\n          if (t.data === \"isFlip\") {\n            t.revert();\n            t.getChildren(true, true, false).forEach(function (tween) {\n              return tweens.splice(tweens.indexOf(tween), 1);\n            });\n          }\n        } // save as an object so that we can cache the globalTime for each tween to optimize performance during the sort\n\n\n        tweens.map(function (t) {\n          return {\n            g: t._dur || t._delay || t._sat && !t._sat.vars.immediateRender ? t.globalTime(0) : -Infinity,\n            t: t\n          };\n        }).sort(function (a, b) {\n          return b.g - a.g || -Infinity;\n        }).forEach(function (o) {\n          return o.t.revert(revert);\n        }); // note: all of the _startAt tweens should be reverted in reverse order that they were created, and they'll all have the same globalTime (-1) so the \" || -1\" in the sort keeps the order properly.\n\n        i = _this4.data.length;\n\n        while (i--) {\n          // make sure we loop backwards so that, for example, SplitTexts that were created later on the same element get reverted first\n          t = _this4.data[i];\n\n          if (t instanceof Timeline) {\n            if (t.data !== \"nested\") {\n              t.scrollTrigger && t.scrollTrigger.revert();\n              t.kill(); // don't revert() the timeline because that's duplicating efforts since we already reverted all the tweens\n            }\n          } else {\n            !(t instanceof Tween) && t.revert && t.revert(revert);\n          }\n        }\n\n        _this4._r.forEach(function (f) {\n          return f(revert, _this4);\n        });\n\n        _this4.isReverted = true;\n      })();\n    } else {\n      this.data.forEach(function (e) {\n        return e.kill && e.kill();\n      });\n    }\n\n    this.clear();\n\n    if (matchMedia) {\n      var i = _media.length;\n\n      while (i--) {\n        // previously, we checked _media.indexOf(this), but some frameworks like Vue enforce Proxy objects that make it impossible to get the proper result that way, so we must use a unique ID number instead.\n        _media[i].id === this.id && _media.splice(i, 1);\n      }\n    }\n  } // killWithCleanup() {\n  // \tthis.kill();\n  // \tthis._r.forEach(f => f(false, this));\n  // }\n  ;\n\n  _proto5.revert = function revert(config) {\n    this.kill(config || {});\n  };\n\n  return Context;\n}();\n\nvar MatchMedia = /*#__PURE__*/function () {\n  function MatchMedia(scope) {\n    this.contexts = [];\n    this.scope = scope;\n    _context && _context.data.push(this);\n  }\n\n  var _proto6 = MatchMedia.prototype;\n\n  _proto6.add = function add(conditions, func, scope) {\n    _isObject(conditions) || (conditions = {\n      matches: conditions\n    });\n    var context = new Context(0, scope || this.scope),\n        cond = context.conditions = {},\n        mq,\n        p,\n        active;\n    _context && !context.selector && (context.selector = _context.selector); // in case a context is created inside a context. Like a gsap.matchMedia() that's inside a scoped gsap.context()\n\n    this.contexts.push(context);\n    func = context.add(\"onMatch\", func);\n    context.queries = conditions;\n\n    for (p in conditions) {\n      if (p === \"all\") {\n        active = 1;\n      } else {\n        mq = _win.matchMedia(conditions[p]);\n\n        if (mq) {\n          _media.indexOf(context) < 0 && _media.push(context);\n          (cond[p] = mq.matches) && (active = 1);\n          mq.addListener ? mq.addListener(_onMediaChange) : mq.addEventListener(\"change\", _onMediaChange);\n        }\n      }\n    }\n\n    active && func(context, function (f) {\n      return context.add(null, f);\n    });\n    return this;\n  } // refresh() {\n  // \tlet time = _lastMediaTime,\n  // \t\tmedia = _media;\n  // \t_lastMediaTime = -1;\n  // \t_media = this.contexts;\n  // \t_onMediaChange();\n  // \t_lastMediaTime = time;\n  // \t_media = media;\n  // }\n  ;\n\n  _proto6.revert = function revert(config) {\n    this.kill(config || {});\n  };\n\n  _proto6.kill = function kill(revert) {\n    this.contexts.forEach(function (c) {\n      return c.kill(revert, true);\n    });\n  };\n\n  return MatchMedia;\n}();\n/*\n * --------------------------------------------------------------------------------------\n * GSAP\n * --------------------------------------------------------------------------------------\n */\n\n\nvar _gsap = {\n  registerPlugin: function registerPlugin() {\n    for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n      args[_key2] = arguments[_key2];\n    }\n\n    args.forEach(function (config) {\n      return _createPlugin(config);\n    });\n  },\n  timeline: function timeline(vars) {\n    return new Timeline(vars);\n  },\n  getTweensOf: function getTweensOf(targets, onlyActive) {\n    return _globalTimeline.getTweensOf(targets, onlyActive);\n  },\n  getProperty: function getProperty(target, property, unit, uncache) {\n    _isString(target) && (target = toArray(target)[0]); //in case selector text or an array is passed in\n\n    var getter = _getCache(target || {}).get,\n        format = unit ? _passThrough : _numericIfPossible;\n\n    unit === \"native\" && (unit = \"\");\n    return !target ? target : !property ? function (property, unit, uncache) {\n      return format((_plugins[property] && _plugins[property].get || getter)(target, property, unit, uncache));\n    } : format((_plugins[property] && _plugins[property].get || getter)(target, property, unit, uncache));\n  },\n  quickSetter: function quickSetter(target, property, unit) {\n    target = toArray(target);\n\n    if (target.length > 1) {\n      var setters = target.map(function (t) {\n        return gsap.quickSetter(t, property, unit);\n      }),\n          l = setters.length;\n      return function (value) {\n        var i = l;\n\n        while (i--) {\n          setters[i](value);\n        }\n      };\n    }\n\n    target = target[0] || {};\n\n    var Plugin = _plugins[property],\n        cache = _getCache(target),\n        p = cache.harness && (cache.harness.aliases || {})[property] || property,\n        // in case it's an alias, like \"rotate\" for \"rotation\".\n    setter = Plugin ? function (value) {\n      var p = new Plugin();\n      _quickTween._pt = 0;\n      p.init(target, unit ? value + unit : value, _quickTween, 0, [target]);\n      p.render(1, p);\n      _quickTween._pt && _renderPropTweens(1, _quickTween);\n    } : cache.set(target, p);\n\n    return Plugin ? setter : function (value) {\n      return setter(target, p, unit ? value + unit : value, cache, 1);\n    };\n  },\n  quickTo: function quickTo(target, property, vars) {\n    var _setDefaults2;\n\n    var tween = gsap.to(target, _setDefaults((_setDefaults2 = {}, _setDefaults2[property] = \"+=0.1\", _setDefaults2.paused = true, _setDefaults2.stagger = 0, _setDefaults2), vars || {})),\n        func = function func(value, start, startIsRelative) {\n      return tween.resetTo(property, value, start, startIsRelative);\n    };\n\n    func.tween = tween;\n    return func;\n  },\n  isTweening: function isTweening(targets) {\n    return _globalTimeline.getTweensOf(targets, true).length > 0;\n  },\n  defaults: function defaults(value) {\n    value && value.ease && (value.ease = _parseEase(value.ease, _defaults.ease));\n    return _mergeDeep(_defaults, value || {});\n  },\n  config: function config(value) {\n    return _mergeDeep(_config, value || {});\n  },\n  registerEffect: function registerEffect(_ref3) {\n    var name = _ref3.name,\n        effect = _ref3.effect,\n        plugins = _ref3.plugins,\n        defaults = _ref3.defaults,\n        extendTimeline = _ref3.extendTimeline;\n    (plugins || \"\").split(\",\").forEach(function (pluginName) {\n      return pluginName && !_plugins[pluginName] && !_globals[pluginName] && _warn(name + \" effect requires \" + pluginName + \" plugin.\");\n    });\n\n    _effects[name] = function (targets, vars, tl) {\n      return effect(toArray(targets), _setDefaults(vars || {}, defaults), tl);\n    };\n\n    if (extendTimeline) {\n      Timeline.prototype[name] = function (targets, vars, position) {\n        return this.add(_effects[name](targets, _isObject(vars) ? vars : (position = vars) && {}, this), position);\n      };\n    }\n  },\n  registerEase: function registerEase(name, ease) {\n    _easeMap[name] = _parseEase(ease);\n  },\n  parseEase: function parseEase(ease, defaultEase) {\n    return arguments.length ? _parseEase(ease, defaultEase) : _easeMap;\n  },\n  getById: function getById(id) {\n    return _globalTimeline.getById(id);\n  },\n  exportRoot: function exportRoot(vars, includeDelayedCalls) {\n    if (vars === void 0) {\n      vars = {};\n    }\n\n    var tl = new Timeline(vars),\n        child,\n        next;\n    tl.smoothChildTiming = _isNotFalse(vars.smoothChildTiming);\n\n    _globalTimeline.remove(tl);\n\n    tl._dp = 0; //otherwise it'll get re-activated when adding children and be re-introduced into _globalTimeline's linked list (then added to itself).\n\n    tl._time = tl._tTime = _globalTimeline._time;\n    child = _globalTimeline._first;\n\n    while (child) {\n      next = child._next;\n\n      if (includeDelayedCalls || !(!child._dur && child instanceof Tween && child.vars.onComplete === child._targets[0])) {\n        _addToTimeline(tl, child, child._start - child._delay);\n      }\n\n      child = next;\n    }\n\n    _addToTimeline(_globalTimeline, tl, 0);\n\n    return tl;\n  },\n  context: function context(func, scope) {\n    return func ? new Context(func, scope) : _context;\n  },\n  matchMedia: function matchMedia(scope) {\n    return new MatchMedia(scope);\n  },\n  matchMediaRefresh: function matchMediaRefresh() {\n    return _media.forEach(function (c) {\n      var cond = c.conditions,\n          found,\n          p;\n\n      for (p in cond) {\n        if (cond[p]) {\n          cond[p] = false;\n          found = 1;\n        }\n      }\n\n      found && c.revert();\n    }) || _onMediaChange();\n  },\n  addEventListener: function addEventListener(type, callback) {\n    var a = _listeners[type] || (_listeners[type] = []);\n    ~a.indexOf(callback) || a.push(callback);\n  },\n  removeEventListener: function removeEventListener(type, callback) {\n    var a = _listeners[type],\n        i = a && a.indexOf(callback);\n    i >= 0 && a.splice(i, 1);\n  },\n  utils: {\n    wrap: wrap,\n    wrapYoyo: wrapYoyo,\n    distribute: distribute,\n    random: random,\n    snap: snap,\n    normalize: normalize,\n    getUnit: getUnit,\n    clamp: gsap_core_clamp,\n    splitColor: splitColor,\n    toArray: toArray,\n    selector: selector,\n    mapRange: mapRange,\n    pipe: pipe,\n    unitize: unitize,\n    interpolate: interpolate,\n    shuffle: shuffle\n  },\n  install: _install,\n  effects: _effects,\n  ticker: _ticker,\n  updateRoot: Timeline.updateRoot,\n  plugins: _plugins,\n  globalTimeline: _globalTimeline,\n  core: {\n    PropTween: PropTween,\n    globals: _addGlobal,\n    Tween: Tween,\n    Timeline: Timeline,\n    Animation: Animation,\n    getCache: _getCache,\n    _removeLinkedListItem: _removeLinkedListItem,\n    reverting: function reverting() {\n      return _reverting;\n    },\n    context: function context(toAdd) {\n      if (toAdd && _context) {\n        _context.data.push(toAdd);\n\n        toAdd._ctx = _context;\n      }\n\n      return _context;\n    },\n    suppressOverwrites: function suppressOverwrites(value) {\n      return _suppressOverwrites = value;\n    }\n  }\n};\n\n_forEachName(\"to,from,fromTo,delayedCall,set,killTweensOf\", function (name) {\n  return _gsap[name] = Tween[name];\n});\n\n_ticker.add(Timeline.updateRoot);\n\n_quickTween = _gsap.to({}, {\n  duration: 0\n}); // ---- EXTRA PLUGINS --------------------------------------------------------\n\nvar _getPluginPropTween = function _getPluginPropTween(plugin, prop) {\n  var pt = plugin._pt;\n\n  while (pt && pt.p !== prop && pt.op !== prop && pt.fp !== prop) {\n    pt = pt._next;\n  }\n\n  return pt;\n},\n    _addModifiers = function _addModifiers(tween, modifiers) {\n  var targets = tween._targets,\n      p,\n      i,\n      pt;\n\n  for (p in modifiers) {\n    i = targets.length;\n\n    while (i--) {\n      pt = tween._ptLookup[i][p];\n\n      if (pt && (pt = pt.d)) {\n        if (pt._pt) {\n          // is a plugin\n          pt = _getPluginPropTween(pt, p);\n        }\n\n        pt && pt.modifier && pt.modifier(modifiers[p], tween, targets[i], p);\n      }\n    }\n  }\n},\n    _buildModifierPlugin = function _buildModifierPlugin(name, modifier) {\n  return {\n    name: name,\n    headless: 1,\n    rawVars: 1,\n    //don't pre-process function-based values or \"random()\" strings.\n    init: function init(target, vars, tween) {\n      tween._onInit = function (tween) {\n        var temp, p;\n\n        if (_isString(vars)) {\n          temp = {};\n\n          _forEachName(vars, function (name) {\n            return temp[name] = 1;\n          }); //if the user passes in a comma-delimited list of property names to roundProps, like \"x,y\", we round to whole numbers.\n\n\n          vars = temp;\n        }\n\n        if (modifier) {\n          temp = {};\n\n          for (p in vars) {\n            temp[p] = modifier(vars[p]);\n          }\n\n          vars = temp;\n        }\n\n        _addModifiers(tween, vars);\n      };\n    }\n  };\n}; //register core plugins\n\n\nvar gsap = _gsap.registerPlugin({\n  name: \"attr\",\n  init: function init(target, vars, tween, index, targets) {\n    var p, pt, v;\n    this.tween = tween;\n\n    for (p in vars) {\n      v = target.getAttribute(p) || \"\";\n      pt = this.add(target, \"setAttribute\", (v || 0) + \"\", vars[p], index, targets, 0, 0, p);\n      pt.op = p;\n      pt.b = v; // record the beginning value so we can revert()\n\n      this._props.push(p);\n    }\n  },\n  render: function render(ratio, data) {\n    var pt = data._pt;\n\n    while (pt) {\n      _reverting ? pt.set(pt.t, pt.p, pt.b, pt) : pt.r(ratio, pt.d); // if reverting, go back to the original (pt.b)\n\n      pt = pt._next;\n    }\n  }\n}, {\n  name: \"endArray\",\n  headless: 1,\n  init: function init(target, value) {\n    var i = value.length;\n\n    while (i--) {\n      this.add(target, i, target[i] || 0, value[i], 0, 0, 0, 0, 0, 1);\n    }\n  }\n}, _buildModifierPlugin(\"roundProps\", _roundModifier), _buildModifierPlugin(\"modifiers\"), _buildModifierPlugin(\"snap\", snap)) || _gsap; //to prevent the core plugins from being dropped via aggressive tree shaking, we must include them in the variable declaration in this way.\n\nTween.version = Timeline.version = gsap.version = \"3.15.0\";\n_coreReady = 1;\n_windowExists() && _wake();\nvar Power0 = _easeMap.Power0,\n    Power1 = _easeMap.Power1,\n    Power2 = _easeMap.Power2,\n    Power3 = _easeMap.Power3,\n    Power4 = _easeMap.Power4,\n    Linear = _easeMap.Linear,\n    Quad = _easeMap.Quad,\n    Cubic = _easeMap.Cubic,\n    Quart = _easeMap.Quart,\n    Quint = _easeMap.Quint,\n    Strong = _easeMap.Strong,\n    Elastic = _easeMap.Elastic,\n    Back = _easeMap.Back,\n    SteppedEase = _easeMap.SteppedEase,\n    Bounce = _easeMap.Bounce,\n    Sine = _easeMap.Sine,\n    Expo = _easeMap.Expo,\n    Circ = _easeMap.Circ;\n\n //export some internal methods/orojects for use in CSSPlugin so that we can externalize that file and allow custom builds that exclude it.\n\n\n;// ./node_modules/gsap/CSSPlugin.js\n/*!\n * CSSPlugin 3.15.0\n * https://gsap.com\n *\n * Copyright 2008-2026, GreenSock. All rights reserved.\n * Subject to the terms at https://gsap.com/standard-license\n * @author: Jack Doyle, jack@greensock.com\n*/\n\n/* eslint-disable */\n\n\nvar CSSPlugin_win,\n    CSSPlugin_doc,\n    _docElement,\n    _pluginInitted,\n    _tempDiv,\n    _tempDivStyler,\n    _recentSetterPlugin,\n    CSSPlugin_reverting,\n    CSSPlugin_windowExists = function _windowExists() {\n  return typeof window !== \"undefined\";\n},\n    _transformProps = {},\n    _RAD2DEG = 180 / Math.PI,\n    _DEG2RAD = Math.PI / 180,\n    _atan2 = Math.atan2,\n    CSSPlugin_bigNum = 1e8,\n    _capsExp = /([A-Z])/g,\n    _horizontalExp = /(left|right|width|margin|padding|x)/i,\n    _complexExp = /[\\s,\\(]\\S/,\n    _propertyAliases = {\n  autoAlpha: \"opacity,visibility\",\n  scale: \"scaleX,scaleY\",\n  alpha: \"opacity\"\n},\n    _renderCSSProp = function _renderCSSProp(ratio, data) {\n  return data.set(data.t, data.p, Math.round((data.s + data.c * ratio) * 10000) / 10000 + data.u, data);\n},\n    _renderPropWithEnd = function _renderPropWithEnd(ratio, data) {\n  return data.set(data.t, data.p, ratio === 1 ? data.e : Math.round((data.s + data.c * ratio) * 10000) / 10000 + data.u, data);\n},\n    _renderCSSPropWithBeginning = function _renderCSSPropWithBeginning(ratio, data) {\n  return data.set(data.t, data.p, ratio ? Math.round((data.s + data.c * ratio) * 10000) / 10000 + data.u : data.b, data);\n},\n    //if units change, we need a way to render the original unit/value when the tween goes all the way back to the beginning (ratio:0)\n_renderCSSPropWithBeginningAndEnd = function _renderCSSPropWithBeginningAndEnd(ratio, data) {\n  return data.set(data.t, data.p, ratio === 1 ? data.e : ratio ? Math.round((data.s + data.c * ratio) * 10000) / 10000 + data.u : data.b, data);\n},\n    //if units change, we need a way to render the original unit/value when the tween goes all the way back to the beginning (ratio:0)\n_renderRoundedCSSProp = function _renderRoundedCSSProp(ratio, data) {\n  var value = data.s + data.c * ratio;\n  data.set(data.t, data.p, ~~(value + (value < 0 ? -.5 : .5)) + data.u, data);\n},\n    _renderNonTweeningValue = function _renderNonTweeningValue(ratio, data) {\n  return data.set(data.t, data.p, ratio ? data.e : data.b, data);\n},\n    _renderNonTweeningValueOnlyAtEnd = function _renderNonTweeningValueOnlyAtEnd(ratio, data) {\n  return data.set(data.t, data.p, ratio !== 1 ? data.b : data.e, data);\n},\n    _setterCSSStyle = function _setterCSSStyle(target, property, value) {\n  return target.style[property] = value;\n},\n    _setterCSSProp = function _setterCSSProp(target, property, value) {\n  return target.style.setProperty(property, value);\n},\n    _setterTransform = function _setterTransform(target, property, value) {\n  return target._gsap[property] = value;\n},\n    _setterScale = function _setterScale(target, property, value) {\n  return target._gsap.scaleX = target._gsap.scaleY = value;\n},\n    _setterScaleWithRender = function _setterScaleWithRender(target, property, value, data, ratio) {\n  var cache = target._gsap;\n  cache.scaleX = cache.scaleY = value;\n  cache.renderTransform(ratio, cache);\n},\n    _setterTransformWithRender = function _setterTransformWithRender(target, property, value, data, ratio) {\n  var cache = target._gsap;\n  cache[property] = value;\n  cache.renderTransform(ratio, cache);\n},\n    _transformProp = \"transform\",\n    _transformOriginProp = _transformProp + \"Origin\",\n    _saveStyle = function _saveStyle(property, isNotCSS) {\n  var _this = this;\n\n  var target = this.target,\n      style = target.style,\n      cache = target._gsap;\n\n  if (property in _transformProps && style) {\n    this.tfm = this.tfm || {};\n\n    if (property !== \"transform\") {\n      property = _propertyAliases[property] || property;\n      ~property.indexOf(\",\") ? property.split(\",\").forEach(function (a) {\n        return _this.tfm[a] = _get(target, a);\n      }) : this.tfm[property] = cache.x ? cache[property] : _get(target, property); // note: scale would map to \"scaleX,scaleY\", thus we loop and apply them both.\n\n      property === _transformOriginProp && (this.tfm.zOrigin = cache.zOrigin);\n    } else {\n      return _propertyAliases.transform.split(\",\").forEach(function (p) {\n        return _saveStyle.call(_this, p, isNotCSS);\n      });\n    }\n\n    if (this.props.indexOf(_transformProp) >= 0) {\n      return;\n    }\n\n    if (cache.svg) {\n      this.svgo = target.getAttribute(\"data-svg-origin\");\n      this.props.push(_transformOriginProp, isNotCSS, \"\");\n    }\n\n    property = _transformProp;\n  }\n\n  (style || isNotCSS) && this.props.push(property, isNotCSS, style[property]);\n},\n    _removeIndependentTransforms = function _removeIndependentTransforms(style) {\n  if (style.translate) {\n    style.removeProperty(\"translate\");\n    style.removeProperty(\"scale\");\n    style.removeProperty(\"rotate\");\n  }\n},\n    _revertStyle = function _revertStyle() {\n  var props = this.props,\n      target = this.target,\n      style = target.style,\n      cache = target._gsap,\n      i,\n      p;\n\n  for (i = 0; i < props.length; i += 3) {\n    // stored like this: property, isNotCSS, value\n    if (!props[i + 1]) {\n      props[i + 2] ? style[props[i]] = props[i + 2] : style.removeProperty(props[i].substr(0, 2) === \"--\" ? props[i] : props[i].replace(_capsExp, \"-$1\").toLowerCase());\n    } else if (props[i + 1] === 2) {\n      // non-CSS value (function-based)\n      target[props[i]](props[i + 2]);\n    } else {\n      // non-CSS value (not function-based)\n      target[props[i]] = props[i + 2];\n    }\n  }\n\n  if (this.tfm) {\n    for (p in this.tfm) {\n      cache[p] = this.tfm[p];\n    }\n\n    if (cache.svg) {\n      cache.renderTransform();\n      target.setAttribute(\"data-svg-origin\", this.svgo || \"\");\n    }\n\n    i = CSSPlugin_reverting();\n\n    if ((!i || !i.isStart) && !style[_transformProp]) {\n      _removeIndependentTransforms(style);\n\n      if (cache.zOrigin && style[_transformOriginProp]) {\n        style[_transformOriginProp] += \" \" + cache.zOrigin + \"px\"; // since we're uncaching, we must put the zOrigin back into the transformOrigin so that we can pull it out accurately when we parse again. Otherwise, we'd lose the z portion of the origin since we extract it to protect from Safari bugs.\n\n        cache.zOrigin = 0;\n        cache.renderTransform();\n      }\n\n      cache.uncache = 1; // if it's a startAt that's being reverted in the _initTween() of the core, we don't need to uncache transforms. This is purely a performance optimization.\n    }\n  }\n},\n    _getStyleSaver = function _getStyleSaver(target, properties) {\n  var saver = {\n    target: target,\n    props: [],\n    revert: _revertStyle,\n    save: _saveStyle\n  };\n  target._gsap || gsap.core.getCache(target); // just make sure there's a _gsap cache defined because we read from it in _saveStyle() and it's more efficient to just check it here once.\n\n  properties && target.style && target.nodeType && properties.split(\",\").forEach(function (p) {\n    return saver.save(p);\n  }); // make sure it's a DOM node too.\n\n  return saver;\n},\n    _supports3D,\n    _createElement = function _createElement(type, ns) {\n  var e = CSSPlugin_doc.createElementNS ? CSSPlugin_doc.createElementNS((ns || \"http://www.w3.org/1999/xhtml\").replace(/^https/, \"http\"), type) : CSSPlugin_doc.createElement(type); //some servers swap in https for http in the namespace which can break things, making \"style\" inaccessible.\n\n  return e && e.style ? e : CSSPlugin_doc.createElement(type); //some environments won't allow access to the element's style when created with a namespace in which case we default to the standard createElement() to work around the issue. Also note that when GSAP is embedded directly inside an SVG file, createElement() won't allow access to the style object in Firefox (see https://gsap.com/forums/topic/20215-problem-using-tweenmax-in-standalone-self-containing-svg-file-err-cannot-set-property-csstext-of-undefined/).\n},\n    _getComputedProperty = function _getComputedProperty(target, property, skipPrefixFallback) {\n  var cs = getComputedStyle(target);\n  return cs[property] || cs.getPropertyValue(property.replace(_capsExp, \"-$1\").toLowerCase()) || cs.getPropertyValue(property) || !skipPrefixFallback && _getComputedProperty(target, _checkPropPrefix(property) || property, 1) || \"\"; //css variables may not need caps swapped out for dashes and lowercase.\n},\n    _prefixes = \"O,Moz,ms,Ms,Webkit\".split(\",\"),\n    _checkPropPrefix = function _checkPropPrefix(property, element, preferPrefix) {\n  var e = element || _tempDiv,\n      s = e.style,\n      i = 5;\n\n  if (property in s && !preferPrefix) {\n    return property;\n  }\n\n  property = property.charAt(0).toUpperCase() + property.substr(1);\n\n  while (i-- && !(_prefixes[i] + property in s)) {}\n\n  return i < 0 ? null : (i === 3 ? \"ms\" : i >= 0 ? _prefixes[i] : \"\") + property;\n},\n    _initCore = function _initCore() {\n  if (CSSPlugin_windowExists() && window.document) {\n    CSSPlugin_win = window;\n    CSSPlugin_doc = CSSPlugin_win.document;\n    _docElement = CSSPlugin_doc.documentElement;\n    _tempDiv = _createElement(\"div\") || {\n      style: {}\n    };\n    _tempDivStyler = _createElement(\"div\");\n    _transformProp = _checkPropPrefix(_transformProp);\n    _transformOriginProp = _transformProp + \"Origin\";\n    _tempDiv.style.cssText = \"border-width:0;line-height:0;position:absolute;padding:0\"; //make sure to override certain properties that may contaminate measurements, in case the user has overreaching style sheets.\n\n    _supports3D = !!_checkPropPrefix(\"perspective\");\n    CSSPlugin_reverting = gsap.core.reverting;\n    _pluginInitted = 1;\n  }\n},\n    _getReparentedCloneBBox = function _getReparentedCloneBBox(target) {\n  //works around issues in some browsers (like Firefox) that don't correctly report getBBox() on SVG elements inside a <defs> element and/or <mask>. We try creating an SVG, adding it to the documentElement and toss the element in there so that it's definitely part of the rendering tree, then grab the bbox and if it works, we actually swap out the original getBBox() method for our own that does these extra steps whenever getBBox is needed. This helps ensure that performance is optimal (only do all these extra steps when absolutely necessary...most elements don't need it).\n  var owner = target.ownerSVGElement,\n      svg = _createElement(\"svg\", owner && owner.getAttribute(\"xmlns\") || \"http://www.w3.org/2000/svg\"),\n      clone = target.cloneNode(true),\n      bbox;\n\n  clone.style.display = \"block\";\n  svg.appendChild(clone);\n\n  _docElement.appendChild(svg);\n\n  try {\n    bbox = clone.getBBox();\n  } catch (e) {}\n\n  svg.removeChild(clone);\n\n  _docElement.removeChild(svg);\n\n  return bbox;\n},\n    _getAttributeFallbacks = function _getAttributeFallbacks(target, attributesArray) {\n  var i = attributesArray.length;\n\n  while (i--) {\n    if (target.hasAttribute(attributesArray[i])) {\n      return target.getAttribute(attributesArray[i]);\n    }\n  }\n},\n    _getBBox = function _getBBox(target) {\n  var bounds, cloned;\n\n  try {\n    bounds = target.getBBox(); //Firefox throws errors if you try calling getBBox() on an SVG element that's not rendered (like in a <symbol> or <defs>). https://bugzilla.mozilla.org/show_bug.cgi?id=612118\n  } catch (error) {\n    bounds = _getReparentedCloneBBox(target);\n    cloned = 1;\n  }\n\n  bounds && (bounds.width || bounds.height) || cloned || (bounds = _getReparentedCloneBBox(target)); //some browsers (like Firefox) misreport the bounds if the element has zero width and height (it just assumes it's at x:0, y:0), thus we need to manually grab the position in that case.\n\n  return bounds && !bounds.width && !bounds.x && !bounds.y ? {\n    x: +_getAttributeFallbacks(target, [\"x\", \"cx\", \"x1\"]) || 0,\n    y: +_getAttributeFallbacks(target, [\"y\", \"cy\", \"y1\"]) || 0,\n    width: 0,\n    height: 0\n  } : bounds;\n},\n    _isSVG = function _isSVG(e) {\n  return !!(e.getCTM && (!e.parentNode || e.ownerSVGElement) && _getBBox(e));\n},\n    //reports if the element is an SVG on which getBBox() actually works\n_removeProperty = function _removeProperty(target, property) {\n  if (property) {\n    var style = target.style,\n        first2Chars;\n\n    if (property in _transformProps && property !== _transformOriginProp) {\n      property = _transformProp;\n    }\n\n    if (style.removeProperty) {\n      first2Chars = property.substr(0, 2);\n\n      if (first2Chars === \"ms\" || property.substr(0, 6) === \"webkit\") {\n        //Microsoft and some Webkit browsers don't conform to the standard of capitalizing the first prefix character, so we adjust so that when we prefix the caps with a dash, it's correct (otherwise it'd be \"ms-transform\" instead of \"-ms-transform\" for IE9, for example)\n        property = \"-\" + property;\n      }\n\n      style.removeProperty(first2Chars === \"--\" ? property : property.replace(_capsExp, \"-$1\").toLowerCase());\n    } else {\n      //note: old versions of IE use \"removeAttribute()\" instead of \"removeProperty()\"\n      style.removeAttribute(property);\n    }\n  }\n},\n    _addNonTweeningPT = function _addNonTweeningPT(plugin, target, property, beginning, end, onlySetAtEnd) {\n  var pt = new PropTween(plugin._pt, target, property, 0, 1, onlySetAtEnd ? _renderNonTweeningValueOnlyAtEnd : _renderNonTweeningValue);\n  plugin._pt = pt;\n  pt.b = beginning;\n  pt.e = end;\n\n  plugin._props.push(property);\n\n  return pt;\n},\n    _nonConvertibleUnits = {\n  deg: 1,\n  rad: 1,\n  turn: 1\n},\n    _nonStandardLayouts = {\n  grid: 1,\n  flex: 1\n},\n    //takes a single value like 20px and converts it to the unit specified, like \"%\", returning only the numeric amount.\n_convertToUnit = function _convertToUnit(target, property, value, unit) {\n  var curValue = parseFloat(value) || 0,\n      curUnit = (value + \"\").trim().substr((curValue + \"\").length) || \"px\",\n      // some browsers leave extra whitespace at the beginning of CSS variables, hence the need to trim()\n  style = _tempDiv.style,\n      horizontal = _horizontalExp.test(property),\n      isRootSVG = target.tagName.toLowerCase() === \"svg\",\n      measureProperty = (isRootSVG ? \"client\" : \"offset\") + (horizontal ? \"Width\" : \"Height\"),\n      amount = 100,\n      toPixels = unit === \"px\",\n      toPercent = unit === \"%\",\n      px,\n      parent,\n      cache,\n      isSVG;\n\n  if (unit === curUnit || !curValue || _nonConvertibleUnits[unit] || _nonConvertibleUnits[curUnit]) {\n    return curValue;\n  }\n\n  curUnit !== \"px\" && !toPixels && (curValue = _convertToUnit(target, property, value, \"px\"));\n  isSVG = target.getCTM && _isSVG(target);\n\n  if ((toPercent || curUnit === \"%\") && (_transformProps[property] || ~property.indexOf(\"adius\"))) {\n    px = isSVG ? target.getBBox()[horizontal ? \"width\" : \"height\"] : target[measureProperty];\n    return _round(toPercent ? curValue / px * amount : curValue / 100 * px);\n  }\n\n  style[horizontal ? \"width\" : \"height\"] = amount + (toPixels ? curUnit : unit);\n  parent = unit !== \"rem\" && ~property.indexOf(\"adius\") || unit === \"em\" && target.appendChild && !isRootSVG ? target : target.parentNode;\n\n  if (isSVG) {\n    parent = (target.ownerSVGElement || {}).parentNode;\n  }\n\n  if (!parent || parent === CSSPlugin_doc || !parent.appendChild) {\n    parent = CSSPlugin_doc.body;\n  }\n\n  cache = parent._gsap;\n\n  if (cache && toPercent && cache.width && horizontal && cache.time === _ticker.time && !cache.uncache) {\n    return _round(curValue / cache.width * amount);\n  } else {\n    if (toPercent && (property === \"height\" || property === \"width\")) {\n      // if we're dealing with width/height that's inside a container with padding and/or it's a flexbox/grid container, we must apply it to the target itself rather than the _tempDiv in order to ensure complete accuracy, factoring in the parent's padding.\n      var v = target.style[property];\n      target.style[property] = amount + unit;\n      px = target[measureProperty];\n      v ? target.style[property] = v : _removeProperty(target, property);\n    } else {\n      (toPercent || curUnit === \"%\") && !_nonStandardLayouts[_getComputedProperty(parent, \"display\")] && (style.position = _getComputedProperty(target, \"position\"));\n      parent === target && (style.position = \"static\"); // like for borderRadius, if it's a % we must have it relative to the target itself but that may not have position: relative or position: absolute in which case it'd go up the chain until it finds its offsetParent (bad). position: static protects against that.\n\n      parent.appendChild(_tempDiv);\n      px = _tempDiv[measureProperty];\n      parent.removeChild(_tempDiv);\n      style.position = \"absolute\";\n    }\n\n    if (horizontal && toPercent) {\n      cache = _getCache(parent);\n      cache.time = _ticker.time;\n      cache.width = parent[measureProperty];\n    }\n  }\n\n  return _round(toPixels ? px * curValue / amount : px && curValue ? amount / px * curValue : 0);\n},\n    _get = function _get(target, property, unit, uncache) {\n  var value;\n  _pluginInitted || _initCore();\n\n  if (property in _propertyAliases && property !== \"transform\") {\n    property = _propertyAliases[property];\n\n    if (~property.indexOf(\",\")) {\n      property = property.split(\",\")[0];\n    }\n  }\n\n  if (_transformProps[property] && property !== \"transform\") {\n    value = _parseTransform(target, uncache);\n    value = property !== \"transformOrigin\" ? value[property] : value.svg ? value.origin : _firstTwoOnly(_getComputedProperty(target, _transformOriginProp)) + \" \" + value.zOrigin + \"px\";\n  } else {\n    value = target.style[property];\n\n    if (!value || value === \"auto\" || uncache || ~(value + \"\").indexOf(\"calc(\")) {\n      value = _specialProps[property] && _specialProps[property](target, property, unit) || _getComputedProperty(target, property) || _getProperty(target, property) || (property === \"opacity\" ? 1 : 0); // note: some browsers, like Firefox, don't report borderRadius correctly! Instead, it only reports every corner like  borderTopLeftRadius\n    }\n  }\n\n  return unit && !~(value + \"\").trim().indexOf(\" \") ? _convertToUnit(target, property, value, unit) + unit : value;\n},\n    _tweenComplexCSSString = function _tweenComplexCSSString(target, prop, start, end) {\n  // note: we call _tweenComplexCSSString.call(pluginInstance...) to ensure that it's scoped properly. We may call it from within a plugin too, thus \"this\" would refer to the plugin.\n  if (!start || start === \"none\") {\n    // some browsers like Safari actually PREFER the prefixed property and mis-report the unprefixed value like clipPath (BUG). In other words, even though clipPath exists in the style (\"clipPath\" in target.style) and it's set in the CSS properly (along with -webkit-clip-path), Safari reports clipPath as \"none\" whereas WebkitClipPath reports accurately like \"ellipse(100% 0% at 50% 0%)\", so in this case we must SWITCH to using the prefixed property instead. See https://gsap.com/forums/topic/18310-clippath-doesnt-work-on-ios/\n    var p = _checkPropPrefix(prop, target, 1),\n        s = p && _getComputedProperty(target, p, 1);\n\n    if (s && s !== start) {\n      prop = p;\n      start = s;\n    } else if (prop === \"borderColor\") {\n      start = _getComputedProperty(target, \"borderTopColor\"); // Firefox bug: always reports \"borderColor\" as \"\", so we must fall back to borderTopColor. See https://gsap.com/forums/topic/24583-how-to-return-colors-that-i-had-after-reverse/\n    }\n  }\n\n  var pt = new PropTween(this._pt, target.style, prop, 0, 1, _renderComplexString),\n      index = 0,\n      matchIndex = 0,\n      a,\n      result,\n      startValues,\n      startNum,\n      color,\n      startValue,\n      endValue,\n      endNum,\n      chunk,\n      endUnit,\n      startUnit,\n      endValues;\n  pt.b = start;\n  pt.e = end;\n  start += \"\"; // ensure values are strings\n\n  end += \"\";\n\n  if (end.substring(0, 6) === \"var(--\") {\n    end = _getComputedProperty(target, end.substring(4, end.indexOf(\")\")));\n  }\n\n  if (end === \"auto\") {\n    startValue = target.style[prop];\n    target.style[prop] = end;\n    end = _getComputedProperty(target, prop) || end;\n    startValue ? target.style[prop] = startValue : _removeProperty(target, prop);\n  }\n\n  a = [start, end];\n\n  _colorStringFilter(a); // pass an array with the starting and ending values and let the filter do whatever it needs to the values. If colors are found, it returns true and then we must match where the color shows up order-wise because for things like boxShadow, sometimes the browser provides the computed values with the color FIRST, but the user provides it with the color LAST, so flip them if necessary. Same for drop-shadow().\n\n\n  start = a[0];\n  end = a[1];\n  startValues = start.match(_numWithUnitExp) || [];\n  endValues = end.match(_numWithUnitExp) || [];\n\n  if (endValues.length) {\n    while (result = _numWithUnitExp.exec(end)) {\n      endValue = result[0];\n      chunk = end.substring(index, result.index);\n\n      if (color) {\n        color = (color + 1) % 5;\n      } else if (chunk.substr(-5) === \"rgba(\" || chunk.substr(-5) === \"hsla(\") {\n        color = 1;\n      }\n\n      if (endValue !== (startValue = startValues[matchIndex++] || \"\")) {\n        startNum = parseFloat(startValue) || 0;\n        startUnit = startValue.substr((startNum + \"\").length);\n        endValue.charAt(1) === \"=\" && (endValue = _parseRelative(startNum, endValue) + startUnit);\n        endNum = parseFloat(endValue);\n        endUnit = endValue.substr((endNum + \"\").length);\n        index = _numWithUnitExp.lastIndex - endUnit.length;\n\n        if (!endUnit) {\n          //if something like \"perspective:300\" is passed in and we must add a unit to the end\n          endUnit = endUnit || _config.units[prop] || startUnit;\n\n          if (index === end.length) {\n            end += endUnit;\n            pt.e += endUnit;\n          }\n        }\n\n        if (startUnit !== endUnit) {\n          startNum = _convertToUnit(target, prop, startValue, endUnit) || 0;\n        } // these nested PropTweens are handled in a special way - we'll never actually call a render or setter method on them. We'll just loop through them in the parent complex string PropTween's render method.\n\n\n        pt._pt = {\n          _next: pt._pt,\n          p: chunk || matchIndex === 1 ? chunk : \",\",\n          //note: SVG spec allows omission of comma/space when a negative sign is wedged between two numbers, like 2.5-5.3 instead of 2.5,-5.3 but when tweening, the negative value may switch to positive, so we insert the comma just in case.\n          s: startNum,\n          c: endNum - startNum,\n          m: color && color < 4 || prop === \"zIndex\" ? Math.round : 0\n        };\n      }\n    }\n\n    pt.c = index < end.length ? end.substring(index, end.length) : \"\"; //we use the \"c\" of the PropTween to store the final part of the string (after the last number)\n  } else {\n    pt.r = prop === \"display\" && end === \"none\" ? _renderNonTweeningValueOnlyAtEnd : _renderNonTweeningValue;\n  }\n\n  _relExp.test(end) && (pt.e = 0); //if the end string contains relative values or dynamic random(...) values, delete the end it so that on the final render we don't actually set it to the string with += or -= characters (forces it to use the calculated value).\n\n  this._pt = pt; //start the linked list with this new PropTween. Remember, we call _tweenComplexCSSString.call(pluginInstance...) to ensure that it's scoped properly. We may call it from within another plugin too, thus \"this\" would refer to the plugin.\n\n  return pt;\n},\n    _keywordToPercent = {\n  top: \"0%\",\n  bottom: \"100%\",\n  left: \"0%\",\n  right: \"100%\",\n  center: \"50%\"\n},\n    _convertKeywordsToPercentages = function _convertKeywordsToPercentages(value) {\n  var split = value.split(\" \"),\n      x = split[0],\n      y = split[1] || \"50%\";\n\n  if (x === \"top\" || x === \"bottom\" || y === \"left\" || y === \"right\") {\n    //the user provided them in the wrong order, so flip them\n    value = x;\n    x = y;\n    y = value;\n  }\n\n  split[0] = _keywordToPercent[x] || x;\n  split[1] = _keywordToPercent[y] || y;\n  return split.join(\" \");\n},\n    _renderClearProps = function _renderClearProps(ratio, data) {\n  if (data.tween && data.tween._time === data.tween._dur) {\n    var target = data.t,\n        style = target.style,\n        props = data.u,\n        cache = target._gsap,\n        prop,\n        clearTransforms,\n        i;\n\n    if (props === \"all\" || props === true) {\n      style.cssText = \"\";\n      clearTransforms = 1;\n    } else {\n      props = props.split(\",\");\n      i = props.length;\n\n      while (--i > -1) {\n        prop = props[i];\n\n        if (_transformProps[prop]) {\n          clearTransforms = 1;\n          prop = prop === \"transformOrigin\" ? _transformOriginProp : _transformProp;\n        }\n\n        _removeProperty(target, prop);\n      }\n    }\n\n    if (clearTransforms) {\n      _removeProperty(target, _transformProp);\n\n      if (cache) {\n        cache.svg && target.removeAttribute(\"transform\");\n        style.scale = style.rotate = style.translate = \"none\";\n\n        _parseTransform(target, 1); // force all the cached values back to \"normal\"/identity, otherwise if there's another tween that's already set to render transforms on this element, it could display the wrong values.\n\n\n        cache.uncache = 1;\n\n        _removeIndependentTransforms(style);\n      }\n    }\n  }\n},\n    // note: specialProps should return 1 if (and only if) they have a non-zero priority. It indicates we need to sort the linked list.\n_specialProps = {\n  clearProps: function clearProps(plugin, target, property, endValue, tween) {\n    if (tween.data !== \"isFromStart\") {\n      var pt = plugin._pt = new PropTween(plugin._pt, target, property, 0, 0, _renderClearProps);\n      pt.u = endValue;\n      pt.pr = -10;\n      pt.tween = tween;\n\n      plugin._props.push(property);\n\n      return 1;\n    }\n  }\n  /* className feature (about 0.4kb gzipped).\n  , className(plugin, target, property, endValue, tween) {\n  \tlet _renderClassName = (ratio, data) => {\n  \t\t\tdata.css.render(ratio, data.css);\n  \t\t\tif (!ratio || ratio === 1) {\n  \t\t\t\tlet inline = data.rmv,\n  \t\t\t\t\ttarget = data.t,\n  \t\t\t\t\tp;\n  \t\t\t\ttarget.setAttribute(\"class\", ratio ? data.e : data.b);\n  \t\t\t\tfor (p in inline) {\n  \t\t\t\t\t_removeProperty(target, p);\n  \t\t\t\t}\n  \t\t\t}\n  \t\t},\n  \t\t_getAllStyles = (target) => {\n  \t\t\tlet styles = {},\n  \t\t\t\tcomputed = getComputedStyle(target),\n  \t\t\t\tp;\n  \t\t\tfor (p in computed) {\n  \t\t\t\tif (isNaN(p) && p !== \"cssText\" && p !== \"length\") {\n  \t\t\t\t\tstyles[p] = computed[p];\n  \t\t\t\t}\n  \t\t\t}\n  \t\t\t_setDefaults(styles, _parseTransform(target, 1));\n  \t\t\treturn styles;\n  \t\t},\n  \t\tstartClassList = target.getAttribute(\"class\"),\n  \t\tstyle = target.style,\n  \t\tcssText = style.cssText,\n  \t\tcache = target._gsap,\n  \t\tclassPT = cache.classPT,\n  \t\tinlineToRemoveAtEnd = {},\n  \t\tdata = {t:target, plugin:plugin, rmv:inlineToRemoveAtEnd, b:startClassList, e:(endValue.charAt(1) !== \"=\") ? endValue : startClassList.replace(new RegExp(\"(?:\\\\s|^)\" + endValue.substr(2) + \"(?![\\\\w-])\"), \"\") + ((endValue.charAt(0) === \"+\") ? \" \" + endValue.substr(2) : \"\")},\n  \t\tchangingVars = {},\n  \t\tstartVars = _getAllStyles(target),\n  \t\ttransformRelated = /(transform|perspective)/i,\n  \t\tendVars, p;\n  \tif (classPT) {\n  \t\tclassPT.r(1, classPT.d);\n  \t\t_removeLinkedListItem(classPT.d.plugin, classPT, \"_pt\");\n  \t}\n  \ttarget.setAttribute(\"class\", data.e);\n  \tendVars = _getAllStyles(target, true);\n  \ttarget.setAttribute(\"class\", startClassList);\n  \tfor (p in endVars) {\n  \t\tif (endVars[p] !== startVars[p] && !transformRelated.test(p)) {\n  \t\t\tchangingVars[p] = endVars[p];\n  \t\t\tif (!style[p] && style[p] !== \"0\") {\n  \t\t\t\tinlineToRemoveAtEnd[p] = 1;\n  \t\t\t}\n  \t\t}\n  \t}\n  \tcache.classPT = plugin._pt = new PropTween(plugin._pt, target, \"className\", 0, 0, _renderClassName, data, 0, -11);\n  \tif (style.cssText !== cssText) { //only apply if things change. Otherwise, in cases like a background-image that's pulled dynamically, it could cause a refresh. See https://gsap.com/forums/topic/20368-possible-gsap-bug-switching-classnames-in-chrome/.\n  \t\tstyle.cssText = cssText; //we recorded cssText before we swapped classes and ran _getAllStyles() because in cases when a className tween is overwritten, we remove all the related tweening properties from that class change (otherwise class-specific stuff can't override properties we've directly set on the target's style object due to specificity).\n  \t}\n  \t_parseTransform(target, true); //to clear the caching of transforms\n  \tdata.css = new gsap.plugins.css();\n  \tdata.css.init(target, changingVars, tween);\n  \tplugin._props.push(...data.css._props);\n  \treturn 1;\n  }\n  */\n\n},\n\n/*\n * --------------------------------------------------------------------------------------\n * TRANSFORMS\n * --------------------------------------------------------------------------------------\n */\n_identity2DMatrix = [1, 0, 0, 1, 0, 0],\n    _rotationalProperties = {},\n    _isNullTransform = function _isNullTransform(value) {\n  return value === \"matrix(1, 0, 0, 1, 0, 0)\" || value === \"none\" || !value;\n},\n    _getComputedTransformMatrixAsArray = function _getComputedTransformMatrixAsArray(target) {\n  var matrixString = _getComputedProperty(target, _transformProp);\n\n  return _isNullTransform(matrixString) ? _identity2DMatrix : matrixString.substr(7).match(_numExp).map(_round);\n},\n    _getMatrix = function _getMatrix(target, force2D) {\n  var cache = target._gsap || _getCache(target),\n      style = target.style,\n      matrix = _getComputedTransformMatrixAsArray(target),\n      parent,\n      nextSibling,\n      temp,\n      addedToDOM;\n\n  if (cache.svg && target.getAttribute(\"transform\")) {\n    temp = target.transform.baseVal.consolidate().matrix; //ensures that even complex values like \"translate(50,60) rotate(135,0,0)\" are parsed because it mashes it into a matrix.\n\n    matrix = [temp.a, temp.b, temp.c, temp.d, temp.e, temp.f];\n    return matrix.join(\",\") === \"1,0,0,1,0,0\" ? _identity2DMatrix : matrix;\n  } else if (matrix === _identity2DMatrix && !target.offsetParent && target !== _docElement && !cache.svg) {\n    //note: if offsetParent is null, that means the element isn't in the normal document flow, like if it has display:none or one of its ancestors has display:none). Firefox returns null for getComputedStyle() if the element is in an iframe that has display:none. https://bugzilla.mozilla.org/show_bug.cgi?id=548397\n    //browsers don't report transforms accurately unless the element is in the DOM and has a display value that's not \"none\". Firefox and Microsoft browsers have a partial bug where they'll report transforms even if display:none BUT not any percentage-based values like translate(-50%, 8px) will be reported as if it's translate(0, 8px).\n    temp = style.display;\n    style.display = \"block\";\n    parent = target.parentNode;\n\n    if (!parent || !target.offsetParent && !target.getBoundingClientRect().width) {\n      // note: in 3.3.0 we switched target.offsetParent to _doc.body.contains(target) to avoid [sometimes unnecessary] MutationObserver calls but that wasn't adequate because there are edge cases where nested position: fixed elements need to get reparented to accurately sense transforms. See https://github.com/greensock/GSAP/issues/388 and https://github.com/greensock/GSAP/issues/375. Note: position: fixed elements report a null offsetParent but they could also be invisible because they're in an ancestor with display: none, so we check getBoundingClientRect(). We only want to alter the DOM if we absolutely have to because it can cause iframe content to reload, like a Vimeo video.\n      addedToDOM = 1; //flag\n\n      nextSibling = target.nextElementSibling;\n\n      _docElement.appendChild(target); //we must add it to the DOM in order to get values properly\n\n    }\n\n    matrix = _getComputedTransformMatrixAsArray(target);\n    temp ? style.display = temp : _removeProperty(target, \"display\");\n\n    if (addedToDOM) {\n      nextSibling ? parent.insertBefore(target, nextSibling) : parent ? parent.appendChild(target) : _docElement.removeChild(target);\n    }\n  }\n\n  return force2D && matrix.length > 6 ? [matrix[0], matrix[1], matrix[4], matrix[5], matrix[12], matrix[13]] : matrix;\n},\n    _applySVGOrigin = function _applySVGOrigin(target, origin, originIsAbsolute, smooth, matrixArray, pluginToAddPropTweensTo) {\n  var cache = target._gsap,\n      matrix = matrixArray || _getMatrix(target, true),\n      xOriginOld = cache.xOrigin || 0,\n      yOriginOld = cache.yOrigin || 0,\n      xOffsetOld = cache.xOffset || 0,\n      yOffsetOld = cache.yOffset || 0,\n      a = matrix[0],\n      b = matrix[1],\n      c = matrix[2],\n      d = matrix[3],\n      tx = matrix[4],\n      ty = matrix[5],\n      originSplit = origin.split(\" \"),\n      xOrigin = parseFloat(originSplit[0]) || 0,\n      yOrigin = parseFloat(originSplit[1]) || 0,\n      bounds,\n      determinant,\n      x,\n      y;\n\n  if (!originIsAbsolute) {\n    bounds = _getBBox(target);\n    xOrigin = bounds.x + (~originSplit[0].indexOf(\"%\") ? xOrigin / 100 * bounds.width : xOrigin);\n    yOrigin = bounds.y + (~(originSplit[1] || originSplit[0]).indexOf(\"%\") ? yOrigin / 100 * bounds.height : yOrigin); // if (!(\"xOrigin\" in cache) && (xOrigin || yOrigin)) { // added in 3.12.3, reverted in 3.12.4; requires more exploration\n    // \txOrigin -= bounds.x;\n    // \tyOrigin -= bounds.y;\n    // }\n  } else if (matrix !== _identity2DMatrix && (determinant = a * d - b * c)) {\n    //if it's zero (like if scaleX and scaleY are zero), skip it to avoid errors with dividing by zero.\n    x = xOrigin * (d / determinant) + yOrigin * (-c / determinant) + (c * ty - d * tx) / determinant;\n    y = xOrigin * (-b / determinant) + yOrigin * (a / determinant) - (a * ty - b * tx) / determinant;\n    xOrigin = x;\n    yOrigin = y; // theory: we only had to do this for smoothing and it assumes that the previous one was not originIsAbsolute.\n  }\n\n  if (smooth || smooth !== false && cache.smooth) {\n    tx = xOrigin - xOriginOld;\n    ty = yOrigin - yOriginOld;\n    cache.xOffset = xOffsetOld + (tx * a + ty * c) - tx;\n    cache.yOffset = yOffsetOld + (tx * b + ty * d) - ty;\n  } else {\n    cache.xOffset = cache.yOffset = 0;\n  }\n\n  cache.xOrigin = xOrigin;\n  cache.yOrigin = yOrigin;\n  cache.smooth = !!smooth;\n  cache.origin = origin;\n  cache.originIsAbsolute = !!originIsAbsolute;\n  target.style[_transformOriginProp] = \"0px 0px\"; //otherwise, if someone sets  an origin via CSS, it will likely interfere with the SVG transform attribute ones (because remember, we're baking the origin into the matrix() value).\n\n  if (pluginToAddPropTweensTo) {\n    _addNonTweeningPT(pluginToAddPropTweensTo, cache, \"xOrigin\", xOriginOld, xOrigin);\n\n    _addNonTweeningPT(pluginToAddPropTweensTo, cache, \"yOrigin\", yOriginOld, yOrigin);\n\n    _addNonTweeningPT(pluginToAddPropTweensTo, cache, \"xOffset\", xOffsetOld, cache.xOffset);\n\n    _addNonTweeningPT(pluginToAddPropTweensTo, cache, \"yOffset\", yOffsetOld, cache.yOffset);\n  }\n\n  target.setAttribute(\"data-svg-origin\", xOrigin + \" \" + yOrigin);\n},\n    _parseTransform = function _parseTransform(target, uncache) {\n  var cache = target._gsap || new GSCache(target);\n\n  if (\"x\" in cache && !uncache && !cache.uncache) {\n    return cache;\n  }\n\n  var style = target.style,\n      invertedScaleX = cache.scaleX < 0,\n      px = \"px\",\n      deg = \"deg\",\n      cs = getComputedStyle(target),\n      origin = _getComputedProperty(target, _transformOriginProp) || \"0\",\n      x,\n      y,\n      z,\n      scaleX,\n      scaleY,\n      rotation,\n      rotationX,\n      rotationY,\n      skewX,\n      skewY,\n      perspective,\n      xOrigin,\n      yOrigin,\n      matrix,\n      angle,\n      cos,\n      sin,\n      a,\n      b,\n      c,\n      d,\n      a12,\n      a22,\n      t1,\n      t2,\n      t3,\n      a13,\n      a23,\n      a33,\n      a42,\n      a43,\n      a32;\n  x = y = z = rotation = rotationX = rotationY = skewX = skewY = perspective = 0;\n  scaleX = scaleY = 1;\n  cache.svg = !!(target.getCTM && _isSVG(target));\n\n  if (cs.translate) {\n    // accommodate independent transforms by combining them into normal ones.\n    if (cs.translate !== \"none\" || cs.scale !== \"none\" || cs.rotate !== \"none\") {\n      style[_transformProp] = (cs.translate !== \"none\" ? \"translate3d(\" + (cs.translate + \" 0 0\").split(\" \").slice(0, 3).join(\", \") + \") \" : \"\") + (cs.rotate !== \"none\" ? \"rotate(\" + cs.rotate + \") \" : \"\") + (cs.scale !== \"none\" ? \"scale(\" + cs.scale.split(\" \").join(\",\") + \") \" : \"\") + (cs[_transformProp] !== \"none\" ? cs[_transformProp] : \"\");\n    }\n\n    style.scale = style.rotate = style.translate = \"none\";\n  }\n\n  matrix = _getMatrix(target, cache.svg);\n\n  if (cache.svg) {\n    if (cache.uncache) {\n      // if cache.uncache is true (and maybe if origin is 0,0), we need to set element.style.transformOrigin = (cache.xOrigin - bbox.x) + \"px \" + (cache.yOrigin - bbox.y) + \"px\". Previously we let the data-svg-origin stay instead, but when introducing revert(), it complicated things.\n      t2 = target.getBBox();\n      origin = cache.xOrigin - t2.x + \"px \" + (cache.yOrigin - t2.y) + \"px\";\n      t1 = \"\";\n    } else {\n      t1 = !uncache && target.getAttribute(\"data-svg-origin\"); //  Remember, to work around browser inconsistencies we always force SVG elements' transformOrigin to 0,0 and offset the translation accordingly.\n    }\n\n    _applySVGOrigin(target, t1 || origin, !!t1 || cache.originIsAbsolute, cache.smooth !== false, matrix);\n  }\n\n  xOrigin = cache.xOrigin || 0;\n  yOrigin = cache.yOrigin || 0;\n\n  if (matrix !== _identity2DMatrix) {\n    a = matrix[0]; //a11\n\n    b = matrix[1]; //a21\n\n    c = matrix[2]; //a31\n\n    d = matrix[3]; //a41\n\n    x = a12 = matrix[4];\n    y = a22 = matrix[5]; //2D matrix\n\n    if (matrix.length === 6) {\n      scaleX = Math.sqrt(a * a + b * b);\n      scaleY = Math.sqrt(d * d + c * c);\n      rotation = a || b ? _atan2(b, a) * _RAD2DEG : 0; //note: if scaleX is 0, we cannot accurately measure rotation. Same for skewX with a scaleY of 0. Therefore, we default to the previously recorded value (or zero if that doesn't exist).\n\n      skewX = c || d ? _atan2(c, d) * _RAD2DEG + rotation : 0;\n      skewX && (scaleY *= Math.abs(Math.cos(skewX * _DEG2RAD)));\n\n      if (cache.svg) {\n        x -= xOrigin - (xOrigin * a + yOrigin * c);\n        y -= yOrigin - (xOrigin * b + yOrigin * d);\n      } //3D matrix\n\n    } else {\n      a32 = matrix[6];\n      a42 = matrix[7];\n      a13 = matrix[8];\n      a23 = matrix[9];\n      a33 = matrix[10];\n      a43 = matrix[11];\n      x = matrix[12];\n      y = matrix[13];\n      z = matrix[14];\n      angle = _atan2(a32, a33);\n      rotationX = angle * _RAD2DEG; //rotationX\n\n      if (angle) {\n        cos = Math.cos(-angle);\n        sin = Math.sin(-angle);\n        t1 = a12 * cos + a13 * sin;\n        t2 = a22 * cos + a23 * sin;\n        t3 = a32 * cos + a33 * sin;\n        a13 = a12 * -sin + a13 * cos;\n        a23 = a22 * -sin + a23 * cos;\n        a33 = a32 * -sin + a33 * cos;\n        a43 = a42 * -sin + a43 * cos;\n        a12 = t1;\n        a22 = t2;\n        a32 = t3;\n      } //rotationY\n\n\n      angle = _atan2(-c, a33);\n      rotationY = angle * _RAD2DEG;\n\n      if (angle) {\n        cos = Math.cos(-angle);\n        sin = Math.sin(-angle);\n        t1 = a * cos - a13 * sin;\n        t2 = b * cos - a23 * sin;\n        t3 = c * cos - a33 * sin;\n        a43 = d * sin + a43 * cos;\n        a = t1;\n        b = t2;\n        c = t3;\n      } //rotationZ\n\n\n      angle = _atan2(b, a);\n      rotation = angle * _RAD2DEG;\n\n      if (angle) {\n        cos = Math.cos(angle);\n        sin = Math.sin(angle);\n        t1 = a * cos + b * sin;\n        t2 = a12 * cos + a22 * sin;\n        b = b * cos - a * sin;\n        a22 = a22 * cos - a12 * sin;\n        a = t1;\n        a12 = t2;\n      }\n\n      if (rotationX && Math.abs(rotationX) + Math.abs(rotation) > 359.9) {\n        //when rotationY is set, it will often be parsed as 180 degrees different than it should be, and rotationX and rotation both being 180 (it looks the same), so we adjust for that here.\n        rotationX = rotation = 0;\n        rotationY = 180 - rotationY;\n      }\n\n      scaleX = _round(Math.sqrt(a * a + b * b + c * c));\n      scaleY = _round(Math.sqrt(a22 * a22 + a32 * a32));\n      angle = _atan2(a12, a22);\n      skewX = Math.abs(angle) > 0.0002 ? angle * _RAD2DEG : 0;\n      perspective = a43 ? 1 / (a43 < 0 ? -a43 : a43) : 0;\n    }\n\n    if (cache.svg) {\n      //sense if there are CSS transforms applied on an SVG element in which case we must overwrite them when rendering. The transform attribute is more reliable cross-browser, but we can't just remove the CSS ones because they may be applied in a CSS rule somewhere (not just inline).\n      t1 = target.getAttribute(\"transform\");\n      cache.forceCSS = target.setAttribute(\"transform\", \"\") || !_isNullTransform(_getComputedProperty(target, _transformProp));\n      t1 && target.setAttribute(\"transform\", t1);\n    }\n  }\n\n  if (Math.abs(skewX) > 90 && Math.abs(skewX) < 270) {\n    if (invertedScaleX) {\n      scaleX *= -1;\n      skewX += rotation <= 0 ? 180 : -180;\n      rotation += rotation <= 0 ? 180 : -180;\n    } else {\n      scaleY *= -1;\n      skewX += skewX <= 0 ? 180 : -180;\n    }\n  }\n\n  uncache = uncache || cache.uncache;\n  cache.x = x - ((cache.xPercent = x && (!uncache && cache.xPercent || (Math.round(target.offsetWidth / 2) === Math.round(-x) ? -50 : 0))) ? target.offsetWidth * cache.xPercent / 100 : 0) + px;\n  cache.y = y - ((cache.yPercent = y && (!uncache && cache.yPercent || (Math.round(target.offsetHeight / 2) === Math.round(-y) ? -50 : 0))) ? target.offsetHeight * cache.yPercent / 100 : 0) + px;\n  cache.z = z + px;\n  cache.scaleX = _round(scaleX);\n  cache.scaleY = _round(scaleY);\n  cache.rotation = _round(rotation) + deg;\n  cache.rotationX = _round(rotationX) + deg;\n  cache.rotationY = _round(rotationY) + deg;\n  cache.skewX = skewX + deg;\n  cache.skewY = skewY + deg;\n  cache.transformPerspective = perspective + px;\n\n  if (cache.zOrigin = parseFloat(origin.split(\" \")[2]) || !uncache && cache.zOrigin || 0) {\n    style[_transformOriginProp] = _firstTwoOnly(origin);\n  }\n\n  cache.xOffset = cache.yOffset = 0;\n  cache.force3D = _config.force3D;\n  cache.renderTransform = cache.svg ? _renderSVGTransforms : _supports3D ? _renderCSSTransforms : _renderNon3DTransforms;\n  cache.uncache = 0;\n  return cache;\n},\n    _firstTwoOnly = function _firstTwoOnly(value) {\n  return (value = value.split(\" \"))[0] + \" \" + value[1];\n},\n    //for handling transformOrigin values, stripping out the 3rd dimension\n_addPxTranslate = function _addPxTranslate(target, start, value) {\n  var unit = getUnit(start);\n  return _round(parseFloat(start) + parseFloat(_convertToUnit(target, \"x\", value + \"px\", unit))) + unit;\n},\n    _renderNon3DTransforms = function _renderNon3DTransforms(ratio, cache) {\n  cache.z = \"0px\";\n  cache.rotationY = cache.rotationX = \"0deg\";\n  cache.force3D = 0;\n\n  _renderCSSTransforms(ratio, cache);\n},\n    _zeroDeg = \"0deg\",\n    _zeroPx = \"0px\",\n    _endParenthesis = \") \",\n    _renderCSSTransforms = function _renderCSSTransforms(ratio, cache) {\n  var _ref = cache || this,\n      xPercent = _ref.xPercent,\n      yPercent = _ref.yPercent,\n      x = _ref.x,\n      y = _ref.y,\n      z = _ref.z,\n      rotation = _ref.rotation,\n      rotationY = _ref.rotationY,\n      rotationX = _ref.rotationX,\n      skewX = _ref.skewX,\n      skewY = _ref.skewY,\n      scaleX = _ref.scaleX,\n      scaleY = _ref.scaleY,\n      transformPerspective = _ref.transformPerspective,\n      force3D = _ref.force3D,\n      target = _ref.target,\n      zOrigin = _ref.zOrigin,\n      transforms = \"\",\n      use3D = force3D === \"auto\" && ratio && ratio !== 1 || force3D === true; // Safari has a bug that causes it not to render 3D transform-origin values properly, so we force the z origin to 0, record it in the cache, and then do the math here to offset the translate values accordingly (basically do the 3D transform-origin part manually)\n\n\n  if (zOrigin && (rotationX !== _zeroDeg || rotationY !== _zeroDeg)) {\n    var angle = parseFloat(rotationY) * _DEG2RAD,\n        a13 = Math.sin(angle),\n        a33 = Math.cos(angle),\n        cos;\n\n    angle = parseFloat(rotationX) * _DEG2RAD;\n    cos = Math.cos(angle);\n    x = _addPxTranslate(target, x, a13 * cos * -zOrigin);\n    y = _addPxTranslate(target, y, -Math.sin(angle) * -zOrigin);\n    z = _addPxTranslate(target, z, a33 * cos * -zOrigin + zOrigin);\n  }\n\n  if (transformPerspective !== _zeroPx) {\n    transforms += \"perspective(\" + transformPerspective + _endParenthesis;\n  }\n\n  if (xPercent || yPercent) {\n    transforms += \"translate(\" + xPercent + \"%, \" + yPercent + \"%) \";\n  }\n\n  if (use3D || x !== _zeroPx || y !== _zeroPx || z !== _zeroPx) {\n    transforms += z !== _zeroPx || use3D ? \"translate3d(\" + x + \", \" + y + \", \" + z + \") \" : \"translate(\" + x + \", \" + y + _endParenthesis;\n  }\n\n  if (rotation !== _zeroDeg) {\n    transforms += \"rotate(\" + rotation + _endParenthesis;\n  }\n\n  if (rotationY !== _zeroDeg) {\n    transforms += \"rotateY(\" + rotationY + _endParenthesis;\n  }\n\n  if (rotationX !== _zeroDeg) {\n    transforms += \"rotateX(\" + rotationX + _endParenthesis;\n  }\n\n  if (skewX !== _zeroDeg || skewY !== _zeroDeg) {\n    transforms += \"skew(\" + skewX + \", \" + skewY + _endParenthesis;\n  }\n\n  if (scaleX !== 1 || scaleY !== 1) {\n    transforms += \"scale(\" + scaleX + \", \" + scaleY + _endParenthesis;\n  }\n\n  target.style[_transformProp] = transforms || \"translate(0, 0)\";\n},\n    _renderSVGTransforms = function _renderSVGTransforms(ratio, cache) {\n  var _ref2 = cache || this,\n      xPercent = _ref2.xPercent,\n      yPercent = _ref2.yPercent,\n      x = _ref2.x,\n      y = _ref2.y,\n      rotation = _ref2.rotation,\n      skewX = _ref2.skewX,\n      skewY = _ref2.skewY,\n      scaleX = _ref2.scaleX,\n      scaleY = _ref2.scaleY,\n      target = _ref2.target,\n      xOrigin = _ref2.xOrigin,\n      yOrigin = _ref2.yOrigin,\n      xOffset = _ref2.xOffset,\n      yOffset = _ref2.yOffset,\n      forceCSS = _ref2.forceCSS,\n      tx = parseFloat(x),\n      ty = parseFloat(y),\n      a11,\n      a21,\n      a12,\n      a22,\n      temp;\n\n  rotation = parseFloat(rotation);\n  skewX = parseFloat(skewX);\n  skewY = parseFloat(skewY);\n\n  if (skewY) {\n    //for performance reasons, we combine all skewing into the skewX and rotation values. Remember, a skewY of 10 degrees looks the same as a rotation of 10 degrees plus a skewX of 10 degrees.\n    skewY = parseFloat(skewY);\n    skewX += skewY;\n    rotation += skewY;\n  }\n\n  if (rotation || skewX) {\n    rotation *= _DEG2RAD;\n    skewX *= _DEG2RAD;\n    a11 = Math.cos(rotation) * scaleX;\n    a21 = Math.sin(rotation) * scaleX;\n    a12 = Math.sin(rotation - skewX) * -scaleY;\n    a22 = Math.cos(rotation - skewX) * scaleY;\n\n    if (skewX) {\n      skewY *= _DEG2RAD;\n      temp = Math.tan(skewX - skewY);\n      temp = Math.sqrt(1 + temp * temp);\n      a12 *= temp;\n      a22 *= temp;\n\n      if (skewY) {\n        temp = Math.tan(skewY);\n        temp = Math.sqrt(1 + temp * temp);\n        a11 *= temp;\n        a21 *= temp;\n      }\n    }\n\n    a11 = _round(a11);\n    a21 = _round(a21);\n    a12 = _round(a12);\n    a22 = _round(a22);\n  } else {\n    a11 = scaleX;\n    a22 = scaleY;\n    a21 = a12 = 0;\n  }\n\n  if (tx && !~(x + \"\").indexOf(\"px\") || ty && !~(y + \"\").indexOf(\"px\")) {\n    tx = _convertToUnit(target, \"x\", x, \"px\");\n    ty = _convertToUnit(target, \"y\", y, \"px\");\n  }\n\n  if (xOrigin || yOrigin || xOffset || yOffset) {\n    tx = _round(tx + xOrigin - (xOrigin * a11 + yOrigin * a12) + xOffset);\n    ty = _round(ty + yOrigin - (xOrigin * a21 + yOrigin * a22) + yOffset);\n  }\n\n  if (xPercent || yPercent) {\n    //The SVG spec doesn't support percentage-based translation in the \"transform\" attribute, so we merge it into the translation to simulate it.\n    temp = target.getBBox();\n    tx = _round(tx + xPercent / 100 * temp.width);\n    ty = _round(ty + yPercent / 100 * temp.height);\n  }\n\n  temp = \"matrix(\" + a11 + \",\" + a21 + \",\" + a12 + \",\" + a22 + \",\" + tx + \",\" + ty + \")\";\n  target.setAttribute(\"transform\", temp);\n  forceCSS && (target.style[_transformProp] = temp); //some browsers prioritize CSS transforms over the transform attribute. When we sense that the user has CSS transforms applied, we must overwrite them this way (otherwise some browser simply won't render the transform attribute changes!)\n},\n    _addRotationalPropTween = function _addRotationalPropTween(plugin, target, property, startNum, endValue) {\n  var cap = 360,\n      isString = _isString(endValue),\n      endNum = parseFloat(endValue) * (isString && ~endValue.indexOf(\"rad\") ? _RAD2DEG : 1),\n      change = endNum - startNum,\n      finalValue = startNum + change + \"deg\",\n      direction,\n      pt;\n\n  if (isString) {\n    direction = endValue.split(\"_\")[1];\n\n    if (direction === \"short\") {\n      change %= cap;\n\n      if (change !== change % (cap / 2)) {\n        change += change < 0 ? cap : -cap;\n      }\n    }\n\n    if (direction === \"cw\" && change < 0) {\n      change = (change + cap * CSSPlugin_bigNum) % cap - ~~(change / cap) * cap;\n    } else if (direction === \"ccw\" && change > 0) {\n      change = (change - cap * CSSPlugin_bigNum) % cap - ~~(change / cap) * cap;\n    }\n  }\n\n  plugin._pt = pt = new PropTween(plugin._pt, target, property, startNum, change, _renderPropWithEnd);\n  pt.e = finalValue;\n  pt.u = \"deg\";\n\n  plugin._props.push(property);\n\n  return pt;\n},\n    _assign = function _assign(target, source) {\n  // Internet Explorer doesn't have Object.assign(), so we recreate it here.\n  for (var p in source) {\n    target[p] = source[p];\n  }\n\n  return target;\n},\n    _addRawTransformPTs = function _addRawTransformPTs(plugin, transforms, target) {\n  //for handling cases where someone passes in a whole transform string, like transform: \"scale(2, 3) rotate(20deg) translateY(30em)\"\n  var startCache = _assign({}, target._gsap),\n      exclude = \"perspective,force3D,transformOrigin,svgOrigin\",\n      style = target.style,\n      endCache,\n      p,\n      startValue,\n      endValue,\n      startNum,\n      endNum,\n      startUnit,\n      endUnit;\n\n  if (startCache.svg) {\n    startValue = target.getAttribute(\"transform\");\n    target.setAttribute(\"transform\", \"\");\n    style[_transformProp] = transforms;\n    endCache = _parseTransform(target, 1);\n\n    _removeProperty(target, _transformProp);\n\n    target.setAttribute(\"transform\", startValue);\n  } else {\n    startValue = getComputedStyle(target)[_transformProp];\n    style[_transformProp] = transforms;\n    endCache = _parseTransform(target, 1);\n    style[_transformProp] = startValue;\n  }\n\n  for (p in _transformProps) {\n    startValue = startCache[p];\n    endValue = endCache[p];\n\n    if (startValue !== endValue && exclude.indexOf(p) < 0) {\n      //tweening to no perspective gives very unintuitive results - just keep the same perspective in that case.\n      startUnit = getUnit(startValue);\n      endUnit = getUnit(endValue);\n      startNum = startUnit !== endUnit ? _convertToUnit(target, p, startValue, endUnit) : parseFloat(startValue);\n      endNum = parseFloat(endValue);\n      plugin._pt = new PropTween(plugin._pt, endCache, p, startNum, endNum - startNum, _renderCSSProp);\n      plugin._pt.u = endUnit || 0;\n\n      plugin._props.push(p);\n    }\n  }\n\n  _assign(endCache, startCache);\n}; // handle splitting apart padding, margin, borderWidth, and borderRadius into their 4 components. Firefox, for example, won't report borderRadius correctly - it will only do borderTopLeftRadius and the other corners. We also want to handle paddingTop, marginLeft, borderRightWidth, etc.\n\n\n_forEachName(\"padding,margin,Width,Radius\", function (name, index) {\n  var t = \"Top\",\n      r = \"Right\",\n      b = \"Bottom\",\n      l = \"Left\",\n      props = (index < 3 ? [t, r, b, l] : [t + l, t + r, b + r, b + l]).map(function (side) {\n    return index < 2 ? name + side : \"border\" + side + name;\n  });\n\n  _specialProps[index > 1 ? \"border\" + name : name] = function (plugin, target, property, endValue, tween) {\n    var a, vars;\n\n    if (arguments.length < 4) {\n      // getter, passed target, property, and unit (from _get())\n      a = props.map(function (prop) {\n        return _get(plugin, prop, property);\n      });\n      vars = a.join(\" \");\n      return vars.split(a[0]).length === 5 ? a[0] : vars;\n    }\n\n    a = (endValue + \"\").split(\" \");\n    vars = {};\n    props.forEach(function (prop, i) {\n      return vars[prop] = a[i] = a[i] || a[(i - 1) / 2 | 0];\n    });\n    plugin.init(target, vars, tween);\n  };\n});\n\nvar CSSPlugin = {\n  name: \"css\",\n  register: _initCore,\n  targetTest: function targetTest(target) {\n    return target.style && target.nodeType;\n  },\n  init: function init(target, vars, tween, index, targets) {\n    var props = this._props,\n        style = target.style,\n        startAt = tween.vars.startAt,\n        startValue,\n        endValue,\n        endNum,\n        startNum,\n        type,\n        specialProp,\n        p,\n        startUnit,\n        endUnit,\n        relative,\n        isTransformRelated,\n        transformPropTween,\n        cache,\n        smooth,\n        hasPriority,\n        inlineProps,\n        finalTransformValue;\n    _pluginInitted || _initCore(); // we may call init() multiple times on the same plugin instance, like when adding special properties, so make sure we don't overwrite the revert data or inlineProps\n\n    this.styles = this.styles || _getStyleSaver(target);\n    inlineProps = this.styles.props;\n    this.tween = tween;\n\n    for (p in vars) {\n      if (p === \"autoRound\") {\n        continue;\n      }\n\n      endValue = vars[p];\n\n      if (_plugins[p] && _checkPlugin(p, vars, tween, index, target, targets)) {\n        // plugins\n        continue;\n      }\n\n      type = typeof endValue;\n      specialProp = _specialProps[p];\n\n      if (type === \"function\") {\n        endValue = endValue.call(tween, index, target, targets);\n        type = typeof endValue;\n      }\n\n      if (type === \"string\" && ~endValue.indexOf(\"random(\")) {\n        endValue = _replaceRandom(endValue);\n      }\n\n      if (specialProp) {\n        specialProp(this, target, p, endValue, tween) && (hasPriority = 1);\n      } else if (p.substr(0, 2) === \"--\") {\n        //CSS variable\n        startValue = (getComputedStyle(target).getPropertyValue(p) + \"\").trim();\n        endValue += \"\";\n        _colorExp.lastIndex = 0;\n\n        if (!_colorExp.test(startValue)) {\n          // colors don't have units\n          startUnit = getUnit(startValue);\n          endUnit = getUnit(endValue);\n          endUnit ? startUnit !== endUnit && (startValue = _convertToUnit(target, p, startValue, endUnit) + endUnit) : startUnit && (endValue += startUnit);\n        }\n\n        this.add(style, \"setProperty\", startValue, endValue, index, targets, 0, 0, p);\n        props.push(p);\n        inlineProps.push(p, 0, style[p]);\n      } else if (type !== \"undefined\") {\n        if (startAt && p in startAt) {\n          // in case someone hard-codes a complex value as the start, like top: \"calc(2vh / 2)\". Without this, it'd use the computed value (always in px)\n          startValue = typeof startAt[p] === \"function\" ? startAt[p].call(tween, index, target, targets) : startAt[p];\n          _isString(startValue) && ~startValue.indexOf(\"random(\") && (startValue = _replaceRandom(startValue));\n          getUnit(startValue + \"\") || startValue === \"auto\" || (startValue += _config.units[p] || getUnit(_get(target, p)) || \"\"); // for cases when someone passes in a unitless value like {x: 100}; if we try setting translate(100, 0px) it won't work.\n\n          (startValue + \"\").charAt(1) === \"=\" && (startValue = _get(target, p)); // can't work with relative values\n        } else {\n          startValue = _get(target, p);\n        }\n\n        startNum = parseFloat(startValue);\n        relative = type === \"string\" && endValue.charAt(1) === \"=\" && endValue.substr(0, 2);\n        relative && (endValue = endValue.substr(2));\n        endNum = parseFloat(endValue);\n\n        if (p in _propertyAliases) {\n          if (p === \"autoAlpha\") {\n            //special case where we control the visibility along with opacity. We still allow the opacity value to pass through and get tweened.\n            if (startNum === 1 && _get(target, \"visibility\") === \"hidden\" && endNum) {\n              //if visibility is initially set to \"hidden\", we should interpret that as intent to make opacity 0 (a convenience)\n              startNum = 0;\n            }\n\n            inlineProps.push(\"visibility\", 0, style.visibility);\n\n            _addNonTweeningPT(this, style, \"visibility\", startNum ? \"inherit\" : \"hidden\", endNum ? \"inherit\" : \"hidden\", !endNum);\n          }\n\n          if (p !== \"scale\" && p !== \"transform\") {\n            p = _propertyAliases[p];\n            ~p.indexOf(\",\") && (p = p.split(\",\")[0]);\n          }\n        }\n\n        isTransformRelated = p in _transformProps; //--- TRANSFORM-RELATED ---\n\n        if (isTransformRelated) {\n          this.styles.save(p);\n          finalTransformValue = endValue; // this is always the same as endValue except when it's a var(--) value, in which case we need to calculate the end value.\n\n          if (type === \"string\" && endValue.substring(0, 6) === \"var(--\") {\n            endValue = _getComputedProperty(target, endValue.substring(4, endValue.indexOf(\")\")));\n\n            if (endValue.substring(0, 5) === \"calc(\") {\n              var origPerspective = target.style.perspective;\n              target.style.perspective = endValue;\n              endValue = _getComputedProperty(target, \"perspective\");\n              origPerspective ? target.style.perspective = origPerspective : _removeProperty(target, \"perspective\");\n            }\n\n            endNum = parseFloat(endValue);\n          }\n\n          if (!transformPropTween) {\n            cache = target._gsap;\n            cache.renderTransform && !vars.parseTransform || _parseTransform(target, vars.parseTransform); // if, for example, gsap.set(... {transform:\"translateX(50vw)\"}), the _get() call doesn't parse the transform, thus cache.renderTransform won't be set yet so force the parsing of the transform here.\n\n            smooth = vars.smoothOrigin !== false && cache.smooth;\n            transformPropTween = this._pt = new PropTween(this._pt, style, _transformProp, 0, 1, cache.renderTransform, cache, 0, -1); //the first time through, create the rendering PropTween so that it runs LAST (in the linked list, we keep adding to the beginning)\n\n            transformPropTween.dep = 1; //flag it as dependent so that if things get killed/overwritten and this is the only PropTween left, we can safely kill the whole tween.\n          }\n\n          if (p === \"scale\") {\n            this._pt = new PropTween(this._pt, cache, \"scaleY\", cache.scaleY, (relative ? _parseRelative(cache.scaleY, relative + endNum) : endNum) - cache.scaleY || 0, _renderCSSProp);\n            this._pt.u = 0;\n            props.push(\"scaleY\", p);\n            p += \"X\";\n          } else if (p === \"transformOrigin\") {\n            inlineProps.push(_transformOriginProp, 0, style[_transformOriginProp]);\n            endValue = _convertKeywordsToPercentages(endValue); //in case something like \"left top\" or \"bottom right\" is passed in. Convert to percentages.\n\n            if (cache.svg) {\n              _applySVGOrigin(target, endValue, 0, smooth, 0, this);\n            } else {\n              endUnit = parseFloat(endValue.split(\" \")[2]) || 0; //handle the zOrigin separately!\n\n              endUnit !== cache.zOrigin && _addNonTweeningPT(this, cache, \"zOrigin\", cache.zOrigin, endUnit);\n\n              _addNonTweeningPT(this, style, p, _firstTwoOnly(startValue), _firstTwoOnly(endValue));\n            }\n\n            continue;\n          } else if (p === \"svgOrigin\") {\n            _applySVGOrigin(target, endValue, 1, smooth, 0, this);\n\n            continue;\n          } else if (p in _rotationalProperties) {\n            _addRotationalPropTween(this, cache, p, startNum, relative ? _parseRelative(startNum, relative + endValue) : endValue);\n\n            continue;\n          } else if (p === \"smoothOrigin\") {\n            _addNonTweeningPT(this, cache, \"smooth\", cache.smooth, endValue);\n\n            continue;\n          } else if (p === \"force3D\") {\n            cache[p] = endValue;\n            continue;\n          } else if (p === \"transform\") {\n            _addRawTransformPTs(this, endValue, target);\n\n            continue;\n          }\n        } else if (!(p in style)) {\n          p = _checkPropPrefix(p) || p;\n        }\n\n        if (isTransformRelated || (endNum || endNum === 0) && (startNum || startNum === 0) && !_complexExp.test(endValue) && p in style) {\n          startUnit = (startValue + \"\").substr((startNum + \"\").length);\n          endNum || (endNum = 0); // protect against NaN\n\n          endUnit = getUnit(endValue) || (p in _config.units ? _config.units[p] : startUnit);\n          startUnit !== endUnit && (startNum = _convertToUnit(target, p, startValue, endUnit));\n          this._pt = new PropTween(this._pt, isTransformRelated ? cache : style, p, startNum, (relative ? _parseRelative(startNum, relative + endNum) : endNum) - startNum, !isTransformRelated && (endUnit === \"px\" || p === \"zIndex\") && vars.autoRound !== false ? _renderRoundedCSSProp : _renderCSSProp);\n          this._pt.u = endUnit || 0;\n\n          if (isTransformRelated && finalTransformValue !== endValue) {\n            this._pt.b = startValue;\n            this._pt.e = finalTransformValue;\n            this._pt.r = _renderCSSPropWithBeginningAndEnd;\n          } else if (startUnit !== endUnit && endUnit !== \"%\") {\n            //when the tween goes all the way back to the beginning, we need to revert it to the OLD/ORIGINAL value (with those units). We record that as a \"b\" (beginning) property and point to a render method that handles that. (performance optimization)\n            this._pt.b = startValue;\n            this._pt.r = _renderCSSPropWithBeginning;\n          }\n        } else if (!(p in style)) {\n          if (p in target) {\n            //maybe it's not a style - it could be a property added directly to an element in which case we'll try to animate that.\n            this.add(target, p, startValue || target[p], relative ? relative + endValue : endValue, index, targets);\n          } else if (p !== \"parseTransform\") {\n            _missingPlugin(p, endValue);\n\n            continue;\n          }\n        } else {\n          _tweenComplexCSSString.call(this, target, p, startValue, relative ? relative + endValue : endValue);\n        }\n\n        isTransformRelated || (p in style ? inlineProps.push(p, 0, style[p]) : typeof target[p] === \"function\" ? inlineProps.push(p, 2, target[p]()) : inlineProps.push(p, 1, startValue || target[p]));\n        props.push(p);\n      }\n    }\n\n    hasPriority && _sortPropTweensByPriority(this);\n  },\n  render: function render(ratio, data) {\n    if (data.tween._time || !CSSPlugin_reverting()) {\n      var pt = data._pt;\n\n      while (pt) {\n        pt.r(ratio, pt.d);\n        pt = pt._next;\n      }\n    } else {\n      data.styles.revert();\n    }\n  },\n  get: _get,\n  aliases: _propertyAliases,\n  getSetter: function getSetter(target, property, plugin) {\n    //returns a setter function that accepts target, property, value and applies it accordingly. Remember, properties like \"x\" aren't as simple as target.style.property = value because they've got to be applied to a proxy object and then merged into a transform string in a renderer.\n    var p = _propertyAliases[property];\n    p && p.indexOf(\",\") < 0 && (property = p);\n    return property in _transformProps && property !== _transformOriginProp && (target._gsap.x || _get(target, \"x\")) ? plugin && _recentSetterPlugin === plugin ? property === \"scale\" ? _setterScale : _setterTransform : (_recentSetterPlugin = plugin || {}) && (property === \"scale\" ? _setterScaleWithRender : _setterTransformWithRender) : target.style && !_isUndefined(target.style[property]) ? _setterCSSStyle : ~property.indexOf(\"-\") ? _setterCSSProp : _getSetter(target, property);\n  },\n  core: {\n    _removeProperty: _removeProperty,\n    _getMatrix: _getMatrix\n  }\n};\ngsap.utils.checkPrefix = _checkPropPrefix;\ngsap.core.getStyleSaver = _getStyleSaver;\n\n(function (positionAndScale, rotation, others, aliases) {\n  var all = _forEachName(positionAndScale + \",\" + rotation + \",\" + others, function (name) {\n    _transformProps[name] = 1;\n  });\n\n  _forEachName(rotation, function (name) {\n    _config.units[name] = \"deg\";\n    _rotationalProperties[name] = 1;\n  });\n\n  _propertyAliases[all[13]] = positionAndScale + \",\" + rotation;\n\n  _forEachName(aliases, function (name) {\n    var split = name.split(\":\");\n    _propertyAliases[split[1]] = all[split[0]];\n  });\n})(\"x,y,z,scale,scaleX,scaleY,xPercent,yPercent\", \"rotation,rotationX,rotationY,skewX,skewY\", \"transform,transformOrigin,svgOrigin,force3D,smoothOrigin,transformPerspective\", \"0:translateX,1:translateY,2:translateZ,8:rotate,8:rotationZ,8:rotateZ,9:rotateX,10:rotateY\");\n\n_forEachName(\"x,y,z,top,right,bottom,left,width,height,fontSize,padding,margin,perspective\", function (name) {\n  _config.units[name] = \"px\";\n});\n\ngsap.registerPlugin(CSSPlugin);\n\n;// ./node_modules/gsap/index.js\n\n\nvar gsapWithCSS = gsap.registerPlugin(CSSPlugin) || gsap,\n    // to protect from tree shaking\nTweenMaxWithCSS = gsapWithCSS.core.Tween;\n\n;// ./node_modules/gsap/Observer.js\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n/*!\n * Observer 3.15.0\n * https://gsap.com\n *\n * @license Copyright 2008-2026, GreenSock. All rights reserved.\n * Subject to the terms at https://gsap.com/standard-license\n * @author: Jack Doyle, jack@greensock.com\n*/\n\n/* eslint-disable */\nvar Observer_gsap,\n    Observer_coreInitted,\n    Observer_clamp,\n    Observer_win,\n    Observer_doc,\n    _docEl,\n    _body,\n    _isTouch,\n    _pointerType,\n    ScrollTrigger,\n    _root,\n    _normalizer,\n    _eventTypes,\n    Observer_context,\n    _getGSAP = function _getGSAP() {\n  return Observer_gsap || typeof window !== \"undefined\" && (Observer_gsap = window.gsap) && Observer_gsap.registerPlugin && Observer_gsap;\n},\n    _startup = 1,\n    _observers = [],\n    _scrollers = [],\n    _proxies = [],\n    _getTime = Date.now,\n    _bridge = function _bridge(name, value) {\n  return value;\n},\n    _integrate = function _integrate() {\n  var core = ScrollTrigger.core,\n      data = core.bridge || {},\n      scrollers = core._scrollers,\n      proxies = core._proxies;\n  scrollers.push.apply(scrollers, _scrollers);\n  proxies.push.apply(proxies, _proxies);\n  _scrollers = scrollers;\n  _proxies = proxies;\n\n  _bridge = function _bridge(name, value) {\n    return data[name](value);\n  };\n},\n    _getProxyProp = function _getProxyProp(element, property) {\n  return ~_proxies.indexOf(element) && _proxies[_proxies.indexOf(element) + 1][property];\n},\n    _isViewport = function _isViewport(el) {\n  return !!~_root.indexOf(el);\n},\n    _addListener = function _addListener(element, type, func, passive, capture) {\n  return element.addEventListener(type, func, {\n    passive: passive !== false,\n    capture: !!capture\n  });\n},\n    _removeListener = function _removeListener(element, type, func, capture) {\n  return element.removeEventListener(type, func, !!capture);\n},\n    _scrollLeft = \"scrollLeft\",\n    _scrollTop = \"scrollTop\",\n    _onScroll = function _onScroll() {\n  return _normalizer && _normalizer.isPressed || _scrollers.cache++;\n},\n    _scrollCacheFunc = function _scrollCacheFunc(f, doNotCache) {\n  var cachingFunc = function cachingFunc(value) {\n    // since reading the scrollTop/scrollLeft/pageOffsetY/pageOffsetX can trigger a layout, this function allows us to cache the value so it only gets read fresh after a \"scroll\" event fires (or while we're refreshing because that can lengthen the page and alter the scroll position). when \"soft\" is true, that means don't actually set the scroll, but cache the new value instead (useful in ScrollSmoother)\n    if (value || value === 0) {\n      _startup && (Observer_win.history.scrollRestoration = \"manual\"); // otherwise the new position will get overwritten by the browser onload.\n\n      var isNormalizing = _normalizer && _normalizer.isPressed;\n      value = cachingFunc.v = Math.round(value) || (_normalizer && _normalizer.iOS ? 1 : 0); //TODO: iOS Bug: if you allow it to go to 0, Safari can start to report super strange (wildly inaccurate) touch positions!\n\n      f(value);\n      cachingFunc.cacheID = _scrollers.cache;\n      isNormalizing && _bridge(\"ss\", value); // set scroll (notify ScrollTrigger so it can dispatch a \"scrollStart\" event if necessary\n    } else if (doNotCache || _scrollers.cache !== cachingFunc.cacheID || _bridge(\"ref\")) {\n      cachingFunc.cacheID = _scrollers.cache;\n      cachingFunc.v = f();\n    }\n\n    return cachingFunc.v + cachingFunc.offset;\n  };\n\n  cachingFunc.offset = 0;\n  return f && cachingFunc;\n},\n    _horizontal = {\n  s: _scrollLeft,\n  p: \"left\",\n  p2: \"Left\",\n  os: \"right\",\n  os2: \"Right\",\n  d: \"width\",\n  d2: \"Width\",\n  a: \"x\",\n  sc: _scrollCacheFunc(function (value) {\n    return arguments.length ? Observer_win.scrollTo(value, _vertical.sc()) : Observer_win.pageXOffset || Observer_doc[_scrollLeft] || _docEl[_scrollLeft] || _body[_scrollLeft] || 0;\n  })\n},\n    _vertical = {\n  s: _scrollTop,\n  p: \"top\",\n  p2: \"Top\",\n  os: \"bottom\",\n  os2: \"Bottom\",\n  d: \"height\",\n  d2: \"Height\",\n  a: \"y\",\n  op: _horizontal,\n  sc: _scrollCacheFunc(function (value) {\n    return arguments.length ? Observer_win.scrollTo(_horizontal.sc(), value) : Observer_win.pageYOffset || Observer_doc[_scrollTop] || _docEl[_scrollTop] || _body[_scrollTop] || 0;\n  })\n},\n    _getTarget = function _getTarget(t, self) {\n  return (self && self._ctx && self._ctx.selector || Observer_gsap.utils.toArray)(t)[0] || (typeof t === \"string\" && Observer_gsap.config().nullTargetWarn !== false ? console.warn(\"Element not found:\", t) : null);\n},\n    _isWithin = function _isWithin(element, list) {\n  // check if the element is in the list or is a descendant of an element in the list.\n  var i = list.length;\n\n  while (i--) {\n    if (list[i] === element || list[i].contains(element)) {\n      return true;\n    }\n  }\n\n  return false;\n},\n    _getScrollFunc = function _getScrollFunc(element, _ref) {\n  var s = _ref.s,\n      sc = _ref.sc;\n  // we store the scroller functions in an alternating sequenced Array like [element, verticalScrollFunc, horizontalScrollFunc, ...] so that we can minimize memory, maximize performance, and we also record the last position as a \".rec\" property in order to revert to that after refreshing to ensure things don't shift around.\n  _isViewport(element) && (element = Observer_doc.scrollingElement || _docEl);\n\n  var i = _scrollers.indexOf(element),\n      offset = sc === _vertical.sc ? 1 : 2;\n\n  !~i && (i = _scrollers.push(element) - 1);\n  _scrollers[i + offset] || _addListener(element, \"scroll\", _onScroll); // clear the cache when a scroll occurs\n\n  var prev = _scrollers[i + offset],\n      func = prev || (_scrollers[i + offset] = _scrollCacheFunc(_getProxyProp(element, s), true) || (_isViewport(element) ? sc : _scrollCacheFunc(function (value) {\n    return arguments.length ? element[s] = value : element[s];\n  })));\n  func.target = element;\n  prev || (func.smooth = Observer_gsap.getProperty(element, \"scrollBehavior\") === \"smooth\"); // only set it the first time (don't reset every time a scrollFunc is requested because perhaps it happens during a refresh() when it's disabled in ScrollTrigger.\n\n  return func;\n},\n    _getVelocityProp = function _getVelocityProp(value, minTimeRefresh, useDelta) {\n  var v1 = value,\n      v2 = value,\n      t1 = _getTime(),\n      t2 = t1,\n      min = minTimeRefresh || 50,\n      dropToZeroTime = Math.max(500, min * 3),\n      update = function update(value, force) {\n    var t = _getTime();\n\n    if (force || t - t1 > min) {\n      v2 = v1;\n      v1 = value;\n      t2 = t1;\n      t1 = t;\n    } else if (useDelta) {\n      v1 += value;\n    } else {\n      // not totally necessary, but makes it a bit more accurate by adjusting the v1 value according to the new slope. This way we're not just ignoring the incoming data. Removing for now because it doesn't seem to make much practical difference and it's probably not worth the kb.\n      v1 = v2 + (value - v2) / (t - t2) * (t1 - t2);\n    }\n  },\n      reset = function reset() {\n    v2 = v1 = useDelta ? 0 : v1;\n    t2 = t1 = 0;\n  },\n      getVelocity = function getVelocity(latestValue) {\n    var tOld = t2,\n        vOld = v2,\n        t = _getTime();\n\n    (latestValue || latestValue === 0) && latestValue !== v1 && update(latestValue);\n    return t1 === t2 || t - t2 > dropToZeroTime ? 0 : (v1 + (useDelta ? vOld : -vOld)) / ((useDelta ? t : t1) - tOld) * 1000;\n  };\n\n  return {\n    update: update,\n    reset: reset,\n    getVelocity: getVelocity\n  };\n},\n    _getEvent = function _getEvent(e, preventDefault) {\n  preventDefault && !e._gsapAllow && e.cancelable !== false && e.preventDefault();\n  return e.changedTouches ? e.changedTouches[0] : e;\n},\n    _getAbsoluteMax = function _getAbsoluteMax(a) {\n  var max = Math.max.apply(Math, a),\n      min = Math.min.apply(Math, a);\n  return Math.abs(max) >= Math.abs(min) ? max : min;\n},\n    _setScrollTrigger = function _setScrollTrigger() {\n  ScrollTrigger = Observer_gsap.core.globals().ScrollTrigger;\n  ScrollTrigger && ScrollTrigger.core && _integrate();\n},\n    Observer_initCore = function _initCore(core) {\n  Observer_gsap = core || _getGSAP();\n\n  if (!Observer_coreInitted && Observer_gsap && typeof document !== \"undefined\" && document.body) {\n    Observer_win = window;\n    Observer_doc = document;\n    _docEl = Observer_doc.documentElement;\n    _body = Observer_doc.body;\n    _root = [Observer_win, Observer_doc, _docEl, _body];\n    Observer_clamp = Observer_gsap.utils.clamp;\n\n    Observer_context = Observer_gsap.core.context || function () {};\n\n    _pointerType = \"onpointerenter\" in _body ? \"pointer\" : \"mouse\"; // isTouch is 0 if no touch, 1 if ONLY touch, and 2 if it can accommodate touch but also other types like mouse/pointer.\n\n    _isTouch = Observer.isTouch = Observer_win.matchMedia && Observer_win.matchMedia(\"(hover: none), (pointer: coarse)\").matches ? 1 : \"ontouchstart\" in Observer_win || navigator.maxTouchPoints > 0 || navigator.msMaxTouchPoints > 0 ? 2 : 0;\n    _eventTypes = Observer.eventTypes = (\"ontouchstart\" in _docEl ? \"touchstart,touchmove,touchcancel,touchend\" : !(\"onpointerdown\" in _docEl) ? \"mousedown,mousemove,mouseup,mouseup\" : \"pointerdown,pointermove,pointercancel,pointerup\").split(\",\");\n    setTimeout(function () {\n      return _startup = 0;\n    }, 500);\n    Observer_coreInitted = 1;\n  }\n\n  ScrollTrigger || _setScrollTrigger(); // Observer might be initted BEFORE ScrollTrigger, so don't put this with the initting code. ScrollTrigger will call Observer.register() when it inits.\n\n  return Observer_coreInitted;\n};\n\n_horizontal.op = _vertical;\n_scrollers.cache = 0;\nvar Observer = /*#__PURE__*/function () {\n  function Observer(vars) {\n    this.init(vars);\n  }\n\n  var _proto = Observer.prototype;\n\n  _proto.init = function init(vars) {\n    Observer_coreInitted || Observer_initCore(Observer_gsap) || console.warn(\"Please gsap.registerPlugin(Observer)\");\n    ScrollTrigger || _setScrollTrigger();\n    var tolerance = vars.tolerance,\n        dragMinimum = vars.dragMinimum,\n        type = vars.type,\n        target = vars.target,\n        lineHeight = vars.lineHeight,\n        debounce = vars.debounce,\n        preventDefault = vars.preventDefault,\n        onStop = vars.onStop,\n        onStopDelay = vars.onStopDelay,\n        ignore = vars.ignore,\n        wheelSpeed = vars.wheelSpeed,\n        event = vars.event,\n        onDragStart = vars.onDragStart,\n        onDragEnd = vars.onDragEnd,\n        onDrag = vars.onDrag,\n        onPress = vars.onPress,\n        onRelease = vars.onRelease,\n        onRight = vars.onRight,\n        onLeft = vars.onLeft,\n        onUp = vars.onUp,\n        onDown = vars.onDown,\n        onChangeX = vars.onChangeX,\n        onChangeY = vars.onChangeY,\n        onChange = vars.onChange,\n        onToggleX = vars.onToggleX,\n        onToggleY = vars.onToggleY,\n        onHover = vars.onHover,\n        onHoverEnd = vars.onHoverEnd,\n        onMove = vars.onMove,\n        ignoreCheck = vars.ignoreCheck,\n        isNormalizer = vars.isNormalizer,\n        onGestureStart = vars.onGestureStart,\n        onGestureEnd = vars.onGestureEnd,\n        onWheel = vars.onWheel,\n        onEnable = vars.onEnable,\n        onDisable = vars.onDisable,\n        onClick = vars.onClick,\n        scrollSpeed = vars.scrollSpeed,\n        capture = vars.capture,\n        allowClicks = vars.allowClicks,\n        lockAxis = vars.lockAxis,\n        onLockAxis = vars.onLockAxis;\n    this.target = target = _getTarget(target) || _docEl;\n    this.vars = vars;\n    ignore && (ignore = Observer_gsap.utils.toArray(ignore));\n    tolerance = tolerance || 1e-9;\n    dragMinimum = dragMinimum || 0;\n    wheelSpeed = wheelSpeed || 1;\n    scrollSpeed = scrollSpeed || 1;\n    type = type || \"wheel,touch,pointer\";\n    debounce = debounce !== false;\n    lineHeight || (lineHeight = parseFloat(Observer_win.getComputedStyle(_body).lineHeight) || 22); // note: browser may report \"normal\", so default to 22.\n\n    var id,\n        onStopDelayedCall,\n        dragged,\n        moved,\n        wheeled,\n        locked,\n        axis,\n        self = this,\n        prevDeltaX = 0,\n        prevDeltaY = 0,\n        passive = vars.passive || !preventDefault && vars.passive !== false,\n        scrollFuncX = _getScrollFunc(target, _horizontal),\n        scrollFuncY = _getScrollFunc(target, _vertical),\n        scrollX = scrollFuncX(),\n        scrollY = scrollFuncY(),\n        limitToTouch = ~type.indexOf(\"touch\") && !~type.indexOf(\"pointer\") && _eventTypes[0] === \"pointerdown\",\n        // for devices that accommodate mouse events and touch events, we need to distinguish.\n    isViewport = _isViewport(target),\n        ownerDoc = target.ownerDocument || Observer_doc,\n        deltaX = [0, 0, 0],\n        // wheel, scroll, pointer/touch\n    deltaY = [0, 0, 0],\n        onClickTime = 0,\n        clickCapture = function clickCapture() {\n      return onClickTime = _getTime();\n    },\n        _ignoreCheck = function _ignoreCheck(e, isPointerOrTouch) {\n      return (self.event = e) && ignore && _isWithin(e.target, ignore) || isPointerOrTouch && limitToTouch && e.pointerType !== \"touch\" || ignoreCheck && ignoreCheck(e, isPointerOrTouch);\n    },\n        onStopFunc = function onStopFunc() {\n      self._vx.reset();\n\n      self._vy.reset();\n\n      onStopDelayedCall.pause();\n      onStop && onStop(self);\n    },\n        update = function update() {\n      var dx = self.deltaX = _getAbsoluteMax(deltaX),\n          dy = self.deltaY = _getAbsoluteMax(deltaY),\n          changedX = Math.abs(dx) >= tolerance,\n          changedY = Math.abs(dy) >= tolerance;\n\n      onChange && (changedX || changedY) && onChange(self, dx, dy, deltaX, deltaY); // in ScrollTrigger.normalizeScroll(), we need to know if it was touch/pointer so we need access to the deltaX/deltaY Arrays before we clear them out.\n\n      if (changedX) {\n        onRight && self.deltaX > 0 && onRight(self);\n        onLeft && self.deltaX < 0 && onLeft(self);\n        onChangeX && onChangeX(self);\n        onToggleX && self.deltaX < 0 !== prevDeltaX < 0 && onToggleX(self);\n        prevDeltaX = self.deltaX;\n        deltaX[0] = deltaX[1] = deltaX[2] = 0;\n      }\n\n      if (changedY) {\n        onDown && self.deltaY > 0 && onDown(self);\n        onUp && self.deltaY < 0 && onUp(self);\n        onChangeY && onChangeY(self);\n        onToggleY && self.deltaY < 0 !== prevDeltaY < 0 && onToggleY(self);\n        prevDeltaY = self.deltaY;\n        deltaY[0] = deltaY[1] = deltaY[2] = 0;\n      }\n\n      if (moved || dragged) {\n        onMove && onMove(self);\n\n        if (dragged) {\n          onDragStart && dragged === 1 && onDragStart(self);\n          onDrag && onDrag(self);\n          dragged = 0;\n        }\n\n        moved = false;\n      }\n\n      locked && !(locked = false) && onLockAxis && onLockAxis(self);\n\n      if (wheeled) {\n        onWheel(self);\n        wheeled = false;\n      }\n\n      id = 0;\n    },\n        onDelta = function onDelta(x, y, index) {\n      deltaX[index] += x;\n      deltaY[index] += y;\n\n      self._vx.update(x);\n\n      self._vy.update(y);\n\n      debounce ? id || (id = requestAnimationFrame(update)) : update();\n    },\n        onTouchOrPointerDelta = function onTouchOrPointerDelta(x, y) {\n      if (lockAxis && !axis) {\n        self.axis = axis = Math.abs(x) > Math.abs(y) ? \"x\" : \"y\";\n        locked = true;\n      }\n\n      if (axis !== \"y\") {\n        deltaX[2] += x;\n\n        self._vx.update(x, true); // update the velocity as frequently as possible instead of in the debounced function so that very quick touch-scrolls (flicks) feel natural. If it's the mouse/touch/pointer, force it so that we get snappy/accurate momentum scroll.\n\n      }\n\n      if (axis !== \"x\") {\n        deltaY[2] += y;\n\n        self._vy.update(y, true);\n      }\n\n      debounce ? id || (id = requestAnimationFrame(update)) : update();\n    },\n        _onDrag = function _onDrag(e) {\n      if (_ignoreCheck(e, 1)) {\n        return;\n      }\n\n      e = _getEvent(e, preventDefault);\n      var x = e.clientX,\n          y = e.clientY,\n          dx = x - self.x,\n          dy = y - self.y,\n          isDragging = self.isDragging;\n      self.x = x;\n      self.y = y;\n\n      if (isDragging || (dx || dy) && (Math.abs(self.startX - x) >= dragMinimum || Math.abs(self.startY - y) >= dragMinimum)) {\n        dragged || (dragged = isDragging ? 2 : 1); // dragged: 0 = not dragging, 1 = first drag, 2 = normal drag\n\n        isDragging || (self.isDragging = true);\n        onTouchOrPointerDelta(dx, dy);\n      }\n    },\n        _onPress = self.onPress = function (e) {\n      if (_ignoreCheck(e, 1) || e && e.button) {\n        return;\n      }\n\n      self.axis = axis = null;\n      onStopDelayedCall.pause();\n      self.isPressed = true;\n      e = _getEvent(e); // note: may need to preventDefault(?) Won't side-scroll on iOS Safari if we do, though.\n\n      prevDeltaX = prevDeltaY = 0;\n      self.startX = self.x = e.clientX;\n      self.startY = self.y = e.clientY;\n\n      self._vx.reset(); // otherwise the t2 may be stale if the user touches and flicks super fast and releases in less than 2 requestAnimationFrame ticks, causing velocity to be 0.\n\n\n      self._vy.reset();\n\n      _addListener(isNormalizer ? target : ownerDoc, _eventTypes[1], _onDrag, passive, true);\n\n      self.deltaX = self.deltaY = 0;\n      onPress && onPress(self);\n    },\n        _onRelease = self.onRelease = function (e) {\n      if (_ignoreCheck(e, 1)) {\n        return;\n      }\n\n      _removeListener(isNormalizer ? target : ownerDoc, _eventTypes[1], _onDrag, true);\n\n      var isTrackingDrag = !isNaN(self.y - self.startY),\n          wasDragging = self.isDragging,\n          isDragNotClick = wasDragging && (Math.abs(self.x - self.startX) > 3 || Math.abs(self.y - self.startY) > 3),\n          // some touch devices need some wiggle room in terms of sensing clicks - the finger may move a few pixels.\n      eventData = _getEvent(e);\n\n      if (!isDragNotClick && isTrackingDrag) {\n        self._vx.reset();\n\n        self._vy.reset(); //if (preventDefault && allowClicks && self.isPressed) { // check isPressed because in a rare edge case, the inputObserver in ScrollTrigger may stopPropagation() on the press/drag, so the onRelease may get fired without the onPress/onDrag ever getting called, thus it could trigger a click to occur on a link after scroll-dragging it.\n\n\n        if (preventDefault && allowClicks) {\n          Observer_gsap.delayedCall(0.08, function () {\n            // some browsers (like Firefox) won't trust script-generated clicks, so if the user tries to click on a video to play it, for example, it simply won't work. Since a regular \"click\" event will most likely be generated anyway (one that has its isTrusted flag set to true), we must slightly delay our script-generated click so that the \"real\"/trusted one is prioritized. Remember, when there are duplicate events in quick succession, we suppress all but the first one. Some browsers don't even trigger the \"real\" one at all, so our synthetic one is a safety valve that ensures that no matter what, a click event does get dispatched.\n            if (_getTime() - onClickTime > 300 && !e.defaultPrevented) {\n              if (e.target.click) {\n                //some browsers (like mobile Safari) don't properly trigger the click event\n                e.target.click();\n              } else if (ownerDoc.createEvent) {\n                var syntheticEvent = ownerDoc.createEvent(\"MouseEvents\");\n                syntheticEvent.initMouseEvent(\"click\", true, true, Observer_win, 1, eventData.screenX, eventData.screenY, eventData.clientX, eventData.clientY, false, false, false, false, 0, null);\n                e.target.dispatchEvent(syntheticEvent);\n              }\n            }\n          });\n        }\n      }\n\n      self.isDragging = self.isGesturing = self.isPressed = false;\n      onStop && wasDragging && !isNormalizer && onStopDelayedCall.restart(true);\n      dragged && update(); // in case debouncing, we don't want onDrag to fire AFTER onDragEnd().\n\n      onDragEnd && wasDragging && onDragEnd(self);\n      onRelease && onRelease(self, isDragNotClick);\n    },\n        _onGestureStart = function _onGestureStart(e) {\n      return e.touches && e.touches.length > 1 && (self.isGesturing = true) && onGestureStart(e, self.isDragging);\n    },\n        _onGestureEnd = function _onGestureEnd() {\n      return (self.isGesturing = false) || onGestureEnd(self);\n    },\n        onScroll = function onScroll(e) {\n      if (_ignoreCheck(e)) {\n        return;\n      }\n\n      var x = scrollFuncX(),\n          y = scrollFuncY();\n      onDelta((x - scrollX) * scrollSpeed, (y - scrollY) * scrollSpeed, 1);\n      scrollX = x;\n      scrollY = y;\n      onStop && onStopDelayedCall.restart(true);\n    },\n        _onWheel = function _onWheel(e) {\n      if (_ignoreCheck(e)) {\n        return;\n      }\n\n      e = _getEvent(e, preventDefault);\n      onWheel && (wheeled = true);\n      var multiplier = (e.deltaMode === 1 ? lineHeight : e.deltaMode === 2 ? Observer_win.innerHeight : 1) * wheelSpeed;\n      onDelta(e.deltaX * multiplier, e.deltaY * multiplier, 0);\n      onStop && !isNormalizer && onStopDelayedCall.restart(true);\n    },\n        _onMove = function _onMove(e) {\n      if (_ignoreCheck(e)) {\n        return;\n      }\n\n      var x = e.clientX,\n          y = e.clientY,\n          dx = x - self.x,\n          dy = y - self.y;\n      self.x = x;\n      self.y = y;\n      moved = true;\n      onStop && onStopDelayedCall.restart(true);\n      (dx || dy) && onTouchOrPointerDelta(dx, dy);\n    },\n        _onHover = function _onHover(e) {\n      self.event = e;\n      onHover(self);\n    },\n        _onHoverEnd = function _onHoverEnd(e) {\n      self.event = e;\n      onHoverEnd(self);\n    },\n        _onClick = function _onClick(e) {\n      return _ignoreCheck(e) || _getEvent(e, preventDefault) && onClick(self);\n    };\n\n    onStopDelayedCall = self._dc = Observer_gsap.delayedCall(onStopDelay || 0.25, onStopFunc).pause();\n    self.deltaX = self.deltaY = 0;\n    self._vx = _getVelocityProp(0, 50, true);\n    self._vy = _getVelocityProp(0, 50, true);\n    self.scrollX = scrollFuncX;\n    self.scrollY = scrollFuncY;\n    self.isDragging = self.isGesturing = self.isPressed = false;\n\n    Observer_context(this);\n\n    self.enable = function (e) {\n      if (!self.isEnabled) {\n        _addListener(isViewport ? ownerDoc : target, \"scroll\", _onScroll);\n\n        type.indexOf(\"scroll\") >= 0 && _addListener(isViewport ? ownerDoc : target, \"scroll\", onScroll, passive, capture);\n        type.indexOf(\"wheel\") >= 0 && _addListener(target, \"wheel\", _onWheel, passive, capture);\n\n        if (type.indexOf(\"touch\") >= 0 && _isTouch || type.indexOf(\"pointer\") >= 0) {\n          _addListener(target, _eventTypes[0], _onPress, passive, capture);\n\n          _addListener(ownerDoc, _eventTypes[2], _onRelease);\n\n          _addListener(ownerDoc, _eventTypes[3], _onRelease);\n\n          allowClicks && _addListener(target, \"click\", clickCapture, true, true);\n          onClick && _addListener(target, \"click\", _onClick);\n          onGestureStart && _addListener(ownerDoc, \"gesturestart\", _onGestureStart);\n          onGestureEnd && _addListener(ownerDoc, \"gestureend\", _onGestureEnd);\n          onHover && _addListener(target, _pointerType + \"enter\", _onHover);\n          onHoverEnd && _addListener(target, _pointerType + \"leave\", _onHoverEnd);\n          onMove && _addListener(target, _pointerType + \"move\", _onMove);\n        }\n\n        self.isEnabled = true;\n        self.isDragging = self.isGesturing = self.isPressed = moved = dragged = false;\n\n        self._vx.reset();\n\n        self._vy.reset();\n\n        scrollX = scrollFuncX();\n        scrollY = scrollFuncY();\n        e && e.type && _onPress(e);\n        onEnable && onEnable(self);\n      }\n\n      return self;\n    };\n\n    self.disable = function () {\n      if (self.isEnabled) {\n        // only remove the _onScroll listener if there aren't any others that rely on the functionality.\n        _observers.filter(function (o) {\n          return o !== self && _isViewport(o.target);\n        }).length || _removeListener(isViewport ? ownerDoc : target, \"scroll\", _onScroll);\n\n        if (self.isPressed) {\n          self._vx.reset();\n\n          self._vy.reset();\n\n          _removeListener(isNormalizer ? target : ownerDoc, _eventTypes[1], _onDrag, true);\n        }\n\n        _removeListener(isViewport ? ownerDoc : target, \"scroll\", onScroll, capture);\n\n        _removeListener(target, \"wheel\", _onWheel, capture);\n\n        _removeListener(target, _eventTypes[0], _onPress, capture);\n\n        _removeListener(ownerDoc, _eventTypes[2], _onRelease);\n\n        _removeListener(ownerDoc, _eventTypes[3], _onRelease);\n\n        _removeListener(target, \"click\", clickCapture, true);\n\n        _removeListener(target, \"click\", _onClick);\n\n        _removeListener(ownerDoc, \"gesturestart\", _onGestureStart);\n\n        _removeListener(ownerDoc, \"gestureend\", _onGestureEnd);\n\n        _removeListener(target, _pointerType + \"enter\", _onHover);\n\n        _removeListener(target, _pointerType + \"leave\", _onHoverEnd);\n\n        _removeListener(target, _pointerType + \"move\", _onMove);\n\n        self.isEnabled = self.isPressed = self.isDragging = false;\n        onDisable && onDisable(self);\n      }\n    };\n\n    self.kill = self.revert = function () {\n      self.disable();\n\n      var i = _observers.indexOf(self);\n\n      i >= 0 && _observers.splice(i, 1);\n      _normalizer === self && (_normalizer = 0);\n    };\n\n    _observers.push(self);\n\n    isNormalizer && _isViewport(target) && (_normalizer = self);\n    self.enable(event);\n  };\n\n  _createClass(Observer, [{\n    key: \"velocityX\",\n    get: function get() {\n      return this._vx.getVelocity();\n    }\n  }, {\n    key: \"velocityY\",\n    get: function get() {\n      return this._vy.getVelocity();\n    }\n  }]);\n\n  return Observer;\n}();\nObserver.version = \"3.15.0\";\n\nObserver.create = function (vars) {\n  return new Observer(vars);\n};\n\nObserver.register = Observer_initCore;\n\nObserver.getAll = function () {\n  return _observers.slice();\n};\n\nObserver.getById = function (id) {\n  return _observers.filter(function (o) {\n    return o.vars.id === id;\n  })[0];\n};\n\n_getGSAP() && Observer_gsap.registerPlugin(Observer);\n\n;// ./node_modules/gsap/ScrollTrigger.js\n/*!\n * ScrollTrigger 3.15.0\n * https://gsap.com\n *\n * @license Copyright 2008-2026, GreenSock. All rights reserved.\n * Subject to the terms at https://gsap.com/standard-license\n * @author: Jack Doyle, jack@greensock.com\n*/\n\n/* eslint-disable */\n\n\nvar ScrollTrigger_gsap,\n    ScrollTrigger_coreInitted,\n    ScrollTrigger_win,\n    ScrollTrigger_doc,\n    ScrollTrigger_docEl,\n    ScrollTrigger_body,\n    ScrollTrigger_root,\n    _resizeDelay,\n    _toArray,\n    ScrollTrigger_clamp,\n    _time2,\n    _syncInterval,\n    _refreshing,\n    _pointerIsDown,\n    ScrollTrigger_transformProp,\n    _i,\n    _prevWidth,\n    _prevHeight,\n    _autoRefresh,\n    _sort,\n    ScrollTrigger_suppressOverwrites,\n    _ignoreResize,\n    ScrollTrigger_normalizer,\n    _ignoreMobileResize,\n    _baseScreenHeight,\n    _baseScreenWidth,\n    _fixIOSBug,\n    ScrollTrigger_context,\n    _scrollRestoration,\n    _div100vh,\n    _100vh,\n    _isReverted,\n    _clampingMax,\n    _limitCallbacks,\n    // if true, we'll only trigger callbacks if the active state toggles, so if you scroll immediately past both the start and end positions of a ScrollTrigger (thus inactive to inactive), neither its onEnter nor onLeave will be called. This is useful during startup.\nScrollTrigger_startup = 1,\n    ScrollTrigger_getTime = Date.now,\n    _time1 = ScrollTrigger_getTime(),\n    _lastScrollTime = 0,\n    _enabled = 0,\n    _parseClamp = function _parseClamp(value, type, self) {\n  var clamp = ScrollTrigger_isString(value) && (value.substr(0, 6) === \"clamp(\" || value.indexOf(\"max\") > -1);\n  self[\"_\" + type + \"Clamp\"] = clamp;\n  return clamp ? value.substr(6, value.length - 7) : value;\n},\n    _keepClamp = function _keepClamp(value, clamp) {\n  return clamp && (!ScrollTrigger_isString(value) || value.substr(0, 6) !== \"clamp(\") ? \"clamp(\" + value + \")\" : value;\n},\n    _rafBugFix = function _rafBugFix() {\n  return _enabled && requestAnimationFrame(_rafBugFix);\n},\n    // in some browsers (like Firefox), screen repaints weren't consistent unless we had SOMETHING queued up in requestAnimationFrame()! So this just creates a super simple loop to keep it alive and smooth out repaints.\n_pointerDownHandler = function _pointerDownHandler() {\n  return _pointerIsDown = 1;\n},\n    _pointerUpHandler = function _pointerUpHandler() {\n  return _pointerIsDown = 0;\n},\n    ScrollTrigger_passThrough = function _passThrough(v) {\n  return v;\n},\n    ScrollTrigger_round = function _round(value) {\n  return Math.round(value * 100000) / 100000 || 0;\n},\n    ScrollTrigger_windowExists = function _windowExists() {\n  return typeof window !== \"undefined\";\n},\n    ScrollTrigger_getGSAP = function _getGSAP() {\n  return ScrollTrigger_gsap || ScrollTrigger_windowExists() && (ScrollTrigger_gsap = window.gsap) && ScrollTrigger_gsap.registerPlugin && ScrollTrigger_gsap;\n},\n    ScrollTrigger_isViewport = function _isViewport(e) {\n  return !!~ScrollTrigger_root.indexOf(e);\n},\n    _getViewportDimension = function _getViewportDimension(dimensionProperty) {\n  return (dimensionProperty === \"Height\" ? _100vh : ScrollTrigger_win[\"inner\" + dimensionProperty]) || ScrollTrigger_docEl[\"client\" + dimensionProperty] || ScrollTrigger_body[\"client\" + dimensionProperty];\n},\n    _getBoundsFunc = function _getBoundsFunc(element) {\n  return _getProxyProp(element, \"getBoundingClientRect\") || (ScrollTrigger_isViewport(element) ? function () {\n    _winOffsets.width = ScrollTrigger_win.innerWidth;\n    _winOffsets.height = _100vh;\n    return _winOffsets;\n  } : function () {\n    return _getBounds(element);\n  });\n},\n    _getSizeFunc = function _getSizeFunc(scroller, isViewport, _ref) {\n  var d = _ref.d,\n      d2 = _ref.d2,\n      a = _ref.a;\n  return (a = _getProxyProp(scroller, \"getBoundingClientRect\")) ? function () {\n    return a()[d];\n  } : function () {\n    return (isViewport ? _getViewportDimension(d2) : scroller[\"client\" + d2]) || 0;\n  };\n},\n    _getOffsetsFunc = function _getOffsetsFunc(element, isViewport) {\n  return !isViewport || ~_proxies.indexOf(element) ? _getBoundsFunc(element) : function () {\n    return _winOffsets;\n  };\n},\n    _maxScroll = function _maxScroll(element, _ref2) {\n  var s = _ref2.s,\n      d2 = _ref2.d2,\n      d = _ref2.d,\n      a = _ref2.a;\n  return Math.max(0, (s = \"scroll\" + d2) && (a = _getProxyProp(element, s)) ? a() - _getBoundsFunc(element)()[d] : ScrollTrigger_isViewport(element) ? (ScrollTrigger_docEl[s] || ScrollTrigger_body[s]) - _getViewportDimension(d2) : element[s] - element[\"offset\" + d2]);\n},\n    _iterateAutoRefresh = function _iterateAutoRefresh(func, events) {\n  for (var i = 0; i < _autoRefresh.length; i += 3) {\n    (!events || ~events.indexOf(_autoRefresh[i + 1])) && func(_autoRefresh[i], _autoRefresh[i + 1], _autoRefresh[i + 2]);\n  }\n},\n    ScrollTrigger_isString = function _isString(value) {\n  return typeof value === \"string\";\n},\n    ScrollTrigger_isFunction = function _isFunction(value) {\n  return typeof value === \"function\";\n},\n    ScrollTrigger_isNumber = function _isNumber(value) {\n  return typeof value === \"number\";\n},\n    ScrollTrigger_isObject = function _isObject(value) {\n  return typeof value === \"object\";\n},\n    _endAnimation = function _endAnimation(animation, reversed, pause) {\n  return animation && animation.progress(reversed ? 0 : 1) && pause && animation.pause();\n},\n    ScrollTrigger_callback = function _callback(self, func, extraParam) {\n  if (self.enabled) {\n    var result = self._ctx ? self._ctx.add(function () {\n      return func(self, extraParam);\n    }) : func(self, extraParam);\n    result && result.totalTime && (self.callbackAnimation = result);\n  }\n},\n    _abs = Math.abs,\n    _left = \"left\",\n    _top = \"top\",\n    _right = \"right\",\n    _bottom = \"bottom\",\n    _width = \"width\",\n    _height = \"height\",\n    _Right = \"Right\",\n    _Left = \"Left\",\n    _Top = \"Top\",\n    _Bottom = \"Bottom\",\n    _padding = \"padding\",\n    _margin = \"margin\",\n    _Width = \"Width\",\n    _Height = \"Height\",\n    _px = \"px\",\n    _getComputedStyle = function _getComputedStyle(element) {\n  return ScrollTrigger_win.getComputedStyle(element.nodeType === Node.DOCUMENT_NODE ? element.scrollingElement : element);\n},\n    _makePositionable = function _makePositionable(element) {\n  // if the element already has position: absolute or fixed, leave that, otherwise make it position: relative\n  var position = _getComputedStyle(element).position;\n\n  element.style.position = position === \"absolute\" || position === \"fixed\" ? position : \"relative\";\n},\n    ScrollTrigger_setDefaults = function _setDefaults(obj, defaults) {\n  for (var p in defaults) {\n    p in obj || (obj[p] = defaults[p]);\n  }\n\n  return obj;\n},\n    _getBounds = function _getBounds(element, withoutTransforms) {\n  var tween = withoutTransforms && _getComputedStyle(element)[ScrollTrigger_transformProp] !== \"matrix(1, 0, 0, 1, 0, 0)\" && ScrollTrigger_gsap.to(element, {\n    x: 0,\n    y: 0,\n    xPercent: 0,\n    yPercent: 0,\n    rotation: 0,\n    rotationX: 0,\n    rotationY: 0,\n    scale: 1,\n    skewX: 0,\n    skewY: 0\n  }).progress(1),\n      bounds = element.getBoundingClientRect ? element.getBoundingClientRect() : element.scrollingElement.getBoundingClientRect();\n  tween && tween.progress(0).kill();\n  return bounds;\n},\n    _getSize = function _getSize(element, _ref3) {\n  var d2 = _ref3.d2;\n  return element[\"offset\" + d2] || element[\"client\" + d2] || 0;\n},\n    _getLabelRatioArray = function _getLabelRatioArray(timeline) {\n  var a = [],\n      labels = timeline.labels,\n      duration = timeline.duration(),\n      p;\n\n  for (p in labels) {\n    a.push(labels[p] / duration);\n  }\n\n  return a;\n},\n    _getClosestLabel = function _getClosestLabel(animation) {\n  return function (value) {\n    return ScrollTrigger_gsap.utils.snap(_getLabelRatioArray(animation), value);\n  };\n},\n    _snapDirectional = function _snapDirectional(snapIncrementOrArray) {\n  var snap = ScrollTrigger_gsap.utils.snap(snapIncrementOrArray),\n      a = Array.isArray(snapIncrementOrArray) && snapIncrementOrArray.slice(0).sort(function (a, b) {\n    return a - b;\n  });\n  return a ? function (value, direction, threshold) {\n    if (threshold === void 0) {\n      threshold = 1e-3;\n    }\n\n    var i;\n\n    if (!direction) {\n      return snap(value);\n    }\n\n    if (direction > 0) {\n      value -= threshold; // to avoid rounding errors. If we're too strict, it might snap forward, then immediately again, and again.\n\n      for (i = 0; i < a.length; i++) {\n        if (a[i] >= value) {\n          return a[i];\n        }\n      }\n\n      return a[i - 1];\n    } else {\n      i = a.length;\n      value += threshold;\n\n      while (i--) {\n        if (a[i] <= value) {\n          return a[i];\n        }\n      }\n    }\n\n    return a[0];\n  } : function (value, direction, threshold) {\n    if (threshold === void 0) {\n      threshold = 1e-3;\n    }\n\n    var snapped = snap(value);\n    return !direction || Math.abs(snapped - value) < threshold || snapped - value < 0 === direction < 0 ? snapped : snap(direction < 0 ? value - snapIncrementOrArray : value + snapIncrementOrArray);\n  };\n},\n    _getLabelAtDirection = function _getLabelAtDirection(timeline) {\n  return function (value, st) {\n    return _snapDirectional(_getLabelRatioArray(timeline))(value, st.direction);\n  };\n},\n    _multiListener = function _multiListener(func, element, types, callback) {\n  return types.split(\",\").forEach(function (type) {\n    return func(element, type, callback);\n  });\n},\n    ScrollTrigger_addListener = function _addListener(element, type, func, nonPassive, capture) {\n  return element.addEventListener(type, func, {\n    passive: !nonPassive,\n    capture: !!capture\n  });\n},\n    ScrollTrigger_removeListener = function _removeListener(element, type, func, capture) {\n  return element.removeEventListener(type, func, !!capture);\n},\n    _wheelListener = function _wheelListener(func, el, scrollFunc) {\n  scrollFunc = scrollFunc && scrollFunc.wheelHandler;\n\n  if (scrollFunc) {\n    func(el, \"wheel\", scrollFunc);\n    func(el, \"touchmove\", scrollFunc);\n  }\n},\n    _markerDefaults = {\n  startColor: \"green\",\n  endColor: \"red\",\n  indent: 0,\n  fontSize: \"16px\",\n  fontWeight: \"normal\"\n},\n    ScrollTrigger_defaults = {\n  toggleActions: \"play\",\n  anticipatePin: 0\n},\n    _keywords = {\n  top: 0,\n  left: 0,\n  center: 0.5,\n  bottom: 1,\n  right: 1\n},\n    _offsetToPx = function _offsetToPx(value, size) {\n  if (ScrollTrigger_isString(value)) {\n    var eqIndex = value.indexOf(\"=\"),\n        relative = ~eqIndex ? +(value.charAt(eqIndex - 1) + 1) * parseFloat(value.substr(eqIndex + 1)) : 0;\n\n    if (~eqIndex) {\n      value.indexOf(\"%\") > eqIndex && (relative *= size / 100);\n      value = value.substr(0, eqIndex - 1);\n    }\n\n    value = relative + (value in _keywords ? _keywords[value] * size : ~value.indexOf(\"%\") ? parseFloat(value) * size / 100 : parseFloat(value) || 0);\n  }\n\n  return value;\n},\n    _createMarker = function _createMarker(type, name, container, direction, _ref4, offset, matchWidthEl, containerAnimation) {\n  var startColor = _ref4.startColor,\n      endColor = _ref4.endColor,\n      fontSize = _ref4.fontSize,\n      indent = _ref4.indent,\n      fontWeight = _ref4.fontWeight;\n\n  var e = ScrollTrigger_doc.createElement(\"div\"),\n      useFixedPosition = ScrollTrigger_isViewport(container) || _getProxyProp(container, \"pinType\") === \"fixed\",\n      isScroller = type.indexOf(\"scroller\") !== -1,\n      parent = useFixedPosition ? ScrollTrigger_body : container.tagName === \"IFRAME\" ? container.contentDocument.body : container,\n      isStart = type.indexOf(\"start\") !== -1,\n      color = isStart ? startColor : endColor,\n      css = \"border-color:\" + color + \";font-size:\" + fontSize + \";color:\" + color + \";font-weight:\" + fontWeight + \";pointer-events:none;white-space:nowrap;font-family:sans-serif,Arial;z-index:1000;padding:4px 8px;border-width:0;border-style:solid;\";\n\n  css += \"position:\" + ((isScroller || containerAnimation) && useFixedPosition ? \"fixed;\" : \"absolute;\");\n  (isScroller || containerAnimation || !useFixedPosition) && (css += (direction === _vertical ? _right : _bottom) + \":\" + (offset + parseFloat(indent)) + \"px;\");\n  matchWidthEl && (css += \"box-sizing:border-box;text-align:left;width:\" + matchWidthEl.offsetWidth + \"px;\");\n  e._isStart = isStart;\n  e.setAttribute(\"class\", \"gsap-marker-\" + type + (name ? \" marker-\" + name : \"\"));\n  e.style.cssText = css;\n  e.innerText = name || name === 0 ? type + \"-\" + name : type;\n  parent.children[0] ? parent.insertBefore(e, parent.children[0]) : parent.appendChild(e);\n  e._offset = e[\"offset\" + direction.op.d2];\n\n  _positionMarker(e, 0, direction, isStart);\n\n  return e;\n},\n    _positionMarker = function _positionMarker(marker, start, direction, flipped) {\n  var vars = {\n    display: \"block\"\n  },\n      side = direction[flipped ? \"os2\" : \"p2\"],\n      oppositeSide = direction[flipped ? \"p2\" : \"os2\"];\n  marker._isFlipped = flipped;\n  vars[direction.a + \"Percent\"] = flipped ? -100 : 0;\n  vars[direction.a] = flipped ? \"1px\" : 0;\n  vars[\"border\" + side + _Width] = 1;\n  vars[\"border\" + oppositeSide + _Width] = 0;\n  vars[direction.p] = start + \"px\";\n  ScrollTrigger_gsap.set(marker, vars);\n},\n    _triggers = [],\n    _ids = {},\n    _rafID,\n    _sync = function _sync() {\n  return ScrollTrigger_getTime() - _lastScrollTime > 34 && (_rafID || (_rafID = requestAnimationFrame(_updateAll)));\n},\n    ScrollTrigger_onScroll = function _onScroll() {\n  // previously, we tried to optimize performance by batching/deferring to the next requestAnimationFrame(), but discovered that Safari has a few bugs that make this unworkable (especially on iOS). See https://codepen.io/GreenSock/pen/16c435b12ef09c38125204818e7b45fc?editors=0010 and https://codepen.io/GreenSock/pen/JjOxYpQ/3dd65ccec5a60f1d862c355d84d14562?editors=0010 and https://codepen.io/GreenSock/pen/ExbrPNa/087cef197dc35445a0951e8935c41503?editors=0010\n  if (!ScrollTrigger_normalizer || !ScrollTrigger_normalizer.isPressed || ScrollTrigger_normalizer.startX > ScrollTrigger_body.clientWidth) {\n    // if the user is dragging the scrollbar, allow it.\n    _scrollers.cache++;\n\n    if (ScrollTrigger_normalizer) {\n      _rafID || (_rafID = requestAnimationFrame(_updateAll));\n    } else {\n      _updateAll(); // Safari in particular (on desktop) NEEDS the immediate update rather than waiting for a requestAnimationFrame() whereas iOS seems to benefit from waiting for the requestAnimationFrame() tick, at least when normalizing. See https://codepen.io/GreenSock/pen/qBYozqO?editors=0110\n\n    }\n\n    _lastScrollTime || ScrollTrigger_dispatch(\"scrollStart\");\n    _lastScrollTime = ScrollTrigger_getTime();\n  }\n},\n    _setBaseDimensions = function _setBaseDimensions() {\n  _baseScreenWidth = ScrollTrigger_win.innerWidth;\n  _baseScreenHeight = ScrollTrigger_win.innerHeight;\n},\n    _onResize = function _onResize(force) {\n  _scrollers.cache++;\n  (force === true || !_refreshing && !_ignoreResize && !ScrollTrigger_doc.fullscreenElement && !ScrollTrigger_doc.webkitFullscreenElement && (!_ignoreMobileResize || _baseScreenWidth !== ScrollTrigger_win.innerWidth || Math.abs(ScrollTrigger_win.innerHeight - _baseScreenHeight) > ScrollTrigger_win.innerHeight * 0.25)) && _resizeDelay.restart(true);\n},\n    // ignore resizes triggered by refresh()\nScrollTrigger_listeners = {},\n    ScrollTrigger_emptyArray = [],\n    _softRefresh = function _softRefresh() {\n  return ScrollTrigger_removeListener(ScrollTrigger_ScrollTrigger, \"scrollEnd\", _softRefresh) || _refreshAll(true);\n},\n    ScrollTrigger_dispatch = function _dispatch(type) {\n  return ScrollTrigger_listeners[type] && ScrollTrigger_listeners[type].map(function (f) {\n    return f();\n  }) || ScrollTrigger_emptyArray;\n},\n    _savedStyles = [],\n    // when ScrollTrigger.saveStyles() is called, the inline styles are recorded in this Array in a sequential format like [element, cssText, gsCache, media]. This keeps it very memory-efficient and fast to iterate through.\n_revertRecorded = function _revertRecorded(media) {\n  for (var i = 0; i < _savedStyles.length; i += 5) {\n    if (!media || _savedStyles[i + 4] && _savedStyles[i + 4].query === media) {\n      _savedStyles[i].style.cssText = _savedStyles[i + 1];\n      _savedStyles[i].getBBox && _savedStyles[i].setAttribute(\"transform\", _savedStyles[i + 2] || \"\");\n      _savedStyles[i + 3].uncache = 1;\n    }\n  }\n},\n    _recordScrollPositions = function _recordScrollPositions() {\n  return _scrollers.forEach(function (obj) {\n    return ScrollTrigger_isFunction(obj) && ++obj.cacheID && (obj.rec = obj());\n  });\n},\n    // record the current scroll position. Also force the clearing of the cache because some browsers take a little while to dispatch the \"scroll\" event and the user may have changed the scroll position and then called ScrollTrigger.refresh() right away\n_revertAll = function _revertAll(kill, media) {\n  var trigger;\n\n  for (_i = 0; _i < _triggers.length; _i++) {\n    trigger = _triggers[_i];\n\n    if (trigger && (!media || trigger._ctx === media)) {\n      if (kill) {\n        trigger.kill(1);\n      } else {\n        trigger.revert(true, true);\n      }\n    }\n  }\n\n  _isReverted = true;\n  media && _revertRecorded(media);\n  media || ScrollTrigger_dispatch(\"revert\");\n},\n    _clearScrollMemory = function _clearScrollMemory(scrollRestoration, force) {\n  // zero-out all the recorded scroll positions. Don't use _triggers because if, for example, .matchMedia() is used to create some ScrollTriggers and then the user resizes and it removes ALL ScrollTriggers, and then go back to a size where there are ScrollTriggers, it would have kept the position(s) saved from the initial state.\n  _scrollers.cache++;\n  (force || !_refreshingAll) && _scrollers.forEach(function (obj) {\n    return ScrollTrigger_isFunction(obj) && obj.cacheID++ && (obj.rec = 0);\n  });\n  ScrollTrigger_isString(scrollRestoration) && (ScrollTrigger_win.history.scrollRestoration = _scrollRestoration = scrollRestoration);\n},\n    _refreshingAll,\n    _refreshID = 0,\n    _queueRefreshID,\n    _queueRefreshAll = function _queueRefreshAll() {\n  // we don't want to call _refreshAll() every time we create a new ScrollTrigger (for performance reasons) - it's better to batch them. Some frameworks dynamically load content and we can't rely on the window's \"load\" or \"DOMContentLoaded\" events to trigger it.\n  if (_queueRefreshID !== _refreshID) {\n    var id = _queueRefreshID = _refreshID;\n    requestAnimationFrame(function () {\n      return id === _refreshID && _refreshAll(true);\n    });\n  }\n},\n    _refresh100vh = function _refresh100vh() {\n  ScrollTrigger_body.appendChild(_div100vh);\n\n  _100vh = !ScrollTrigger_normalizer && _div100vh.offsetHeight || ScrollTrigger_win.innerHeight;\n\n  ScrollTrigger_body.removeChild(_div100vh);\n},\n    _hideAllMarkers = function _hideAllMarkers(hide) {\n  return _toArray(\".gsap-marker-start, .gsap-marker-end, .gsap-marker-scroller-start, .gsap-marker-scroller-end\").forEach(function (el) {\n    return el.style.display = hide ? \"none\" : \"block\";\n  });\n},\n    _refreshAll = function _refreshAll(force, skipRevert) {\n  ScrollTrigger_docEl = ScrollTrigger_doc.documentElement; // some frameworks like Astro may cache the <body> and replace it during routing, so we'll just re-record the _docEl and _body for safety (otherwise, the markers may not get added properly).\n\n  ScrollTrigger_body = ScrollTrigger_doc.body;\n  ScrollTrigger_root = [ScrollTrigger_win, ScrollTrigger_doc, ScrollTrigger_docEl, ScrollTrigger_body];\n\n  if (_lastScrollTime && !force && !_isReverted) {\n    ScrollTrigger_addListener(ScrollTrigger_ScrollTrigger, \"scrollEnd\", _softRefresh);\n\n    return;\n  }\n\n  _refresh100vh();\n\n  _refreshingAll = ScrollTrigger_ScrollTrigger.isRefreshing = true;\n  _isReverted || _recordScrollPositions();\n\n  var refreshInits = ScrollTrigger_dispatch(\"refreshInit\");\n\n  _sort && ScrollTrigger_ScrollTrigger.sort();\n  skipRevert || _revertAll();\n\n  _scrollers.forEach(function (obj) {\n    if (ScrollTrigger_isFunction(obj)) {\n      obj.smooth && (obj.target.style.scrollBehavior = \"auto\"); // smooth scrolling interferes\n\n      obj(0);\n    }\n  });\n\n  _triggers.slice(0).forEach(function (t) {\n    return t.refresh();\n  }); // don't loop with _i because during a refresh() someone could call ScrollTrigger.update() which would iterate through _i resulting in a skip.\n\n\n  _isReverted = false;\n\n  _triggers.forEach(function (t) {\n    // nested pins (pinnedContainer) with pinSpacing may expand the container, so we must accommodate that here.\n    if (t._subPinOffset && t.pin) {\n      var prop = t.vars.horizontal ? \"offsetWidth\" : \"offsetHeight\",\n          original = t.pin[prop];\n      t.revert(true, 1);\n      t.adjustPinSpacing(t.pin[prop] - original);\n      t.refresh();\n    }\n  });\n\n  _clampingMax = 1; // pinSpacing might be propping a page open, thus when we .setPositions() to clamp a ScrollTrigger's end we should leave the pinSpacing alone. That's what this flag is for.\n\n  _hideAllMarkers(true);\n\n  _triggers.forEach(function (t) {\n    // the scroller's max scroll position may change after all the ScrollTriggers refreshed (like pinning could push it down), so we need to loop back and correct any with end: \"max\". Same for anything with a clamped end\n    var max = _maxScroll(t.scroller, t._dir),\n        endClamp = t.vars.end === \"max\" || t._endClamp && t.end > max,\n        startClamp = t._startClamp && t.start >= max;\n\n    (endClamp || startClamp) && t.setPositions(startClamp ? max - 1 : t.start, endClamp ? Math.max(startClamp ? max : t.start + 1, max) : t.end, true);\n  });\n\n  _hideAllMarkers(false);\n\n  _clampingMax = 0;\n  refreshInits.forEach(function (result) {\n    return result && result.render && result.render(-1);\n  }); // if the onRefreshInit() returns an animation (typically a gsap.set()), revert it. This makes it easy to put things in a certain spot before refreshing for measurement purposes, and then put things back.\n\n  _scrollers.forEach(function (obj) {\n    if (ScrollTrigger_isFunction(obj)) {\n      obj.smooth && requestAnimationFrame(function () {\n        return obj.target.style.scrollBehavior = \"smooth\";\n      });\n      obj.rec && obj(obj.rec);\n    }\n  });\n\n  _clearScrollMemory(_scrollRestoration, 1);\n\n  _resizeDelay.pause();\n\n  _refreshID++;\n  _refreshingAll = 2;\n\n  _updateAll(2);\n\n  _triggers.forEach(function (t) {\n    return ScrollTrigger_isFunction(t.vars.onRefresh) && t.vars.onRefresh(t);\n  });\n\n  _refreshingAll = ScrollTrigger_ScrollTrigger.isRefreshing = false;\n\n  ScrollTrigger_dispatch(\"refresh\");\n},\n    _lastScroll = 0,\n    _direction = 1,\n    _primary,\n    _updateAll = function _updateAll(force) {\n  if (force === 2 || !_refreshingAll && !_isReverted) {\n    // _isReverted could be true if, for example, a matchMedia() is in the process of executing. We don't want to update during the time everything is reverted.\n    ScrollTrigger_ScrollTrigger.isUpdating = true;\n    _primary && _primary.update(0); // ScrollSmoother uses refreshPriority -9999 to become the primary that gets updated before all others because it affects the scroll position.\n\n    var l = _triggers.length,\n        time = ScrollTrigger_getTime(),\n        recordVelocity = time - _time1 >= 50,\n        scroll = l && _triggers[0].scroll();\n\n    _direction = _lastScroll > scroll ? -1 : 1;\n    _refreshingAll || (_lastScroll = scroll);\n\n    if (recordVelocity) {\n      if (_lastScrollTime && !_pointerIsDown && time - _lastScrollTime > 200) {\n        _lastScrollTime = 0;\n\n        ScrollTrigger_dispatch(\"scrollEnd\");\n      }\n\n      _time2 = _time1;\n      _time1 = time;\n    }\n\n    if (_direction < 0) {\n      _i = l;\n\n      while (_i-- > 0) {\n        _triggers[_i] && _triggers[_i].update(0, recordVelocity);\n      }\n\n      _direction = 1;\n    } else {\n      for (_i = 0; _i < l; _i++) {\n        _triggers[_i] && _triggers[_i].update(0, recordVelocity);\n      }\n    }\n\n    ScrollTrigger_ScrollTrigger.isUpdating = false;\n  }\n\n  _rafID = 0;\n},\n    _propNamesToCopy = [_left, _top, _bottom, _right, _margin + _Bottom, _margin + _Right, _margin + _Top, _margin + _Left, \"display\", \"flexShrink\", \"float\", \"zIndex\", \"gridColumnStart\", \"gridColumnEnd\", \"gridRowStart\", \"gridRowEnd\", \"gridArea\", \"justifySelf\", \"alignSelf\", \"placeSelf\", \"order\"],\n    _stateProps = _propNamesToCopy.concat([_width, _height, \"boxSizing\", \"max\" + _Width, \"max\" + _Height, \"position\", _margin, _padding, _padding + _Top, _padding + _Right, _padding + _Bottom, _padding + _Left]),\n    _swapPinOut = function _swapPinOut(pin, spacer, state) {\n  _setState(state);\n\n  var cache = pin._gsap;\n\n  if (cache.spacerIsNative) {\n    _setState(cache.spacerState);\n  } else if (pin._gsap.swappedIn) {\n    var parent = spacer.parentNode;\n\n    if (parent) {\n      parent.insertBefore(pin, spacer);\n      parent.removeChild(spacer);\n    }\n  }\n\n  pin._gsap.swappedIn = false;\n},\n    _swapPinIn = function _swapPinIn(pin, spacer, cs, spacerState) {\n  if (!pin._gsap.swappedIn) {\n    var i = _propNamesToCopy.length,\n        spacerStyle = spacer.style,\n        pinStyle = pin.style,\n        p;\n\n    while (i--) {\n      p = _propNamesToCopy[i];\n      spacerStyle[p] = cs[p];\n    }\n\n    spacerStyle.position = cs.position === \"absolute\" ? \"absolute\" : \"relative\";\n    cs.display === \"inline\" && (spacerStyle.display = \"inline-block\");\n    pinStyle[_bottom] = pinStyle[_right] = \"auto\";\n    spacerStyle.flexBasis = cs.flexBasis || \"auto\";\n    spacerStyle.overflow = \"visible\";\n    spacerStyle.boxSizing = \"border-box\";\n    spacerStyle[_width] = _getSize(pin, _horizontal) + _px;\n    spacerStyle[_height] = _getSize(pin, _vertical) + _px;\n    spacerStyle[_padding] = pinStyle[_margin] = pinStyle[_top] = pinStyle[_left] = \"0\";\n\n    _setState(spacerState);\n\n    pinStyle[_width] = pinStyle[\"max\" + _Width] = cs[_width];\n    pinStyle[_height] = pinStyle[\"max\" + _Height] = cs[_height];\n    pinStyle[_padding] = cs[_padding];\n\n    if (pin.parentNode !== spacer) {\n      pin.parentNode.insertBefore(spacer, pin);\n      spacer.appendChild(pin);\n    }\n\n    pin._gsap.swappedIn = true;\n  }\n},\n    ScrollTrigger_capsExp = /([A-Z])/g,\n    _setState = function _setState(state) {\n  if (state) {\n    var style = state.t.style,\n        l = state.length,\n        i = 0,\n        p,\n        value;\n    (state.t._gsap || ScrollTrigger_gsap.core.getCache(state.t)).uncache = 1; // otherwise transforms may be off\n\n    for (; i < l; i += 2) {\n      value = state[i + 1];\n      p = state[i];\n\n      if (value) {\n        style[p] = value;\n      } else if (style[p]) {\n        style.removeProperty(p.replace(ScrollTrigger_capsExp, \"-$1\").toLowerCase());\n      }\n    }\n  }\n},\n    _getState = function _getState(element) {\n  // returns an Array with alternating values like [property, value, property, value] and a \"t\" property pointing to the target (element). Makes it fast and cheap.\n  var l = _stateProps.length,\n      style = element.style,\n      state = [],\n      i = 0;\n\n  for (; i < l; i++) {\n    state.push(_stateProps[i], style[_stateProps[i]]);\n  }\n\n  state.t = element;\n  return state;\n},\n    _copyState = function _copyState(state, override, omitOffsets) {\n  var result = [],\n      l = state.length,\n      i = omitOffsets ? 8 : 0,\n      // skip top, left, right, bottom if omitOffsets is true\n  p;\n\n  for (; i < l; i += 2) {\n    p = state[i];\n    result.push(p, p in override ? override[p] : state[i + 1]);\n  }\n\n  result.t = state.t;\n  return result;\n},\n    _winOffsets = {\n  left: 0,\n  top: 0\n},\n    // // potential future feature (?) Allow users to calculate where a trigger hits (scroll position) like getScrollPosition(\"#id\", \"top bottom\")\n// _getScrollPosition = (trigger, position, {scroller, containerAnimation, horizontal}) => {\n// \tscroller = _getTarget(scroller || _win);\n// \tlet direction = horizontal ? _horizontal : _vertical,\n// \t\tisViewport = _isViewport(scroller);\n// \t_getSizeFunc(scroller, isViewport, direction);\n// \treturn _parsePosition(position, _getTarget(trigger), _getSizeFunc(scroller, isViewport, direction)(), direction, _getScrollFunc(scroller, direction)(), 0, 0, 0, _getOffsetsFunc(scroller, isViewport)(), isViewport ? 0 : parseFloat(_getComputedStyle(scroller)[\"border\" + direction.p2 + _Width]) || 0, 0, containerAnimation ? containerAnimation.duration() : _maxScroll(scroller), containerAnimation);\n// },\nScrollTrigger_parsePosition = function _parsePosition(value, trigger, scrollerSize, direction, scroll, marker, markerScroller, self, scrollerBounds, borderWidth, useFixedPosition, scrollerMax, containerAnimation, clampZeroProp) {\n  ScrollTrigger_isFunction(value) && (value = value(self));\n\n  if (ScrollTrigger_isString(value) && value.substr(0, 3) === \"max\") {\n    value = scrollerMax + (value.charAt(4) === \"=\" ? _offsetToPx(\"0\" + value.substr(3), scrollerSize) : 0);\n  }\n\n  var time = containerAnimation ? containerAnimation.time() : 0,\n      p1,\n      p2,\n      element;\n  containerAnimation && containerAnimation.seek(0);\n  isNaN(value) || (value = +value); // convert a string number like \"45\" to an actual number\n\n  if (!ScrollTrigger_isNumber(value)) {\n    ScrollTrigger_isFunction(trigger) && (trigger = trigger(self));\n    var offsets = (value || \"0\").split(\" \"),\n        bounds,\n        localOffset,\n        globalOffset,\n        display;\n    element = _getTarget(trigger, self) || ScrollTrigger_body;\n    bounds = _getBounds(element) || {};\n\n    if ((!bounds || !bounds.left && !bounds.top) && _getComputedStyle(element).display === \"none\") {\n      // if display is \"none\", it won't report getBoundingClientRect() properly\n      display = element.style.display;\n      element.style.display = \"block\";\n      bounds = _getBounds(element);\n      display ? element.style.display = display : element.style.removeProperty(\"display\");\n    }\n\n    localOffset = _offsetToPx(offsets[0], bounds[direction.d]);\n    globalOffset = _offsetToPx(offsets[1] || \"0\", scrollerSize);\n    value = bounds[direction.p] - scrollerBounds[direction.p] - borderWidth + localOffset + scroll - globalOffset;\n    markerScroller && _positionMarker(markerScroller, globalOffset, direction, scrollerSize - globalOffset < 20 || markerScroller._isStart && globalOffset > 20);\n    scrollerSize -= scrollerSize - globalOffset; // adjust for the marker\n  } else {\n    containerAnimation && (value = ScrollTrigger_gsap.utils.mapRange(containerAnimation.scrollTrigger.start, containerAnimation.scrollTrigger.end, 0, scrollerMax, value));\n    markerScroller && _positionMarker(markerScroller, scrollerSize, direction, true);\n  }\n\n  if (clampZeroProp) {\n    self[clampZeroProp] = value || -0.001;\n    value < 0 && (value = 0);\n  }\n\n  if (marker) {\n    var position = value + scrollerSize,\n        isStart = marker._isStart;\n    p1 = \"scroll\" + direction.d2;\n\n    _positionMarker(marker, position, direction, isStart && position > 20 || !isStart && (useFixedPosition ? Math.max(ScrollTrigger_body[p1], ScrollTrigger_docEl[p1]) : marker.parentNode[p1]) <= position + 1);\n\n    if (useFixedPosition) {\n      scrollerBounds = _getBounds(markerScroller);\n      useFixedPosition && (marker.style[direction.op.p] = scrollerBounds[direction.op.p] - direction.op.m - marker._offset + _px);\n    }\n  }\n\n  if (containerAnimation && element) {\n    p1 = _getBounds(element);\n    containerAnimation.seek(scrollerMax);\n    p2 = _getBounds(element);\n    containerAnimation._caScrollDist = p1[direction.p] - p2[direction.p];\n    value = value / containerAnimation._caScrollDist * scrollerMax;\n  }\n\n  containerAnimation && containerAnimation.seek(time);\n  return containerAnimation ? value : Math.round(value);\n},\n    _prefixExp = /(webkit|moz|length|cssText|inset)/i,\n    _reparent = function _reparent(element, parent, top, left) {\n  if (element.parentNode !== parent) {\n    var style = element.style,\n        p,\n        cs;\n\n    if (parent === ScrollTrigger_body) {\n      element._stOrig = style.cssText; // record original inline styles so we can revert them later\n\n      cs = _getComputedStyle(element);\n\n      for (p in cs) {\n        // must copy all relevant styles to ensure that nothing changes visually when we reparent to the <body>. Skip the vendor prefixed ones.\n        if (!+p && !_prefixExp.test(p) && cs[p] && typeof style[p] === \"string\" && p !== \"0\") {\n          style[p] = cs[p];\n        }\n      }\n\n      style.top = top;\n      style.left = left;\n    } else {\n      style.cssText = element._stOrig;\n    }\n\n    ScrollTrigger_gsap.core.getCache(element).uncache = 1;\n    parent.appendChild(element);\n  }\n},\n    _interruptionTracker = function _interruptionTracker(getValueFunc, initialValue, onInterrupt) {\n  var last1 = initialValue,\n      last2 = last1;\n  return function (value) {\n    var current = Math.round(getValueFunc()); // round because in some [very uncommon] Windows environments, scroll can get reported with decimals even though it was set without.\n\n    if (current !== last1 && current !== last2 && Math.abs(current - last1) > 3 && Math.abs(current - last2) > 3) {\n      // if the user scrolls, kill the tween. iOS Safari intermittently misreports the scroll position, it may be the most recently-set one or the one before that! When Safari is zoomed (CMD-+), it often misreports as 1 pixel off too! So if we set the scroll position to 125, for example, it'll actually report it as 124.\n      value = current;\n      onInterrupt && onInterrupt();\n    }\n\n    last2 = last1;\n    last1 = Math.round(value);\n    return last1;\n  };\n},\n    _shiftMarker = function _shiftMarker(marker, direction, value) {\n  var vars = {};\n  vars[direction.p] = \"+=\" + value;\n  ScrollTrigger_gsap.set(marker, vars);\n},\n    // _mergeAnimations = animations => {\n// \tlet tl = gsap.timeline({smoothChildTiming: true}).startTime(Math.min(...animations.map(a => a.globalTime(0))));\n// \tanimations.forEach(a => {let time = a.totalTime(); tl.add(a); a.totalTime(time); });\n// \ttl.smoothChildTiming = false;\n// \treturn tl;\n// },\n// returns a function that can be used to tween the scroll position in the direction provided, and when doing so it'll add a .tween property to the FUNCTION itself, and remove it when the tween completes or gets killed. This gives us a way to have multiple ScrollTriggers use a central function for any given scroller and see if there's a scroll tween running (which would affect if/how things get updated)\n_getTweenCreator = function _getTweenCreator(scroller, direction) {\n  var getScroll = _getScrollFunc(scroller, direction),\n      prop = \"_scroll\" + direction.p2,\n      // add a tweenable property to the scroller that's a getter/setter function, like _scrollTop or _scrollLeft. This way, if someone does gsap.killTweensOf(scroller) it'll kill the scroll tween.\n  getTween = function getTween(scrollTo, vars, initialValue, change1, change2) {\n    var tween = getTween.tween,\n        onComplete = vars.onComplete,\n        modifiers = {};\n    initialValue = initialValue || getScroll();\n\n    var checkForInterruption = _interruptionTracker(getScroll, initialValue, function () {\n      tween.kill();\n      getTween.tween = 0;\n    });\n\n    change2 = change1 && change2 || 0; // if change1 is 0, we set that to the difference and ignore change2. Otherwise, there would be a compound effect.\n\n    change1 = change1 || scrollTo - initialValue;\n    tween && tween.kill();\n    vars[prop] = scrollTo;\n    vars.inherit = false;\n    vars.modifiers = modifiers;\n\n    modifiers[prop] = function () {\n      return checkForInterruption(initialValue + change1 * tween.ratio + change2 * tween.ratio * tween.ratio);\n    };\n\n    vars.onUpdate = function () {\n      _scrollers.cache++;\n      getTween.tween && _updateAll(); // if it was interrupted/killed, like in a context.revert(), don't force an updateAll()\n    };\n\n    vars.onComplete = function () {\n      getTween.tween = 0;\n      onComplete && onComplete.call(tween);\n    };\n\n    tween = getTween.tween = ScrollTrigger_gsap.to(scroller, vars);\n    return tween;\n  };\n\n  scroller[prop] = getScroll;\n\n  getScroll.wheelHandler = function () {\n    return getTween.tween && getTween.tween.kill() && (getTween.tween = 0);\n  };\n\n  ScrollTrigger_addListener(scroller, \"wheel\", getScroll.wheelHandler); // Windows machines handle mousewheel scrolling in chunks (like \"3 lines per scroll\") meaning the typical strategy for cancelling the scroll isn't as sensitive. It's much more likely to match one of the previous 2 scroll event positions. So we kill any snapping as soon as there's a wheel event.\n\n\n  ScrollTrigger_ScrollTrigger.isTouch && ScrollTrigger_addListener(scroller, \"touchmove\", getScroll.wheelHandler);\n  return getTween;\n};\n\nvar ScrollTrigger_ScrollTrigger = /*#__PURE__*/function () {\n  function ScrollTrigger(vars, animation) {\n    ScrollTrigger_coreInitted || ScrollTrigger.register(ScrollTrigger_gsap) || console.warn(\"Please gsap.registerPlugin(ScrollTrigger)\");\n\n    ScrollTrigger_context(this);\n\n    this.init(vars, animation);\n  }\n\n  var _proto = ScrollTrigger.prototype;\n\n  _proto.init = function init(vars, animation) {\n    this.progress = this.start = 0;\n    this.vars && this.kill(true, true); // in case it's being initted again\n\n    if (!_enabled) {\n      this.update = this.refresh = this.kill = ScrollTrigger_passThrough;\n      return;\n    }\n\n    vars = ScrollTrigger_setDefaults(ScrollTrigger_isString(vars) || ScrollTrigger_isNumber(vars) || vars.nodeType ? {\n      trigger: vars\n    } : vars, ScrollTrigger_defaults);\n\n    var _vars = vars,\n        onUpdate = _vars.onUpdate,\n        toggleClass = _vars.toggleClass,\n        id = _vars.id,\n        onToggle = _vars.onToggle,\n        onRefresh = _vars.onRefresh,\n        scrub = _vars.scrub,\n        trigger = _vars.trigger,\n        pin = _vars.pin,\n        pinSpacing = _vars.pinSpacing,\n        invalidateOnRefresh = _vars.invalidateOnRefresh,\n        anticipatePin = _vars.anticipatePin,\n        onScrubComplete = _vars.onScrubComplete,\n        onSnapComplete = _vars.onSnapComplete,\n        once = _vars.once,\n        snap = _vars.snap,\n        pinReparent = _vars.pinReparent,\n        pinSpacer = _vars.pinSpacer,\n        containerAnimation = _vars.containerAnimation,\n        fastScrollEnd = _vars.fastScrollEnd,\n        preventOverlaps = _vars.preventOverlaps,\n        direction = vars.horizontal || vars.containerAnimation && vars.horizontal !== false ? _horizontal : _vertical,\n        isToggle = !scrub && scrub !== 0,\n        scroller = _getTarget(vars.scroller || ScrollTrigger_win),\n        scrollerCache = ScrollTrigger_gsap.core.getCache(scroller),\n        isViewport = ScrollTrigger_isViewport(scroller),\n        useFixedPosition = (\"pinType\" in vars ? vars.pinType : _getProxyProp(scroller, \"pinType\") || isViewport && \"fixed\") === \"fixed\",\n        callbacks = [vars.onEnter, vars.onLeave, vars.onEnterBack, vars.onLeaveBack],\n        toggleActions = isToggle && vars.toggleActions.split(\" \"),\n        markers = \"markers\" in vars ? vars.markers : ScrollTrigger_defaults.markers,\n        borderWidth = isViewport ? 0 : parseFloat(_getComputedStyle(scroller)[\"border\" + direction.p2 + _Width]) || 0,\n        self = this,\n        onRefreshInit = vars.onRefreshInit && function () {\n      return vars.onRefreshInit(self);\n    },\n        getScrollerSize = _getSizeFunc(scroller, isViewport, direction),\n        getScrollerOffsets = _getOffsetsFunc(scroller, isViewport),\n        lastSnap = 0,\n        lastRefresh = 0,\n        prevProgress = 0,\n        scrollFunc = _getScrollFunc(scroller, direction),\n        tweenTo,\n        pinCache,\n        snapFunc,\n        scroll1,\n        scroll2,\n        start,\n        end,\n        markerStart,\n        markerEnd,\n        markerStartTrigger,\n        markerEndTrigger,\n        markerVars,\n        executingOnRefresh,\n        change,\n        pinOriginalState,\n        pinActiveState,\n        pinState,\n        spacer,\n        offset,\n        pinGetter,\n        pinSetter,\n        pinStart,\n        pinChange,\n        spacingStart,\n        spacerState,\n        markerStartSetter,\n        pinMoves,\n        markerEndSetter,\n        cs,\n        snap1,\n        snap2,\n        scrubTween,\n        scrubSmooth,\n        snapDurClamp,\n        snapDelayedCall,\n        prevScroll,\n        prevAnimProgress,\n        caMarkerSetter,\n        customRevertReturn; // for the sake of efficiency, _startClamp/_endClamp serve like a truthy value indicating that clamping was enabled on the start/end, and ALSO store the actual pre-clamped numeric value. We tap into that in ScrollSmoother for speed effects. So for example, if start=\"clamp(top bottom)\" results in a start of -100 naturally, it would get clamped to 0 but -100 would be stored in _startClamp.\n\n\n    self._startClamp = self._endClamp = false;\n    self._dir = direction;\n    anticipatePin *= 45;\n    self.scroller = scroller;\n    self.scroll = containerAnimation ? containerAnimation.time.bind(containerAnimation) : scrollFunc;\n    scroll1 = scrollFunc();\n    self.vars = vars;\n    animation = animation || vars.animation;\n\n    if (\"refreshPriority\" in vars) {\n      _sort = 1;\n      vars.refreshPriority === -9999 && (_primary = self); // used by ScrollSmoother\n    }\n\n    scrollerCache.tweenScroll = scrollerCache.tweenScroll || {\n      top: _getTweenCreator(scroller, _vertical),\n      left: _getTweenCreator(scroller, _horizontal)\n    };\n    self.tweenTo = tweenTo = scrollerCache.tweenScroll[direction.p];\n\n    self.scrubDuration = function (value) {\n      scrubSmooth = ScrollTrigger_isNumber(value) && value;\n\n      if (!scrubSmooth) {\n        scrubTween && scrubTween.progress(1).kill();\n        scrubTween = 0;\n      } else {\n        scrubTween ? scrubTween.duration(value) : scrubTween = ScrollTrigger_gsap.to(animation, {\n          ease: \"expo\",\n          totalProgress: \"+=0\",\n          inherit: false,\n          duration: scrubSmooth,\n          paused: true,\n          onComplete: function onComplete() {\n            return onScrubComplete && onScrubComplete(self);\n          }\n        });\n      }\n    };\n\n    if (animation) {\n      animation.vars.lazy = false;\n      animation._initted && !self.isReverted || animation.vars.immediateRender !== false && vars.immediateRender !== false && animation.duration() && animation.render(0, true, true); // special case: if this ScrollTrigger gets re-initted, a from() tween with a stagger could get initted initially and then reverted on the re-init which means it'll need to get rendered again here to properly display things. Otherwise, See https://gsap.com/forums/topic/36777-scrollsmoother-splittext-nextjs/ and https://codepen.io/GreenSock/pen/eYPyPpd?editors=0010\n\n      self.animation = animation.pause();\n      animation.scrollTrigger = self;\n      self.scrubDuration(scrub);\n      snap1 = 0;\n      id || (id = animation.vars.id);\n    }\n\n    if (snap) {\n      // TODO: potential idea: use legitimate CSS scroll snapping by pushing invisible elements into the DOM that serve as snap positions, and toggle the document.scrollingElement.style.scrollSnapType onToggle. See https://codepen.io/GreenSock/pen/JjLrgWM for a quick proof of concept.\n      if (!ScrollTrigger_isObject(snap) || snap.push) {\n        snap = {\n          snapTo: snap\n        };\n      }\n\n      \"scrollBehavior\" in ScrollTrigger_body.style && ScrollTrigger_gsap.set(isViewport ? [ScrollTrigger_body, ScrollTrigger_docEl] : scroller, {\n        scrollBehavior: \"auto\"\n      }); // smooth scrolling doesn't work with snap.\n\n      _scrollers.forEach(function (o) {\n        return ScrollTrigger_isFunction(o) && o.target === (isViewport ? ScrollTrigger_doc.scrollingElement || ScrollTrigger_docEl : scroller) && (o.smooth = false);\n      }); // note: set smooth to false on both the vertical and horizontal scroll getters/setters\n\n\n      snapFunc = ScrollTrigger_isFunction(snap.snapTo) ? snap.snapTo : snap.snapTo === \"labels\" ? _getClosestLabel(animation) : snap.snapTo === \"labelsDirectional\" ? _getLabelAtDirection(animation) : snap.directional !== false ? function (value, st) {\n        return _snapDirectional(snap.snapTo)(value, ScrollTrigger_getTime() - lastRefresh < 500 ? 0 : st.direction);\n      } : ScrollTrigger_gsap.utils.snap(snap.snapTo);\n      snapDurClamp = snap.duration || {\n        min: 0.1,\n        max: 2\n      };\n      snapDurClamp = ScrollTrigger_isObject(snapDurClamp) ? ScrollTrigger_clamp(snapDurClamp.min, snapDurClamp.max) : ScrollTrigger_clamp(snapDurClamp, snapDurClamp);\n      snapDelayedCall = ScrollTrigger_gsap.delayedCall(snap.delay || scrubSmooth / 2 || 0.1, function () {\n        var scroll = scrollFunc(),\n            refreshedRecently = ScrollTrigger_getTime() - lastRefresh < 500,\n            tween = tweenTo.tween;\n\n        if ((refreshedRecently || Math.abs(self.getVelocity()) < 10) && !tween && !_pointerIsDown && lastSnap !== scroll) {\n          var progress = (scroll - start) / change,\n              totalProgress = animation && !isToggle ? animation.totalProgress() : progress,\n              velocity = refreshedRecently ? 0 : (totalProgress - snap2) / (ScrollTrigger_getTime() - _time2) * 1000 || 0,\n              change1 = ScrollTrigger_gsap.utils.clamp(-progress, 1 - progress, _abs(velocity / 2) * velocity / 0.185),\n              naturalEnd = progress + (snap.inertia === false ? 0 : change1),\n              endValue,\n              endScroll,\n              _snap = snap,\n              onStart = _snap.onStart,\n              _onInterrupt = _snap.onInterrupt,\n              _onComplete = _snap.onComplete;\n          endValue = snapFunc(naturalEnd, self);\n          ScrollTrigger_isNumber(endValue) || (endValue = naturalEnd); // in case the function didn't return a number, fall back to using the naturalEnd\n\n          endScroll = Math.max(0, Math.round(start + endValue * change));\n\n          if (scroll <= end && scroll >= start && endScroll !== scroll) {\n            if (tween && !tween._initted && tween.data <= _abs(endScroll - scroll)) {\n              // there's an overlapping snap! So we must figure out which one is closer and let that tween live.\n              return;\n            }\n\n            if (snap.inertia === false) {\n              change1 = endValue - progress;\n            }\n\n            tweenTo(endScroll, {\n              duration: snapDurClamp(_abs(Math.max(_abs(naturalEnd - totalProgress), _abs(endValue - totalProgress)) * 0.185 / velocity / 0.05 || 0)),\n              ease: snap.ease || \"power3\",\n              data: _abs(endScroll - scroll),\n              // record the distance so that if another snap tween occurs (conflict) we can prioritize the closest snap.\n              onInterrupt: function onInterrupt() {\n                return snapDelayedCall.restart(true) && _onInterrupt && ScrollTrigger_callback(self, _onInterrupt);\n              },\n              onComplete: function onComplete() {\n                self.update();\n                lastSnap = scrollFunc();\n\n                if (animation && !isToggle) {\n                  // the resolution of the scrollbar is limited, so we should correct the scrubbed animation's playhead at the end to match EXACTLY where it was supposed to snap\n                  scrubTween ? scrubTween.resetTo(\"totalProgress\", endValue, animation._tTime / animation._tDur) : animation.progress(endValue);\n                }\n\n                snap1 = snap2 = animation && !isToggle ? animation.totalProgress() : self.progress;\n                onSnapComplete && onSnapComplete(self);\n                _onComplete && ScrollTrigger_callback(self, _onComplete);\n              }\n            }, scroll, change1 * change, endScroll - scroll - change1 * change);\n            onStart && ScrollTrigger_callback(self, onStart, tweenTo.tween);\n          }\n        } else if (self.isActive && lastSnap !== scroll) {\n          snapDelayedCall.restart(true);\n        }\n      }).pause();\n    }\n\n    id && (_ids[id] = self);\n    trigger = self.trigger = _getTarget(trigger || pin !== true && pin); // if a trigger has some kind of scroll-related effect applied that could contaminate the \"y\" or \"x\" position (like a ScrollSmoother effect), we needed a way to temporarily revert it, so we use the stRevert property of the gsCache. It can return another function that we'll call at the end so it can return to its normal state.\n\n    customRevertReturn = trigger && trigger._gsap && trigger._gsap.stRevert;\n    customRevertReturn && (customRevertReturn = customRevertReturn(self));\n    pin = pin === true ? trigger : _getTarget(pin);\n    ScrollTrigger_isString(toggleClass) && (toggleClass = {\n      targets: trigger,\n      className: toggleClass\n    });\n\n    if (pin) {\n      pinSpacing === false || pinSpacing === _margin || (pinSpacing = !pinSpacing && pin.parentNode && pin.parentNode.style && _getComputedStyle(pin.parentNode).display === \"flex\" ? false : _padding); // if the parent is display: flex, don't apply pinSpacing by default. We should check that pin.parentNode is an element (not shadow dom window)\n\n      self.pin = pin;\n      pinCache = ScrollTrigger_gsap.core.getCache(pin);\n\n      if (!pinCache.spacer) {\n        // record the spacer and pinOriginalState on the cache in case someone tries pinning the same element with MULTIPLE ScrollTriggers - we don't want to have multiple spacers or record the \"original\" pin state after it has already been affected by another ScrollTrigger.\n        if (pinSpacer) {\n          pinSpacer = _getTarget(pinSpacer);\n          pinSpacer && !pinSpacer.nodeType && (pinSpacer = pinSpacer.current || pinSpacer.nativeElement); // for React & Angular\n\n          pinCache.spacerIsNative = !!pinSpacer;\n          pinSpacer && (pinCache.spacerState = _getState(pinSpacer));\n        }\n\n        pinCache.spacer = spacer = pinSpacer || ScrollTrigger_doc.createElement(\"div\");\n        spacer.classList.add(\"pin-spacer\");\n        id && spacer.classList.add(\"pin-spacer-\" + id);\n        pinCache.pinState = pinOriginalState = _getState(pin);\n      } else {\n        pinOriginalState = pinCache.pinState;\n      }\n\n      vars.force3D !== false && ScrollTrigger_gsap.set(pin, {\n        force3D: true\n      });\n      self.spacer = spacer = pinCache.spacer;\n      cs = _getComputedStyle(pin);\n      spacingStart = cs[pinSpacing + direction.os2];\n      pinGetter = ScrollTrigger_gsap.getProperty(pin);\n      pinSetter = ScrollTrigger_gsap.quickSetter(pin, direction.a, _px); // pin.firstChild && !_maxScroll(pin, direction) && (pin.style.overflow = \"hidden\"); // protects from collapsing margins, but can have unintended consequences as demonstrated here: https://codepen.io/GreenSock/pen/1e42c7a73bfa409d2cf1e184e7a4248d so it was removed in favor of just telling people to set up their CSS to avoid the collapsing margins (overflow: hidden | auto is just one option. Another is border-top: 1px solid transparent).\n\n      _swapPinIn(pin, spacer, cs);\n\n      pinState = _getState(pin);\n    }\n\n    if (markers) {\n      markerVars = ScrollTrigger_isObject(markers) ? ScrollTrigger_setDefaults(markers, _markerDefaults) : _markerDefaults;\n      markerStartTrigger = _createMarker(\"scroller-start\", id, scroller, direction, markerVars, 0);\n      markerEndTrigger = _createMarker(\"scroller-end\", id, scroller, direction, markerVars, 0, markerStartTrigger);\n      offset = markerStartTrigger[\"offset\" + direction.op.d2];\n\n      var content = _getTarget(_getProxyProp(scroller, \"content\") || scroller);\n\n      markerStart = this.markerStart = _createMarker(\"start\", id, content, direction, markerVars, offset, 0, containerAnimation);\n      markerEnd = this.markerEnd = _createMarker(\"end\", id, content, direction, markerVars, offset, 0, containerAnimation);\n      containerAnimation && (caMarkerSetter = ScrollTrigger_gsap.quickSetter([markerStart, markerEnd], direction.a, _px));\n\n      if (!useFixedPosition && !(_proxies.length && _getProxyProp(scroller, \"fixedMarkers\") === true)) {\n        _makePositionable(isViewport ? ScrollTrigger_body : scroller);\n\n        ScrollTrigger_gsap.set([markerStartTrigger, markerEndTrigger], {\n          force3D: true\n        });\n        markerStartSetter = ScrollTrigger_gsap.quickSetter(markerStartTrigger, direction.a, _px);\n        markerEndSetter = ScrollTrigger_gsap.quickSetter(markerEndTrigger, direction.a, _px);\n      }\n    }\n\n    if (containerAnimation) {\n      var oldOnUpdate = containerAnimation.vars.onUpdate,\n          oldParams = containerAnimation.vars.onUpdateParams;\n      containerAnimation.eventCallback(\"onUpdate\", function () {\n        self.update(0, 0, 1);\n        oldOnUpdate && oldOnUpdate.apply(containerAnimation, oldParams || []);\n      });\n    }\n\n    self.previous = function () {\n      return _triggers[_triggers.indexOf(self) - 1];\n    };\n\n    self.next = function () {\n      return _triggers[_triggers.indexOf(self) + 1];\n    };\n\n    self.revert = function (revert, temp) {\n      if (!temp) {\n        return self.kill(true);\n      } // for compatibility with gsap.context() and gsap.matchMedia() which call revert()\n\n\n      var r = revert !== false || !self.enabled,\n          prevRefreshing = _refreshing;\n\n      if (r !== self.isReverted) {\n        if (r) {\n          prevScroll = Math.max(scrollFunc(), self.scroll.rec || 0); // record the scroll so we can revert later (repositioning/pinning things can affect scroll position). In the static refresh() method, we first record all the scroll positions as a reference.\n\n          prevProgress = self.progress;\n          prevAnimProgress = animation && animation.progress();\n        }\n\n        markerStart && [markerStart, markerEnd, markerStartTrigger, markerEndTrigger].forEach(function (m) {\n          return m.style.display = r ? \"none\" : \"block\";\n        });\n\n        if (r) {\n          _refreshing = self;\n          self.update(r); // make sure the pin is back in its original position so that all the measurements are correct. do this BEFORE swapping the pin out\n        }\n\n        if (pin && (!pinReparent || !self.isActive)) {\n          if (r) {\n            _swapPinOut(pin, spacer, pinOriginalState);\n          } else {\n            _swapPinIn(pin, spacer, _getComputedStyle(pin), spacerState);\n          }\n        }\n\n        r || self.update(r); // when we're restoring, the update should run AFTER swapping the pin into its pin-spacer.\n\n        _refreshing = prevRefreshing; // restore. We set it to true during the update() so that things fire properly in there.\n\n        self.isReverted = r;\n      }\n    };\n\n    self.refresh = function (soft, force, position, pinOffset) {\n      // position is typically only defined if it's coming from setPositions() - it's a way to skip the normal parsing. pinOffset is also only from setPositions() and is mostly related to fancy stuff we need to do in ScrollSmoother with effects\n      if ((_refreshing || !self.enabled) && !force) {\n        return;\n      }\n\n      if (pin && soft && _lastScrollTime) {\n        ScrollTrigger_addListener(ScrollTrigger, \"scrollEnd\", _softRefresh);\n\n        return;\n      }\n\n      !_refreshingAll && onRefreshInit && onRefreshInit(self);\n      _refreshing = self;\n\n      if (tweenTo.tween && !position) {\n        // we skip this if a position is passed in because typically that's from .setPositions() and it's best to allow in-progress snapping to continue.\n        tweenTo.tween.kill();\n        tweenTo.tween = 0;\n      }\n\n      scrubTween && scrubTween.pause();\n\n      if (invalidateOnRefresh && animation) {\n        animation.revert({\n          kill: false\n        }).invalidate();\n        animation.getChildren ? animation.getChildren(true, true, false).forEach(function (t) {\n          return t.vars.immediateRender && t.render(0, true, true);\n        }) : animation.vars.immediateRender && animation.render(0, true, true); // any from() or fromTo() tweens should render immediately (well, unless they have immediateRender: false)\n      }\n\n      self.isReverted || self.revert(true, true);\n      self._subPinOffset = false; // we'll set this to true in the sub-pins if we find any\n\n      var size = getScrollerSize(),\n          scrollerBounds = getScrollerOffsets(),\n          max = containerAnimation ? containerAnimation.duration() : _maxScroll(scroller, direction),\n          isFirstRefresh = change <= 0.01 || !change,\n          offset = 0,\n          otherPinOffset = pinOffset || 0,\n          parsedEnd = ScrollTrigger_isObject(position) ? position.end : vars.end,\n          parsedEndTrigger = vars.endTrigger || trigger,\n          parsedStart = ScrollTrigger_isObject(position) ? position.start : vars.start || (vars.start === 0 || !trigger ? 0 : pin ? \"0 0\" : \"0 100%\"),\n          pinnedContainer = self.pinnedContainer = vars.pinnedContainer && _getTarget(vars.pinnedContainer, self),\n          triggerIndex = trigger && Math.max(0, _triggers.indexOf(self)) || 0,\n          i = triggerIndex,\n          cs,\n          bounds,\n          scroll,\n          isVertical,\n          override,\n          curTrigger,\n          curPin,\n          oppositeScroll,\n          initted,\n          revertedPins,\n          forcedOverflow,\n          markerStartOffset,\n          markerEndOffset;\n\n      if (markers && ScrollTrigger_isObject(position)) {\n        // if we alter the start/end positions with .setPositions(), it generally feeds in absolute NUMBERS which don't convey information about where to line up the markers, so to keep it intuitive, we record how far the trigger positions shift after applying the new numbers and then offset by that much in the opposite direction. We do the same to the associated trigger markers too of course.\n        markerStartOffset = ScrollTrigger_gsap.getProperty(markerStartTrigger, direction.p);\n        markerEndOffset = ScrollTrigger_gsap.getProperty(markerEndTrigger, direction.p);\n      }\n\n      while (i-- > 0) {\n        // user might try to pin the same element more than once, so we must find any prior triggers with the same pin, revert them, and determine how long they're pinning so that we can offset things appropriately. Make sure we revert from last to first so that things \"rewind\" properly.\n        curTrigger = _triggers[i];\n        curTrigger.end || curTrigger.refresh(0, 1) || (_refreshing = self); // if it's a timeline-based trigger that hasn't been fully initialized yet because it's waiting for 1 tick, just force the refresh() here, otherwise if it contains a pin that's supposed to affect other ScrollTriggers further down the page, they won't be adjusted properly.\n\n        curPin = curTrigger.pin;\n\n        if (curPin && (curPin === trigger || curPin === pin || curPin === pinnedContainer) && !curTrigger.isReverted) {\n          revertedPins || (revertedPins = []);\n          revertedPins.unshift(curTrigger); // we'll revert from first to last to make sure things reach their end state properly\n\n          curTrigger.revert(true, true);\n        }\n\n        if (curTrigger !== _triggers[i]) {\n          // in case it got removed.\n          triggerIndex--;\n          i--;\n        }\n      }\n\n      ScrollTrigger_isFunction(parsedStart) && (parsedStart = parsedStart(self));\n      parsedStart = _parseClamp(parsedStart, \"start\", self);\n      start = ScrollTrigger_parsePosition(parsedStart, trigger, size, direction, scrollFunc(), markerStart, markerStartTrigger, self, scrollerBounds, borderWidth, useFixedPosition, max, containerAnimation, self._startClamp && \"_startClamp\") || (pin ? -0.001 : 0);\n      ScrollTrigger_isFunction(parsedEnd) && (parsedEnd = parsedEnd(self));\n\n      if (ScrollTrigger_isString(parsedEnd) && !parsedEnd.indexOf(\"+=\")) {\n        if (~parsedEnd.indexOf(\" \")) {\n          parsedEnd = (ScrollTrigger_isString(parsedStart) ? parsedStart.split(\" \")[0] : \"\") + parsedEnd;\n        } else {\n          offset = _offsetToPx(parsedEnd.substr(2), size);\n          parsedEnd = ScrollTrigger_isString(parsedStart) ? parsedStart : (containerAnimation ? ScrollTrigger_gsap.utils.mapRange(0, containerAnimation.duration(), containerAnimation.scrollTrigger.start, containerAnimation.scrollTrigger.end, start) : start) + offset; // _parsePosition won't factor in the offset if the start is a number, so do it here.\n\n          parsedEndTrigger = trigger;\n        }\n      }\n\n      parsedEnd = _parseClamp(parsedEnd, \"end\", self);\n      end = Math.max(start, ScrollTrigger_parsePosition(parsedEnd || (parsedEndTrigger ? \"100% 0\" : max), parsedEndTrigger, size, direction, scrollFunc() + offset, markerEnd, markerEndTrigger, self, scrollerBounds, borderWidth, useFixedPosition, max, containerAnimation, self._endClamp && \"_endClamp\")) || -0.001;\n      offset = 0;\n      i = triggerIndex;\n\n      while (i--) {\n        curTrigger = _triggers[i] || {};\n        curPin = curTrigger.pin;\n\n        if (curPin && curTrigger.start - curTrigger._pinPush <= start && !containerAnimation && curTrigger.end > 0) {\n          cs = curTrigger.end - (self._startClamp ? Math.max(0, curTrigger.start) : curTrigger.start);\n\n          if ((curPin === trigger && curTrigger.start - curTrigger._pinPush < start || curPin === pinnedContainer) && isNaN(parsedStart)) {\n            // numeric start values shouldn't be offset at all - treat them as absolute\n            offset += cs * (1 - curTrigger.progress);\n          }\n\n          curPin === pin && (otherPinOffset += cs);\n        }\n      }\n\n      start += offset;\n      end += offset;\n      self._startClamp && (self._startClamp += offset);\n\n      if (self._endClamp && !_refreshingAll) {\n        self._endClamp = end || -0.001;\n        end = Math.min(end, _maxScroll(scroller, direction));\n      }\n\n      change = end - start || (start -= 0.01) && 0.001;\n\n      if (isFirstRefresh) {\n        // on the very first refresh(), the prevProgress couldn't have been accurate yet because the start/end were never calculated, so we set it here. Before 3.11.5, it could lead to an inaccurate scroll position restoration with snapping.\n        prevProgress = ScrollTrigger_gsap.utils.clamp(0, 1, ScrollTrigger_gsap.utils.normalize(start, end, prevScroll));\n      }\n\n      self._pinPush = otherPinOffset;\n\n      if (markerStart && offset) {\n        // offset the markers if necessary\n        cs = {};\n        cs[direction.a] = \"+=\" + offset;\n        pinnedContainer && (cs[direction.p] = \"-=\" + scrollFunc());\n        ScrollTrigger_gsap.set([markerStart, markerEnd], cs);\n      }\n\n      if (pin && !(_clampingMax && self.end >= _maxScroll(scroller, direction))) {\n        cs = _getComputedStyle(pin);\n        isVertical = direction === _vertical;\n        scroll = scrollFunc(); // recalculate because the triggers can affect the scroll\n\n        pinStart = parseFloat(pinGetter(direction.a)) + otherPinOffset;\n\n        if (!max && end > 1) {\n          // makes sure the scroller has a scrollbar, otherwise if something has width: 100%, for example, it would be too big (exclude the scrollbar). See https://gsap.com/forums/topic/25182-scrolltrigger-width-of-page-increase-where-markers-are-set-to-false/\n          forcedOverflow = (isViewport ? ScrollTrigger_doc.scrollingElement || ScrollTrigger_docEl : scroller).style;\n          forcedOverflow = {\n            style: forcedOverflow,\n            value: forcedOverflow[\"overflow\" + direction.a.toUpperCase()]\n          };\n\n          if (isViewport && _getComputedStyle(ScrollTrigger_body)[\"overflow\" + direction.a.toUpperCase()] !== \"scroll\") {\n            // avoid an extra scrollbar if BOTH <html> and <body> have overflow set to \"scroll\"\n            forcedOverflow.style[\"overflow\" + direction.a.toUpperCase()] = \"scroll\";\n          }\n        }\n\n        _swapPinIn(pin, spacer, cs);\n\n        pinState = _getState(pin); // transforms will interfere with the top/left/right/bottom placement, so remove them temporarily. getBoundingClientRect() factors in transforms.\n\n        bounds = _getBounds(pin, true);\n        oppositeScroll = useFixedPosition && _getScrollFunc(scroller, isVertical ? _horizontal : _vertical)();\n\n        if (pinSpacing) {\n          spacerState = [pinSpacing + direction.os2, change + otherPinOffset + _px];\n          spacerState.t = spacer;\n          i = pinSpacing === _padding ? _getSize(pin, direction) + change + otherPinOffset : 0;\n\n          if (i) {\n            spacerState.push(direction.d, i + _px); // for box-sizing: border-box (must include padding).\n\n            spacer.style.flexBasis !== \"auto\" && (spacer.style.flexBasis = i + _px);\n          }\n\n          _setState(spacerState);\n\n          if (pinnedContainer) {\n            // in ScrollTrigger.refresh(), we need to re-evaluate the pinContainer's size because this pinSpacing may stretch it out, but we can't just add the exact distance because depending on layout, it may not push things down or it may only do so partially.\n            _triggers.forEach(function (t) {\n              if (t.pin === pinnedContainer && t.vars.pinSpacing !== false) {\n                t._subPinOffset = true;\n              }\n            });\n          }\n\n          useFixedPosition && scrollFunc(prevScroll);\n        } else {\n          i = _getSize(pin, direction);\n          i && spacer.style.flexBasis !== \"auto\" && (spacer.style.flexBasis = i + _px);\n        }\n\n        if (useFixedPosition) {\n          override = {\n            top: bounds.top + (isVertical ? scroll - start : oppositeScroll) + _px,\n            left: bounds.left + (isVertical ? oppositeScroll : scroll - start) + _px,\n            boxSizing: \"border-box\",\n            position: \"fixed\"\n          };\n          override[_width] = override[\"max\" + _Width] = Math.ceil(bounds.width) + _px;\n          override[_height] = override[\"max\" + _Height] = Math.ceil(bounds.height) + _px;\n          override[_margin] = override[_margin + _Top] = override[_margin + _Right] = override[_margin + _Bottom] = override[_margin + _Left] = \"0\";\n          override[_padding] = cs[_padding];\n          override[_padding + _Top] = cs[_padding + _Top];\n          override[_padding + _Right] = cs[_padding + _Right];\n          override[_padding + _Bottom] = cs[_padding + _Bottom];\n          override[_padding + _Left] = cs[_padding + _Left];\n          pinActiveState = _copyState(pinOriginalState, override, pinReparent);\n          _refreshingAll && scrollFunc(0);\n        }\n\n        if (animation) {\n          // the animation might be affecting the transform, so we must jump to the end, check the value, and compensate accordingly. Otherwise, when it becomes unpinned, the pinSetter() will get set to a value that doesn't include whatever the animation did.\n          initted = animation._initted; // if not, we must invalidate() after this step, otherwise it could lock in starting values prematurely.\n\n          ScrollTrigger_suppressOverwrites(1);\n\n          animation.render(animation.duration(), true, true);\n          pinChange = pinGetter(direction.a) - pinStart + change + otherPinOffset;\n          pinMoves = Math.abs(change - pinChange) > 1;\n          useFixedPosition && pinMoves && pinActiveState.splice(pinActiveState.length - 2, 2); // transform is the last property/value set in the state Array. Since the animation is controlling that, we should omit it.\n\n          animation.render(0, true, true);\n          initted || animation.invalidate(true);\n          animation.parent || animation.totalTime(animation.totalTime()); // if, for example, a toggleAction called play() and then refresh() happens and when we render(1) above, it would cause the animation to complete and get removed from its parent, so this makes sure it gets put back in.\n\n          ScrollTrigger_suppressOverwrites(0);\n        } else {\n          pinChange = change;\n        }\n\n        forcedOverflow && (forcedOverflow.value ? forcedOverflow.style[\"overflow\" + direction.a.toUpperCase()] = forcedOverflow.value : forcedOverflow.style.removeProperty(\"overflow-\" + direction.a));\n      } else if (trigger && scrollFunc() && !containerAnimation) {\n        // it may be INSIDE a pinned element, so walk up the tree and look for any elements with _pinOffset to compensate because anything with pinSpacing that's already scrolled would throw off the measurements in getBoundingClientRect()\n        bounds = trigger.parentNode;\n\n        while (bounds && bounds !== ScrollTrigger_body) {\n          if (bounds._pinOffset) {\n            start -= bounds._pinOffset;\n            end -= bounds._pinOffset;\n          }\n\n          bounds = bounds.parentNode;\n        }\n      }\n\n      revertedPins && revertedPins.forEach(function (t) {\n        return t.revert(false, true);\n      });\n      self.start = start;\n      self.end = end;\n      scroll1 = scroll2 = _refreshingAll ? prevScroll : scrollFunc(); // reset velocity\n\n      if (!containerAnimation && !_refreshingAll) {\n        scroll1 < prevScroll && scrollFunc(prevScroll);\n        self.scroll.rec = 0;\n      }\n\n      self.revert(false, true);\n      lastRefresh = ScrollTrigger_getTime();\n\n      if (snapDelayedCall) {\n        lastSnap = -1; // just so snapping gets re-enabled, clear out any recorded last value\n        // self.isActive && scrollFunc(start + change * prevProgress); // previously this line was here to ensure that when snapping kicks in, it's from the previous progress but in some cases that's not desirable, like an all-page ScrollTrigger when new content gets added to the page, that'd totally change the progress.\n\n        snapDelayedCall.restart(true);\n      }\n\n      _refreshing = 0;\n      animation && isToggle && (animation._initted || prevAnimProgress) && animation.progress() !== prevAnimProgress && animation.progress(prevAnimProgress || 0, true).render(animation.time(), true, true); // must force a re-render because if saveStyles() was used on the target(s), the styles could have been wiped out during the refresh().\n\n      if (isFirstRefresh || prevProgress !== self.progress || containerAnimation || invalidateOnRefresh || animation && !animation._initted) {\n        // ensures that the direction is set properly (when refreshing, progress is set back to 0 initially, then back again to wherever it needs to be) and that callbacks are triggered.\n        animation && !isToggle && (animation._initted || prevProgress || animation.vars.immediateRender !== false) && animation.totalProgress(containerAnimation && start < -0.001 && !prevProgress ? ScrollTrigger_gsap.utils.normalize(start, end, 0) : prevProgress, true); // to avoid issues where animation callbacks like onStart aren't triggered.\n\n        self.progress = isFirstRefresh || (scroll1 - start) / change === prevProgress ? 0 : prevProgress;\n      }\n\n      pin && pinSpacing && (spacer._pinOffset = Math.round(self.progress * pinChange));\n      scrubTween && scrubTween.invalidate();\n\n      if (!isNaN(markerStartOffset)) {\n        // numbers were passed in for the position which are absolute, so instead of just putting the markers at the very bottom of the viewport, we figure out how far they shifted down (it's safe to assume they were originally positioned in closer relation to the trigger element with values like \"top\", \"center\", a percentage or whatever, so we offset that much in the opposite direction to basically revert them to the relative position thy were at previously.\n        markerStartOffset -= ScrollTrigger_gsap.getProperty(markerStartTrigger, direction.p);\n        markerEndOffset -= ScrollTrigger_gsap.getProperty(markerEndTrigger, direction.p);\n\n        _shiftMarker(markerStartTrigger, direction, markerStartOffset);\n\n        _shiftMarker(markerStart, direction, markerStartOffset - (pinOffset || 0));\n\n        _shiftMarker(markerEndTrigger, direction, markerEndOffset);\n\n        _shiftMarker(markerEnd, direction, markerEndOffset - (pinOffset || 0));\n      }\n\n      isFirstRefresh && !_refreshingAll && self.update(); // edge case - when you reload a page when it's already scrolled down, some browsers fire a \"scroll\" event before DOMContentLoaded, triggering an updateAll(). If we don't update the self.progress as part of refresh(), then when it happens next, it may record prevProgress as 0 when it really shouldn't, potentially causing a callback in an animation to fire again.\n\n      if (onRefresh && !_refreshingAll && !executingOnRefresh) {\n        // when refreshing all, we do extra work to correct pinnedContainer sizes and ensure things don't exceed the maxScroll, so we should do all the refreshes at the end after all that work so that the start/end values are corrected.\n        executingOnRefresh = true;\n        onRefresh(self);\n        executingOnRefresh = false;\n      }\n    };\n\n    self.getVelocity = function () {\n      return (scrollFunc() - scroll2) / (ScrollTrigger_getTime() - _time2) * 1000 || 0;\n    };\n\n    self.endAnimation = function () {\n      _endAnimation(self.callbackAnimation);\n\n      if (animation) {\n        scrubTween ? scrubTween.progress(1) : !animation.paused() ? _endAnimation(animation, animation.reversed()) : isToggle || _endAnimation(animation, self.direction < 0, 1);\n      }\n    };\n\n    self.labelToScroll = function (label) {\n      return animation && animation.labels && (start || self.refresh() || start) + animation.labels[label] / animation.duration() * change || 0;\n    };\n\n    self.getTrailing = function (name) {\n      var i = _triggers.indexOf(self),\n          a = self.direction > 0 ? _triggers.slice(0, i).reverse() : _triggers.slice(i + 1);\n\n      return (ScrollTrigger_isString(name) ? a.filter(function (t) {\n        return t.vars.preventOverlaps === name;\n      }) : a).filter(function (t) {\n        return self.direction > 0 ? t.end <= start : t.start >= end;\n      });\n    };\n\n    self.update = function (reset, recordVelocity, forceFake) {\n      if (containerAnimation && !forceFake && !reset) {\n        return;\n      }\n\n      var scroll = _refreshingAll === true ? prevScroll : self.scroll(),\n          p = reset ? 0 : (scroll - start) / change,\n          clipped = p < 0 ? 0 : p > 1 ? 1 : p || 0,\n          prevProgress = self.progress,\n          isActive,\n          wasActive,\n          toggleState,\n          action,\n          stateChanged,\n          toggled,\n          isAtMax,\n          isTakingAction;\n\n      if (recordVelocity) {\n        scroll2 = scroll1;\n        scroll1 = containerAnimation ? scrollFunc() : scroll;\n\n        if (snap) {\n          snap2 = snap1;\n          snap1 = animation && !isToggle ? animation.totalProgress() : clipped;\n        }\n      } // anticipate the pinning a few ticks ahead of time based on velocity to avoid a visual glitch due to the fact that most browsers do scrolling on a separate thread (not synced with requestAnimationFrame).\n\n\n      if (anticipatePin && pin && !_refreshing && !ScrollTrigger_startup && _lastScrollTime) {\n        if (!clipped && start < scroll + (scroll - scroll2) / (ScrollTrigger_getTime() - _time2) * anticipatePin) {\n          clipped = 0.0001;\n        } else if (clipped === 1 && end > scroll + (scroll - scroll2) / (ScrollTrigger_getTime() - _time2) * anticipatePin) {\n          clipped = 0.9999;\n        }\n      }\n\n      if (clipped !== prevProgress && self.enabled) {\n        isActive = self.isActive = !!clipped && clipped < 1;\n        wasActive = !!prevProgress && prevProgress < 1;\n        toggled = isActive !== wasActive;\n        stateChanged = toggled || !!clipped !== !!prevProgress; // could go from start all the way to end, thus it didn't toggle but it did change state in a sense (may need to fire a callback)\n\n        self.direction = clipped > prevProgress ? 1 : -1;\n        self.progress = clipped;\n\n        if (stateChanged && !_refreshing) {\n          toggleState = clipped && !prevProgress ? 0 : clipped === 1 ? 1 : prevProgress === 1 ? 2 : 3; // 0 = enter, 1 = leave, 2 = enterBack, 3 = leaveBack (we prioritize the FIRST encounter, thus if you scroll really fast past the onEnter and onLeave in one tick, it'd prioritize onEnter.\n\n          if (isToggle) {\n            action = !toggled && toggleActions[toggleState + 1] !== \"none\" && toggleActions[toggleState + 1] || toggleActions[toggleState]; // if it didn't toggle, that means it shot right past and since we prioritize the \"enter\" action, we should switch to the \"leave\" in this case (but only if one is defined)\n\n            isTakingAction = animation && (action === \"complete\" || action === \"reset\" || action in animation);\n          }\n        }\n\n        preventOverlaps && (toggled || isTakingAction) && (isTakingAction || scrub || !animation) && (ScrollTrigger_isFunction(preventOverlaps) ? preventOverlaps(self) : self.getTrailing(preventOverlaps).forEach(function (t) {\n          return t.endAnimation();\n        }));\n\n        if (!isToggle) {\n          if (scrubTween && !_refreshing && !ScrollTrigger_startup) {\n            scrubTween._dp._time - scrubTween._start !== scrubTween._time && scrubTween.render(scrubTween._dp._time - scrubTween._start); // if there's a scrub on both the container animation and this one (or a ScrollSmoother), the update order would cause this one not to have rendered yet, so it wouldn't make any progress before we .restart() it heading toward the new progress so it'd appear stuck thus we force a render here.\n\n            if (scrubTween.resetTo) {\n              scrubTween.resetTo(\"totalProgress\", clipped, animation._tTime / animation._tDur);\n            } else {\n              // legacy support (courtesy), before 3.10.0\n              scrubTween.vars.totalProgress = clipped;\n              scrubTween.invalidate().restart();\n            }\n          } else if (animation) {\n            animation.totalProgress(clipped, !!(_refreshing && (lastRefresh || reset)));\n          }\n        }\n\n        if (pin) {\n          reset && pinSpacing && (spacer.style[pinSpacing + direction.os2] = spacingStart);\n\n          if (!useFixedPosition) {\n            pinSetter(ScrollTrigger_round(pinStart + pinChange * clipped));\n          } else if (stateChanged) {\n            isAtMax = !reset && clipped > prevProgress && end + 1 > scroll && scroll + 1 >= _maxScroll(scroller, direction); // if it's at the VERY end of the page, don't switch away from position: fixed because it's pointless and it could cause a brief flash when the user scrolls back up (when it gets pinned again)\n\n            if (pinReparent) {\n              if (!reset && (isActive || isAtMax)) {\n                var bounds = _getBounds(pin, true),\n                    _offset = scroll - start;\n\n                _reparent(pin, ScrollTrigger_body, bounds.top + (direction === _vertical ? _offset : 0) + _px, bounds.left + (direction === _vertical ? 0 : _offset) + _px);\n              } else {\n                _reparent(pin, spacer);\n              }\n            }\n\n            _setState(isActive || isAtMax ? pinActiveState : pinState);\n\n            pinMoves && clipped < 1 && isActive || pinSetter(pinStart + (clipped === 1 && !isAtMax ? pinChange : 0));\n          }\n        }\n\n        snap && !tweenTo.tween && !_refreshing && !ScrollTrigger_startup && snapDelayedCall.restart(true);\n        toggleClass && (toggled || once && clipped && (clipped < 1 || !_limitCallbacks)) && _toArray(toggleClass.targets).forEach(function (el) {\n          return el.classList[isActive || once ? \"add\" : \"remove\"](toggleClass.className);\n        }); // classes could affect positioning, so do it even if reset or refreshing is true.\n\n        onUpdate && !isToggle && !reset && onUpdate(self);\n\n        if (stateChanged && !_refreshing) {\n          if (isToggle) {\n            if (isTakingAction) {\n              if (action === \"complete\") {\n                animation.pause().totalProgress(1);\n              } else if (action === \"reset\") {\n                animation.restart(true).pause();\n              } else if (action === \"restart\") {\n                animation.restart(true);\n              } else {\n                animation[action]();\n              }\n            }\n\n            onUpdate && onUpdate(self);\n          }\n\n          if (toggled || !_limitCallbacks) {\n            // on startup, the page could be scrolled and we don't want to fire callbacks that didn't toggle. For example onEnter shouldn't fire if the ScrollTrigger isn't actually entered.\n            onToggle && toggled && ScrollTrigger_callback(self, onToggle);\n            callbacks[toggleState] && ScrollTrigger_callback(self, callbacks[toggleState]);\n            once && (clipped === 1 ? self.kill(false, 1) : callbacks[toggleState] = 0); // a callback shouldn't be called again if once is true.\n\n            if (!toggled) {\n              // it's possible to go completely past, like from before the start to after the end (or vice-versa) in which case BOTH callbacks should be fired in that order\n              toggleState = clipped === 1 ? 1 : 3;\n              callbacks[toggleState] && ScrollTrigger_callback(self, callbacks[toggleState]);\n            }\n          }\n\n          if (fastScrollEnd && !isActive && Math.abs(self.getVelocity()) > (ScrollTrigger_isNumber(fastScrollEnd) ? fastScrollEnd : 2500)) {\n            _endAnimation(self.callbackAnimation);\n\n            scrubTween ? scrubTween.progress(1) : _endAnimation(animation, action === \"reverse\" ? 1 : !clipped, 1);\n          }\n        } else if (isToggle && onUpdate && !_refreshing) {\n          onUpdate(self);\n        }\n      } // update absolutely-positioned markers (only if the scroller isn't the viewport)\n\n\n      if (markerEndSetter) {\n        var n = containerAnimation ? scroll / containerAnimation.duration() * (containerAnimation._caScrollDist || 0) : scroll;\n        markerStartSetter(n + (markerStartTrigger._isFlipped ? 1 : 0));\n        markerEndSetter(n);\n      }\n\n      caMarkerSetter && caMarkerSetter(-scroll / containerAnimation.duration() * (containerAnimation._caScrollDist || 0));\n    };\n\n    self.enable = function (reset, refresh) {\n      if (!self.enabled) {\n        self.enabled = true;\n\n        ScrollTrigger_addListener(scroller, \"resize\", _onResize);\n\n        isViewport || ScrollTrigger_addListener(scroller, \"scroll\", ScrollTrigger_onScroll);\n        onRefreshInit && ScrollTrigger_addListener(ScrollTrigger, \"refreshInit\", onRefreshInit);\n\n        if (reset !== false) {\n          self.progress = prevProgress = 0;\n          scroll1 = scroll2 = lastSnap = scrollFunc();\n        }\n\n        refresh !== false && self.refresh();\n      }\n    };\n\n    self.getTween = function (snap) {\n      return snap && tweenTo ? tweenTo.tween : scrubTween;\n    };\n\n    self.setPositions = function (newStart, newEnd, keepClamp, pinOffset) {\n      // doesn't persist after refresh()! Intended to be a way to override values that were set during refresh(), like you could set it in onRefresh()\n      if (containerAnimation) {\n        // convert ratios into scroll positions. Remember, start/end values on ScrollTriggers that have a containerAnimation refer to the time (in seconds), NOT scroll positions.\n        var st = containerAnimation.scrollTrigger,\n            duration = containerAnimation.duration(),\n            _change = st.end - st.start;\n\n        newStart = st.start + _change * newStart / duration;\n        newEnd = st.start + _change * newEnd / duration;\n      }\n\n      self.refresh(false, false, {\n        start: _keepClamp(newStart, keepClamp && !!self._startClamp),\n        end: _keepClamp(newEnd, keepClamp && !!self._endClamp)\n      }, pinOffset);\n      self.update();\n    };\n\n    self.adjustPinSpacing = function (amount) {\n      if (spacerState && amount) {\n        var i = spacerState.indexOf(direction.d) + 1;\n        spacerState[i] = parseFloat(spacerState[i]) + amount + _px;\n        spacerState[1] = parseFloat(spacerState[1]) + amount + _px;\n\n        _setState(spacerState);\n      }\n    };\n\n    self.disable = function (reset, allowAnimation) {\n      reset !== false && self.revert(true, true);\n\n      if (self.enabled) {\n        self.enabled = self.isActive = false;\n        allowAnimation || scrubTween && scrubTween.pause();\n        prevScroll = 0;\n        pinCache && (pinCache.uncache = 1);\n        onRefreshInit && ScrollTrigger_removeListener(ScrollTrigger, \"refreshInit\", onRefreshInit);\n\n        if (snapDelayedCall) {\n          snapDelayedCall.pause();\n          tweenTo.tween && tweenTo.tween.kill() && (tweenTo.tween = 0);\n        }\n\n        if (!isViewport) {\n          var i = _triggers.length;\n\n          while (i--) {\n            if (_triggers[i].scroller === scroller && _triggers[i] !== self) {\n              return; //don't remove the listeners if there are still other triggers referencing it.\n            }\n          }\n\n          ScrollTrigger_removeListener(scroller, \"resize\", _onResize);\n\n          isViewport || ScrollTrigger_removeListener(scroller, \"scroll\", ScrollTrigger_onScroll);\n        }\n      }\n    };\n\n    self.kill = function (revert, allowAnimation) {\n      self.disable(revert, allowAnimation);\n      scrubTween && !allowAnimation && scrubTween.kill();\n      id && delete _ids[id];\n\n      var i = _triggers.indexOf(self);\n\n      i >= 0 && _triggers.splice(i, 1);\n      i === _i && _direction > 0 && _i--; // if we're in the middle of a refresh() or update(), splicing would cause skips in the index, so adjust...\n      // if no other ScrollTrigger instances of the same scroller are found, wipe out any recorded scroll position. Otherwise, in a single page application, for example, it could maintain scroll position when it really shouldn't.\n\n      i = 0;\n\n      _triggers.forEach(function (t) {\n        return t.scroller === self.scroller && (i = 1);\n      });\n\n      i || _refreshingAll || (self.scroll.rec = 0);\n\n      if (animation) {\n        animation.scrollTrigger = null;\n        revert && animation.revert({\n          kill: false\n        });\n        allowAnimation || animation.kill();\n      }\n\n      markerStart && [markerStart, markerEnd, markerStartTrigger, markerEndTrigger].forEach(function (m) {\n        return m.parentNode && m.parentNode.removeChild(m);\n      });\n      _primary === self && (_primary = 0);\n\n      if (pin) {\n        pinCache && (pinCache.uncache = 1);\n        i = 0;\n\n        _triggers.forEach(function (t) {\n          return t.pin === pin && i++;\n        });\n\n        i || (pinCache.spacer = 0); // if there aren't any more ScrollTriggers with the same pin, remove the spacer, otherwise it could be contaminated with old/stale values if the user re-creates a ScrollTrigger for the same element.\n      }\n\n      vars.onKill && vars.onKill(self);\n    };\n\n    _triggers.push(self);\n\n    self.enable(false, false);\n    customRevertReturn && customRevertReturn(self);\n\n    if (animation && animation.add && !change) {\n      // if the animation is a timeline, it may not have been populated yet, so it wouldn't render at the proper place on the first refresh(), thus we should schedule one for the next tick. If \"change\" is defined, we know it must be re-enabling, thus we can refresh() right away.\n      var updateFunc = self.update; // some browsers may fire a scroll event BEFORE a tick elapses and/or the DOMContentLoaded fires. So there's a chance update() will be called BEFORE a refresh() has happened on a Timeline-attached ScrollTrigger which means the start/end won't be calculated yet. We don't want to add conditional logic inside the update() method (like check to see if end is defined and if not, force a refresh()) because that's a function that gets hit a LOT (performance). So we swap out the real update() method for this one that'll re-attach it the first time it gets called and of course forces a refresh().\n\n      self.update = function () {\n        self.update = updateFunc;\n        _scrollers.cache++; // otherwise a cached scroll position may get used in the refresh() in a very rare scenario, like if ScrollTriggers are created inside a DOMContentLoaded event and the queued requestAnimationFrame() fires beforehand. See https://gsap.com/community/forums/topic/41267-scrolltrigger-breaks-on-refresh-when-using-domcontentloaded/\n\n        start || end || self.refresh();\n      };\n\n      ScrollTrigger_gsap.delayedCall(0.01, self.update);\n      change = 0.01;\n      start = end = 0;\n    } else {\n      self.refresh();\n    }\n\n    pin && _queueRefreshAll(); // pinning could affect the positions of other things, so make sure we queue a full refresh()\n  };\n\n  ScrollTrigger.register = function register(core) {\n    if (!ScrollTrigger_coreInitted) {\n      ScrollTrigger_gsap = core || ScrollTrigger_getGSAP();\n      ScrollTrigger_windowExists() && window.document && ScrollTrigger.enable();\n      ScrollTrigger_coreInitted = _enabled;\n    }\n\n    return ScrollTrigger_coreInitted;\n  };\n\n  ScrollTrigger.defaults = function defaults(config) {\n    if (config) {\n      for (var p in config) {\n        ScrollTrigger_defaults[p] = config[p];\n      }\n    }\n\n    return ScrollTrigger_defaults;\n  };\n\n  ScrollTrigger.disable = function disable(reset, kill) {\n    _enabled = 0;\n\n    _triggers.forEach(function (trigger) {\n      return trigger[kill ? \"kill\" : \"disable\"](reset);\n    });\n\n    ScrollTrigger_removeListener(ScrollTrigger_win, \"wheel\", ScrollTrigger_onScroll);\n\n    ScrollTrigger_removeListener(ScrollTrigger_doc, \"scroll\", ScrollTrigger_onScroll);\n\n    clearInterval(_syncInterval);\n\n    ScrollTrigger_removeListener(ScrollTrigger_doc, \"touchcancel\", ScrollTrigger_passThrough);\n\n    ScrollTrigger_removeListener(ScrollTrigger_body, \"touchstart\", ScrollTrigger_passThrough);\n\n    _multiListener(ScrollTrigger_removeListener, ScrollTrigger_doc, \"pointerdown,touchstart,mousedown\", _pointerDownHandler);\n\n    _multiListener(ScrollTrigger_removeListener, ScrollTrigger_doc, \"pointerup,touchend,mouseup\", _pointerUpHandler);\n\n    _resizeDelay.kill();\n\n    _iterateAutoRefresh(ScrollTrigger_removeListener);\n\n    for (var i = 0; i < _scrollers.length; i += 3) {\n      _wheelListener(ScrollTrigger_removeListener, _scrollers[i], _scrollers[i + 1]);\n\n      _wheelListener(ScrollTrigger_removeListener, _scrollers[i], _scrollers[i + 2]);\n    }\n  };\n\n  ScrollTrigger.enable = function enable() {\n    ScrollTrigger_win = window;\n    ScrollTrigger_doc = document;\n    ScrollTrigger_docEl = ScrollTrigger_doc.documentElement;\n    ScrollTrigger_body = ScrollTrigger_doc.body;\n\n    if (ScrollTrigger_gsap) {\n      _toArray = ScrollTrigger_gsap.utils.toArray;\n      ScrollTrigger_clamp = ScrollTrigger_gsap.utils.clamp;\n      ScrollTrigger_context = ScrollTrigger_gsap.core.context || ScrollTrigger_passThrough;\n      ScrollTrigger_suppressOverwrites = ScrollTrigger_gsap.core.suppressOverwrites || ScrollTrigger_passThrough;\n      _scrollRestoration = ScrollTrigger_win.history.scrollRestoration || \"auto\";\n      _lastScroll = ScrollTrigger_win.pageYOffset || 0;\n      ScrollTrigger_gsap.core.globals(\"ScrollTrigger\", ScrollTrigger); // must register the global manually because in Internet Explorer, functions (classes) don't have a \"name\" property.\n\n      if (ScrollTrigger_body) {\n        _enabled = 1;\n        _div100vh = document.createElement(\"div\"); // to solve mobile browser address bar show/hide resizing, we shouldn't rely on window.innerHeight. Instead, use a <div> with its height set to 100vh and measure that since that's what the scrolling is based on anyway and it's not affected by address bar showing/hiding.\n\n        _div100vh.style.height = \"100vh\";\n        _div100vh.style.position = \"absolute\";\n\n        _refresh100vh();\n\n        _rafBugFix();\n\n        Observer.register(ScrollTrigger_gsap); // isTouch is 0 if no touch, 1 if ONLY touch, and 2 if it can accommodate touch but also other types like mouse/pointer.\n\n        ScrollTrigger.isTouch = Observer.isTouch;\n        _fixIOSBug = Observer.isTouch && /(iPad|iPhone|iPod|Mac)/g.test(navigator.userAgent); // since 2017, iOS has had a bug that causes event.clientX/Y to be inaccurate when a scroll occurs, thus we must alternate ignoring every other touchmove event to work around it. See https://bugs.webkit.org/show_bug.cgi?id=181954 and https://codepen.io/GreenSock/pen/ExbrPNa/087cef197dc35445a0951e8935c41503\n\n        _ignoreMobileResize = Observer.isTouch === 1;\n\n        ScrollTrigger_addListener(ScrollTrigger_win, \"wheel\", ScrollTrigger_onScroll); // mostly for 3rd party smooth scrolling libraries.\n\n\n        ScrollTrigger_root = [ScrollTrigger_win, ScrollTrigger_doc, ScrollTrigger_docEl, ScrollTrigger_body];\n\n        if (ScrollTrigger_gsap.matchMedia) {\n          ScrollTrigger.matchMedia = function (vars) {\n            var mm = ScrollTrigger_gsap.matchMedia(),\n                p;\n\n            for (p in vars) {\n              mm.add(p, vars[p]);\n            }\n\n            return mm;\n          };\n\n          ScrollTrigger_gsap.addEventListener(\"matchMediaInit\", function () {\n            _recordScrollPositions();\n\n            _revertAll();\n          });\n          ScrollTrigger_gsap.addEventListener(\"matchMediaRevert\", function () {\n            return _revertRecorded();\n          });\n          ScrollTrigger_gsap.addEventListener(\"matchMedia\", function () {\n            _refreshAll(0, 1);\n\n            ScrollTrigger_dispatch(\"matchMedia\");\n          });\n          ScrollTrigger_gsap.matchMedia().add(\"(orientation: portrait)\", function () {\n            // when orientation changes, we should take new base measurements for the ignoreMobileResize feature.\n            _setBaseDimensions();\n\n            return _setBaseDimensions;\n          });\n        } else {\n          console.warn(\"Requires GSAP 3.11.0 or later\");\n        }\n\n        _setBaseDimensions();\n\n        ScrollTrigger_addListener(ScrollTrigger_doc, \"scroll\", ScrollTrigger_onScroll); // some browsers (like Chrome), the window stops dispatching scroll events on the window if you scroll really fast, but it's consistent on the document!\n\n\n        var bodyHasStyle = ScrollTrigger_body.hasAttribute(\"style\"),\n            bodyStyle = ScrollTrigger_body.style,\n            border = bodyStyle.borderTopStyle,\n            AnimationProto = ScrollTrigger_gsap.core.Animation.prototype,\n            bounds,\n            i;\n\n        AnimationProto.revert || Object.defineProperty(AnimationProto, \"revert\", {\n          value: function value() {\n            return this.time(-0.01, true);\n          }\n        }); // only for backwards compatibility (Animation.revert() was added after 3.10.4)\n\n        bodyStyle.borderTopStyle = \"solid\"; // works around an issue where a margin of a child element could throw off the bounds of the _body, making it seem like there's a margin when there actually isn't. The border ensures that the bounds are accurate.\n\n        bounds = _getBounds(ScrollTrigger_body);\n        _vertical.m = Math.round(bounds.top + _vertical.sc()) || 0; // accommodate the offset of the <body> caused by margins and/or padding\n\n        _horizontal.m = Math.round(bounds.left + _horizontal.sc()) || 0;\n        border ? bodyStyle.borderTopStyle = border : bodyStyle.removeProperty(\"border-top-style\");\n\n        if (!bodyHasStyle) {\n          // SSR frameworks like Next.js complain if this attribute gets added.\n          ScrollTrigger_body.setAttribute(\"style\", \"\"); // it's not enough to just removeAttribute() - we must first set it to empty, otherwise Next.js complains.\n\n\n          ScrollTrigger_body.removeAttribute(\"style\");\n        } // TODO: (?) maybe move to leveraging the velocity mechanism in Observer and skip intervals.\n\n\n        _syncInterval = setInterval(_sync, 250);\n        ScrollTrigger_gsap.delayedCall(0.5, function () {\n          return ScrollTrigger_startup = 0;\n        });\n\n        ScrollTrigger_addListener(ScrollTrigger_doc, \"touchcancel\", ScrollTrigger_passThrough); // some older Android devices intermittently stop dispatching \"touchmove\" events if we don't listen for \"touchcancel\" on the document.\n\n\n        ScrollTrigger_addListener(ScrollTrigger_body, \"touchstart\", ScrollTrigger_passThrough); //works around Safari bug: https://gsap.com/forums/topic/21450-draggable-in-iframe-on-mobile-is-buggy/\n\n\n        _multiListener(ScrollTrigger_addListener, ScrollTrigger_doc, \"pointerdown,touchstart,mousedown\", _pointerDownHandler);\n\n        _multiListener(ScrollTrigger_addListener, ScrollTrigger_doc, \"pointerup,touchend,mouseup\", _pointerUpHandler);\n\n        ScrollTrigger_transformProp = ScrollTrigger_gsap.utils.checkPrefix(\"transform\");\n\n        _stateProps.push(ScrollTrigger_transformProp);\n\n        ScrollTrigger_coreInitted = ScrollTrigger_getTime();\n        _resizeDelay = ScrollTrigger_gsap.delayedCall(0.2, _refreshAll).pause();\n        _autoRefresh = [ScrollTrigger_doc, \"visibilitychange\", function () {\n          var w = ScrollTrigger_win.innerWidth,\n              h = ScrollTrigger_win.innerHeight;\n\n          if (ScrollTrigger_doc.hidden) {\n            _prevWidth = w;\n            _prevHeight = h;\n          } else if (_prevWidth !== w || _prevHeight !== h) {\n            _onResize();\n          }\n        }, ScrollTrigger_doc, \"DOMContentLoaded\", _refreshAll, ScrollTrigger_win, \"load\", _refreshAll, ScrollTrigger_win, \"resize\", _onResize];\n\n        _iterateAutoRefresh(ScrollTrigger_addListener);\n\n        _triggers.forEach(function (trigger) {\n          return trigger.enable(0, 1);\n        });\n\n        for (i = 0; i < _scrollers.length; i += 3) {\n          _wheelListener(ScrollTrigger_removeListener, _scrollers[i], _scrollers[i + 1]);\n\n          _wheelListener(ScrollTrigger_removeListener, _scrollers[i], _scrollers[i + 2]);\n        }\n      } else if (ScrollTrigger_doc) {\n        var onLoad = function onLoad() {\n          ScrollTrigger.enable();\n\n          ScrollTrigger_doc.removeEventListener(\"DOMContentLoaded\", onLoad);\n        };\n\n        ScrollTrigger_doc.addEventListener(\"DOMContentLoaded\", onLoad);\n      }\n    }\n  };\n\n  ScrollTrigger.config = function config(vars) {\n    \"limitCallbacks\" in vars && (_limitCallbacks = !!vars.limitCallbacks);\n    var ms = vars.syncInterval;\n    ms && clearInterval(_syncInterval) || (_syncInterval = ms) && setInterval(_sync, ms);\n    \"ignoreMobileResize\" in vars && (_ignoreMobileResize = ScrollTrigger.isTouch === 1 && vars.ignoreMobileResize);\n\n    if (\"autoRefreshEvents\" in vars) {\n      _iterateAutoRefresh(ScrollTrigger_removeListener) || _iterateAutoRefresh(ScrollTrigger_addListener, vars.autoRefreshEvents || \"none\");\n      _ignoreResize = (vars.autoRefreshEvents + \"\").indexOf(\"resize\") === -1;\n    }\n  };\n\n  ScrollTrigger.scrollerProxy = function scrollerProxy(target, vars) {\n    var t = _getTarget(target),\n        i = _scrollers.indexOf(t),\n        isViewport = ScrollTrigger_isViewport(t);\n\n    if (~i) {\n      _scrollers.splice(i, isViewport ? 6 : 2);\n    }\n\n    if (vars) {\n      isViewport ? _proxies.unshift(ScrollTrigger_win, vars, ScrollTrigger_body, vars, ScrollTrigger_docEl, vars) : _proxies.unshift(t, vars);\n    }\n  };\n\n  ScrollTrigger.clearMatchMedia = function clearMatchMedia(query) {\n    _triggers.forEach(function (t) {\n      return t._ctx && t._ctx.query === query && t._ctx.kill(true, true);\n    });\n  };\n\n  ScrollTrigger.isInViewport = function isInViewport(element, ratio, horizontal) {\n    var bounds = (ScrollTrigger_isString(element) ? _getTarget(element) : element).getBoundingClientRect(),\n        offset = bounds[horizontal ? _width : _height] * ratio || 0;\n    return horizontal ? bounds.right - offset > 0 && bounds.left + offset < ScrollTrigger_win.innerWidth : bounds.bottom - offset > 0 && bounds.top + offset < ScrollTrigger_win.innerHeight;\n  };\n\n  ScrollTrigger.positionInViewport = function positionInViewport(element, referencePoint, horizontal) {\n    ScrollTrigger_isString(element) && (element = _getTarget(element));\n    var bounds = element.getBoundingClientRect(),\n        size = bounds[horizontal ? _width : _height],\n        offset = referencePoint == null ? size / 2 : referencePoint in _keywords ? _keywords[referencePoint] * size : ~referencePoint.indexOf(\"%\") ? parseFloat(referencePoint) * size / 100 : parseFloat(referencePoint) || 0;\n    return horizontal ? (bounds.left + offset) / ScrollTrigger_win.innerWidth : (bounds.top + offset) / ScrollTrigger_win.innerHeight;\n  };\n\n  ScrollTrigger.killAll = function killAll(allowListeners) {\n    _triggers.slice(0).forEach(function (t) {\n      return t.vars.id !== \"ScrollSmoother\" && t.kill();\n    });\n\n    if (allowListeners !== true) {\n      var listeners = ScrollTrigger_listeners.killAll || [];\n      ScrollTrigger_listeners = {};\n      listeners.forEach(function (f) {\n        return f();\n      });\n    }\n  };\n\n  return ScrollTrigger;\n}();\nScrollTrigger_ScrollTrigger.version = \"3.15.0\";\n\nScrollTrigger_ScrollTrigger.saveStyles = function (targets) {\n  return targets ? _toArray(targets).forEach(function (target) {\n    // saved styles are recorded in a consecutive alternating Array, like [element, cssText, transform attribute, cache, matchMedia, ...]\n    if (target && target.style) {\n      var i = _savedStyles.indexOf(target);\n\n      i >= 0 && _savedStyles.splice(i, 5);\n\n      _savedStyles.push(target, target.style.cssText, target.getBBox && target.getAttribute(\"transform\"), ScrollTrigger_gsap.core.getCache(target), ScrollTrigger_context());\n    }\n  }) : _savedStyles;\n};\n\nScrollTrigger_ScrollTrigger.revert = function (soft, media) {\n  return _revertAll(!soft, media);\n};\n\nScrollTrigger_ScrollTrigger.create = function (vars, animation) {\n  return new ScrollTrigger_ScrollTrigger(vars, animation);\n};\n\nScrollTrigger_ScrollTrigger.refresh = function (safe) {\n  return safe ? _onResize(true) : (ScrollTrigger_coreInitted || ScrollTrigger_ScrollTrigger.register()) && _refreshAll(true);\n};\n\nScrollTrigger_ScrollTrigger.update = function (force) {\n  return ++_scrollers.cache && _updateAll(force === true ? 2 : 0);\n};\n\nScrollTrigger_ScrollTrigger.clearScrollMemory = _clearScrollMemory;\n\nScrollTrigger_ScrollTrigger.maxScroll = function (element, horizontal) {\n  return _maxScroll(element, horizontal ? _horizontal : _vertical);\n};\n\nScrollTrigger_ScrollTrigger.getScrollFunc = function (element, horizontal) {\n  return _getScrollFunc(_getTarget(element), horizontal ? _horizontal : _vertical);\n};\n\nScrollTrigger_ScrollTrigger.getById = function (id) {\n  return _ids[id];\n};\n\nScrollTrigger_ScrollTrigger.getAll = function () {\n  return _triggers.filter(function (t) {\n    return t.vars.id !== \"ScrollSmoother\";\n  });\n}; // it's common for people to ScrollTrigger.getAll(t => t.kill()) on page routes, for example, and we don't want it to ruin smooth scrolling by killing the main ScrollSmoother one.\n\n\nScrollTrigger_ScrollTrigger.isScrolling = function () {\n  return !!_lastScrollTime;\n};\n\nScrollTrigger_ScrollTrigger.snapDirectional = _snapDirectional;\n\nScrollTrigger_ScrollTrigger.addEventListener = function (type, callback) {\n  var a = ScrollTrigger_listeners[type] || (ScrollTrigger_listeners[type] = []);\n  ~a.indexOf(callback) || a.push(callback);\n};\n\nScrollTrigger_ScrollTrigger.removeEventListener = function (type, callback) {\n  var a = ScrollTrigger_listeners[type],\n      i = a && a.indexOf(callback);\n  i >= 0 && a.splice(i, 1);\n};\n\nScrollTrigger_ScrollTrigger.batch = function (targets, vars) {\n  var result = [],\n      varsCopy = {},\n      interval = vars.interval || 0.016,\n      batchMax = vars.batchMax || 1e9,\n      proxyCallback = function proxyCallback(type, callback) {\n    var elements = [],\n        triggers = [],\n        delay = ScrollTrigger_gsap.delayedCall(interval, function () {\n      callback(elements, triggers);\n      elements = [];\n      triggers = [];\n    }).pause();\n    return function (self) {\n      elements.length || delay.restart(true);\n      elements.push(self.trigger);\n      triggers.push(self);\n      batchMax <= elements.length && delay.progress(1);\n    };\n  },\n      p;\n\n  for (p in vars) {\n    varsCopy[p] = p.substr(0, 2) === \"on\" && ScrollTrigger_isFunction(vars[p]) && p !== \"onRefreshInit\" ? proxyCallback(p, vars[p]) : vars[p];\n  }\n\n  if (ScrollTrigger_isFunction(batchMax)) {\n    batchMax = batchMax();\n\n    ScrollTrigger_addListener(ScrollTrigger_ScrollTrigger, \"refresh\", function () {\n      return batchMax = vars.batchMax();\n    });\n  }\n\n  _toArray(targets).forEach(function (target) {\n    var config = {};\n\n    for (p in varsCopy) {\n      config[p] = varsCopy[p];\n    }\n\n    config.trigger = target;\n    result.push(ScrollTrigger_ScrollTrigger.create(config));\n  });\n\n  return result;\n}; // to reduce file size. clamps the scroll and also returns a duration multiplier so that if the scroll gets chopped shorter, the duration gets curtailed as well (otherwise if you're very close to the top of the page, for example, and swipe up really fast, it'll suddenly slow down and take a long time to reach the top).\n\n\nvar _clampScrollAndGetDurationMultiplier = function _clampScrollAndGetDurationMultiplier(scrollFunc, current, end, max) {\n  current > max ? scrollFunc(max) : current < 0 && scrollFunc(0);\n  return end > max ? (max - current) / (end - current) : end < 0 ? current / (current - end) : 1;\n},\n    _allowNativePanning = function _allowNativePanning(target, direction) {\n  if (direction === true) {\n    target.style.removeProperty(\"touch-action\");\n  } else {\n    target.style.touchAction = direction === true ? \"auto\" : direction ? \"pan-\" + direction + (Observer.isTouch ? \" pinch-zoom\" : \"\") : \"none\"; // note: Firefox doesn't support it pinch-zoom properly, at least in addition to a pan-x or pan-y.\n  }\n\n  target === ScrollTrigger_docEl && _allowNativePanning(ScrollTrigger_body, direction);\n},\n    _overflow = {\n  auto: 1,\n  scroll: 1\n},\n    _nestedScroll = function _nestedScroll(_ref5) {\n  var event = _ref5.event,\n      target = _ref5.target,\n      axis = _ref5.axis;\n\n  var node = (event.changedTouches ? event.changedTouches[0] : event).target,\n      cache = node._gsap || ScrollTrigger_gsap.core.getCache(node),\n      time = ScrollTrigger_getTime(),\n      cs;\n\n  if (!cache._isScrollT || time - cache._isScrollT > 2000) {\n    // cache for 2 seconds to improve performance.\n    while (node && node !== ScrollTrigger_body && (node.scrollHeight <= node.clientHeight && node.scrollWidth <= node.clientWidth || !(_overflow[(cs = _getComputedStyle(node)).overflowY] || _overflow[cs.overflowX]))) {\n      node = node.parentNode;\n    }\n\n    cache._isScroll = node && node !== target && !ScrollTrigger_isViewport(node) && (_overflow[(cs = _getComputedStyle(node)).overflowY] || _overflow[cs.overflowX]);\n    cache._isScrollT = time;\n  }\n\n  if (cache._isScroll || axis === \"x\") {\n    event.stopPropagation();\n    event._gsapAllow = true;\n  }\n},\n    // capture events on scrollable elements INSIDE the <body> and allow those by calling stopPropagation() when we find a scrollable ancestor\n_inputObserver = function _inputObserver(target, type, inputs, nested) {\n  return Observer.create({\n    target: target,\n    capture: true,\n    debounce: false,\n    lockAxis: true,\n    type: type,\n    onWheel: nested = nested && _nestedScroll,\n    onPress: nested,\n    onDrag: nested,\n    onScroll: nested,\n    onEnable: function onEnable() {\n      return inputs && ScrollTrigger_addListener(ScrollTrigger_doc, Observer.eventTypes[0], _captureInputs, false, true);\n    },\n    onDisable: function onDisable() {\n      return ScrollTrigger_removeListener(ScrollTrigger_doc, Observer.eventTypes[0], _captureInputs, true);\n    }\n  });\n},\n    _inputExp = /(input|label|select|textarea)/i,\n    _inputIsFocused,\n    _captureInputs = function _captureInputs(e) {\n  var isInput = _inputExp.test(e.target.tagName);\n\n  if (isInput || _inputIsFocused) {\n    e._gsapAllow = true;\n    _inputIsFocused = isInput;\n  }\n},\n    _getScrollNormalizer = function _getScrollNormalizer(vars) {\n  ScrollTrigger_isObject(vars) || (vars = {});\n  vars.preventDefault = vars.isNormalizer = vars.allowClicks = true;\n  vars.type || (vars.type = \"wheel,touch\");\n  vars.debounce = !!vars.debounce;\n  vars.id = vars.id || \"normalizer\";\n\n  var _vars2 = vars,\n      normalizeScrollX = _vars2.normalizeScrollX,\n      momentum = _vars2.momentum,\n      allowNestedScroll = _vars2.allowNestedScroll,\n      onRelease = _vars2.onRelease,\n      self,\n      maxY,\n      target = _getTarget(vars.target) || ScrollTrigger_docEl,\n      smoother = ScrollTrigger_gsap.core.globals().ScrollSmoother,\n      smootherInstance = smoother && smoother.get(),\n      content = _fixIOSBug && (vars.content && _getTarget(vars.content) || smootherInstance && vars.content !== false && !smootherInstance.smooth() && smootherInstance.content()),\n      scrollFuncY = _getScrollFunc(target, _vertical),\n      scrollFuncX = _getScrollFunc(target, _horizontal),\n      scale = 1,\n      initialScale = (Observer.isTouch && ScrollTrigger_win.visualViewport ? ScrollTrigger_win.visualViewport.scale * ScrollTrigger_win.visualViewport.width : ScrollTrigger_win.outerWidth) / ScrollTrigger_win.innerWidth,\n      wheelRefresh = 0,\n      resolveMomentumDuration = ScrollTrigger_isFunction(momentum) ? function () {\n    return momentum(self);\n  } : function () {\n    return momentum || 2.8;\n  },\n      lastRefreshID,\n      skipTouchMove,\n      inputObserver = _inputObserver(target, vars.type, true, allowNestedScroll),\n      resumeTouchMove = function resumeTouchMove() {\n    return skipTouchMove = false;\n  },\n      scrollClampX = ScrollTrigger_passThrough,\n      scrollClampY = ScrollTrigger_passThrough,\n      updateClamps = function updateClamps() {\n    maxY = _maxScroll(target, _vertical);\n    scrollClampY = ScrollTrigger_clamp(_fixIOSBug ? 1 : 0, maxY);\n    normalizeScrollX && (scrollClampX = ScrollTrigger_clamp(0, _maxScroll(target, _horizontal)));\n    lastRefreshID = _refreshID;\n  },\n      removeContentOffset = function removeContentOffset() {\n    content._gsap.y = ScrollTrigger_round(parseFloat(content._gsap.y) + scrollFuncY.offset) + \"px\";\n    content.style.transform = \"matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, \" + parseFloat(content._gsap.y) + \", 0, 1)\";\n    scrollFuncY.offset = scrollFuncY.cacheID = 0;\n  },\n      ignoreDrag = function ignoreDrag() {\n    if (skipTouchMove) {\n      requestAnimationFrame(resumeTouchMove);\n\n      var offset = ScrollTrigger_round(self.deltaY / 2),\n          scroll = scrollClampY(scrollFuncY.v - offset);\n\n      if (content && scroll !== scrollFuncY.v + scrollFuncY.offset) {\n        scrollFuncY.offset = scroll - scrollFuncY.v;\n\n        var y = ScrollTrigger_round((parseFloat(content && content._gsap.y) || 0) - scrollFuncY.offset);\n\n        content.style.transform = \"matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, \" + y + \", 0, 1)\";\n        content._gsap.y = y + \"px\";\n        scrollFuncY.cacheID = _scrollers.cache;\n\n        _updateAll();\n      }\n\n      return true;\n    }\n\n    scrollFuncY.offset && removeContentOffset();\n    skipTouchMove = true;\n  },\n      tween,\n      startScrollX,\n      startScrollY,\n      onStopDelayedCall,\n      onResize = function onResize() {\n    // if the window resizes, like on an iPhone which Apple FORCES the address bar to show/hide even if we event.preventDefault(), it may be scrolling too far now that the address bar is showing, so we must dynamically adjust the momentum tween.\n    updateClamps();\n\n    if (tween.isActive() && tween.vars.scrollY > maxY) {\n      scrollFuncY() > maxY ? tween.progress(1) && scrollFuncY(maxY) : tween.resetTo(\"scrollY\", maxY);\n    }\n  };\n\n  content && ScrollTrigger_gsap.set(content, {\n    y: \"+=0\"\n  }); // to ensure there's a cache (element._gsap)\n\n  vars.ignoreCheck = function (e) {\n    return _fixIOSBug && e.type === \"touchmove\" && ignoreDrag(e) || scale > 1.05 && e.type !== \"touchstart\" || self.isGesturing || e.touches && e.touches.length > 1;\n  };\n\n  vars.onPress = function () {\n    skipTouchMove = false;\n    var prevScale = scale;\n    scale = ScrollTrigger_round((ScrollTrigger_win.visualViewport && ScrollTrigger_win.visualViewport.scale || 1) / initialScale);\n    tween.pause();\n    prevScale !== scale && _allowNativePanning(target, scale > 1.01 ? true : normalizeScrollX ? false : \"x\");\n    startScrollX = scrollFuncX();\n    startScrollY = scrollFuncY();\n    updateClamps();\n    lastRefreshID = _refreshID;\n  };\n\n  vars.onRelease = vars.onGestureStart = function (self, wasDragging) {\n    scrollFuncY.offset && removeContentOffset();\n\n    if (!wasDragging) {\n      onStopDelayedCall.restart(true);\n    } else {\n      _scrollers.cache++; // make sure we're pulling the non-cached value\n      // alternate algorithm: durX = Math.min(6, Math.abs(self.velocityX / 800)),\tdur = Math.max(durX, Math.min(6, Math.abs(self.velocityY / 800))); dur = dur * (0.4 + (1 - _power4In(dur / 6)) * 0.6)) * (momentumSpeed || 1)\n\n      var dur = resolveMomentumDuration(),\n          currentScroll,\n          endScroll;\n\n      if (normalizeScrollX) {\n        currentScroll = scrollFuncX();\n        endScroll = currentScroll + dur * 0.05 * -self.velocityX / 0.227; // the constant .227 is from power4(0.05). velocity is inverted because scrolling goes in the opposite direction.\n\n        dur *= _clampScrollAndGetDurationMultiplier(scrollFuncX, currentScroll, endScroll, _maxScroll(target, _horizontal));\n        tween.vars.scrollX = scrollClampX(endScroll);\n      }\n\n      currentScroll = scrollFuncY();\n      endScroll = currentScroll + dur * 0.05 * -self.velocityY / 0.227; // the constant .227 is from power4(0.05)\n\n      dur *= _clampScrollAndGetDurationMultiplier(scrollFuncY, currentScroll, endScroll, _maxScroll(target, _vertical));\n      tween.vars.scrollY = scrollClampY(endScroll);\n      tween.invalidate().duration(dur).play(0.01);\n\n      if (_fixIOSBug && tween.vars.scrollY >= maxY || currentScroll >= maxY - 1) {\n        // iOS bug: it'll show the address bar but NOT fire the window \"resize\" event until the animation is done but we must protect against overshoot so we leverage an onUpdate to do so.\n        ScrollTrigger_gsap.to({}, {\n          onUpdate: onResize,\n          duration: dur\n        });\n      }\n    }\n\n    onRelease && onRelease(self);\n  };\n\n  vars.onWheel = function () {\n    tween._ts && tween.pause();\n\n    if (ScrollTrigger_getTime() - wheelRefresh > 1000) {\n      // after 1 second, refresh the clamps otherwise that'll only happen when ScrollTrigger.refresh() is called or for touch-scrolling.\n      lastRefreshID = 0;\n      wheelRefresh = ScrollTrigger_getTime();\n    }\n  };\n\n  vars.onChange = function (self, dx, dy, xArray, yArray) {\n    _refreshID !== lastRefreshID && updateClamps();\n    dx && normalizeScrollX && scrollFuncX(scrollClampX(xArray[2] === dx ? startScrollX + (self.startX - self.x) : scrollFuncX() + dx - xArray[1])); // for more precision, we track pointer/touch movement from the start, otherwise it'll drift.\n\n    if (dy) {\n      scrollFuncY.offset && removeContentOffset();\n      var isTouch = yArray[2] === dy,\n          y = isTouch ? startScrollY + self.startY - self.y : scrollFuncY() + dy - yArray[1],\n          yClamped = scrollClampY(y);\n      isTouch && y !== yClamped && (startScrollY += yClamped - y);\n      scrollFuncY(yClamped);\n    }\n\n    (dy || dx) && _updateAll();\n  };\n\n  vars.onEnable = function () {\n    _allowNativePanning(target, normalizeScrollX ? false : \"x\");\n\n    ScrollTrigger_ScrollTrigger.addEventListener(\"refresh\", onResize);\n\n    ScrollTrigger_addListener(ScrollTrigger_win, \"resize\", onResize);\n\n    if (scrollFuncY.smooth) {\n      scrollFuncY.target.style.scrollBehavior = \"auto\";\n      scrollFuncY.smooth = scrollFuncX.smooth = false;\n    }\n\n    inputObserver.enable();\n  };\n\n  vars.onDisable = function () {\n    _allowNativePanning(target, true);\n\n    ScrollTrigger_removeListener(ScrollTrigger_win, \"resize\", onResize);\n\n    ScrollTrigger_ScrollTrigger.removeEventListener(\"refresh\", onResize);\n    inputObserver.kill();\n  };\n\n  vars.lockAxis = vars.lockAxis !== false;\n  self = new Observer(vars);\n  self.iOS = _fixIOSBug; // used in the Observer getCachedScroll() function to work around an iOS bug that wreaks havoc with TouchEvent.clientY if we allow scroll to go all the way back to 0.\n\n  _fixIOSBug && !scrollFuncY() && scrollFuncY(1); // iOS bug causes event.clientY values to freak out (wildly inaccurate) if the scroll position is exactly 0.\n\n  _fixIOSBug && ScrollTrigger_gsap.ticker.add(ScrollTrigger_passThrough); // prevent the ticker from sleeping\n\n  onStopDelayedCall = self._dc;\n  tween = ScrollTrigger_gsap.to(self, {\n    ease: \"power4\",\n    paused: true,\n    inherit: false,\n    scrollX: normalizeScrollX ? \"+=0.1\" : \"+=0\",\n    scrollY: \"+=0.1\",\n    modifiers: {\n      scrollY: _interruptionTracker(scrollFuncY, scrollFuncY(), function () {\n        return tween.pause();\n      })\n    },\n    onUpdate: _updateAll,\n    onComplete: onStopDelayedCall.vars.onComplete\n  }); // we need the modifier to sense if the scroll position is altered outside of the momentum tween (like with a scrollTo tween) so we can pause() it to prevent conflicts.\n\n  return self;\n};\n\nScrollTrigger_ScrollTrigger.sort = function (func) {\n  if (ScrollTrigger_isFunction(func)) {\n    return _triggers.sort(func);\n  }\n\n  var scroll = ScrollTrigger_win.pageYOffset || 0;\n  ScrollTrigger_ScrollTrigger.getAll().forEach(function (t) {\n    return t._sortY = t.trigger ? scroll + t.trigger.getBoundingClientRect().top : t.start + ScrollTrigger_win.innerHeight;\n  });\n  return _triggers.sort(func || function (a, b) {\n    return (a.vars.refreshPriority || 0) * -1e6 + (a.vars.containerAnimation ? 1e6 : a._sortY) - ((b.vars.containerAnimation ? 1e6 : b._sortY) + (b.vars.refreshPriority || 0) * -1e6);\n  }); // anything with a containerAnimation should refresh last.\n};\n\nScrollTrigger_ScrollTrigger.observe = function (vars) {\n  return new Observer(vars);\n};\n\nScrollTrigger_ScrollTrigger.normalizeScroll = function (vars) {\n  if (typeof vars === \"undefined\") {\n    return ScrollTrigger_normalizer;\n  }\n\n  if (vars === true && ScrollTrigger_normalizer) {\n    return ScrollTrigger_normalizer.enable();\n  }\n\n  if (vars === false) {\n    ScrollTrigger_normalizer && ScrollTrigger_normalizer.kill();\n    ScrollTrigger_normalizer = vars;\n    return;\n  }\n\n  var normalizer = vars instanceof Observer ? vars : _getScrollNormalizer(vars);\n  ScrollTrigger_normalizer && ScrollTrigger_normalizer.target === normalizer.target && ScrollTrigger_normalizer.kill();\n  ScrollTrigger_isViewport(normalizer.target) && (ScrollTrigger_normalizer = normalizer);\n  return normalizer;\n};\n\nScrollTrigger_ScrollTrigger.core = {\n  // smaller file size way to leverage in ScrollSmoother and Observer\n  _getVelocityProp: _getVelocityProp,\n  _inputObserver: _inputObserver,\n  _scrollers: _scrollers,\n  _proxies: _proxies,\n  bridge: {\n    // when normalizeScroll sets the scroll position (ss = setScroll)\n    ss: function ss() {\n      _lastScrollTime || ScrollTrigger_dispatch(\"scrollStart\");\n      _lastScrollTime = ScrollTrigger_getTime();\n    },\n    // a way to get the _refreshing value in Observer\n    ref: function ref() {\n      return _refreshing;\n    }\n  }\n};\nScrollTrigger_getGSAP() && ScrollTrigger_gsap.registerPlugin(ScrollTrigger_ScrollTrigger);\n\n// EXTERNAL MODULE: ./node_modules/splitting/dist/splitting.js\nvar splitting = __webpack_require__(\"./node_modules/splitting/dist/splitting.js\");\nvar splitting_default = /*#__PURE__*/__webpack_require__.n(splitting);\n;// ./node_modules/@studio-freight/lenis/dist/lenis.mjs\nfunction lenis_t(t,e,i){return Math.max(t,Math.min(e,i))}class Animate{advance(e){if(!this.isRunning)return;let i=!1;if(this.lerp)this.value=(s=this.value,o=this.to,n=60*this.lerp,r=e,function(t,e,i){return(1-i)*t+i*e}(s,o,1-Math.exp(-n*r))),Math.round(this.value)===this.to&&(this.value=this.to,i=!0);else{this.currentTime+=e;const s=lenis_t(0,this.currentTime/this.duration,1);i=s>=1;const o=i?1:this.easing(s);this.value=this.from+(this.to-this.from)*o}var s,o,n,r;this.onUpdate?.(this.value,i),i&&this.stop()}stop(){this.isRunning=!1}fromTo(t,e,{lerp:i=.1,duration:s=1,easing:o=(t=>t),onStart:n,onUpdate:r}){this.from=this.value=t,this.to=e,this.lerp=i,this.duration=s,this.easing=o,this.currentTime=0,this.isRunning=!0,n?.(),this.onUpdate=r}}class Dimensions{constructor({wrapper:t,content:e,autoResize:i=!0,debounce:s=250}={}){this.wrapper=t,this.content=e,i&&(this.debouncedResize=function(t,e){let i;return function(){let s=arguments,o=this;clearTimeout(i),i=setTimeout((function(){t.apply(o,s)}),e)}}(this.resize,s),this.wrapper===window?window.addEventListener(\"resize\",this.debouncedResize,!1):(this.wrapperResizeObserver=new ResizeObserver(this.debouncedResize),this.wrapperResizeObserver.observe(this.wrapper)),this.contentResizeObserver=new ResizeObserver(this.debouncedResize),this.contentResizeObserver.observe(this.content)),this.resize()}destroy(){this.wrapperResizeObserver?.disconnect(),this.contentResizeObserver?.disconnect(),window.removeEventListener(\"resize\",this.debouncedResize,!1)}resize=()=>{this.onWrapperResize(),this.onContentResize()};onWrapperResize=()=>{this.wrapper===window?(this.width=window.innerWidth,this.height=window.innerHeight):(this.width=this.wrapper.clientWidth,this.height=this.wrapper.clientHeight)};onContentResize=()=>{this.wrapper===window?(this.scrollHeight=this.content.scrollHeight,this.scrollWidth=this.content.scrollWidth):(this.scrollHeight=this.wrapper.scrollHeight,this.scrollWidth=this.wrapper.scrollWidth)};get limit(){return{x:this.scrollWidth-this.width,y:this.scrollHeight-this.height}}}class Emitter{constructor(){this.events={}}emit(t,...e){let i=this.events[t]||[];for(let t=0,s=i.length;t<s;t++)i[t](...e)}on(t,e){return this.events[t]?.push(e)||(this.events[t]=[e]),()=>{this.events[t]=this.events[t]?.filter((t=>e!==t))}}off(t,e){this.events[t]=this.events[t]?.filter((t=>e!==t))}destroy(){this.events={}}}const lenis_e=100/6;class VirtualScroll{constructor(t,{wheelMultiplier:e=1,touchMultiplier:i=1}){this.element=t,this.wheelMultiplier=e,this.touchMultiplier=i,this.touchStart={x:null,y:null},this.emitter=new Emitter,window.addEventListener(\"resize\",this.onWindowResize,!1),this.onWindowResize(),this.element.addEventListener(\"wheel\",this.onWheel,{passive:!1}),this.element.addEventListener(\"touchstart\",this.onTouchStart,{passive:!1}),this.element.addEventListener(\"touchmove\",this.onTouchMove,{passive:!1}),this.element.addEventListener(\"touchend\",this.onTouchEnd,{passive:!1})}on(t,e){return this.emitter.on(t,e)}destroy(){this.emitter.destroy(),window.removeEventListener(\"resize\",this.onWindowResize,!1),this.element.removeEventListener(\"wheel\",this.onWheel,{passive:!1}),this.element.removeEventListener(\"touchstart\",this.onTouchStart,{passive:!1}),this.element.removeEventListener(\"touchmove\",this.onTouchMove,{passive:!1}),this.element.removeEventListener(\"touchend\",this.onTouchEnd,{passive:!1})}onTouchStart=t=>{const{clientX:e,clientY:i}=t.targetTouches?t.targetTouches[0]:t;this.touchStart.x=e,this.touchStart.y=i,this.lastDelta={x:0,y:0},this.emitter.emit(\"scroll\",{deltaX:0,deltaY:0,event:t})};onTouchMove=t=>{const{clientX:e,clientY:i}=t.targetTouches?t.targetTouches[0]:t,s=-(e-this.touchStart.x)*this.touchMultiplier,o=-(i-this.touchStart.y)*this.touchMultiplier;this.touchStart.x=e,this.touchStart.y=i,this.lastDelta={x:s,y:o},this.emitter.emit(\"scroll\",{deltaX:s,deltaY:o,event:t})};onTouchEnd=t=>{this.emitter.emit(\"scroll\",{deltaX:this.lastDelta.x,deltaY:this.lastDelta.y,event:t})};onWheel=t=>{let{deltaX:i,deltaY:s,deltaMode:o}=t;i*=1===o?lenis_e:2===o?this.windowWidth:1,s*=1===o?lenis_e:2===o?this.windowHeight:1,i*=this.wheelMultiplier,s*=this.wheelMultiplier,this.emitter.emit(\"scroll\",{deltaX:i,deltaY:s,event:t})};onWindowResize=()=>{this.windowWidth=window.innerWidth,this.windowHeight=window.innerHeight}}class Lenis{constructor({wrapper:t=window,content:e=document.documentElement,wheelEventsTarget:i=t,eventsTarget:s=i,smoothWheel:o=!0,syncTouch:n=!1,syncTouchLerp:r=.075,touchInertiaMultiplier:l=35,duration:h,easing:a=(t=>Math.min(1,1.001-Math.pow(2,-10*t))),lerp:c=!h&&.1,infinite:d=!1,orientation:p=\"vertical\",gestureOrientation:u=\"vertical\",touchMultiplier:m=1,wheelMultiplier:v=1,autoResize:g=!0,__experimental__naiveDimensions:S=!1}={}){this.__isSmooth=!1,this.__isScrolling=!1,this.__isStopped=!1,this.__isLocked=!1,this.onVirtualScroll=({deltaX:t,deltaY:e,event:i})=>{if(i.ctrlKey)return;const s=i.type.includes(\"touch\"),o=i.type.includes(\"wheel\");if(this.options.syncTouch&&s&&\"touchstart\"===i.type&&!this.isStopped&&!this.isLocked)return void this.reset();const n=0===t&&0===e,r=\"vertical\"===this.options.gestureOrientation&&0===e||\"horizontal\"===this.options.gestureOrientation&&0===t;if(n||r)return;let l=i.composedPath();if(l=l.slice(0,l.indexOf(this.rootElement)),l.find((t=>{var e,i,n,r,l;return(null===(e=t.hasAttribute)||void 0===e?void 0:e.call(t,\"data-lenis-prevent\"))||s&&(null===(i=t.hasAttribute)||void 0===i?void 0:i.call(t,\"data-lenis-prevent-touch\"))||o&&(null===(n=t.hasAttribute)||void 0===n?void 0:n.call(t,\"data-lenis-prevent-wheel\"))||(null===(r=t.classList)||void 0===r?void 0:r.contains(\"lenis\"))&&!(null===(l=t.classList)||void 0===l?void 0:l.contains(\"lenis-stopped\"))})))return;if(this.isStopped||this.isLocked)return void i.preventDefault();if(this.isSmooth=this.options.syncTouch&&s||this.options.smoothWheel&&o,!this.isSmooth)return this.isScrolling=!1,void this.animate.stop();i.preventDefault();let h=e;\"both\"===this.options.gestureOrientation?h=Math.abs(e)>Math.abs(t)?e:t:\"horizontal\"===this.options.gestureOrientation&&(h=t);const a=s&&this.options.syncTouch,c=s&&\"touchend\"===i.type&&Math.abs(h)>5;c&&(h=this.velocity*this.options.touchInertiaMultiplier),this.scrollTo(this.targetScroll+h,Object.assign({programmatic:!1},a?{lerp:c?this.options.syncTouchLerp:1}:{lerp:this.options.lerp,duration:this.options.duration,easing:this.options.easing}))},this.onNativeScroll=()=>{if(!this.__preventNextScrollEvent&&!this.isScrolling){const t=this.animatedScroll;this.animatedScroll=this.targetScroll=this.actualScroll,this.velocity=0,this.direction=Math.sign(this.animatedScroll-t),this.emit()}},window.lenisVersion=\"1.0.42\",t!==document.documentElement&&t!==document.body||(t=window),this.options={wrapper:t,content:e,wheelEventsTarget:i,eventsTarget:s,smoothWheel:o,syncTouch:n,syncTouchLerp:r,touchInertiaMultiplier:l,duration:h,easing:a,lerp:c,infinite:d,gestureOrientation:u,orientation:p,touchMultiplier:m,wheelMultiplier:v,autoResize:g,__experimental__naiveDimensions:S},this.animate=new Animate,this.emitter=new Emitter,this.dimensions=new Dimensions({wrapper:t,content:e,autoResize:g}),this.toggleClassName(\"lenis\",!0),this.velocity=0,this.isLocked=!1,this.isStopped=!1,this.isSmooth=n||o,this.isScrolling=!1,this.targetScroll=this.animatedScroll=this.actualScroll,this.options.wrapper.addEventListener(\"scroll\",this.onNativeScroll,!1),this.virtualScroll=new VirtualScroll(s,{touchMultiplier:m,wheelMultiplier:v}),this.virtualScroll.on(\"scroll\",this.onVirtualScroll)}destroy(){this.emitter.destroy(),this.options.wrapper.removeEventListener(\"scroll\",this.onNativeScroll,!1),this.virtualScroll.destroy(),this.dimensions.destroy(),this.toggleClassName(\"lenis\",!1),this.toggleClassName(\"lenis-smooth\",!1),this.toggleClassName(\"lenis-scrolling\",!1),this.toggleClassName(\"lenis-stopped\",!1),this.toggleClassName(\"lenis-locked\",!1)}on(t,e){return this.emitter.on(t,e)}off(t,e){return this.emitter.off(t,e)}setScroll(t){this.isHorizontal?this.rootElement.scrollLeft=t:this.rootElement.scrollTop=t}resize(){this.dimensions.resize()}emit(){this.emitter.emit(\"scroll\",this)}reset(){this.isLocked=!1,this.isScrolling=!1,this.animatedScroll=this.targetScroll=this.actualScroll,this.velocity=0,this.animate.stop()}start(){this.isStopped&&(this.isStopped=!1,this.reset())}stop(){this.isStopped||(this.isStopped=!0,this.animate.stop(),this.reset())}raf(t){const e=t-(this.time||t);this.time=t,this.animate.advance(.001*e)}scrollTo(e,{offset:i=0,immediate:s=!1,lock:o=!1,duration:n=this.options.duration,easing:r=this.options.easing,lerp:l=!n&&this.options.lerp,onComplete:h,force:a=!1,programmatic:c=!0}={}){if(!this.isStopped&&!this.isLocked||a){if([\"top\",\"left\",\"start\"].includes(e))e=0;else if([\"bottom\",\"right\",\"end\"].includes(e))e=this.limit;else{let t;if(\"string\"==typeof e?t=document.querySelector(e):(null==e?void 0:e.nodeType)&&(t=e),t){if(this.options.wrapper!==window){const t=this.options.wrapper.getBoundingClientRect();i-=this.isHorizontal?t.left:t.top}const s=t.getBoundingClientRect();e=(this.isHorizontal?s.left:s.top)+this.animatedScroll}}if(\"number\"==typeof e){if(e+=i,e=Math.round(e),this.options.infinite?c&&(this.targetScroll=this.animatedScroll=this.scroll):e=lenis_t(0,e,this.limit),s)return this.animatedScroll=this.targetScroll=e,this.setScroll(this.scroll),this.reset(),void(null==h||h(this));if(!c){if(e===this.targetScroll)return;this.targetScroll=e}this.animate.fromTo(this.animatedScroll,e,{duration:n,easing:r,lerp:l,onStart:()=>{o&&(this.isLocked=!0),this.isScrolling=!0},onUpdate:(t,e)=>{this.isScrolling=!0,this.velocity=t-this.animatedScroll,this.direction=Math.sign(this.velocity),this.animatedScroll=t,this.setScroll(this.scroll),c&&(this.targetScroll=t),e||this.emit(),e&&(this.reset(),this.emit(),null==h||h(this),this.__preventNextScrollEvent=!0,requestAnimationFrame((()=>{delete this.__preventNextScrollEvent})))}})}}}get rootElement(){return this.options.wrapper===window?document.documentElement:this.options.wrapper}get limit(){return this.options.__experimental__naiveDimensions?this.isHorizontal?this.rootElement.scrollWidth-this.rootElement.clientWidth:this.rootElement.scrollHeight-this.rootElement.clientHeight:this.dimensions.limit[this.isHorizontal?\"x\":\"y\"]}get isHorizontal(){return\"horizontal\"===this.options.orientation}get actualScroll(){return this.isHorizontal?this.rootElement.scrollLeft:this.rootElement.scrollTop}get scroll(){return this.options.infinite?(t=this.animatedScroll,e=this.limit,(t%e+e)%e):this.animatedScroll;// removed by dead control flow\n var t, e; }get progress(){return 0===this.limit?1:this.scroll/this.limit}get isSmooth(){return this.__isSmooth}set isSmooth(t){this.__isSmooth!==t&&(this.__isSmooth=t,this.toggleClassName(\"lenis-smooth\",t))}get isScrolling(){return this.__isScrolling}set isScrolling(t){this.__isScrolling!==t&&(this.__isScrolling=t,this.toggleClassName(\"lenis-scrolling\",t))}get isStopped(){return this.__isStopped}set isStopped(t){this.__isStopped!==t&&(this.__isStopped=t,this.toggleClassName(\"lenis-stopped\",t))}get isLocked(){return this.__isLocked}set isLocked(t){this.__isLocked!==t&&(this.__isLocked=t,this.toggleClassName(\"lenis-locked\",t))}get className(){let t=\"lenis\";return this.isStopped&&(t+=\" lenis-stopped\"),this.isLocked&&(t+=\" lenis-locked\"),this.isScrolling&&(t+=\" lenis-scrolling\"),this.isSmooth&&(t+=\" lenis-smooth\"),t}toggleClassName(t,e){this.rootElement.classList.toggle(t,e),this.emitter.emit(\"className change\",this)}}\n//# sourceMappingURL=lenis.mjs.map\n\n;// ./node_modules/splitting/dist/splitting.css\n// extracted by mini-css-extract-plugin\n\n;// ./node_modules/@gsap/react/src/index.js\n/*!\n * @gsap/react 2.1.2\n * https://gsap.com\n *\n * Copyright 2008-2025, GreenSock. All rights reserved.\n * Subject to the terms at https://gsap.com/standard-license or for\n * Club GSAP members, the agreement issued with that membership.\n * @author: Jack Doyle, jack@greensock.com\n*/\n/* eslint-disable */\n\n\n\nlet useIsomorphicLayoutEffect = typeof document !== \"undefined\" ? external_vendor_React_.useLayoutEffect : external_vendor_React_.useEffect,\n    isConfig = value => value && !Array.isArray(value) && typeof(value) === \"object\",\n    emptyArray = [],\n    defaultConfig = {},\n    src_gsap = gsapWithCSS; // accommodates situations where different versions of GSAP may be loaded, so a user can gsap.registerPlugin(useGSAP);\n\nconst useGSAP = (callback, dependencies = emptyArray) => {\n  let config = defaultConfig;\n  if (isConfig(callback)) {\n    config = callback;\n    callback = null;\n    dependencies = \"dependencies\" in config ? config.dependencies : emptyArray;\n  } else if (isConfig(dependencies)) {\n    config = dependencies;\n    dependencies = \"dependencies\" in config ? config.dependencies : emptyArray;\n  }\n  (callback && typeof callback !== \"function\") && console.warn(\"First parameter must be a function or config object\");\n  const { scope, revertOnUpdate } = config,\n        mounted = (0,external_vendor_React_.useRef)(false),\n        context = (0,external_vendor_React_.useRef)(src_gsap.context(() => { }, scope)),\n        contextSafe = (0,external_vendor_React_.useRef)((func) => context.current.add(null, func)),\n        deferCleanup = dependencies && dependencies.length && !revertOnUpdate;\n  deferCleanup && useIsomorphicLayoutEffect(() => {\n    mounted.current = true;\n    return () => context.current.revert();\n  }, emptyArray);\n  useIsomorphicLayoutEffect(() => {\n    callback && context.current.add(callback, scope);\n    if (!deferCleanup || !mounted.current) { // React renders bottom-up, thus there could be hooks with dependencies that run BEFORE the component mounts, thus cleanup wouldn't occur since a hook with an empty dependency Array would only run once the component mounts.\n      return () => context.current.revert();\n    }\n  }, dependencies);\n  return { context: context.current, contextSafe: contextSafe.current };\n};\nuseGSAP.register = core => { src_gsap = core; };\nuseGSAP.headless = true; // doesn't require the window to be registered.\n\n;// ./packages/module-library/on-scroll-header-animation/edit.js\n\n\n\n\n\n\n\n// Divi package dependencies.\n\n\n\n\n// Custom dependencies.\n\ngsapWithCSS.registerPlugin(ScrollTrigger_ScrollTrigger);\n\n// Array of characters for scramble effect\nconst lettersAndSymbols = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '!', '@', '#', '$', '%', '^', '&', '*', '-', '_', '+', '=', ';', ':', '<', '>', ','];\n\n// Utility function to wrap elements\nconst wrapElements = (elements, wrapType, wrapClass) => {\n  elements.forEach(el => {\n    const wrapEl = document.createElement(wrapType);\n    wrapEl.classList.add(wrapClass);\n    el.parentNode.insertBefore(wrapEl, el);\n    wrapEl.appendChild(el);\n  });\n};\n\n/**\n * Normalize Divi Range innerContent (string, number, or { value, unit }) to a percent string.\n *\n * @param {unknown} raw getAttrByMode(…) result for a Range field.\n * @return {string} e.g. \"75%\" or \"\" if unknown.\n */\nconst normalizeRangeAttrToPercentString = raw => {\n  if (raw == null) {\n    return '';\n  }\n  if (typeof raw === 'number') {\n    return String(raw);\n  }\n  if (typeof raw === 'string') {\n    return raw;\n  }\n  if (typeof raw === 'object') {\n    // Divi Range desktop/tablet/phone value: { number, unit }.\n    if (raw.number !== undefined && raw.number !== null) {\n      const unit = raw.unit != null && String(raw.unit) !== '' ? String(raw.unit) : '%';\n      return `${raw.number}${unit}`;\n    }\n    if (typeof raw.value === 'string' || typeof raw.value === 'number') {\n      const unit = typeof raw.unit === 'string' && raw.unit !== '' ? raw.unit : '%';\n      return typeof raw.value === 'number' ? `${raw.value}${unit}` : raw.value;\n    }\n    if (raw.value && typeof raw.value === 'object' && (raw.value.number !== undefined || raw.value.value !== undefined)) {\n      var _raw$value$number;\n      const num = (_raw$value$number = raw.value.number) !== null && _raw$value$number !== void 0 ? _raw$value$number : raw.value.value;\n      const unit = raw.value.unit != null ? String(raw.value.unit) : '%';\n      return `${num}${unit}`;\n    }\n  }\n  return '';\n};\n\n/**\n * Parse Content → “Animation start (viewport)” into 0–100 (ScrollTrigger scroller % from top).\n *\n * @param {unknown} raw Normalized percent string or value from normalizeRangeAttrToPercentString.\n * @return {number} Clamped viewport percentage.\n */\nconst parseViewportStartPercent = raw => {\n  const n = parseFloat(String(raw !== null && raw !== void 0 ? raw : '').replace(/%/g, ''));\n  if (!Number.isFinite(n)) {\n    return 100;\n  }\n  return Math.min(100, Math.max(0, n));\n};\n\n/**\n * Keep the trigger edge from GSAP’s original start string; set the scroller line to viewportPercent.\n *\n * @param {string} startStr e.g. \"top bottom\", \"center+=20% bottom\".\n * @param {number} viewportPercent 0–100.\n * @return {string} ScrollTrigger start value.\n */\nconst applyScrollStartViewportPercent = (startStr, viewportPercent) => {\n  const p = Number.isFinite(viewportPercent) ? Math.min(100, Math.max(0, viewportPercent)) : 100;\n  const trimmed = String(startStr).trim();\n  const i = trimmed.indexOf(' ');\n  if (i === -1) {\n    return trimmed;\n  }\n  return `${trimmed.slice(0, i)} ${p}%`;\n};\n\n/**\n * React function component for registering module script data.\n */\nconst on_scroll_header_animation_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nconst DEFAULT_ANIMATION_EFFECT = 'twist_reveal';\nconst VALID_TITLE_HEADING_TAGS = new Set(['h1', 'h2', 'h3', 'h4', 'h5', 'h6']);\n\n/**\n * Heading tag for the title element (Font group → heading level).\n *\n * @param {Object|undefined} attrs Module attrs.\n * @return {string} Lowercase h1–h6.\n */\nconst getTitleHeadingLevel = attrs => {\n  const fontValue = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.title?.decoration?.font?.font);\n  const raw = fontValue && typeof fontValue === 'object' && fontValue.headingLevel || attrs?.title?.decoration?.font?.font?.desktop?.value?.headingLevel || 'h3';\n  const normalized = String(raw).toLowerCase();\n  return VALID_TITLE_HEADING_TAGS.has(normalized) ? normalized : 'h3';\n};\n\n/**\n * Raw Range value for animation start (getAttrByMode + breakpoint fallbacks).\n *\n * @param {Object|undefined} attrs Module attrs.\n * @return {unknown} Value passed to normalizeRangeAttrToPercentString.\n */\nconst getAnimationStartOffsetRaw = attrs => {\n  try {\n    var _ref, _ref2, _inner$desktop$value;\n    const inner = attrs?.animation_start_offset?.innerContent;\n    if (inner == null) {\n      return '';\n    }\n    if (typeof inner !== 'object') {\n      return inner;\n    }\n    let byMode;\n    try {\n      byMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(inner);\n    } catch {\n      byMode = undefined;\n    }\n    if (byMode != null && byMode !== '') {\n      return byMode;\n    }\n    return (_ref = (_ref2 = (_inner$desktop$value = inner.desktop?.value) !== null && _inner$desktop$value !== void 0 ? _inner$desktop$value : inner.tablet?.value) !== null && _ref2 !== void 0 ? _ref2 : inner.phone?.value) !== null && _ref !== void 0 ? _ref : '';\n  } catch {\n    return '';\n  }\n};\n\n/**\n * Stable string for deps/key; never throws (VB may pass circular or non-JSON-safe attrs mid-update).\n *\n * @param {Object|undefined} attrs Module attrs.\n * @return {string}\n */\nconst getAnimationStartInnerContentKey = attrs => {\n  try {\n    var _attrs$animation_star;\n    return JSON.stringify((_attrs$animation_star = attrs?.animation_start_offset?.innerContent) !== null && _attrs$animation_star !== void 0 ? _attrs$animation_star : null);\n  } catch {\n    return '';\n  }\n};\nfunction on_scroll_header_animation_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  const wrapperRef = (0,external_vendor_React_.useRef)(null);\n  const lenisRef = (0,external_vendor_React_.useRef)(null);\n  const animationEffect = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.animation_effect?.innerContent) || DEFAULT_ANIMATION_EFFECT;\n  const title = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.title?.innerContent);\n  const titleHeadingLevel = getTitleHeadingLevel(attrs);\n  // Serialize innerContent so useGSAP reruns whenever the VB store updates the range\n  // (getAttrByMode alone can miss Divi’s { number, unit } shape).\n  const animationStartStoreKey = getAnimationStartInnerContentKey(attrs);\n  // Debounce: dragging emits many commits/sec; revertOnUpdate + Splitting is expensive.\n  const [animationStartDepKey, setAnimationStartDepKey] = (0,external_vendor_React_.useState)(animationStartStoreKey);\n  (0,external_vendor_React_.useEffect)(() => {\n    const id = window.setTimeout(() => {\n      setAnimationStartDepKey(animationStartStoreKey);\n    }, 120);\n    return () => window.clearTimeout(id);\n  }, [animationStartStoreKey]);\n\n  // Lenis + virtual scroll fight the Visual Builder canvas iframe and break ScrollTrigger on first paint.\n  // Match FE only on the real front end (top window); iframe uses native scroll + ScrollTrigger.\n  (0,external_vendor_React_.useEffect)(() => {\n    const skipLenis = typeof window !== 'undefined' && window.self !== window.top;\n    if (skipLenis) {\n      return undefined;\n    }\n    lenisRef.current = new Lenis({\n      duration: 1.2,\n      easing: t => Math.min(1, 1.001 - Math.pow(2, -10 * t)),\n      orientation: 'vertical',\n      gestureOrientation: 'vertical',\n      smoothWheel: true,\n      wheelMultiplier: 1,\n      smoothTouch: false,\n      touchMultiplier: 2,\n      infinite: false\n    });\n    lenisRef.current.on('scroll', ScrollTrigger_ScrollTrigger.update);\n    const onTick = time => {\n      lenisRef.current?.raf(time * 1000);\n    };\n    gsapWithCSS.ticker.add(onTick);\n    gsapWithCSS.ticker.lagSmoothing(0);\n    return () => {\n      gsapWithCSS.ticker.remove(onTick);\n      lenisRef.current?.destroy();\n      lenisRef.current = null;\n    };\n  }, []);\n  useGSAP(() => {\n    if (!wrapperRef.current || !title) {\n      return;\n    }\n\n    // Get title element\n    const titleElement = wrapperRef.current.querySelector('.dsm-title');\n    if (!titleElement) {\n      return;\n    }\n    const viewportPercent = parseViewportStartPercent(normalizeRangeAttrToPercentString(getAnimationStartOffsetRaw(attrs)));\n    const vStart = s => applyScrollStartViewportPercent(s, viewportPercent);\n\n    // Clear any existing Splitting data\n    titleElement.removeAttribute('data-splitting');\n    titleElement.innerHTML = title;\n\n    // Small delay to ensure cleanup is complete\n    const rafId = requestAnimationFrame(() => {\n      // Initialize Splitting\n      const results = splitting_default()({\n        target: titleElement,\n        by: 'words',\n        whitespace: true\n      });\n      if (!results?.[0]) {\n        return;\n      }\n\n      // Get all words after splitting\n      const words = titleElement.querySelectorAll('.word');\n      if (!words.length) {\n        return;\n      }\n\n      // Process each word and split into characters\n      words.forEach((word, wordIndex) => {\n        word.setAttribute('data-word', word.textContent);\n        word.style.setProperty('--word-index', wordIndex);\n        const chars = word.textContent.split('').map((char, charIndex) => {\n          return `<span class=\"char\" data-char=\"${char}\" style=\"--char-index: ${charIndex};\">${char}</span>`;\n        }).join('');\n        word.innerHTML = chars;\n      });\n\n      // Get all characters for animation\n      const chars = titleElement.querySelectorAll('.char');\n      if (!chars.length) {\n        return;\n      }\n\n      // Reset any transforms on chars\n      gsapWithCSS.set(chars, {\n        clearProps: 'all'\n      });\n\n      // Apply animations based on effect\n      switch (animationEffect) {\n        case 'word_by_word_3d_reveal':\n          const words = [...titleElement.querySelectorAll('.word')];\n          for (const word of words) {\n            const chars = word.querySelectorAll('.char');\n            chars.forEach(char => gsapWithCSS.set(char.parentNode, {\n              perspective: 2000\n            }));\n            gsapWithCSS.fromTo(chars, {\n              'will-change': 'opacity, transform',\n              opacity: 0,\n              y: (position, _, arr) => -40 * Math.abs(position - arr.length / 2),\n              z: () => gsapWithCSS.utils.random(-1500, -600),\n              rotationX: () => gsapWithCSS.utils.random(-500, -200)\n            }, {\n              ease: 'power1.inOut',\n              opacity: 1,\n              y: 0,\n              z: 0,\n              rotationX: 0,\n              stagger: {\n                each: 0.06,\n                from: 'center'\n              },\n              scrollTrigger: {\n                trigger: word,\n                start: vStart('top bottom'),\n                end: 'top top+=45%',\n                scrub: true\n              }\n            });\n          }\n          break;\n        case 'random_flip_up_reveal':\n          chars.forEach(char => gsapWithCSS.set(char.parentNode, {\n            perspective: 1000\n          }));\n          gsapWithCSS.fromTo(chars, {\n            'will-change': 'opacity, transform',\n            transformOrigin: '50% 100%',\n            opacity: 0,\n            rotationX: 90\n          }, {\n            ease: 'power4',\n            opacity: 1,\n            stagger: {\n              each: 0.03,\n              from: 'random'\n            },\n            rotationX: 0,\n            scrollTrigger: {\n              trigger: titleElement,\n              start: vStart('center bottom'),\n              end: 'bottom top+=20%',\n              scrub: true\n            }\n          });\n          break;\n        case 'zoom_z_reveal':\n          chars.forEach(char => gsapWithCSS.set(char.parentNode, {\n            perspective: 1000\n          }));\n          gsapWithCSS.fromTo(chars, {\n            'will-change': 'opacity, transform',\n            opacity: 0.2,\n            z: -800\n          }, {\n            ease: 'back.out(1.2)',\n            opacity: 1,\n            z: 0,\n            stagger: 0.04,\n            scrollTrigger: {\n              trigger: titleElement,\n              start: vStart('top bottom'),\n              end: 'bottom top',\n              scrub: true\n            }\n          });\n          break;\n        case 'random_rotateX_reveal':\n          chars.forEach(char => gsapWithCSS.set(char.parentNode, {\n            perspective: 1000\n          }));\n          gsapWithCSS.fromTo(chars, {\n            'will-change': 'opacity, transform',\n            opacity: 0,\n            rotateX: () => gsapWithCSS.utils.random(-120, 120),\n            z: () => gsapWithCSS.utils.random(-200, 200)\n          }, {\n            ease: 'none',\n            opacity: 1,\n            rotateX: 0,\n            z: 0,\n            stagger: 0.02,\n            scrollTrigger: {\n              trigger: titleElement,\n              start: vStart('top bottom'),\n              end: 'bottom top+=30%',\n              scrub: true\n            }\n          });\n          break;\n        case 'rotate_fade':\n          gsapWithCSS.fromTo(titleElement, {\n            transformOrigin: '0% 50%',\n            rotate: 3\n          }, {\n            ease: 'none',\n            rotate: 0,\n            scrollTrigger: {\n              trigger: titleElement,\n              start: vStart('top bottom'),\n              end: 'top top',\n              scrub: true\n            }\n          });\n          gsapWithCSS.fromTo(titleElement.querySelectorAll('.word'), {\n            'will-change': 'opacity',\n            opacity: 0.1\n          }, {\n            ease: 'none',\n            opacity: 1,\n            stagger: 0.05,\n            scrollTrigger: {\n              trigger: titleElement,\n              start: vStart('top bottom-=20%'),\n              end: 'center top+=40%',\n              scrub: true\n            }\n          });\n          break;\n        case 'twist_reveal':\n          gsapWithCSS.fromTo(chars, {\n            'will-change': 'opacity, transform',\n            opacity: 0,\n            scale: 0.6,\n            rotationZ: () => gsapWithCSS.utils.random(-20, 20)\n          }, {\n            ease: 'power4',\n            opacity: 1,\n            scale: 1,\n            rotation: 0,\n            stagger: 0.4,\n            scrollTrigger: {\n              trigger: titleElement,\n              start: vStart('center+=20% bottom'),\n              end: '+=50%',\n              scrub: true\n            }\n          });\n          break;\n        case 'stretch_up':\n          gsapWithCSS.fromTo(chars, {\n            'will-change': 'opacity, transform',\n            opacity: 0,\n            yPercent: 120,\n            scaleY: 2.3,\n            scaleX: 0.7,\n            transformOrigin: '50% 0%'\n          }, {\n            duration: 1,\n            ease: 'back.inOut(2)',\n            opacity: 1,\n            yPercent: 0,\n            scaleY: 1,\n            scaleX: 1,\n            stagger: 0.03,\n            scrollTrigger: {\n              trigger: titleElement,\n              start: vStart('center bottom+=50%'),\n              end: 'bottom top+=40%',\n              scrub: true\n            }\n          });\n          break;\n        case 'stretch_down':\n          gsapWithCSS.fromTo(chars, {\n            'will-change': 'transform',\n            transformOrigin: '50% 0%',\n            scaleY: 0\n          }, {\n            ease: 'back',\n            opacity: 1,\n            scaleY: 1,\n            yPercent: 0,\n            stagger: 0.03,\n            scrollTrigger: {\n              trigger: titleElement,\n              start: vStart('center bottom-=5%'),\n              end: 'top top-=20%',\n              scrub: true\n            }\n          });\n          break;\n        case 'split_merge':\n          // Split by words first\n          const words4 = titleElement.querySelectorAll('.word');\n          words4.forEach(word => {\n            const chars = word.querySelectorAll('.char');\n            gsapWithCSS.fromTo(chars, {\n              'will-change': 'opacity, transform',\n              x: (position, _, arr) => 150 * (position - arr.length / 2)\n            }, {\n              ease: 'power1.inOut',\n              x: 0,\n              stagger: {\n                grid: 'auto',\n                from: 'center'\n              },\n              scrollTrigger: {\n                trigger: word,\n                start: vStart('center bottom+=30%'),\n                end: 'top top+=15%',\n                scrub: true\n              }\n            });\n          });\n          break;\n        case 'letter_cross_in':\n          gsapWithCSS.fromTo(chars, {\n            'will-change': 'opacity, transform',\n            opacity: 0,\n            xPercent: () => gsapWithCSS.utils.random(-200, 200),\n            yPercent: () => gsapWithCSS.utils.random(-150, 150)\n          }, {\n            ease: 'power1.inOut',\n            opacity: 1,\n            xPercent: 0,\n            yPercent: 0,\n            stagger: {\n              each: 0.05,\n              grid: 'auto',\n              from: 'random'\n            },\n            scrollTrigger: {\n              trigger: titleElement,\n              start: vStart('center bottom+=10%'),\n              end: 'bottom center',\n              scrub: 0.9,\n              toggleActions: 'play resume resume reset'\n            }\n          });\n          break;\n        case 'flip_rise':\n          // Set perspective on parent elements for 3D effect\n          chars.forEach(char => {\n            gsapWithCSS.set(char.parentNode, {\n              perspective: 2000,\n              transformStyle: 'preserve-3d'\n            });\n          });\n          gsapWithCSS.fromTo(chars, {\n            'will-change': 'opacity, transform',\n            opacity: 0,\n            rotationX: -90,\n            yPercent: 50\n          }, {\n            ease: 'power1.inOut',\n            opacity: 1,\n            rotationX: 0,\n            yPercent: 0,\n            stagger: {\n              each: 0.03,\n              from: 0\n            },\n            scrollTrigger: {\n              trigger: titleElement,\n              start: vStart('center bottom+=40%'),\n              end: 'bottom center-=30%',\n              scrub: 0.9,\n              toggleActions: 'play resume resume reset'\n            }\n          });\n          break;\n        case 'reverse_flip':\n          const words7 = titleElement.querySelectorAll('.word');\n          for (const word of words7) {\n            const wordChars = word.querySelectorAll('.char');\n            wordChars.forEach(char => gsapWithCSS.set(char.parentNode, {\n              perspective: 2000\n            }));\n            gsapWithCSS.fromTo(wordChars, {\n              'will-change': 'opacity, transform',\n              transformOrigin: '100% 50%',\n              opacity: 0,\n              rotationY: -90,\n              z: -300\n            }, {\n              ease: 'expo',\n              opacity: 1,\n              rotationY: 0,\n              z: 0,\n              stagger: {\n                each: 0.06,\n                from: 'end'\n              },\n              scrollTrigger: {\n                trigger: word,\n                start: vStart('bottom bottom+=20%'),\n                end: 'bottom top',\n                scrub: 1\n              }\n            });\n          }\n          break;\n        case 'shuffle_reveal':\n          const chars8 = chars;\n          chars8.forEach((char, position) => {\n            const initialHTML = char.innerHTML;\n            gsapWithCSS.fromTo(char, {\n              opacity: 0\n            }, {\n              duration: 0.03,\n              innerHTML: () => lettersAndSymbols[Math.floor(Math.random() * lettersAndSymbols.length)],\n              repeat: 1,\n              repeatRefresh: true,\n              opacity: 1,\n              repeatDelay: 0.03,\n              delay: (position + 1) * 0.18,\n              onComplete: () => gsapWithCSS.set(char, {\n                innerHTML: initialHTML,\n                delay: 0.03\n              }),\n              scrollTrigger: {\n                trigger: titleElement,\n                start: vStart('top bottom'),\n                end: 'bottom center',\n                toggleActions: 'play resume resume reset',\n                onEnter: () => gsapWithCSS.set(char, {\n                  opacity: 0\n                })\n              }\n            });\n          });\n          break;\n        case 'shrink_left_reveal':\n          // Split by words first\n          const words9 = titleElement.querySelectorAll('.word');\n          words9.forEach(word => {\n            const chars = word.querySelectorAll('.char');\n            gsapWithCSS.fromTo(chars, {\n              'will-change': 'transform',\n              scaleX: 0,\n              x: (_, target) => window.innerWidth / 2 - target.offsetLeft - target.offsetWidth / 2\n            }, {\n              ease: 'power1.inOut',\n              scaleX: 1,\n              x: 0,\n              scrollTrigger: {\n                trigger: word,\n                start: vStart('top bottom'),\n                end: 'top top',\n                scrub: true\n              }\n            });\n          });\n          break;\n        case 'random_blur_reveal':\n          gsapWithCSS.fromTo(chars, {\n            'will-change': 'opacity',\n            opacity: 0,\n            filter: 'blur(20px)'\n          }, {\n            duration: 0.25,\n            ease: 'power1.inOut',\n            opacity: 1,\n            filter: 'blur(0px)',\n            stagger: {\n              each: 0.05,\n              from: 'random'\n            },\n            scrollTrigger: {\n              trigger: titleElement,\n              start: vStart('top bottom'),\n              end: 'center center',\n              toggleActions: 'play resume resume reset'\n            }\n          });\n          break;\n        case 'slide_rush':\n          // First wrap each character in an additional wrapper\n          wrapElements(chars, 'span', 'char-wrap');\n          gsapWithCSS.fromTo(chars, {\n            'will-change': 'transform',\n            transformOrigin: '0% 50%',\n            xPercent: 105\n          }, {\n            duration: 1,\n            ease: 'expo',\n            xPercent: 0,\n            stagger: 0.042,\n            scrollTrigger: {\n              trigger: titleElement,\n              start: vStart('top bottom'),\n              end: 'top top+=10%',\n              toggleActions: 'play resume resume reset'\n            }\n          });\n          break;\n        case 'twist_lift':\n          // Set perspective on each character's parent\n          chars.forEach(char => gsapWithCSS.set(char.parentNode, {\n            perspective: 2000\n          }));\n          gsapWithCSS.fromTo(chars, {\n            'will-change': 'opacity, transform',\n            opacity: 0,\n            rotationY: 180,\n            xPercent: -40,\n            yPercent: 100\n          }, {\n            ease: 'power4.inOut()',\n            opacity: 1,\n            rotationY: 0,\n            xPercent: 0,\n            yPercent: 0,\n            stagger: {\n              each: -0.03,\n              from: 0\n            },\n            scrollTrigger: {\n              trigger: titleElement,\n              start: vStart('center bottom'),\n              end: 'bottom center-=30%',\n              scrub: 0.9\n            }\n          });\n          break;\n        case 'word_by_word_corner_scale':\n          const words13 = [...titleElement.querySelectorAll('.word')];\n          for (const [pos, word] of words13.entries()) {\n            const chars = word.querySelectorAll('.char');\n            gsapWithCSS.fromTo(chars, {\n              'will-change': 'transform',\n              transformOrigin: `${pos % 2 ? 0 : 100}% ${pos % 2 ? 100 : 0}%`,\n              scale: 0\n            }, {\n              ease: 'power4',\n              scale: 1,\n              stagger: {\n                each: 0.03,\n                from: pos % 2 ? 'end' : 'start'\n              },\n              scrollTrigger: {\n                trigger: word,\n                start: vStart('top bottom-=10%'),\n                end: 'top top',\n                scrub: true\n              }\n            });\n          }\n          break;\n        case 'character_wave':\n          const words12 = [...titleElement.querySelectorAll('.word')];\n          for (const word of words12) {\n            const chars = word.querySelectorAll('.char');\n            const charsTotal = chars.length;\n            gsapWithCSS.fromTo(chars, {\n              'will-change': 'transform, filter',\n              transformOrigin: '50% 100%',\n              scale: position => {\n                const factor = position < Math.ceil(charsTotal / 2) ? position : Math.ceil(charsTotal / 2) - Math.abs(Math.floor(charsTotal / 2) - position) - 1;\n                return gsapWithCSS.utils.mapRange(0, Math.ceil(charsTotal / 2), 0.5, 2.1, factor);\n              },\n              y: position => {\n                const factor = position < Math.ceil(charsTotal / 2) ? position : Math.ceil(charsTotal / 2) - Math.abs(Math.floor(charsTotal / 2) - position) - 1;\n                return gsapWithCSS.utils.mapRange(0, Math.ceil(charsTotal / 2), 0, 60, factor);\n              },\n              rotation: position => {\n                const factor = position < Math.ceil(charsTotal / 2) ? position : Math.ceil(charsTotal / 2) - Math.abs(Math.floor(charsTotal / 2) - position) - 1;\n                return position < charsTotal / 2 ? gsapWithCSS.utils.mapRange(0, Math.ceil(charsTotal / 2), -4, 0, factor) : gsapWithCSS.utils.mapRange(0, Math.ceil(charsTotal / 2), 0, 4, factor);\n              },\n              filter: 'blur(12px) opacity(0)'\n            }, {\n              ease: 'power2.inOut',\n              y: 0,\n              rotation: 0,\n              scale: 1,\n              filter: 'blur(0px) opacity(1)',\n              scrollTrigger: {\n                trigger: word,\n                start: vStart('top bottom+=40%'),\n                end: 'top top+=15%',\n                scrub: true\n              },\n              stagger: {\n                amount: 0.15,\n                from: 'center'\n              }\n            });\n          }\n          break;\n        case 'elastic_reveal':\n          const charsTotal = chars.length;\n          gsapWithCSS.fromTo(chars, {\n            'will-change': 'transform',\n            y: position => {\n              const factor = position < Math.ceil(charsTotal / 2) ? position : Math.ceil(charsTotal / 2) - Math.abs(Math.floor(charsTotal / 2) - position) - 1;\n              return (charsTotal / 2 - factor + 6) * 130;\n            }\n          }, {\n            ease: 'elastic.out(.4)',\n            y: 0,\n            stagger: {\n              amount: 0.1,\n              from: 'center'\n            },\n            scrollTrigger: {\n              trigger: titleElement,\n              start: vStart('top bottom'),\n              end: 'bottom top+=10%',\n              scrub: true\n            }\n          });\n          break;\n        case 'word_by_word_scale_in':\n          const words11 = [...titleElement.querySelectorAll('.word')];\n          for (const [wordPosition, word] of words11.entries()) {\n            gsapWithCSS.fromTo(word.querySelectorAll('.char'), {\n              'will-change': 'transform',\n              scale: 0.01,\n              x: (pos, _, arr) => {\n                return wordPosition % 2 ? pos * 50 : (arr.length - pos - 1) * -50;\n              }\n            }, {\n              ease: 'power4',\n              scale: 1,\n              x: 0,\n              scrollTrigger: {\n                trigger: word,\n                start: vStart('center bottom-=20%'),\n                end: 'bottom top+=20%',\n                scrub: true\n              }\n            });\n          }\n          break;\n        case 'word_by_word_curve_reveal':\n          const words10 = [...titleElement.querySelectorAll('.word')];\n          for (const word of words10) {\n            const chars = word.querySelectorAll('.char');\n            const charsTotal = chars.length;\n            chars.forEach(char => gsapWithCSS.set(char.parentNode, {\n              perspective: 1000\n            }));\n            gsapWithCSS.fromTo(chars, {\n              'will-change': 'transform',\n              x: position => {\n                const factor = position < Math.ceil(charsTotal / 2) ? position : Math.ceil(charsTotal / 2) - Math.abs(Math.floor(charsTotal / 2) - position) - 1;\n                return (charsTotal % 2 ? Math.abs(Math.ceil(charsTotal / 2) - 1 - factor) : Math.abs(Math.ceil(charsTotal / 2) - factor)) * 200 * (position < charsTotal / 2 ? -1 : 1);\n              },\n              y: position => {\n                const factor = position < Math.ceil(charsTotal / 2) ? position : Math.ceil(charsTotal / 2) - Math.abs(Math.floor(charsTotal / 2) - position) - 1;\n                return factor * 60;\n              },\n              rotationY: -270,\n              rotationZ: position => {\n                const factor = position < Math.ceil(charsTotal / 2) ? position : Math.ceil(charsTotal / 2) - Math.abs(Math.floor(charsTotal / 2) - position) - 1;\n                return position < charsTotal / 2 ? Math.abs(factor - charsTotal / 2) * 8 : -1 * Math.abs(factor - charsTotal / 2) * 8;\n              }\n            }, {\n              ease: 'power2.inOut',\n              x: 0,\n              y: 0,\n              rotationZ: 0,\n              rotationY: 0,\n              scale: 1,\n              scrollTrigger: {\n                trigger: word,\n                start: vStart('top bottom-=10%'),\n                end: 'top top+=45%',\n                scrub: true\n              }\n            });\n          }\n          break;\n      }\n      ScrollTrigger_ScrollTrigger.refresh();\n      requestAnimationFrame(() => {\n        ScrollTrigger_ScrollTrigger.refresh();\n      });\n    });\n    return () => cancelAnimationFrame(rafId);\n  }, {\n    scope: wrapperRef,\n    revertOnUpdate: true,\n    dependencies: [animationEffect, title, titleHeadingLevel, animationStartDepKey]\n  });\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: on_scroll_header_animation_edit_ModuleScriptData,\n    stylesComponent: on_scroll_header_animation_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    key: `${animationEffect}-${title}-${titleHeadingLevel}-${animationStartDepKey}`\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    ref: wrapperRef,\n    className: \"dsm-on-scroll-header-animation-wrapper\"\n  }, elements.render({\n    attrName: 'title'\n  }))));\n}\n/* harmony default export */ const on_scroll_header_animation_edit = (on_scroll_header_animation_edit_Edit);\n// EXTERNAL MODULE: ./packages/module-library/on-scroll-header-animation/icon.js\nvar on_scroll_header_animation_icon = __webpack_require__(\"./packages/module-library/on-scroll-header-animation/icon.js\");\n;// ./packages/module-library/on-scroll-header-animation/index.js\n// External library dependencies.\n\n\n// Wordpress dependencies.\n\n\n\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n//  Custom dependencies.\n\n\n\n\n\nconst scrollImageModule = {\n  metadata: on_scroll_header_animation_module_namespaceObject,\n  renderers: {\n    edit: on_scroll_header_animation_edit\n  },\n  settings: {\n    content: on_scroll_header_animation_settings_content,\n    design: on_scroll_header_animation_settings_design,\n    advanced: on_scroll_header_animation_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    title: {\n      innerContent: {\n        desktop: {\n          value: 'Scroll Header Animation'\n        }\n      }\n    },\n    animation_effect: {\n      innerContent: {\n        desktop: {\n          value: 'twist_reveal'\n        }\n      }\n    },\n    animation_start_offset: {\n      innerContent: {\n        desktop: {\n          value: '100%'\n        }\n      }\n    }\n  }\n};\n/* harmony default export */ const on_scroll_header_animation = (scrollImageModule);\n;// ./packages/module-library/stacking-card/module.json\nconst stacking_card_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/stacking-card\",\"title\":\"Supreme Stacking Card\",\"titles\":\"Supreme Stacking Card\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/stacking-card\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"header\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_content_wrapper .dsm_title\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_content_wrapper .dsm_content\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"card_direction\":{\"type\":\"object\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"animation_type\":{\"type\":\"object\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"start_offset\":{\"type\":\"object\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"start_horizontal_offset\":{\"type\":\"object\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"layout\":{\"type\":\"object\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"disable_offset\":{\"type\":\"object\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_width\":{\"type\":\"object\",\"inlineEditor\":\"rangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_spacing\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm_stacking_card_child .dsm_stacking_card_wrapper .dsm_image_wrapper img\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_card_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm_stacking_card_child\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_icon_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_icon_align\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"icon_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm_content_wrapper .dsm_icon\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"icon_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm_content_wrapper .dsm_icon::before\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_alignment\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"content_order\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"content_horizontal_alignment\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-button-wrapper .et_pb_button\",\"default\":{\"decoration\":{\"button\":{\"desktop\":{\"value\":{\"enable\":\"off\",\"icon\":{\"enable\":\"on\",\"onHover\":\"on\"}}}},\"border\":{\"desktop\":{\"value\":{\"styles\":{\"all\":{\"color\":\"\"}}}}},\"font\":{\"font\":{\"desktop\":{\"value\":{\"color\":\"\"}}}}}},\"elementType\":\"button\",\"styleProps\":{\"font\":{\"important\":{\"font\":{\"desktop\":{\"value\":{\"color\":true,\"font-size\":true,\"letter-spacing\":true}}}}},\"spacing\":{\"important\":true},\"button\":{\"propertySelectors\":{\"desktop\":{\"value\":{\"text-align\":\"{{selector}} .dsm-button-wrapper\"}}}}}},\"icon_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_stacking_card_child .dsm_icon::before\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm_stacking_card_child .dsm_icon::before\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm_stacking_card_child .dsm_icon::before\",\"useOverlay\":true}}},\"image_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_stacking_card_child .dsm_stacking_card_wrapper .dsm_image_wrapper img\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm_stacking_card_child .dsm_stacking_card_wrapper .dsm_image_wrapper img\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm_stacking_card_child .dsm_stacking_card_wrapper .dsm_image_wrapper img\",\"useOverlay\":true}}},\"dsm_icon_font_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"card_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_stacking_card_child\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm_stacking_card_child\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm_stacking_card_child\",\"useOverlay\":true}}}}}');\n;// ./packages/module-library/stacking-card/settings-content.js\n\n// Wordpress dependencies.\n\n// Divi package dependencies.\n\n\n\n\n\nfunction stacking_card_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  const cardDirection = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.card_direction?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(ChildDraggableModuleList, {\n    childModuleName: \"dsm/stacking-card-child\",\n    addTitle: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Add New Item', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"general\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Settings', 'dsm-supreme-modules-pro-for-divi'),\n    preset: \"content\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"card_direction.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Card Direction', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      vertical: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Vertical', 'dsm-supreme-modules-pro-for-divi')\n      },\n      horizontal: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Horizontal', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"start_offset.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Offset', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'vertical' === cardDirection\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 50,\n    max: 1000,\n    step: 1,\n    defaultUnit: '',\n    allowedUnits: ['']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"start_horizontal_offset.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Offset', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'horizontal' === cardDirection\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    step: 1,\n    defaultUnit: '',\n    allowedUnits: ['']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"disable_offset.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Disable Stacking Offset', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"animation_type.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animation Type', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      none: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('None', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fade: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade', 'dsm-supreme-modules-pro-for-divi')\n      },\n      scale: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Scale stack', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const stacking_card_settings_content = (stacking_card_settings_content_SettingsContent);\n;// ./packages/module-library/stacking-card/settings-design.js\n\n// Wordpress dependencies.\n\n// Divi package dependencies.\n\n\n\n\n\nfunction stacking_card_settings_design_SettingsDesign({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  var _defaultSettingsAttrs;\n  const button = attrs?.button?.decoration?.button?.desktop?.value?.enable;\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"layout_alignment\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Layout & Alignment', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"layout.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Layout', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', '')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      inline: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inline', 'dsm-supreme-modules-pro-for-divi')\n      },\n      stacked: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Stacked', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"content_order.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Order Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', '')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rigth: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"content_horizontal_alignment.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Horizontal Content Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', '')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      top: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"image\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_width.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Width', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Adjust the width of the image.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: '%'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"image_style.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"image_style.decoration.boxShadow\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"image_spacing.decoration.spacing\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"header.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title Text', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: true\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"dsm_content.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi'),\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      },\n      textAlign: {\n        render: true\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"card\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Card', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_card_padding.decoration.spacing\",\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"card_style.decoration.border\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Card', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"card_style.decoration.boxShadow\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Card', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"icon\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_icon_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Color', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_icon_bg_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Bg Color', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_icon_font_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Font Size', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 120,\n    step: 1,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_icon_align.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"icon_margin.decoration.spacing\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      padding: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"icon_padding.decoration.spacing\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"icon_style.decoration.border\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"icon_style.decoration.boxShadow\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"button\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ButtonGroupContainer, {\n    attrName: \"button\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi'),\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi'),\n    defaultGroupAttr: (_defaultSettingsAttrs = defaultSettingsAttrs?.button?.decoration?.asMutable({\n      deep: true\n    })) !== null && _defaultSettingsAttrs !== void 0 ? _defaultSettingsAttrs : {},\n    fields: {\n      fontGroup: {\n        component: {\n          props: {\n            fields: {\n              lineHeight: {\n                render: true\n              },\n              textAlign: {\n                render: false\n              }\n            }\n          }\n        }\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_alignment.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    },\n    visible: 'off' === button\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const stacking_card_settings_design = (stacking_card_settings_design_SettingsDesign);\n;// ./packages/module-library/stacking-card/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction stacking_card_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_stacking_card\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const stacking_card_settings_advanced = (stacking_card_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/stacking-card/module-styles.js\n\n\n\n\n/**\n * React function component for rendering module style.\n */\n\nconst dsmContentOrderCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      order: true\n    }\n  });\n  if ('left' === attrValue) {\n    declarations.add('order', `-1`);\n  }\n  return declarations.value;\n};\nconst dsmLayoutCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'flex-direction': true\n    }\n  });\n  if ('inline' === attrValue) {\n    declarations.add('flex-direction', 'row');\n  }\n  if ('stacked' === attrValue) {\n    declarations.add('flex-direction', 'column');\n  }\n  return declarations.value;\n};\nconst dsmContentVerticalAlignmentCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      order: true\n    }\n  });\n  if ('top' === attrValue) {\n    declarations.add('align-items', `flex-start`);\n  }\n  if ('center' === attrValue) {\n    declarations.add('align-items', `center`);\n  }\n  if ('bottom' === attrValue) {\n    declarations.add('align-items', `flex-end`);\n  }\n  return declarations.value;\n};\nconst dsmPlainBackgroundColorCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string'\n  });\n  if (attrValue !== undefined && attrValue !== null && attrValue !== '') {\n    declarations.add('background-color', attrValue);\n  }\n  return declarations.value;\n};\nconst stacking_card_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'header'\n  }), elements.style({\n    attrName: 'dsm_content'\n  }), elements.style({\n    attrName: 'button'\n  }), elements.style({\n    attrName: 'dsm_card_padding'\n  }), elements.style({\n    attrName: 'card_style'\n  }), elements.style({\n    attrName: 'image_style'\n  }), elements.style({\n    attrName: 'image_spacing'\n  }), elements.style({\n    attrName: 'icon_margin'\n  }), elements.style({\n    attrName: 'icon_padding'\n  }), elements.style({\n    attrName: 'icon_style'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_stacking_card_child .dsm_icon::before`,\n    attr: attrs?.dsm_icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_stacking_card_child .dsm_stacking_card_wrapper .dsm_image_wrapper`,\n    attr: attrs?.image_width?.innerContent,\n    property: \"width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_stacking_card_child .dsm_icon::before`,\n    attr: attrs?.dsm_icon_bg_color?.innerContent,\n    declarationFunction: dsmPlainBackgroundColorCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_stacking_card_child .dsm_icon::before`,\n    attr: attrs?.dsm_icon_font_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_stacking_card_child .dsm_icon`,\n    attr: attrs?.dsm_icon_align?.innerContent,\n    property: \"text-align\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_stacking_card_child .dsm-button-wrapper`,\n    attr: attrs?.button_alignment?.innerContent,\n    property: \"text-align\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_stacking_card_child .dsm_stacking_card_wrapper .dsm_content_wrapper`,\n    attr: attrs?.content_order?.innerContent,\n    declarationFunction: dsmContentOrderCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_stacking_card_child .dsm_stacking_card_wrapper`,\n    attr: attrs?.layout?.innerContent,\n    declarationFunction: dsmLayoutCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_stacking_card_child .dsm_stacking_card_wrapper`,\n    attr: attrs?.content_horizontal_alignment?.innerContent,\n    declarationFunction: dsmContentVerticalAlignmentCss\n  }));\n};\n;// ./packages/module-library/stacking-card/edit.js\n\n\n\n\n\n\n\ngsapWithCSS.registerPlugin(ScrollTrigger_ScrollTrigger);\n\n/**\n * @param {object} timeline GSAP timeline\n * @param {NodeListOf<Element> | Element[]} cards\n * @param {number} activeIndex\n * @param {'vertical'|'horizontal'} axis\n */\nfunction appendScaleDepthTweens(timeline, cards, activeIndex, axis) {\n  if (activeIndex < 1) {\n    return;\n  }\n  const step = 0.048;\n  const minScale = 0.78;\n  const tPos = activeIndex * 0.5;\n  const origin = axis === 'vertical' ? '50% 0%' : '0% 50%';\n  for (let j = 0; j < activeIndex; j++) {\n    const depth = activeIndex - j;\n    const targetScale = Math.max(minScale, 1 - depth * step);\n    timeline.to(cards[j], {\n      scale: targetScale,\n      transformOrigin: origin,\n      ease: 'power2.out',\n      duration: 0.6\n    }, tPos);\n  }\n}\nconst stacking_card_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction stacking_card_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements,\n  childrenIds\n}) {\n  const containerRef = (0,external_vendor_React_.useRef)(null);\n  const direction = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.card_direction?.innerContent) || 'vertical';\n  const animationType = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.animation_type?.innerContent) || 'none';\n  const offset = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.start_offset?.innerContent) || '100';\n  const disableStackingOffset = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.disable_offset?.innerContent) || 'off';\n  const startHorizontalOffset = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.start_horizontal_offset?.innerContent) || '0';\n  const stackSpacing = parseInt(attrs?.module?.stack_spacing || 100, 10);\n  //const stackOffset = parseInt( attrs?.module?.stack_offset || 40, 10 );\n\n  (0,external_vendor_React_.useLayoutEffect)(() => {\n    if (!containerRef.current) return;\n    const ctx = gsapWithCSS.context(() => {\n      const container = containerRef.current;\n      const cards = container.querySelectorAll('.dsm_stacking_card_child');\n      if (cards.length === 0) return;\n      container.style.position = 'relative';\n      const timeline = gsapWithCSS.timeline();\n      const useScaleStack = animationType === 'scale';\n      const getAnimationProps = index => {\n        if (animationType === 'fade') {\n          return {\n            initial: {\n              opacity: index === 0 ? 1 : 0\n            },\n            animate: {\n              opacity: 1\n            }\n          };\n        }\n        if (animationType === 'scale') {\n          return {\n            initial: {\n              opacity: 1,\n              scale: 1\n            },\n            animate: {\n              opacity: 1,\n              scale: 1\n            }\n          };\n        }\n        return {\n          initial: {\n            opacity: 1\n          },\n          animate: {\n            opacity: 1\n          }\n        };\n      };\n      if (direction === 'horizontal') {\n        const viewportWidth = window.innerWidth;\n        const cardWidth = cards[0].offsetWidth;\n        const startOffset = 0;\n        const isStackingDisabled = disableStackingOffset === 'on';\n        const stackOffset = isStackingDisabled ? 0 : parseInt(attrs?.module?.stack_offset || 40, 10);\n        cards.forEach((card, index) => {\n          card.style.position = 'absolute';\n          card.style.width = `${cardWidth}px`;\n          card.style.left = `${startOffset + stackOffset * index}px`;\n          card.style.top = `${Number(startHorizontalOffset)}%`;\n          card.style.zIndex = index;\n          const initialX = index === 0 ? 0 : viewportWidth - startOffset;\n          const props = getAnimationProps(index);\n          const setProps = {\n            x: initialX - stackOffset * index,\n            yPercent: 0,\n            ...props.initial\n          };\n          if (useScaleStack) {\n            setProps.transformOrigin = '0% 50%';\n            setProps.scale = 1;\n          }\n          gsapWithCSS.set(card, setProps);\n          if (index > 0) {\n            const tPos = index * 0.5;\n            timeline.to(card, {\n              x: 0,\n              ...props.animate,\n              ease: 'power2.out',\n              duration: 0.6\n            }, tPos);\n            if (useScaleStack) {\n              appendScaleDepthTweens(timeline, cards, index, 'horizontal');\n            }\n          }\n        });\n        const totalScroll = (cards.length - 1) * viewportWidth * 0.6;\n        ScrollTrigger_ScrollTrigger.create({\n          trigger: container,\n          animation: timeline,\n          start: 'top top',\n          end: `+=${totalScroll}`,\n          scrub: 0.3,\n          pin: true,\n          pinSpacing: true,\n          invalidateOnRefresh: true,\n          anticipatePin: 1\n        });\n      } else {\n        const viewportHeight = window.innerHeight;\n        const startOffset = Number(offset);\n        const isStackingDisabled = disableStackingOffset === 'on';\n        const stackOffset = isStackingDisabled ? 0 : parseInt(attrs?.module?.stack_offset || 40, 10);\n        cards.forEach((card, index) => {\n          card.style.position = 'absolute';\n          card.style.width = '100%';\n          card.style.top = `${startOffset + stackOffset * index}px`;\n          card.style.left = '0';\n          card.style.right = '0';\n          card.style.margin = '0 auto';\n          if (!useScaleStack) {\n            card.style.transform = 'translateY(-50%)';\n          }\n          card.style.zIndex = index;\n          const initialY = index === 0 ? 0 : viewportHeight + stackSpacing * index;\n          const props = getAnimationProps(index);\n          const setProps = {\n            y: initialY - stackOffset * index,\n            ...props.initial\n          };\n          if (useScaleStack) {\n            setProps.transformOrigin = '50% 0%';\n            setProps.scale = 1;\n          }\n          gsapWithCSS.set(card, setProps);\n          if (index > 0) {\n            const tPos = index * 0.5;\n            timeline.to(card, {\n              y: 0,\n              ...props.animate,\n              ease: 'power2.out',\n              duration: 0.6\n            }, tPos);\n            if (useScaleStack) {\n              appendScaleDepthTweens(timeline, cards, index, 'vertical');\n            }\n          }\n        });\n        const totalScroll = (cards.length - 1) * viewportHeight * 0.6;\n        ScrollTrigger_ScrollTrigger.create({\n          trigger: container,\n          animation: timeline,\n          start: 'top top',\n          end: `+=${totalScroll}`,\n          scrub: 0.3,\n          pin: true,\n          pinSpacing: true,\n          invalidateOnRefresh: true,\n          anticipatePin: 1\n        });\n      }\n    }, containerRef);\n    return () => ctx.revert();\n  }, [direction, animationType, stackSpacing, offset, startHorizontalOffset, disableStackingOffset, childrenIds?.length]);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: stacking_card_edit_ModuleScriptData,\n    stylesComponent: stacking_card_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-gsap-isolation-wrapper\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-stacking-card-wrapper dsm_stacking_card_container\",\n    ref: containerRef,\n    \"data-options\": JSON.stringify({\n      direction,\n      animation_type: animationType,\n      stack_spacing: stackSpacing\n    })\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ChildModulesContainer, {\n    ids: childrenIds\n  }))));\n}\n/* harmony default export */ const stacking_card_edit = (stacking_card_edit_Edit);\n;// ./packages/module-library/stacking-card/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmStackingCardIcon', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/stacking-card': {\n      name: 'divi-supreme/stacking-card',\n      viewBox: '0 0 30 30',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 10.933594 3.734375 C 10.492188 3.734375 10.132812 3.375 10.132812 2.933594 C 10.132812 2.492188 10.492188 2.132812 10.933594 2.132812 C 11.375 2.132812 11.734375 2.492188 11.734375 2.933594 C 11.734375 3.375 11.375 3.734375 10.933594 3.734375 Z M 10.933594 2.574219 C 10.734375 2.574219 10.574219 2.734375 10.574219 2.933594 C 10.574219 3.128906 10.734375 3.292969 10.933594 3.292969 C 11.128906 3.292969 11.292969 3.128906 11.292969 2.933594 C 11.292969 2.734375 11.128906 2.574219 10.933594 2.574219 Z M 10.933594 2.574219 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 5.601562 14.398438 C 5.160156 14.398438 4.800781 14.039062 4.800781 13.601562 C 4.800781 13.160156 5.160156 12.800781 5.601562 12.800781 C 6.039062 12.800781 6.398438 13.160156 6.398438 13.601562 C 6.398438 14.039062 6.039062 14.398438 5.601562 14.398438 Z M 5.601562 13.242188 C 5.402344 13.242188 5.242188 13.402344 5.242188 13.601562 C 5.242188 13.796875 5.402344 13.960938 5.601562 13.960938 C 5.796875 13.960938 5.960938 13.796875 5.960938 13.601562 C 5.960938 13.402344 5.796875 13.242188 5.601562 13.242188 Z M 5.601562 13.242188 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 9.566406 11.636719 L 5.109375 11.636719 C 4.644531 11.636719 4.265625 11.257812 4.265625 10.792969 L 4.265625 7.261719 C 4.265625 6.792969 4.644531 6.414062 5.109375 6.414062 L 9.566406 6.414062 C 10.03125 6.414062 10.410156 6.792969 10.410156 7.261719 L 10.410156 10.792969 C 10.410156 11.257812 10.03125 11.636719 9.566406 11.636719 Z M 5.109375 6.875 C 4.898438 6.875 4.726562 7.046875 4.726562 7.261719 L 4.726562 10.792969 C 4.726562 11.003906 4.898438 11.175781 5.109375 11.175781 L 9.566406 11.175781 C 9.777344 11.175781 9.949219 11.003906 9.949219 10.792969 L 9.949219 7.261719 C 9.949219 7.046875 9.777344 6.875 9.566406 6.875 Z M 5.109375 6.875 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 10.179688 7.949219 L 4.496094 7.949219 C 4.371094 7.949219 4.265625 7.847656 4.265625 7.722656 C 4.265625 7.59375 4.371094 7.492188 4.496094 7.492188 L 10.179688 7.492188 C 10.304688 7.492188 10.410156 7.59375 10.410156 7.722656 C 10.410156 7.847656 10.304688 7.949219 10.179688 7.949219 Z M 10.179688 7.949219 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.402344 9.488281 C 11.277344 9.488281 11.171875 9.382812 11.171875 9.257812 L 11.171875 5.109375 C 11.171875 4.898438 11 4.726562 10.789062 4.726562 L 6.335938 4.726562 C 6.125 4.726562 5.953125 4.898438 5.953125 5.109375 L 5.953125 5.570312 C 5.953125 5.699219 5.847656 5.800781 5.722656 5.800781 C 5.59375 5.800781 5.492188 5.699219 5.492188 5.570312 L 5.492188 5.109375 C 5.492188 4.644531 5.871094 4.265625 6.335938 4.265625 L 10.789062 4.265625 C 11.253906 4.265625 11.632812 4.644531 11.632812 5.109375 L 11.632812 9.257812 C 11.632812 9.382812 11.53125 9.488281 11.402344 9.488281 Z M 11.402344 9.488281 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.402344 5.800781 L 5.722656 5.800781 C 5.59375 5.800781 5.492188 5.699219 5.492188 5.570312 C 5.492188 5.445312 5.59375 5.339844 5.722656 5.339844 L 11.402344 5.339844 C 11.53125 5.339844 11.632812 5.445312 11.632812 5.570312 C 11.632812 5.699219 11.53125 5.800781 11.402344 5.800781 Z M 11.402344 5.800781 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/stacking-card/index.js\n// External library dependencies.\n\n\n// Wordpress dependencies.\n\n\n\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\n\nconst STACKING_CARD_CHILD = 'dsm/stacking-card-child';\nconst stackingCardModule = {\n  metadata: stacking_card_module_namespaceObject,\n  renderers: {\n    edit: stacking_card_edit,\n    styles: stacking_card_module_styles_ModuleStyles\n  },\n  childrenName: [STACKING_CARD_CHILD],\n  template: buildParentDefaultChildTemplate(STACKING_CARD_CHILD, 3),\n  callbacks: buildChildDraggableListCallbacks([STACKING_CARD_CHILD]),\n  settings: {\n    content: stacking_card_settings_content,\n    design: stacking_card_settings_design,\n    advanced: stacking_card_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    header: {\n      decoration: {\n        font: {\n          font: {\n            desktop: {\n              value: {\n                headingLevel: 'h4'\n              }\n            }\n          }\n        }\n      }\n    },\n    button: {\n      decoration: {\n        button: {\n          desktop: {\n            value: {\n              enable: 'off'\n            }\n          }\n        }\n      }\n    },\n    card_direction: {\n      innerContent: {\n        desktop: {\n          value: 'vertical'\n        }\n      }\n    },\n    start_offset: {\n      innerContent: {\n        desktop: {\n          value: '100'\n        }\n      }\n    },\n    disable_offset: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    start_horizontal_offset: {\n      innerContent: {\n        desktop: {\n          value: '50'\n        }\n      }\n    },\n    animation_type: {\n      innerContent: {\n        desktop: {\n          value: 'none'\n        }\n      }\n    },\n    image_width: {\n      innerContent: {\n        desktop: {\n          value: '50%'\n        }\n      }\n    }\n  }\n};\n/* harmony default export */ const stacking_card = (stackingCardModule);\n;// ./packages/module-library/stacking-card-child/module.json\nconst stacking_card_child_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/stacking-card-child\",\"title\":\"Supreme Stacking Card Child\",\"titles\":\"Supreme Stacking Card Child\",\"category\":\"child-module\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"content\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image\":{\"type\":\"object\",\"inlineEditor\":\"UploadContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_title\":{\"type\":\"object\",\"selector\":\".dsm_stacking_card_container {{selector}} .dsm_content_wrapper .dsm_title\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content\":{\"type\":\"object\",\"selector\":\".dsm_stacking_card_container {{selector}} .dsm_content_wrapper .dsm_content\",\"inlineEditor\":\"RichTextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_card_spacing\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\".dsm_stacking_card_container {{selector}}.dsm_stacking_card_child\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_content_icon\":{\"type\":\"object\",\"selector\":\"\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"font_icon\":{\"type\":\"object\",\"inlineEditor\":\"IconPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_text\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\",\"tagName\":\"span\"},\"button_url\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_url_new_window\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_alignment\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_width\":{\"type\":\"object\",\"inlineEditor\":\"rangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_spacing\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\".dsm_stacking_card_container {{selector}} .dsm_image_wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_icon_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_icon_font_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_icon_align\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"icon_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\".dsm_stacking_card_container {{selector}}.dsm_stacking_card_child .dsm_icon::before\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"icon_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\".dsm_stacking_card_container {{selector}}.dsm_stacking_card_child .dsm_icon\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"card_style\":{\"type\":\"object\",\"selector\":\".dsm_stacking_card_container {{selector}}.dsm_stacking_card_child\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\".dsm_stacking_card_container {{selector}}.dsm_stacking_card_child\",\"important\":true},\"boxShadow\":{\"selector\":\".dsm_stacking_card_container {{selector}}.dsm_stacking_card_child\",\"useOverlay\":true}}},\"icon_style\":{\"type\":\"object\",\"selector\":\".dsm_stacking_card_container {{selector}}.dsm_stacking_card_child .dsm_icon::before\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\".dsm_stacking_card_container {{selector}}.dsm_stacking_card_child .dsm_icon::before\",\"important\":true},\"boxShadow\":{\"selector\":\".dsm_stacking_card_container {{selector}}.dsm_stacking_card_child .dsm_icon::before\",\"useOverlay\":true}}},\"image_style\":{\"type\":\"object\",\"selector\":\".dsm_stacking_card_container {{selector}}.dsm_stacking_card_child .dsm_image_wrapper img\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\".dsm_stacking_card_container {{selector}}.dsm_stacking_card_child .dsm_image_wrapper img\",\"important\":true},\"boxShadow\":{\"selector\":\".dsm_stacking_card_container {{selector}}.dsm_stacking_card_child .dsm_image_wrapper img\",\"useOverlay\":true}}},\"button\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-button-wrapper .et_pb_button\",\"default\":{\"decoration\":{\"button\":{\"desktop\":{\"value\":{\"enable\":\"off\",\"icon\":{\"enable\":\"on\",\"onHover\":\"on\"}}}},\"border\":{\"desktop\":{\"value\":{\"styles\":{\"all\":{\"color\":\"\"}}}}},\"font\":{\"font\":{\"desktop\":{\"value\":{\"color\":\"\"}}}}}},\"elementType\":\"button\",\"styleProps\":{\"font\":{\"important\":{\"font\":{\"desktop\":{\"value\":{\"color\":true,\"font-size\":true,\"letter-spacing\":true}}}}},\"spacing\":{\"important\":true},\"button\":{\"propertySelectors\":{\"desktop\":{\"value\":{\"text-align\":\"{{selector}} .dsm-button-wrapper\"}}}}}}}}');\n;// ./packages/module-library/stacking-card-child/settings-content.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\n\nfunction stacking_card_child_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  var _defaultSettingsAttrs;\n  const useIcon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_content_icon?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"content\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image.innerContent\",\n    subName: \"src\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_title.innerContent\",\n    subName: \"text\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content.innerContent\",\n    subName: \"text\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RichTextContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"icon\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_content_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Icon', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"font_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useIcon\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"button\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_text.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Text', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    },\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Input your desired button text, or leave blank for no button.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_url.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button URL', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'url'\n      },\n      sticky: false\n    },\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Input URL for your button.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_url_new_window.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Url Opens', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Choose whether your link opens in a new window or not', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      off: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The Same Window', 'dsm-supreme-modules-pro-for-divi')\n      },\n      on: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The New Tab', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: (_defaultSettingsAttrs = defaultSettingsAttrs?.adminLabel) !== null && _defaultSettingsAttrs !== void 0 ? _defaultSettingsAttrs : {\n      desktop: {\n        value: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Supreme Stacking Card Child', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }));\n}\n/* harmony default export */ const stacking_card_child_settings_content = (stacking_card_child_settings_content_SettingsContent);\n;// ./packages/module-library/stacking-card-child/settings-design.js\n\n// Wordpress dependencies.\n\n// Divi package dependencies.\n\n\n\n\nfunction stacking_card_child_settings_design_SettingsDesign({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  var _defaultSettingsAttrs;\n  const button = attrs?.button?.decoration?.button?.desktop?.value?.enable;\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"image\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_width.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Width', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Adjust the width of the image.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: '%'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"image_style.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"image_style.decoration.boxShadow\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"image_spacing.decoration.spacing\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"dsm_title.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title Text', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: true\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"dsm_content.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi'),\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      },\n      textAlign: {\n        render: true\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"card\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Card', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_bg_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_card_spacing.decoration.spacing\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"card_style.decoration.border\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Card', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"card_style.decoration.boxShadow\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Card', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"icon\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_icon_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Color', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_icon_bg_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Bg Color', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_icon_font_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Font Size', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 120,\n    step: 1,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_icon_align.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"icon_style.decoration.border\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"icon_style.decoration.boxShadow\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"icon_margin.decoration.spacing\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      padding: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"icon_padding.decoration.spacing\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"button\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ButtonGroupContainer, {\n    attrName: \"button\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi'),\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi'),\n    defaultGroupAttr: (_defaultSettingsAttrs = defaultSettingsAttrs?.button?.decoration?.asMutable({\n      deep: true\n    })) !== null && _defaultSettingsAttrs !== void 0 ? _defaultSettingsAttrs : {},\n    fields: {\n      fontGroup: {\n        component: {\n          props: {\n            fields: {\n              lineHeight: {\n                render: true\n              },\n              textAlign: {\n                render: false\n              }\n            }\n          }\n        }\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_alignment.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    },\n    visible: 'off' === button\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null));\n}\n/* harmony default export */ const stacking_card_child_settings_design = (stacking_card_child_settings_design_SettingsDesign);\n;// ./packages/module-library/stacking-card-child/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction stacking_card_child_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_stacking_card_child\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const stacking_card_child_settings_advanced = (stacking_card_child_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/stacking-card-child/module-styles.js\n\n\n\n\n\n/**\n * React function component for rendering module style.\n */\n\nconst dsmIconFontCss = buildLegacyPseudoIconFontCss;\nconst module_styles_dsmPlainBackgroundColorCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string'\n  });\n  if (attrValue !== undefined && attrValue !== null && attrValue !== '') {\n    declarations.add('background-color', attrValue);\n  }\n  return declarations.value;\n};\nconst stacking_card_child_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'dsm_title'\n  }), elements.style({\n    attrName: 'dsm_content'\n  }), elements.style({\n    attrName: 'button'\n  }), elements.style({\n    attrName: 'image_style'\n  }), elements.style({\n    attrName: 'image_spacing'\n  }), elements.style({\n    attrName: 'icon_padding'\n  }), elements.style({\n    attrName: 'icon_margin'\n  }), elements.style({\n    attrName: 'icon_style'\n  }), elements.style({\n    attrName: 'card_style'\n  }), elements.style({\n    attrName: 'dsm_card_spacing'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm_stacking_card_container ${orderClass}.dsm_stacking_card_child .dsm_image_wrapper img`,\n    attr: attrs?.image_width?.innerContent,\n    property: \"width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm_stacking_card_container ${orderClass}.dsm_stacking_card_child`,\n    attr: attrs?.dsm_bg_color?.innerContent,\n    declarationFunction: module_styles_dsmPlainBackgroundColorCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm_stacking_card_container ${orderClass}.dsm_stacking_card_child .dsm_icon::before`,\n    attr: attrs?.dsm_icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm_stacking_card_container ${orderClass}.dsm_stacking_card_child .dsm_icon::before`,\n    attr: attrs?.dsm_icon_bg_color?.innerContent,\n    declarationFunction: module_styles_dsmPlainBackgroundColorCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm_stacking_card_container ${orderClass}.dsm_stacking_card_child .dsm_icon::before`,\n    attr: attrs?.dsm_icon_font_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm_stacking_card_container ${orderClass}.dsm_stacking_card_child .dsm_icon`,\n    attr: attrs?.dsm_icon_align?.innerContent,\n    property: \"text-align\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm_stacking_card_container ${orderClass}.dsm_stacking_card_child .dsm-button-wrapper`,\n    attr: attrs?.button_alignment?.innerContent,\n    property: \"text-align\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_icon::before`,\n    attr: attrs?.font_icon?.innerContent,\n    declarationFunction: dsmIconFontCss\n  }));\n};\n;// ./packages/module-library/stacking-card-child/edit.js\n\n\n\n\n// Divi package dependencies.\n\n\n\n\n// Custom dependencies.\n\n\n\n\n\n\n/**\n * React function component for registering module script data.\n */\n\nconst stacking_card_child_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction stacking_card_child_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements,\n  parentAttrs\n}) {\n  var _attrs$dsm_title$deco;\n  const dsm_title = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_title?.innerContent)?.text;\n  const dsm_content = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_content?.innerContent)?.text;\n  const imageRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.image?.innerContent);\n  const button_text = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_text?.innerContent);\n  const use_icon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_content_icon?.innerContent);\n  const fontIconAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.font_icon?.innerContent);\n  const resolveImageUploadSrc = resolved => {\n    if (typeof resolved === 'string') {\n      return resolved;\n    }\n    if (resolved && typeof resolved === 'object' && typeof resolved.src === 'string') {\n      return resolved.src;\n    }\n    return '';\n  };\n  const TitleTag = (_attrs$dsm_title$deco = attrs?.dsm_title?.decoration?.font?.font?.desktop?.value?.headingLevel) !== null && _attrs$dsm_title$deco !== void 0 ? _attrs$dsm_title$deco : '';\n  const ParentTitleTag = parentAttrs?.header?.decoration?.font?.font?.desktop?.value?.headingLevel;\n  const Tag = (0,lodash.isEmpty)(TitleTag) ? ParentTitleTag : TitleTag;\n  const ButtonMarkup = !(0,lodash.isEmpty)(button_text) && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"et_pb_button_module_wrapper dsm-button-wrapper\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n    className: \"et_pb_button\"\n  }, elements.render(getDsmButtonTextRenderProps('button_text'))));\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: stacking_card_child_edit_ModuleScriptData,\n    stylesComponent: stacking_card_child_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_stacking_card_wrapper\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_image_wrapper\"\n  }, imageRaw && /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: imageRaw\n  }, resolvedImage => {\n    const src = resolveImageUploadSrc(resolvedImage);\n    return src ? /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n      src: src,\n      alt: \"\"\n    }) : null;\n  })), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_content_wrapper\"\n  }, 'on' === use_icon && /*#__PURE__*/external_vendor_React_default().createElement(ModuleIconHost, {\n    icon: fontIconAttr,\n    className: \"dsm_icon\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(Tag, {\n    className: \"dsm_title\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: dsm_title\n  })), /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: dsm_content\n  }, resolvedContent => /*#__PURE__*/external_vendor_React_default().createElement(\"p\", {\n    className: \"dsm_content\",\n    dangerouslySetInnerHTML: {\n      __html: resolvedContent\n    }\n  })), ButtonMarkup)));\n}\n/* harmony default export */ const stacking_card_child_edit = (stacking_card_child_edit_Edit);\n;// ./packages/module-library/stacking-card-child/index.js\n// External library dependencies.\n\n// Wordpress dependencies.\n\n\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n//  Custom dependencies.\n\n\n\n\n\n\nconst stackingCardChildModule = {\n  metadata: stacking_card_child_module_namespaceObject,\n  parentsName: ['dsm/stacking-card'],\n  settings: {\n    content: stacking_card_child_settings_content,\n    design: stacking_card_child_settings_design,\n    advanced: stacking_card_child_settings_advanced\n  },\n  renderers: {\n    edit: stacking_card_child_edit,\n    styles: stacking_card_child_module_styles_ModuleStyles\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    image: {\n      innerContent: {\n        desktop: {\n          value: 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTA4MCIgaGVpZ2h0PSI1NDAiIHZpZXdCb3g9IjAgMCAxMDgwIDU0MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPHBhdGggZmlsbD0iI0VCRUJFQiIgZD0iTTAgMGgxMDgwdjU0MEgweiIvPgogICAgICAgIDxwYXRoIGQ9Ik00NDUuNjQ5IDU0MGgtOTguOTk1TDE0NC42NDkgMzM3Ljk5NSAwIDQ4Mi42NDR2LTk4Ljk5NWwxMTYuMzY1LTExNi4zNjVjMTUuNjItMTUuNjIgNDAuOTQ3LTE1LjYyIDU2LjU2OCAwTDQ0NS42NSA1NDB6IiBmaWxsLW9wYWNpdHk9Ii4xIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgICAgICA8Y2lyY2xlIGZpbGwtb3BhY2l0eT0iLjA1IiBmaWxsPSIjMDAwIiBjeD0iMzMxIiBjeT0iMTQ4IiByPSI3MCIvPgogICAgICAgIDxwYXRoIGQ9Ik0xMDgwIDM3OXYxMTMuMTM3TDcyOC4xNjIgMTQwLjMgMzI4LjQ2MiA1NDBIMjE1LjMyNEw2OTkuODc4IDU1LjQ0NmMxNS42Mi0xNS42MiA0MC45NDgtMTUuNjIgNTYuNTY4IDBMMTA4MCAzNzl6IiBmaWxsLW9wYWNpdHk9Ii4yIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgIDwvZz4KPC9zdmc+Cg=='\n        }\n      }\n    },\n    dsm_title: {\n      innerContent: {\n        desktop: {\n          value: {\n            text: 'Your Title Goes Here'\n          }\n        }\n      }\n    },\n    dsm_content: {\n      innerContent: {\n        desktop: {\n          value: {\n            text: 'Your content goes here. Edit or remove this text inline or in the module Content settings. You can also style every aspect of this content in the module Design settings and even apply custom CSS to this text in the module Advanced settings.'\n          }\n        }\n      }\n    },\n    button_text: {\n      innerContent: {\n        desktop: {\n          value: 'Button Text'\n        }\n      }\n    },\n    button_url_new_window: {\n      innerContent: {\n        desktop: {\n          value: 'false'\n        }\n      }\n    },\n    image_alignment: {\n      innerContent: {\n        desktop: {\n          value: 'left'\n        }\n      }\n    },\n    button_url_new_window: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    }\n  }\n};\n/* harmony default export */ const stacking_card_child = (stackingCardChildModule);\n;// ./packages/module-library/perspective-image/module.json\nconst perspective_image_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/perspective-image\",\"d4Shortcode\":\"dsm_perspective_image\",\"title\":\"Supreme Image\",\"titles\":\"Supreme Images\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/perspective-image\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}},\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .et_pb_image_wrap\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .et_pb_image_wrap\",\"useOverlay\":true}},\"default\":{\"advanced\":{\"text\":{\"text\":{\"desktop\":{\"value\":{\"color\":\"light\",\"orientation\":\"center\"}}}}}}},\"src\":{\"type\":\"object\",\"label\":\"Image\",\"selector\":\"{{selector}} .et_pb_image_wrap img\",\"elementType\":\"image\",\"supportsCustomAttributes\":true,\"inlineEditor\":\"UploadContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"url\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"url_new_window\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"show_in_lightbox\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"show_lightbox_other_img\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"show_lightbox_other_img_src\":{\"type\":\"object\",\"inlineEditor\":\"UploadContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"lightbox_close_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"lightbox_max_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_video_popup\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"perspective\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_rotate_y\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_rotate_x\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_rotate_z\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_overlay\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"hover_overlay_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_icon\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"overlay_icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"hover_icon\":{\"type\":\"object\",\"inlineEditor\":\"IconPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"overlay_on_hover\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"align\":{\"type\":\"object\",\"inlineEditor\":\"\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"force_fullwidth\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"always_center_on_mobile\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"overlay_styling\":{\"type\":\"object\",\"selector\":\"{{selector}} .et_overlay\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .et_overlay\"},\"boxShadow\":{\"selector\":\"{{selector}} .et_overlay\",\"useOverlay\":true}}},\"css\":{\"type\":\"object\",\"inlineEditor\":\"codemirror\",\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/perspective-image/module-default-render-attributes.json\nconst perspective_image_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"module\":{\"decoration\":{},\"advanced\":{\"text\":{\"text\":{\"desktop\":{\"value\":{\"color\":\"light\",\"orientation\":\"center\"}}}}}},\"src\":{\"innerContent\":{\"desktop\":{\"value\":{\"src\":\"\",\"id\":\"\",\"alt\":\"\",\"title\":\"\"}}}},\"show_in_lightbox\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"show_lightbox_other_img\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"show_lightbox_other_img_src\":{\"innerContent\":{\"desktop\":{\"value\":{\"src\":\"\",\"id\":\"\"}}}},\"lightbox_close_color\":{\"innerContent\":{\"desktop\":{\"value\":\"rgba(255,255,255,0.2)\"}}},\"lightbox_max_width\":{\"innerContent\":{\"desktop\":{\"value\":\"860px\"}}},\"use_video_popup\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"url\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"url_new_window\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"perspective\":{\"innerContent\":{\"desktop\":{\"value\":\"1000px\"}}},\"dsm_rotate_y\":{\"innerContent\":{\"desktop\":{\"value\":\"0deg\"}}},\"dsm_rotate_x\":{\"innerContent\":{\"desktop\":{\"value\":\"0deg\"}}},\"dsm_rotate_z\":{\"innerContent\":{\"desktop\":{\"value\":\"0deg\"}}},\"use_overlay\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"hover_overlay_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"use_icon\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"overlay_icon_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"hover_icon\":{\"innerContent\":{\"desktop\":{\"value\":{\"type\":\"divi\",\"unicode\":\"&#xe033;\",\"weight\":\"400\"}}}},\"overlay_on_hover\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"align\":{\"innerContent\":{\"desktop\":{\"value\":\"left\"}}},\"force_fullwidth\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"always_center_on_mobile\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}}}');\n;// ./packages/module-library/perspective-image/perspective-image-vb-default-attrs.js\n/**\n * Visual Builder `defaultAttr` slices from `module-default-render-attributes.json`.\n *\n * @package DiviSupreme\n */\n\n\nconst PLACEHOLDER_SVG = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTA4MCIgaGVpZ2h0PSI1NDAiIHZpZXdCb3g9IjAgMCAxMDgwIDU0MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPHBhdGggZmlsbD0iI0VCRUJFQiIgZD0iTTAgMGgxMDgwdjU0MEgweiIvPgogICAgICAgIDxwYXRoIGQ9Ik00NDUuNjQ5IDU0MGgtOTguOTk1TDE0NC42NDkgMzM3Ljk5NSAwIDQ4Mi42NDR2LTk4Ljk5NWwxMTYuMzY1LTExNi4zNjVjMTUuNjItMTUuNjIgNDAuOTQ3LTE1LjYyIDU2LjU2OCAwTDQ0NS42NSA1NDB6IiBmaWxsLW9wYWNpdHk9Ii4xIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgICAgICA8Y2lyY2xlIGZpbGwtb3BhY2l0eT0iLjA1IiBmaWxsPSIjMDAwIiBjeD0iMzMxIiBjeT0iMTQ4IiByPSI3MCIvPgogICAgICAgIDxwYXRoIGQ9Ik0xMDgwIDM3OXYxMTMuMTM3TDcyOC4xNjIgMTQwLjMgMzI4LjQ2MiA1NDBIMjE1LjMyNEw2OTkuODc4IDU1LjQ0NmMxNS42Mi0xNS42MiA0MC45NDgtMTUuNjIgNTYuNTY4IDBMMTA4MCAzNzl6IiBmaWxsLW9wYWNpdHk9Ii4yIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgIDwvZz4KPC9zdmc+Cg==';\n\n/** `FieldContainer` innerContent map for options with defaults (VB after save/reload). */\nconst perspectiveImageFieldDefaultInnerContent = Object.fromEntries(Object.entries(perspective_image_module_default_render_attributes_namespaceObject).filter(([, attr]) => attr && typeof attr === 'object' && attr.innerContent).map(([key, attr]) => [key, attr.innerContent]));\n\n/** @type {typeof perspectiveImageFieldDefaultInnerContent} */\nconst perspectiveImageFd = perspectiveImageFieldDefaultInnerContent;\n\n/** Must match `index.js` → `placeholderContent.src.innerContent`. */\nconst perspectiveImageSrcUploadVbDefaultAttr = {\n  desktop: {\n    value: {\n      src: PLACEHOLDER_SVG,\n      id: '',\n      alt: '',\n      title: ''\n    }\n  }\n};\n;// ./packages/module-library/perspective-image/settings-content.js\n\n\n\n\n\n\n\nfunction perspective_image_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  const showLightbox = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_in_lightbox?.innerContent);\n  const showVideoLightbox = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_video_popup?.innerContent);\n  const showOtherImage = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_lightbox_other_img?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"src.innerContent\",\n    subName: \"src\",\n    defaultAttr: perspectiveImageSrcUploadVbDefaultAttr,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Upload your desired image, or type in the URL to the image you would like to display.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"src.innerContent\",\n    subName: \"alt\",\n    defaultAttr: perspectiveImageFd.src,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Alternative Text', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('This defines the HTML ALT text. A short description of your image can be placed here.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"src.innerContent\",\n    subName: \"title\",\n    defaultAttr: perspectiveImageFd.src,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Title Text', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('This defines the HTML Title attribute when supported.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"link\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Link', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"show_in_lightbox.innerContent\",\n    defaultAttr: perspectiveImageFd.show_in_lightbox,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Open In Lightbox', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose whether or not the image should open in Lightbox. Note: if you select to open the image in Lightbox, url options below will be ignored.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' !== showVideoLightbox\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"show_lightbox_other_img.innerContent\",\n    defaultAttr: perspectiveImageFd.show_lightbox_other_img,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Other Lightbox Image', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === showLightbox && 'on' !== showVideoLightbox,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use a different image URL when the lightbox opens.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"show_lightbox_other_img_src.innerContent\",\n    subName: \"src\",\n    defaultAttr: perspectiveImageFd.show_lightbox_other_img_src,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Lightbox Image', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === showLightbox && 'on' === showOtherImage && 'on' !== showVideoLightbox,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Upload or choose the image shown in the lightbox.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"url.innerContent\",\n    defaultAttr: perspectiveImageFd.url,\n    features: {\n      dynamicContent: {\n        type: 'url'\n      },\n      sticky: false\n    },\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Link Url', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' !== showLightbox,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If you would like your image to be a link, input your destination URL here.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"url_new_window.innerContent\",\n    defaultAttr: perspectiveImageFd.url_new_window,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Link Target', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' !== showLightbox,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Choose whether the link opens in a new tab.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      off: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The Same Window', 'dsm-supreme-modules-pro-for-divi')\n      },\n      on: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The New Tab', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_video_popup.innerContent\",\n    defaultAttr: perspectiveImageFd.use_video_popup,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use as Video Popup', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' !== showLightbox,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Put the video URL in Image Link URL. Supports YouTube, Vimeo and Dailymotion.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"transform_rotation\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Transform & Rotation', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"perspective.innerContent\",\n    defaultAttr: perspectiveImageFd.perspective,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Perspective', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('3D perspective distance for the wrapper transform.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 1500,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_rotate_y.innerContent\",\n    defaultAttr: perspectiveImageFd.dsm_rotate_y,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rotate Y', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: -90,\n    max: 90,\n    defaultUnit: 'deg',\n    allowedUnits: ['deg']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_rotate_x.innerContent\",\n    defaultAttr: perspectiveImageFd.dsm_rotate_x,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rotate X', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: -90,\n    max: 90,\n    defaultUnit: 'deg',\n    allowedUnits: ['deg']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_rotate_z.innerContent\",\n    defaultAttr: perspectiveImageFd.dsm_rotate_z,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rotate Z', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: -90,\n    max: 90,\n    defaultUnit: 'deg',\n    allowedUnits: ['deg']\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const perspective_image_settings_content = (perspective_image_settings_content_SettingsContent);\n;// ./packages/module-library/perspective-image/settings-design.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\nfunction perspective_image_settings_design_SettingsDesign({\n  attrs\n}) {\n  const useOverlayAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_overlay?.innerContent);\n  const showImageInLightbox = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_in_lightbox?.innerContent);\n  const showVideoInLightbox = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_video_popup?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"overlay\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay', 'dsm-supreme-modules-pro-for-divi'),\n    preset: \"content\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_overlay.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Overlay', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If enabled, an overlay color and icon will be displayed when a visitors hovers over the image', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"hover_overlay_color.innerContent\",\n    defaultAttr: perspectiveImageFd.hover_overlay_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom color for the overlay', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useOverlayAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_icon.innerContent\",\n    defaultAttr: perspectiveImageFd.use_icon,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Icon', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If enabled, icon will only show up.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useOverlayAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"overlay_icon_color.innerContent\",\n    defaultAttr: perspectiveImageFd.overlay_icon_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay Icon Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom color for the overlay icon', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useOverlayAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"hover_icon.innerContent\",\n    defaultAttr: perspectiveImageFd.hover_icon,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Picker', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom icon for the overlay', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useOverlayAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"overlay_on_hover.innerContent\",\n    defaultAttr: perspectiveImageFd.overlay_on_hover,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Overlay On Hover', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If enabled, overlay will only show on hover.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useOverlayAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"overlay_styling.decoration.border\",\n    grouped: false,\n    visible: 'on' === useOverlayAttr\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"overlay_styling.decoration.boxShadow\",\n    grouped: false,\n    visible: 'on' === useOverlayAttr\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"lightbox\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Lightbox', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === showImageInLightbox || 'on' === showVideoInLightbox,\n    preset: \"content\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"lightbox_close_color.innerContent\",\n    defaultAttr: perspectiveImageFd.lightbox_close_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Close Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === showImageInLightbox || 'on' === showVideoInLightbox\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"lightbox_max_width.innerContent\",\n    defaultAttr: perspectiveImageFd.lightbox_max_width,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Max Width', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === showImageInLightbox || 'on' === showVideoInLightbox\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 100,\n    max: 1200,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"alignment\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Alignment', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"align.innerContent\",\n    defaultAttr: perspectiveImageFd.align,\n    multipleChoices: false,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    onChangeParams: ['multipleChoices'],\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose the image alignment.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"always_center_on_mobile.innerContent\",\n    defaultAttr: perspectiveImageFd.always_center_on_mobile,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Always Center Image On Mobile', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"sizing\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Sizing', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"force_fullwidth.innerContent\",\n    defaultAttr: perspectiveImageFd.force_fullwidth,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Force Fullwidth', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, {\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const perspective_image_settings_design = (perspective_image_settings_design_SettingsDesign);\n;// ./packages/module-library/perspective-image/settings-advanced.js\n\nfunction perspective_image_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_perspective_image\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const perspective_image_settings_advanced = (perspective_image_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/perspective-image/module-styles.js\n\n\n\n\n\nconst perspective_image_module_styles_iconFontCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string'\n  });\n  if (isDsmIcon(attrValue)) {\n    return '';\n  }\n  addNativeIconFontFamily(declarations, attrValue);\n  addNativeIconFontContent(declarations, attrValue);\n  return declarations.value;\n};\n\n/**\n * Read range innerContent at breakpoint + state (matches PHP + shapes module pattern).\n *\n * @param {{ innerContent?: Record<string, Record<string, unknown>> }}|undefined elAttr Field attrs.\n * @param {string}                                                    breakpoint   desktop|tablet|phone.\n * @param {string}                                                    state        value|hover|…\n * @param {string}                                                    defaultVal   Fallback when unset.\n * @return {string}\n */\nconst perspectiveReadInnerContentString = (elAttr, breakpoint, state, defaultVal) => {\n  const ic = elAttr?.innerContent;\n  if (!ic || typeof ic !== 'object') {\n    return defaultVal;\n  }\n  const order = [breakpoint, 'desktop', 'tablet', 'phone'].filter((v, i, a) => a.indexOf(v) === i);\n  for (const bp of order) {\n    const node = ic[bp];\n    if (!node || typeof node !== 'object') {\n      continue;\n    }\n    if (state !== 'value' && node[state] !== undefined) {\n      const stNode = node[state];\n      if (typeof stNode === 'string' || typeof stNode === 'number') {\n        const t = String(stNode).trim();\n        if (t !== '') {\n          return t;\n        }\n      } else if (stNode && typeof stNode === 'object' && stNode.value !== undefined) {\n        const v = stNode.value;\n        if (typeof v === 'string' || typeof v === 'number') {\n          const t = String(v).trim();\n          if (t !== '') {\n            return t;\n          }\n        }\n      }\n    }\n    const nv = node.value;\n    if (typeof nv === 'string' || typeof nv === 'number') {\n      const t = String(nv).trim();\n      if (t !== '') {\n        return t;\n      }\n    }\n    if (nv && typeof nv === 'object' && nv.value !== undefined && (typeof nv.value === 'string' || typeof nv.value === 'number')) {\n      const t = String(nv.value).trim();\n      if (t !== '') {\n        return t;\n      }\n    }\n  }\n  return defaultVal;\n};\n\n/**\n * Union breakpoint/state keys from perspective + rotate fields so hover CSS runs when only rotate has hover.\n *\n * @param {Record<string, unknown>|undefined} attrs Module attrs.\n * @return {Record<string, Record<string, { value: string }>>}\n */\nconst mergePerspectiveTransformInnerContents = attrs => {\n  /** @type {Record<string, Record<string, { value: string }>>} */\n  const merged = {};\n  const keys = ['perspective', 'dsm_rotate_x', 'dsm_rotate_y', 'dsm_rotate_z'];\n  for (const k of keys) {\n    const ic = attrs?.[k]?.innerContent;\n    if (!ic || typeof ic !== 'object') {\n      continue;\n    }\n    for (const bp of Object.keys(ic)) {\n      const states = ic[bp];\n      if (!states || typeof states !== 'object') {\n        continue;\n      }\n      for (const st of Object.keys(states)) {\n        if (!merged[bp]) {\n          merged[bp] = {};\n        }\n        if (!merged[bp][st]) {\n          merged[bp][st] = {\n            value: ''\n          };\n        }\n      }\n    }\n  }\n  return merged;\n};\n\n/**\n * @param {string} curve Divi speedCurve key.\n * @return {string}\n */\nconst mapSpeedCurveToTimingFunction = curve => {\n  switch (curve) {\n    case 'easeInOut':\n      return 'ease-in-out';\n    case 'easeIn':\n      return 'ease-in';\n    case 'easeOut':\n      return 'ease-out';\n    case 'linear':\n      return 'linear';\n    default:\n      return 'ease';\n  }\n};\n\n/**\n * Design → Transition on `module` (defaults match TransitionUtils).\n *\n * @param {Record<string, unknown>|undefined} attrs Module attrs.\n * @param {string}                            breakpoint desktop|tablet|phone\n * @return {{ duration: string, delay: string, speedCurve: string }}\n */\nconst perspective_image_module_styles_readModuleTransitionLeafAtBreakpoint = (attrs, breakpoint) => {\n  const defaults = {\n    duration: '300ms',\n    delay: '0ms',\n    speedCurve: 'ease'\n  };\n  const trans = attrs?.module?.decoration?.transition;\n  if (!trans || typeof trans !== 'object') {\n    return defaults;\n  }\n  const order = [breakpoint, 'desktop', 'tablet', 'phone'].filter((v, i, a) => a.indexOf(v) === i);\n  for (const bp of order) {\n    const node = trans[bp];\n    if (!node || typeof node !== 'object' || !node.value || typeof node.value !== 'object') {\n      continue;\n    }\n    const leaf = node.value;\n    return {\n      duration: typeof leaf.duration === 'string' && leaf.duration !== '' ? leaf.duration : defaults.duration,\n      delay: typeof leaf.delay === 'string' && leaf.delay !== '' ? leaf.delay : defaults.delay,\n      speedCurve: typeof leaf.speedCurve === 'string' && leaf.speedCurve !== '' ? leaf.speedCurve : defaults.speedCurve\n    };\n  }\n  return defaults;\n};\n\n/**\n * Visual Builder / frontend style component.\n */\nconst perspective_image_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  const mergedTransformAttr = mergePerspectiveTransformInnerContents(attrs);\n  const transformAttrForStyle = Object.keys(mergedTransformAttr).length > 0 ? mergedTransformAttr : attrs?.perspective?.innerContent || {};\n  const wrapperSel = `${orderClass} .dsm-perspective-image-wrapper`;\n  const hoverModWrapperSel = `${orderClass}:hover .dsm-perspective-image-wrapper`;\n  /** @type {Record<string, Record<string, string>>} */\n  const perspectiveTransformSelectors = {};\n  for (const bp of Object.keys(transformAttrForStyle)) {\n    const states = transformAttrForStyle[bp];\n    perspectiveTransformSelectors[bp] = {\n      value: wrapperSel\n    };\n    if (states && typeof states === 'object' && Object.prototype.hasOwnProperty.call(states, 'hover')) {\n      perspectiveTransformSelectors[bp].hover = hoverModWrapperSel;\n    }\n  }\n  if (Object.keys(perspectiveTransformSelectors).length === 0) {\n    perspectiveTransformSelectors.desktop = {\n      value: wrapperSel\n    };\n  }\n\n  /** Transition only on `.dsm-perspective-image-wrapper`, base breakpoint rules (no hover pass). */\n  /** @type {Record<string, Record<string, string>>} */\n  const perspectiveTransitionSelectors = {};\n  /** @type {Record<string, Record<string, { wrapperTransition: boolean }>>} */\n  const perspectiveTransitionAttr = {};\n  for (const bp of Object.keys(transformAttrForStyle)) {\n    perspectiveTransitionSelectors[bp] = {\n      value: wrapperSel\n    };\n    perspectiveTransitionAttr[bp] = {\n      value: {\n        wrapperTransition: true\n      }\n    };\n  }\n  if (Object.keys(perspectiveTransitionSelectors).length === 0) {\n    perspectiveTransitionSelectors.desktop = {\n      value: wrapperSel\n    };\n    perspectiveTransitionAttr.desktop = {\n      value: {\n        wrapperTransition: true\n      }\n    };\n  }\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextStyle, {\n    selector: orderClass,\n    attr: attrs?.module?.advanced?.text\n  }), elements.style({\n    attrName: 'overlay_styling'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et_pb_inline_icon::after`,\n    attr: attrs?.hover_icon?.innerContent,\n    declarationFunction: perspective_image_module_styles_iconFontCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: wrapperSel,\n    selectors: perspectiveTransformSelectors,\n    orderClass: orderClass,\n    attr: transformAttrForStyle,\n    declarationFunction: params => {\n      const breakpoint = params?.breakpoint || 'desktop';\n      const st = params?.state || 'value';\n      let perspectiveVal = perspectiveReadInnerContentString(attrs?.perspective, breakpoint, st, '1000px');\n      if (perspectiveVal.trim() === '') {\n        perspectiveVal = '1000px';\n      }\n      const rotateXAttr = perspectiveReadInnerContentString(attrs?.dsm_rotate_x, breakpoint, st, '0deg');\n      const rotateYAttr = perspectiveReadInnerContentString(attrs?.dsm_rotate_y, breakpoint, st, '0deg');\n      const rotateZAttr = perspectiveReadInnerContentString(attrs?.dsm_rotate_z, breakpoint, st, '0deg');\n      const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n        returnType: 'string'\n      });\n      declarations.add('transform', `perspective(${perspectiveVal}) rotateX(${rotateXAttr.trim() === '' ? '0deg' : rotateXAttr}) rotateY(${rotateYAttr.trim() === '' ? '0deg' : rotateYAttr}) rotateZ(${rotateZAttr.trim() === '' ? '0deg' : rotateZAttr})`);\n      return declarations.value;\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: wrapperSel,\n    selectors: perspectiveTransitionSelectors,\n    orderClass: orderClass,\n    attr: perspectiveTransitionAttr,\n    declarationFunction: params => {\n      if ((params?.state || 'value') !== 'value') {\n        return '';\n      }\n      const breakpoint = params?.breakpoint || 'desktop';\n      const t = perspective_image_module_styles_readModuleTransitionLeafAtBreakpoint(attrs, breakpoint);\n      const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n        returnType: 'string'\n      });\n      declarations.add('transition-property', 'transform');\n      declarations.add('transition-duration', t.duration);\n      declarations.add('transition-timing-function', mapSpeedCurveToTimingFunction(t.speedCurve));\n      declarations.add('transition-delay', t.delay);\n      return declarations.value;\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: orderClass,\n    attr: attrs?.align?.innerContent,\n    property: \"text-align\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-perspective-image-wrapper .et_overlay`,\n    attr: attrs?.hover_overlay_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-perspective-image-wrapper .et_pb_inline_icon`,\n    attr: attrs?.overlay_icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .mfp-content .mfp-close`,\n    attr: attrs?.lightbox_close_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .mfp-content`,\n    attr: attrs?.lightbox_max_width?.innerContent,\n    property: \"max-width\"\n  }));\n};\n;// ./packages/module-library/perspective-image/edit.js\n\n\n\n\n\n\n/**\n * @param {unknown} raw\n * @return {string}\n */\nconst getUploadSrcForDynamic = raw => {\n  if (typeof raw === 'string' || typeof raw === 'number') {\n    return String(raw);\n  }\n  if (raw && typeof raw === 'object' && raw.src) {\n    return String(raw.src);\n  }\n  return '';\n};\n\n/**\n * Advanced → Attributes rows for the main image: `src` target wins, then `image` (see AttributeUtils PHP).\n *\n * @param {unknown} decorationAttrs `module.decoration.attributes`\n * @return {Record<string, string>}\n */\nconst getPerspectiveSrcTargetDecorationAttrMap = decorationAttrs => {\n  var _ref, _decorationAttrs$desk;\n  const rawList = (_ref = (_decorationAttrs$desk = decorationAttrs?.desktop?.value?.attributes) !== null && _decorationAttrs$desk !== void 0 ? _decorationAttrs$desk : decorationAttrs?.attributes) !== null && _ref !== void 0 ? _ref : [];\n  if (!Array.isArray(rawList)) {\n    return {};\n  }\n  /** @type {Record<string, Record<string, string>>} */\n  const separated = {};\n  for (const attribute of rawList) {\n    if (!attribute || typeof attribute !== 'object') {\n      continue;\n    }\n    const name = attribute.name;\n    const value = attribute.value;\n    let targetElement = attribute.targetElement;\n    if (typeof name !== 'string' || name === '') {\n      continue;\n    }\n    if (typeof value !== 'string' || value === '') {\n      continue;\n    }\n    if (!targetElement) {\n      targetElement = 'main';\n    }\n    if (!separated[targetElement]) {\n      separated[targetElement] = {};\n    }\n    separated[targetElement][name] = value;\n  }\n  const src = separated.src;\n  const image = separated.image;\n  if (src && Object.keys(src).length > 0) {\n    return src;\n  }\n  if (image && Object.keys(image).length > 0) {\n    return image;\n  }\n  return {};\n};\n\n/**\n * Base `alt` / `title` from upload `innerContent` + legacy top-level attrs (before decoration override).\n *\n * @param {unknown}            raw   `src` innerContent desktop value.\n * @param {{ alt?: unknown, title_text?: unknown }} attrs Module attrs (optional legacy keys).\n * @return {{ alt: string, title: string }}\n */\nconst getPerspectiveImgAltTitleBase = (raw, attrs) => {\n  let alt = '';\n  let title = '';\n  if (raw && typeof raw === 'object') {\n    if (raw.alt != null) {\n      alt = String(raw.alt);\n    }\n    if (raw.title != null) {\n      title = String(raw.title);\n    } else if (raw.titleText != null) {\n      title = String(raw.titleText);\n    }\n  }\n  const altLegacy = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.alt?.innerContent);\n  const titleLegacy = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.title_text?.innerContent);\n  if (!alt && typeof altLegacy === 'string') {\n    alt = altLegacy;\n  }\n  if (!title && typeof titleLegacy === 'string') {\n    title = titleLegacy;\n  }\n  return {\n    alt,\n    title\n  };\n};\n\n/**\n * Effective `<img>` alt/title: decoration target `src` / `image` overrides upload + legacy (matches PHP).\n *\n * @param {unknown}                            raw   `src` innerContent desktop value.\n * @param {{ module?: { decoration?: { attributes?: unknown } }, alt?: unknown, title_text?: unknown }} attrs\n * @return {{ alt: string, title: string }}\n */\nconst getPerspectiveEffectiveImgAltTitle = (raw, attrs) => {\n  const base = getPerspectiveImgAltTitleBase(raw, attrs);\n  const decMap = getPerspectiveSrcTargetDecorationAttrMap(attrs?.module?.decoration?.attributes);\n  let alt = base.alt;\n  let title = base.title;\n  if (Object.prototype.hasOwnProperty.call(decMap, 'alt')) {\n    alt = typeof decMap.alt === 'string' ? decMap.alt.trim() : '';\n  }\n  if (Object.prototype.hasOwnProperty.call(decMap, 'title')) {\n    title = typeof decMap.title === 'string' ? decMap.title.trim() : '';\n  }\n  return {\n    alt,\n    title\n  };\n};\nconst perspective_image_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}), elements.scriptData({\n  attrName: 'overlay_styling'\n}));\nfunction perspective_image_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  const linkUrl = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.url?.innerContent);\n  const showInLightbox = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_in_lightbox?.innerContent);\n  const showInVideoLightbox = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_video_popup?.innerContent);\n  const useOtherImageInLightbox = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_lightbox_other_img?.innerContent);\n  const otherImageRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_lightbox_other_img_src?.innerContent);\n  const srcRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.src?.innerContent);\n  const srcForDynamic = getUploadSrcForDynamic(srcRaw);\n  const otherImageForLightbox = getUploadSrcForDynamic(otherImageRaw);\n  const {\n    alt: imgAlt,\n    title: imgTitle\n  } = getPerspectiveEffectiveImgAltTitle(srcRaw, attrs);\n  const imgTitleAttr = '' !== imgTitle ? imgTitle : undefined;\n  const imageOverlayAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_overlay?.innerContent);\n  const showOverlayOnHoverAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.overlay_on_hover?.innerContent);\n  const forceFullwidthAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.force_fullwidth?.innerContent);\n  const isOverlayOnHover = 'off' === showOverlayOnHoverAttr ? 'dsm-perspective-image-overlay-off' : '';\n  const isForceWidth = 'on' === forceFullwidthAttr ? 'dsm-force-fullwidth' : '';\n  const overlayOn = 'on' === imageOverlayAttr;\n  const wrapperClassName = ['dsm-perspective-image-wrapper', overlayOn ? 'et_pb_has_overlay' : '', isOverlayOnHover, isForceWidth].filter(Boolean).join(' ');\n  const lightboxRef = (0,external_vendor_React_.useRef)(null);\n  (0,external_vendor_React_.useEffect)(() => {\n    if (typeof jQuery === 'undefined') {\n      return undefined;\n    }\n    const root = lightboxRef.current;\n    if (!root) {\n      return undefined;\n    }\n    const $wrap = jQuery(root);\n    const uniqueClass = `dsm_perspective_image_${id}`;\n    if ('on' === showInLightbox && srcForDynamic) {\n      $wrap.find('a.dsm-image-lightbox').magnificPopup({\n        type: 'image',\n        removalDelay: 500,\n        mainClass: 'mfp-fade',\n        callbacks: {\n          elementParse(item) {\n            const altSrc = item.el.attr('data-mfp-src');\n            if (altSrc) {\n              item.src = altSrc;\n            }\n          },\n          open() {\n            this.container.addClass(`${uniqueClass} dsm-lightbox-custom`);\n          }\n        },\n        zoom: {\n          enabled: true,\n          duration: 500,\n          opener(element) {\n            return element.find('img');\n          }\n        },\n        autoFocusLast: false\n      });\n    }\n    if ('on' === showInVideoLightbox && linkUrl) {\n      $wrap.find('a.dsm-video-lightbox').magnificPopup({\n        type: 'iframe',\n        removalDelay: 500,\n        iframe: {\n          markup: '<div class=\"mfp-iframe-scaler dsm-video-popup\">' + '<div class=\"mfp-close\"></div>' + '<iframe class=\"mfp-iframe\" frameborder=\"0\" allowfullscreen allow=\"autoplay\"></iframe>' + '</div>',\n          patterns: {\n            youtube: {\n              index: 'youtube.com/',\n              id: 'v=',\n              src: '//www.youtube.com/embed/%id%?autoplay=1&rel=0'\n            },\n            youtu_be: {\n              index: 'youtu.be',\n              id: '/',\n              src: '//www.youtube.com/embed/%id%?autoplay=1&rel=0'\n            },\n            vimeo: {\n              index: 'vimeo.com/',\n              id: '/',\n              src: '//player.vimeo.com/video/%id%?autoplay=1'\n            },\n            dailymotion: {\n              index: 'dailymotion.com',\n              id(url) {\n                const m = url.match(/^.+dailymotion.com\\/(video|hub)\\/([^_]+)[^#]*(#video=([^_&]+))?/);\n                if (m !== null) {\n                  if (m[4] !== undefined) {\n                    return m[4];\n                  }\n                  return m[2];\n                }\n                return null;\n              },\n              src: 'https://www.dailymotion.com/embed/video/%id%'\n            }\n          },\n          srcAction: 'iframe_src'\n        },\n        mainClass: 'dsm-video-popup-wrap mfp-fade',\n        callbacks: {\n          open() {\n            this.container.addClass(`${uniqueClass} dsm-lightbox-custom`);\n          }\n        }\n      });\n    }\n    return () => {\n      $wrap.find('a.dsm-image-lightbox, a.dsm-video-lightbox').each(function () {\n        if (jQuery(this).data('magnificPopup')) {\n          jQuery(this).magnificPopup('destroy');\n        }\n      });\n    };\n  }, [id, showInLightbox, showInVideoLightbox, useOtherImageInLightbox, srcForDynamic, otherImageForLightbox, linkUrl]);\n  const imageMarkup = /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"et_pb_image_wrap\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: srcForDynamic\n  }, resolvedImage => resolvedImage ? /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n    src: resolvedImage,\n    alt: imgAlt,\n    title: imgTitleAttr\n  }) : null), overlayOn && /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"et_overlay et_pb_inline_icon\"\n  }));\n  const lightboxDataSrc = 'on' === useOtherImageInLightbox && otherImageForLightbox ? otherImageForLightbox : undefined;\n  const imageMarkupInLightbox = /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n    className: \"et_pb_image et_pb_lightbox_image dsm-image-lightbox\",\n    href: srcForDynamic || '#',\n    \"data-mfp-src\": lightboxDataSrc\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"et_pb_image_wrap\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: srcForDynamic\n  }, resolvedImage => resolvedImage ? /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n    src: resolvedImage,\n    alt: imgAlt,\n    title: imgTitleAttr\n  }) : null), overlayOn && /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"et_overlay et_pb_inline_icon\"\n  })));\n  const videoMarkupInLightbox = /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n    href: linkUrl || '#',\n    className: \"dsm-video-lightbox\",\n    \"data-mfp-src\": linkUrl || ''\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"et_pb_image_wrap\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: srcForDynamic\n  }, resolvedImage => resolvedImage ? /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n    src: resolvedImage,\n    alt: imgAlt,\n    title: imgTitleAttr\n  }) : null), overlayOn && /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"et_overlay et_pb_inline_icon\"\n  })));\n  const inner = 'on' === showInLightbox ? imageMarkupInLightbox : 'on' === showInVideoLightbox ? videoMarkupInLightbox : imageMarkup;\n  const useVbLightboxRoot = 'on' === showInLightbox || 'on' === showInVideoLightbox;\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: perspective_image_edit_ModuleScriptData,\n    stylesComponent: perspective_image_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"et_pb_module_inner\"\n  }, useVbLightboxRoot ? /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-perspective-image-vb-lightbox\",\n    ref: lightboxRef\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: wrapperClassName\n  }, inner)) : /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: wrapperClassName\n  }, inner)));\n}\n/* harmony default export */ const perspective_image_edit = (perspective_image_edit_Edit);\n;// ./packages/module-library/perspective-image/conversion-outline.js\n\nconst perspective_image_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border',\n      overlay: 'overlay_styling.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow',\n      overlay: 'overlay_styling.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    display_conditions: 'module.decoration.conditions',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    text: 'module.advanced.text',\n    text_shadow: {\n      default: 'module.advanced.text.textShadow'\n    },\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    height: 'module.decoration.sizing',\n    margin_padding: 'module.decoration.spacing',\n    max_width: 'module.decoration.sizing',\n    module: 'module.advanced.htmlAttributes',\n    link_options: 'module.advanced.link',\n    fonts: false\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    src: 'src.innerContent.*.src',\n    alt: 'src.innerContent.*.alt',\n    title_text: 'src.innerContent.*.title',\n    show_in_lightbox: 'show_in_lightbox.innerContent.*',\n    show_lightbox_other_img: 'show_lightbox_other_img.innerContent.*',\n    show_lightbox_other_img_src: 'show_lightbox_other_img_src.innerContent.*.src',\n    lightbox_close_color: 'lightbox_close_color.innerContent.*',\n    lightbox_max_width: 'lightbox_max_width.innerContent.*',\n    use_video_popup: 'use_video_popup.innerContent.*',\n    perspective: 'perspective.innerContent.*',\n    dsm_rotate_y: 'dsm_rotate_y.innerContent.*',\n    dsm_rotate_x: 'dsm_rotate_x.innerContent.*',\n    dsm_rotate_z: 'dsm_rotate_z.innerContent.*',\n    use_overlay: 'use_overlay.innerContent.*',\n    hover_overlay_color: 'hover_overlay_color.innerContent.*',\n    use_icon: 'use_icon.innerContent.*',\n    overlay_icon_color: 'overlay_icon_color.innerContent.*',\n    hover_icon: 'hover_icon.innerContent.*',\n    overlay_on_hover: 'overlay_on_hover.innerContent.*',\n    // Match Divi Image / block-reveal-image: D4 `align` → `module.advanced.align`.\n    align: 'module.advanced.align.*',\n    force_fullwidth: 'force_fullwidth.innerContent.*',\n    always_center_on_mobile: 'always_center_on_mobile.innerContent.*',\n    url: 'url.innerContent.*',\n    url_new_window: 'url_new_window.innerContent.*',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    hover_icon: external_divi_conversion_namespaceObject.convertFontIcon,\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/perspective-image/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmImage', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/perspective-image': {\n      name: 'divi-supreme/perspective-image',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 4.3125 8.179688 C 3.980469 8.179688 3.710938 7.871094 3.710938 7.492188 C 3.710938 7.117188 3.980469 6.808594 4.3125 6.808594 C 4.640625 6.808594 4.910156 7.117188 4.910156 7.492188 C 4.910156 7.871094 4.640625 8.179688 4.3125 8.179688 Z M 4.3125 7.191406 C 4.164062 7.191406 4.042969 7.332031 4.042969 7.5 C 4.042969 7.667969 4.164062 7.804688 4.3125 7.804688 C 4.457031 7.804688 4.578125 7.667969 4.578125 7.5 C 4.578125 7.332031 4.457031 7.191406 4.3125 7.191406 Z M 4.3125 7.191406 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.320312 11.253906 C 10.988281 11.253906 10.722656 10.984375 10.722656 10.65625 C 10.722656 10.328125 10.988281 10.058594 11.320312 10.058594 C 11.648438 10.058594 11.917969 10.328125 11.917969 10.65625 C 11.917969 10.984375 11.648438 11.253906 11.320312 11.253906 Z M 11.320312 10.386719 C 11.171875 10.386719 11.050781 10.507812 11.050781 10.65625 C 11.050781 10.804688 11.171875 10.925781 11.320312 10.925781 C 11.464844 10.925781 11.589844 10.804688 11.589844 10.65625 C 11.589844 10.507812 11.464844 10.386719 11.320312 10.386719 Z M 11.320312 10.386719 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 13.054688 4.984375 C 12.964844 4.839844 12.808594 4.757812 12.613281 4.757812 L 9.78125 4.757812 C 9.867188 4.867188 9.941406 4.980469 10.007812 5.101562 L 12.605469 5.101562 C 12.652344 5.101562 12.730469 5.109375 12.761719 5.164062 C 12.785156 5.207031 12.785156 5.300781 12.722656 5.429688 L 9.328125 11.789062 C 9.1875 12.058594 8.851562 12.28125 8.597656 12.28125 L 3.710938 12.28125 C 3.667969 12.28125 3.589844 12.269531 3.558594 12.21875 C 3.53125 12.171875 3.53125 12.078125 3.597656 11.949219 L 6.046875 7.351562 C 5.976562 7.230469 5.917969 7.101562 5.875 6.960938 L 3.300781 11.789062 C 3.179688 12.011719 3.167969 12.230469 3.265625 12.394531 C 3.351562 12.542969 3.507812 12.621094 3.707031 12.621094 L 8.597656 12.621094 C 8.972656 12.621094 9.425781 12.328125 9.621094 11.953125 L 13.015625 5.59375 C 13.132812 5.367188 13.144531 5.152344 13.054688 4.984375 Z M 13.054688 4.984375 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 8.074219 8.691406 C 6.707031 8.691406 5.59375 7.578125 5.59375 6.210938 C 5.59375 4.847656 6.707031 3.734375 8.074219 3.734375 C 9.4375 3.734375 10.550781 4.847656 10.550781 6.210938 C 10.550781 7.578125 9.4375 8.691406 8.074219 8.691406 Z M 8.074219 4.074219 C 6.894531 4.074219 5.9375 5.03125 5.9375 6.210938 C 5.9375 7.390625 6.894531 8.347656 8.074219 8.347656 C 9.25 8.347656 10.207031 7.390625 10.207031 6.210938 C 10.207031 5.03125 9.25 4.074219 8.074219 4.074219 Z M 8.074219 4.074219 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 5.328125 9.582031 L 9.828125 9.582031 L 9.828125 9.921875 L 5.328125 9.921875 Z M 5.328125 9.582031 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 4.742188 10.667969 L 9.238281 10.667969 L 9.238281 11.011719 L 4.742188 11.011719 Z M 4.742188 10.667969 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/perspective-image/index.js\n\n\n\n\n\n\n\n\n\nconst perspectiveImagePlaceholderSrc = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTA4MCIgaGVpZ2h0PSI1NDAiIHZpZXdCb3g9IjAgMCAxMDgwIDU0MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPHBhdGggZmlsbD0iI0VCRUJFQiIgZD0iTTAgMGgxMDgwdjU0MEgweiIvPgogICAgICAgIDxwYXRoIGQ9Ik00NDUuNjQ5IDU0MGgtOTguOTk1TDE0NC42NDkgMzM3Ljk5NSAwIDQ4Mi42NDR2LTk4Ljk5NWwxMTYuMzY1LTExNi4zNjVjMTUuNjItMTUuNjIgNDAuOTQ3LTE1LjYyIDU2LjU2OCAwTDQ0NS42NSA1NDB6IiBmaWxsLW9wYWNpdHk9Ii4xIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgICAgICA8Y2lyY2xlIGZpbGwtb3BhY2l0eT0iLjA1IiBmaWxsPSIjMDAwIiBjeD0iMzMxIiBjeT0iMTQ4IiByPSI3MCIvPgogICAgICAgIDxwYXRoIGQ9Ik0xMDgwIDM3OXYxMTMuMTM3TDcyOC4xNjIgMTQwLjMgMzI4LjQ2MiA1NDBIMjE1LjMyNEw2OTkuODc4IDU1LjQ0NmMxNS42Mi0xNS42MiA0MC45NDgtMTUuNjIgNTYuNTY4IDBMMTA4MCAzNzl6IiBmaWxsLW9wYWNpdHk9Ii4yIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgIDwvZz4KPC9zdmc+Cg==';\nconst perspective_image_defaultAttrs = {\n  ...perspective_image_module_default_render_attributes_namespaceObject,\n  src: {\n    innerContent: {\n      desktop: {\n        value: {\n          src: '',\n          id: '',\n          alt: '',\n          title: ''\n        }\n      }\n    }\n  },\n  show_lightbox_other_img_src: {\n    innerContent: {\n      desktop: {\n        value: {\n          src: '',\n          id: ''\n        }\n      }\n    }\n  }\n};\nconst perspectiveImageModule = {\n  metadata: perspective_image_module_namespaceObject,\n  conversionOutline: perspective_image_conversion_outline_conversionOutline,\n  renderers: {\n    edit: perspective_image_edit,\n    styles: perspective_image_module_styles_ModuleStyles\n  },\n  defaultAttrs: perspective_image_defaultAttrs,\n  settings: {\n    content: perspective_image_settings_content,\n    design: perspective_image_settings_design,\n    advanced: perspective_image_settings_advanced\n  },\n  placeholderContent: {\n    ...perspective_image_module_default_render_attributes_namespaceObject,\n    module: {\n      decoration: {}\n    },\n    src: {\n      innerContent: {\n        desktop: {\n          value: {\n            src: perspectiveImagePlaceholderSrc,\n            id: '',\n            alt: '',\n            title: ''\n          }\n        }\n      }\n    }\n  }\n};\n/* harmony default export */ const perspective_image = (perspectiveImageModule);\n;// ./packages/module-library/price-list/module.json\nconst price_list_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/price-list\",\"d4Shortcode\":\"dsm_pricelist\",\"title\":\"Supreme Price List\",\"titles\":\"Supreme Price List\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/price-list\",\"childrenName\":[\"dsm/price-list-child\"],\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}},\"default\":{\"meta\":{\"adminLabel\":{\"desktop\":{\"value\":\"Price List\"}}}}},\"content_orientation\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"item_bottom_gap\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"separator_style\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"separator_weight\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"separator_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"separator_gap\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"price_background_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"price\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-pricelist-price\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"title\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-pricelist-title\",\"default\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"lineHeight\":\"1em\"}}}}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"content\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-pricelist-description\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_max_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_spacing\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"price_padding\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-pricelist-price\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_image_styling\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-pricelist-image img\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-pricelist-image img\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-pricelist-image img\",\"useOverlay\":true}}},\"dsm_price_styling\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-pricelist-price\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-pricelist-price\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-pricelist-price\",\"useOverlay\":true}}}}}');\n;// ./packages/module-library/price-list/conversion-outline.js\n\nconst price_list_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    module: 'module.advanced.htmlAttributes',\n    borders: {\n      default: 'module.decoration.border',\n      image: 'dsm_image_styling.decoration.border',\n      image_price: 'dsm_price_styling.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow',\n      image: 'dsm_image_styling.decoration.boxShadow',\n      image_price: 'dsm_price_styling.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    fonts: {\n      header: 'title.decoration.font',\n      content: 'content.decoration.font',\n      price: 'price.decoration.font'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    content_orientation: 'content_orientation.innerContent.*',\n    item_bottom_gap: 'item_bottom_gap.innerContent.*',\n    separator_style: 'separator_style.innerContent.*',\n    separator_weight: 'separator_weight.innerContent.*',\n    separator_color: 'separator_color.innerContent.*',\n    separator_gap: 'separator_gap.innerContent.*',\n    price_background_color: 'price_background_color.innerContent.*',\n    image_spacing: 'image_spacing.innerContent.*',\n    image_max_width: 'image_max_width.innerContent.*',\n    price_padding: 'price_padding.decoration.spacing.*.padding'\n  },\n  valueExpansionFunctionMap: {\n    price_padding: external_divi_module_namespaceObject.convertSpacing\n  }\n};\n;// ./packages/module-library/price-list/settings-content.js\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\nfunction price_list_settings_content_SettingsContent({\n  defaultSettingsAttrs\n}) {\n  var _defaultSettingsAttrs;\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(ChildDraggableModuleList, {\n    childModuleName: \"dsm/price-list-child\",\n    addTitle: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Add New Item', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: (_defaultSettingsAttrs = defaultSettingsAttrs?.adminLabel) !== null && _defaultSettingsAttrs !== void 0 ? _defaultSettingsAttrs : {\n      desktop: {\n        value: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Price List', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }));\n}\n/* harmony default export */ const price_list_settings_content = (price_list_settings_content_SettingsContent);\n;// ./packages/module-library/price-list/settings-design.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n/**\n * Visual Builder defaults aligned with Divi 4 `DSM_PriceList`:\n * `get_fields()` defaults / `default_on_front`, and `get_advanced_fields_config()` font defaults.\n */\nconst priceListInner = {\n  contentOrientation: {\n    desktop: {\n      value: 'flex-start'\n    }\n  },\n  itemBottomGap: {\n    desktop: {\n      value: '25px'\n    }\n  },\n  separatorStyle: {\n    desktop: {\n      value: 'dotted'\n    }\n  },\n  separatorWeight: {\n    desktop: {\n      value: '2px'\n    }\n  },\n  separatorColor: {\n    desktop: {\n      value: '#333'\n    }\n  },\n  separatorGap: {\n    desktop: {\n      value: '10px'\n    }\n  },\n  /** D4 `default` 50%; `default_on_front` empty — field default for VB. */\n  imageMaxWidth: {\n    desktop: {\n      value: '50%'\n    }\n  },\n  /** D4 `default` 25px; `default_on_front` empty — effective preset matches `default`. */\n  imageSpacing: {\n    desktop: {\n      value: '25px'\n    }\n  }\n};\n\n/** D4 advanced_fields `fonts.header` */\nconst priceListTitleFontDefaultAttr = {\n  font: {\n    desktop: {\n      value: {\n        size: '26px',\n        lineHeight: '1em',\n        letterSpacing: '0px'\n      }\n    }\n  }\n};\n\n/** D4 advanced_fields `fonts.content` (Description) */\nconst priceListDescriptionFontDefaultAttr = {\n  font: {\n    desktop: {\n      value: {\n        size: '14px',\n        lineHeight: '1em',\n        letterSpacing: '0px'\n      }\n    }\n  }\n};\n\n/** D4 advanced_fields `fonts.price` */\nconst priceListPriceFontDefaultAttr = {\n  font: {\n    desktop: {\n      value: {\n        size: '18px',\n        lineHeight: '1em',\n        letterSpacing: '0px'\n      }\n    }\n  }\n};\nfunction price_list_settings_design_SettingsDesign() {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"text\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"content_orientation.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Vertical Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: priceListInner.contentOrientation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      'flex-start': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'flex-end': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"title.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title Text', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: priceListTitleFontDefaultAttr,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"price_text\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Price Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"price_background_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Price Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"price_padding.decoration.spacing\",\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    grouped: false,\n    attrName: \"price.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Price', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: priceListPriceFontDefaultAttr,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"dsm_price_styling.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"dsm_price_styling.decoration.boxShadow\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"content.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Description Text', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Description', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: priceListDescriptionFontDefaultAttr,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"image\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_max_width.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Width', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: priceListInner.imageMaxWidth\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 50,\n    defaultUnit: '%',\n    allowedUnits: ['%']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_spacing.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Gap Spacing', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: priceListInner.imageSpacing\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 50,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"dsm_image_styling.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"dsm_image_styling.decoration.boxShadow\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"separator\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Separator', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"separator_style.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Style', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: priceListInner.separatorStyle\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      solid: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Solid', 'dsm-supreme-modules-pro-for-divi')\n      },\n      dotted: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Dotted', 'dsm-supreme-modules-pro-for-divi')\n      },\n      dashed: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Dashed', 'dsm-supreme-modules-pro-for-divi')\n      },\n      double: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Double', 'dsm-supreme-modules-pro-for-divi')\n      },\n      groove: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Groove', 'dsm-supreme-modules-pro-for-divi')\n      },\n      ridge: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Ridge', 'dsm-supreme-modules-pro-for-divi')\n      },\n      inset: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inset', 'dsm-supreme-modules-pro-for-divi')\n      },\n      outset: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Outset', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"separator_weight.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Weight', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: priceListInner.separatorWeight\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 10,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"separator_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: priceListInner.separatorColor\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"separator_gap.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Gap Spacing', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: priceListInner.separatorGap\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 40,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"sizing\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Sizing', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"item_bottom_gap.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Item Bottom Spacing', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: priceListInner.itemBottomGap\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 60,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, {\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const price_list_settings_design = (price_list_settings_design_SettingsDesign);\n;// ./packages/module-library/price-list/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction price_list_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_price_list\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const price_list_settings_advanced = (price_list_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/price-list/module-styles.js\n\n\n\n/**\n * React function component for rendering module style.\n */\nconst price_list_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'title'\n  }), elements.style({\n    attrName: 'price'\n  }), elements.style({\n    attrName: 'content'\n  }), elements.style({\n    attrName: 'dsm_image_styling'\n  }), elements.style({\n    attrName: 'border-bottom-width'\n  }), elements.style({\n    attrName: 'item_bottom_gap'\n  }), elements.style({\n    attrName: 'price_padding'\n  }), elements.style({\n    attrName: 'dsm_price_styling'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-pricelist-image`,\n    attr: attrs?.image_max_width?.innerContent,\n    property: \"width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_price_list_child .dsm-pricelist-image`,\n    attr: attrs?.image_spacing?.innerContent,\n    property: \"margin-right\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-pricelist-separator`,\n    attr: attrs?.separator_style?.innerContent,\n    property: \"border-bottom-style\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-pricelist-separator`,\n    attr: attrs?.separator_weight?.innerContent,\n    property: \"border-bottom-width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-pricelist-separator`,\n    attr: attrs?.separator_color?.innerContent,\n    property: \"border-bottom-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-pricelist-separator`,\n    attr: attrs?.separator_gap?.innerContent,\n    property: \"margin-left\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-pricelist-separator`,\n    attr: attrs?.separator_gap?.innerContent,\n    property: \"margin-right\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_price_list_child`,\n    attr: attrs?.item_bottom_gap?.innerContent,\n    property: \"margin-bottom\",\n    important: true\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_price_list_child`,\n    attr: attrs?.content_orientation?.innerContent,\n    property: \"align-items\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-pricelist-price`,\n    attr: attrs?.price_background_color?.innerContent,\n    property: \"background-color\"\n  }));\n};\n;// ./packages/module-library/price-list/edit.js\n\n\n\n// Divi package dependencies.\n\n\n\n// Custom dependencies.\n\n\n\n/**\n * React function component for registering module script data.\n */\nconst price_list_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction price_list_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements,\n  childrenIds\n}) {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: price_list_edit_ModuleScriptData,\n    stylesComponent: price_list_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ChildModulesContainer, {\n    ids: childrenIds\n  }));\n}\n/* harmony default export */ const price_list_edit = (price_list_edit_Edit);\n;// ./packages/module-library/price-list/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmPriceList', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/price-list': {\n      name: 'divi-supreme/price-list',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 4.527344 10.597656 C 4.089844 10.597656 3.734375 10.238281 3.734375 9.800781 C 3.734375 9.363281 4.089844 9.007812 4.527344 9.007812 C 4.964844 9.007812 5.324219 9.363281 5.324219 9.800781 C 5.324219 10.238281 4.964844 10.597656 4.527344 10.597656 Z M 4.527344 9.445312 C 4.332031 9.445312 4.171875 9.605469 4.171875 9.800781 C 4.171875 9.996094 4.332031 10.160156 4.527344 10.160156 C 4.722656 10.160156 4.886719 9.996094 4.886719 9.800781 C 4.886719 9.605469 4.722656 9.445312 4.527344 9.445312 Z M 4.527344 9.445312 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.667969 5.488281 C 11.230469 5.488281 10.871094 5.132812 10.871094 4.695312 C 10.871094 4.257812 11.230469 3.898438 11.667969 3.898438 C 12.105469 3.898438 12.460938 4.257812 12.460938 4.695312 C 12.460938 5.132812 12.105469 5.488281 11.667969 5.488281 Z M 11.667969 4.335938 C 11.472656 4.335938 11.3125 4.496094 11.3125 4.695312 C 11.3125 4.890625 11.472656 5.050781 11.667969 5.050781 C 11.863281 5.050781 12.023438 4.890625 12.023438 4.695312 C 12.023438 4.496094 11.863281 4.335938 11.667969 4.335938 Z M 11.667969 4.335938 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 9.933594 9.875 C 9.796875 9.4375 9.394531 9.144531 8.933594 9.144531 C 8.703125 9.144531 8.511719 8.957031 8.511719 8.726562 C 8.511719 8.496094 8.703125 8.304688 8.933594 8.304688 C 9.164062 8.304688 9.351562 8.496094 9.351562 8.726562 C 9.351562 8.898438 9.496094 9.035156 9.664062 9.035156 C 9.832031 9.035156 9.972656 8.890625 9.972656 8.726562 C 9.972656 8.265625 9.675781 7.859375 9.242188 7.722656 L 9.242188 7.585938 C 9.242188 7.410156 9.097656 7.273438 8.933594 7.273438 C 8.757812 7.273438 8.621094 7.417969 8.621094 7.585938 L 8.621094 7.722656 C 8.066406 7.894531 7.761719 8.484375 7.9375 9.035156 C 8.074219 9.472656 8.476562 9.765625 8.9375 9.765625 C 9.167969 9.765625 9.359375 9.957031 9.359375 10.1875 C 9.359375 10.417969 9.167969 10.609375 8.9375 10.609375 C 8.707031 10.609375 8.515625 10.417969 8.515625 10.1875 C 8.515625 10.015625 8.375 9.875 8.207031 9.875 C 8.035156 9.875 7.894531 10.019531 7.894531 10.1875 C 7.894531 10.648438 8.195312 11.050781 8.625 11.1875 L 8.625 11.34375 C 8.625 11.519531 8.769531 11.65625 8.9375 11.65625 C 9.109375 11.65625 9.25 11.511719 9.25 11.34375 L 9.25 11.1875 C 9.800781 11.015625 10.105469 10.429688 9.933594 9.875 Z M 9.933594 9.875 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 9.566406 4.261719 C 9.53125 4.234375 9.496094 4.210938 9.460938 4.1875 L 9.460938 4.757812 L 11.78125 6.796875 L 11.78125 12.472656 C 11.78125 12.761719 11.546875 12.996094 11.257812 12.996094 L 6.609375 12.996094 C 6.324219 12.996094 6.085938 12.761719 6.085938 12.472656 L 6.085938 6.796875 L 8.40625 4.757812 L 8.40625 4.1875 C 8.375 4.210938 8.339844 4.234375 8.304688 4.261719 L 5.644531 6.601562 L 5.644531 12.480469 C 5.644531 13.007812 6.074219 13.441406 6.605469 13.441406 L 11.253906 13.441406 C 11.78125 13.441406 12.214844 13.007812 12.214844 12.480469 L 12.214844 6.59375 Z M 9.566406 4.261719 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 8.9375 6.722656 C 8.523438 6.722656 8.191406 6.386719 8.191406 5.972656 L 8.191406 3.414062 C 8.191406 3 8.523438 2.667969 8.9375 2.667969 C 9.351562 2.667969 9.6875 3 9.6875 3.414062 L 9.6875 5.976562 C 9.679688 6.386719 9.347656 6.722656 8.9375 6.722656 Z M 8.9375 3.105469 C 8.769531 3.105469 8.632812 3.242188 8.632812 3.410156 L 8.632812 5.972656 C 8.632812 6.140625 8.769531 6.277344 8.9375 6.277344 C 9.105469 6.277344 9.242188 6.140625 9.242188 5.972656 L 9.242188 3.414062 C 9.242188 3.242188 9.105469 3.105469 8.9375 3.105469 Z M 8.9375 3.105469 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/price-list/index.js\n// External library dependencies.\n\n\n// Wordpress dependencies.\n\n\n\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\n\n\nconst PRICE_LIST_CHILD = 'dsm/price-list-child';\nconst priceListDefaultChildTemplate = buildParentDefaultChildTemplate(PRICE_LIST_CHILD, 3, [{\n  title: 'Item 1',\n  price: '$8'\n}, {\n  title: 'Item 2',\n  price: '$12'\n}, {\n  title: 'Item 3',\n  price: '$15'\n}].map(row => ({\n  title: {\n    innerContent: {\n      desktop: {\n        value: row.title\n      }\n    }\n  },\n  price: {\n    innerContent: {\n      desktop: {\n        value: row.price\n      }\n    }\n  }\n})));\nconst priceListModule = {\n  metadata: price_list_module_namespaceObject,\n  conversionOutline: price_list_conversion_outline_conversionOutline,\n  renderers: {\n    edit: price_list_edit,\n    styles: price_list_module_styles_ModuleStyles\n  },\n  childrenName: [PRICE_LIST_CHILD],\n  template: priceListDefaultChildTemplate,\n  callbacks: buildChildDraggableListCallbacks([PRICE_LIST_CHILD]),\n  settings: {\n    content: price_list_settings_content,\n    design: price_list_settings_design,\n    advanced: price_list_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    }\n  }\n};\n/* harmony default export */ const price_list = (priceListModule);\n;// ./packages/module-library/price-list-child/module.json\nconst price_list_child_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/price-list-child\",\"d4Shortcode\":\"dsm_pricelist_child\",\"title\":\"Supreme Price List\",\"titles\":\"Supreme Price List\",\"category\":\"child-module\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}},\"default\":{\"meta\":{\"adminLabel\":{\"desktop\":{\"value\":\"Supreme Price List\"}}}}},\"price\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"selector\":\"{{selector}}\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"title\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"selector\":\"{{selector}}\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image\":{\"type\":\"object\",\"inlineEditor\":\"UploadImage\",\"selector\":\"{{selector}}\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"alt\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"selector\":\"{{selector}}\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"content\":{\"type\":\"object\",\"inlineEditor\":\"RichTextContainer\",\"selector\":\"{{selector}}\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_max_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_spacing\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_image_styling\":{\"type\":\"object\",\"selector\":\".dsm_price_list {{selector}} .dsm-pricelist-image img\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\".dsm_price_list {{selector}} .dsm-pricelist-image img\",\"important\":true},\"boxShadow\":{\"selector\":\".dsm_price_list {{selector}} .dsm-pricelist-image img\",\"useOverlay\":true}}}}}');\n;// ./packages/module-library/price-list-child/settings-content.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\nfunction price_list_child_settings_content_SettingsContent({\n  defaultSettingsAttrs\n}) {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"price.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Price', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"title.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"content.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RichTextContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"image\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image.innerContent\",\n    subName: \"src\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const price_list_child_settings_content = (price_list_child_settings_content_SettingsContent);\n;// ./packages/module-library/price-list-child/settings-design.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\nfunction price_list_child_settings_design_SettingsDesign({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"image\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_max_width.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Width', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 50,\n    defaultUnit: '%',\n    allowedUnits: ['%']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_spacing.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Gap Spacing', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 50,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"dsm_image_styling.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"dsm_image_styling.decoration.boxShadow\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null));\n}\n/* harmony default export */ const price_list_child_settings_design = (price_list_child_settings_design_SettingsDesign);\n;// ./packages/module-library/price-list-child/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction price_list_child_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_price_list_child\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const price_list_child_settings_advanced = (price_list_child_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/price-list-child/module-styles.js\n\n\n\n/**\n * React function component for rendering module style.\n */\nconst price_list_child_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'dsm_image_styling'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm_price_list  ${orderClass} .dsm-pricelist-image`,\n    attr: attrs?.image_max_width?.innerContent,\n    property: \"max-width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm_price_list ${orderClass}.dsm_price_list_child .dsm-pricelist-image`,\n    attr: attrs?.image_spacing?.innerContent,\n    property: \"margin-right\"\n  }));\n};\n;// ./packages/module-library/price-list-child/edit.js\n\n\n\n\n\n// Divi package dependencies.\n\n\n// Custom dependencies.\n\n\n\n/**\n * React function component for registering module script data.\n */\n\nconst price_list_child_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction price_list_child_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  const {} = attrs;\n  const contentAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.content?.innerContent);\n  const imageAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.image?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: price_list_child_edit_ModuleScriptData,\n    stylesComponent: price_list_child_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n      params.classnamesInstance.add('dsm-pricelist-vb');\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), !(0,lodash.isEmpty)(imageAttr) && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-pricelist-image\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: imageAttr\n  }, resolvedImage => /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n    src: resolvedImage\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_pricelist_item_wrapper\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-pricelist-header\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-pricelist-title et_pb_module_header\"\n  }, elements.render({\n    attrName: 'title'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-pricelist-separator\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-pricelist-price\"\n  }, elements.render({\n    attrName: 'price'\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-pricelist-description\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: contentAttr\n  }, resolvedContent => /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_card_description\",\n    dangerouslySetInnerHTML: {\n      __html: resolvedContent\n    }\n  })))));\n}\n/* harmony default export */ const price_list_child_edit = (price_list_child_edit_Edit);\n;// ./packages/module-library/price-list-child/conversion-outline.js\nconst price_list_child_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow'\n    },\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    margin_padding: 'module.decoration.spacing'\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    price: 'price.innerContent.*',\n    title: 'title.innerContent.*',\n    image: 'image.innerContent.*',\n    content: 'content.innerContent.*'\n  }\n};\n;// ./packages/module-library/price-list-child/index.js\n// External library dependencies.\n\n// Wordpress dependencies.\n\n// Module metadata that is used in both Frontend and Visual Builder.\n\n//  Custom dependencies.\n\n\n\n\n\n\nconst priceListChildModule = {\n  metadata: price_list_child_module_namespaceObject,\n  renderers: {\n    edit: price_list_child_edit,\n    styles: price_list_child_module_styles_ModuleStyles\n  },\n  parentsName: ['dsm/price-list'],\n  settings: {\n    content: price_list_child_settings_content,\n    design: price_list_child_settings_design,\n    advanced: price_list_child_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    price: {\n      innerContent: {\n        desktop: {\n          value: '$8'\n        }\n      }\n    },\n    title: {\n      innerContent: {\n        desktop: {\n          value: 'The title of the first pricing item'\n        }\n      }\n    }\n  },\n  conversionOutline: price_list_child_conversion_outline_conversionOutline\n};\n/* harmony default export */ const price_list_child = (priceListChildModule);\n;// ./packages/module-library/progress-bar/module.json\nconst progress_bar_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/progress-bar\",\"d4Shortcode\":\"dsm_progress_bar\",\"title\":\"Supreme Progress Bar\",\"titles\":\"Supreme Progress Bar\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/progress-bar\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"percentage\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-current-progress-percentage\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tracker_type\":{\"type\":\"object\",\"inlineEditor\":\"selectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"horizontal\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_progress_relative\":{\"type\":\"object\",\"inlineEditor\":\"selectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"entire_page\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_progress_selector\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_progress_direction\":{\"type\":\"object\",\"inlineEditor\":\"buttonOptionsContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_show_percentage\":{\"type\":\"object\",\"inlineEditor\":\"toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_percentage_direction\":{\"type\":\"object\",\"inlineEditor\":\"buttonOptionsContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tracker_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"colorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_progress_height\":{\"type\":\"object\",\"inlineEditor\":\"rangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_progress_indicator_width\":{\"type\":\"object\",\"inlineEditor\":\"rangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_progress_tracker_width\":{\"type\":\"object\",\"inlineEditor\":\"rangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_indicator_color\":{\"type\":\"object\",\"inlineEditor\":\"colorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tracker_color\":{\"type\":\"object\",\"inlineEditor\":\"colorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_progress_alignment\":{\"type\":\"object\",\"inlineEditor\":\"buttonOptionsContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"center\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_progress_circle_size\":{\"type\":\"object\",\"inlineEditor\":\"rangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"progress_indicator_bg_color\":{\"type\":\"object\",\"selector\":\"{{selector}} div.dsm-current-progress\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"background\":{\"selector\":\"{{selector}} div.dsm-current-progress\"}}},\"indicatorStyle\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-progress-bar-container .dsm-current-progress\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-progress-bar-container .dsm-current-progress\",\"important\":true}}},\"trackerStyle\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-progress-bar-container.dsm-progress-bar-tracker-horizontal\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-progress-bar-container.dsm-progress-bar-tracker-horizontal\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-progress-bar-container.dsm-progress-bar-tracker-horizontal\"}}},\"css\":{\"type\":\"object\",\"inlineEditor\":\"codemirror\",\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/progress-bar/module-default-render-attributes.json\nconst progress_bar_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"module\":{\"decoration\":{},\"advanced\":{\"text\":{\"text\":{\"desktop\":{\"value\":{\"color\":\"light\"}}}}}},\"percentage\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"size\":\"14px\",\"lineHeight\":\"1.7em\",\"letterSpacing\":\"0px\"}}}}}},\"dsm_tracker_type\":{\"innerContent\":{\"desktop\":{\"value\":\"horizontal\"}}},\"dsm_progress_relative\":{\"innerContent\":{\"desktop\":{\"value\":\"entire_page\"}}},\"dsm_progress_selector\":{\"innerContent\":{\"desktop\":{\"value\":{\"text\":\"\"}}}},\"dsm_progress_direction\":{\"innerContent\":{\"desktop\":{\"value\":\"left\"}}},\"dsm_show_percentage\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"dsm_percentage_direction\":{\"innerContent\":{\"desktop\":{\"value\":\"right\"}}},\"dsm_progress_alignment\":{\"innerContent\":{\"desktop\":{\"value\":\"center\"}}},\"dsm_indicator_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#7ebec5\"}}},\"dsm_tracker_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#eeeeee\"}}},\"dsm_progress_indicator_width\":{\"innerContent\":{\"desktop\":{\"value\":\"4px\"}}},\"dsm_progress_tracker_width\":{\"innerContent\":{\"desktop\":{\"value\":\"4px\"}}},\"dsm_progress_circle_size\":{\"innerContent\":{\"desktop\":{\"value\":\"200px\"}}},\"dsm_progress_height\":{\"innerContent\":{\"desktop\":{\"value\":\"30px\"}}},\"dsm_tracker_bg_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"progress_indicator_bg_color\":{\"decoration\":{\"background\":{}}}}');\n;// ./packages/module-library/progress-bar/progress-bar-vb-default-attrs.js\n/**\n * Visual Builder `defaultAttr` map from `module-default-render-attributes.json`.\n *\n * @package DiviSupreme\n */\n\n\n\n/** Keys with `innerContent` excluded from the flat innerContent map. */\nconst progress_bar_vb_default_attrs_skipInnerContentMapKeys = new Set(['module', 'percentage', 'progress_indicator_bg_color']);\n\n/** `FontGroup` for `attrName=\"percentage.decoration.font\"`. */\nconst progressBarPercentageFontGroupDefaultAttr = progress_bar_module_default_render_attributes_namespaceObject.percentage?.decoration?.font;\n\n/** `BackgroundGroup` for `progress_indicator_bg_color.decoration.background`. */\nconst progressBarProgressIndicatorBackgroundDefaultAttr = progress_bar_module_default_render_attributes_namespaceObject.progress_indicator_bg_color?.decoration?.background;\n\n/** `innerContent` defaults per attribute key (for `FieldContainer` `defaultAttr`). */\nconst progressBarFieldDefaultInnerContent = Object.fromEntries(Object.entries(progress_bar_module_default_render_attributes_namespaceObject).filter(([key, attr]) => !progress_bar_vb_default_attrs_skipInnerContentMapKeys.has(key) && attr && typeof attr === 'object' && Object.prototype.hasOwnProperty.call(attr, 'innerContent')).map(([key, attr]) => [key, attr.innerContent]));\n\n/** @type {typeof progressBarFieldDefaultInnerContent} */\nconst progressBarFd = progressBarFieldDefaultInnerContent;\n;// ./packages/module-library/progress-bar/settings-content.js\n\n// Wordpress dependencies.\n\n\n// Divi package dependencies.\n\n\n\n\n\n\nfunction progress_bar_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  const progressRelative = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_progress_relative?.innerContent);\n  const percentage = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_show_percentage?.innerContent);\n  const trackerType = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_tracker_type?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('General', 'dsm-supreme-modules-pro-for-divi'),\n    preset: \"content\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tracker_type.innerContent\",\n    defaultAttr: progressBarFd.dsm_tracker_type,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tracker Type', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      horizontal: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Horizontal', 'dsm-supreme-modules-pro-for-divi')\n      },\n      circular: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Circular', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_progress_relative.innerContent\",\n    defaultAttr: progressBarFd.dsm_progress_relative,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Progress Relative to', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      entire_page: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Entire Page', 'dsm-supreme-modules-pro-for-divi')\n      },\n      selector: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Selector', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_progress_selector.innerContent\",\n    subName: \"text\",\n    defaultAttr: progressBarFd.dsm_progress_selector,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Selector', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'selector' === progressRelative,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_progress_direction.innerContent\",\n    defaultAttr: progressBarFd.dsm_progress_direction,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Direction', 'dsm-supreme-modules-pro-for-divi'),\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: {\n      left: {\n        label: 'Left'\n      },\n      right: {\n        label: 'Right'\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_show_percentage.innerContent\",\n    defaultAttr: progressBarFd.dsm_show_percentage,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Percentage', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_percentage_direction.innerContent\",\n    defaultAttr: progressBarFd.dsm_percentage_direction,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Direction', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === percentage && 'horizontal' === trackerType,\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: {\n      left: {\n        label: 'Left'\n      },\n      right: {\n        label: 'Right'\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_progress_circle_size.innerContent\",\n    defaultAttr: progressBarFd.dsm_progress_circle_size,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Size', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'horizontal' !== trackerType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 200,\n    defaultUnit: 'px'\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const progress_bar_settings_content = (progress_bar_settings_content_SettingsContent);\n;// ./packages/module-library/progress-bar/settings-design.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\nfunction progress_bar_settings_design_SettingsDesign({\n  attrs\n}) {\n  const trackerType = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_tracker_type?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"alignment\",\n    visible: 'circular' === trackerType,\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Alignment', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_progress_alignment.innerContent\",\n    defaultAttr: progressBarFd.dsm_progress_alignment,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"progress_indicator\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Progress Indicator', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_progress_indicator_width.innerContent\",\n    defaultAttr: progressBarFd.dsm_progress_indicator_width,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Width', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'circular' === trackerType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_indicator_color.innerContent\",\n    defaultAttr: progressBarFd.dsm_indicator_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Color', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'circular' === trackerType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, {\n    attrName: \"progress_indicator_bg_color.decoration.background\",\n    defaultAttr: progressBarProgressIndicatorBackgroundDefaultAttr,\n    grouped: false,\n    defaultPanel: \"color\",\n    visible: 'circular' !== trackerType\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"indicatorStyle.decoration.border\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Progress', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'circular' !== trackerType\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"tracker\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tracker', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_progress_tracker_width.innerContent\",\n    defaultAttr: progressBarFd.dsm_progress_tracker_width,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Width', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'circular' === trackerType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tracker_color.innerContent\",\n    defaultAttr: progressBarFd.dsm_tracker_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Color', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'circular' === trackerType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tracker_bg_color.innerContent\",\n    defaultAttr: progressBarFd.dsm_tracker_bg_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'circular' !== trackerType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_progress_height.innerContent\",\n    defaultAttr: progressBarFd.dsm_progress_height,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Height', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'circular' !== trackerType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"trackerStyle.decoration.border\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tracker', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'circular' !== trackerType\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"trackerStyle.decoration.boxShadow\",\n    grouped: false,\n    visible: 'horizontal' === trackerType\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"percentage.decoration.font\",\n    defaultAttr: progressBarPercentageFontGroupDefaultAttr,\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Percentage Text', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Percentage', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const progress_bar_settings_design = (progress_bar_settings_design_SettingsDesign);\n;// ./packages/module-library/progress-bar/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction progress_bar_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_progress_bar\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const progress_bar_settings_advanced = (progress_bar_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/progress-bar/module-styles.js\n\n\n\n\n/**\n * React function component for rendering module style.\n */\n\nconst progressDirectionDeclaration = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      direction: true\n    }\n  });\n  const isProgressDirection = 'right' === attrValue ? 'rtl' : 'ltr';\n  declarations.add('direction', isProgressDirection);\n  return declarations.value;\n};\nconst percentageDirectionDeclaration = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      direction: true\n    }\n  });\n  const isProgressDirection = 'right' === attrValue ? 'ltr' : 'rtl';\n  declarations.add('direction', isProgressDirection);\n  return declarations.value;\n};\nconst circleAlignmentDeclaration = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      margin: true\n    }\n  });\n  let alignValue = '';\n  switch (attrValue) {\n    case 'left':\n      alignValue = 'auto 0 0 0';\n      break;\n    case 'center':\n      alignValue = '0 auto';\n      break;\n    case 'right':\n      alignValue = '0 0 0 auto';\n      break;\n    default:\n      alignValue = '0 auto';\n  }\n  declarations.add('margin', alignValue);\n  return declarations.value;\n};\nconst progress_bar_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextStyle, {\n    selector: orderClass,\n    attr: attrs?.module?.advanced?.text\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'progress_indicator_bg_color'\n  }), elements.style({\n    attrName: 'percentage'\n  }), elements.style({\n    attrName: 'indicatorStyle'\n  }), elements.style({\n    attrName: 'trackerStyle'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-progress-bar-container.dsm-progress-bar-tracker-horizontal`,\n    attr: attrs?.dsm_progress_height?.innerContent,\n    property: \"height\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-progress-bar-tracker-horizontal`,\n    attr: attrs?.dsm_tracker_bg_color?.innerContent,\n    property: \"background\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-progress-bar-container.dsm-progress-bar-tracker-circular .dsm-progressbar-circular .current-progress`,\n    attr: attrs?.dsm_indicator_color?.innerContent,\n    property: \"stroke\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-progress-bar-container.dsm-progress-bar-tracker-circular .dsm-progressbar-circular .circle`,\n    attr: attrs?.dsm_tracker_color?.innerContent,\n    property: \"stroke\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-progress-bar-container.dsm-progress-bar-tracker-circular .dsm-progressbar-circular .current-progress`,\n    attr: attrs?.dsm_progress_indicator_width?.innerContent,\n    property: \"stroke-width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-progress-bar-container.dsm-progress-bar-tracker-circular .dsm-progressbar-circular .circle`,\n    attr: attrs?.dsm_progress_tracker_width?.innerContent,\n    property: \"stroke-width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-progress-bar-container.dsm-progress-bar-tracker-horizontal`,\n    attr: attrs?.dsm_progress_direction?.innerContent,\n    declarationFunction: progressDirectionDeclaration\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-progress-bar-container.dsm-progress-bar-tracker-horizontal .dsm-current-progress-percentage`,\n    attr: attrs?.dsm_percentage_direction?.innerContent,\n    declarationFunction: percentageDirectionDeclaration\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-progressbar-circular`,\n    attr: attrs?.dsm_progress_alignment?.innerContent,\n    declarationFunction: circleAlignmentDeclaration\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-progressbar-circular`,\n    attr: attrs?.dsm_progress_circle_size?.innerContent,\n    property: \"width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-progressbar-circular`,\n    attr: attrs?.dsm_progress_circle_size?.innerContent,\n    property: \"height\"\n  }));\n};\n;// ./packages/module-library/progress-bar/progress-bar-sync-top-offset.js\n/**\n * Sets `--dsm-progress-bar-fixed-offset` on the document root (wpadminbar + Divi `#top-header` / `#main-header`).\n * Used by the VB preview; keep logic aligned with `assets/js/progressbar.js`.\n *\n * @param {Document|undefined} rootDocument Target document (`document` or iframe).\n * @return {void}\n */\nfunction syncProgressBarFixedTopOffset(rootDocument) {\n  const doc = rootDocument || (typeof document !== 'undefined' ? document : null);\n  if (!doc || !doc.documentElement) {\n    return;\n  }\n  const resolveEl = id => {\n    let el = doc.getElementById(id);\n    if (!el && typeof window !== 'undefined' && window.parent !== window) {\n      try {\n        el = window.parent.document.getElementById(id);\n      } catch (e) {\n        // Cross-origin parent.\n      }\n    }\n    return el;\n  };\n  let offsetPx = 0;\n  const admin = resolveEl('wpadminbar');\n  if (admin) {\n    const win = admin.ownerDocument.defaultView;\n    if (win) {\n      const st = win.getComputedStyle(admin);\n      if (st.display !== 'none' && st.visibility !== 'hidden') {\n        const h = admin.getBoundingClientRect().height;\n        if (h > 0) {\n          offsetPx += Math.round(h);\n        }\n      }\n    }\n  }\n  const body = doc.body;\n  let etFixedNav = body && body.classList.contains('et_fixed_nav');\n  if (!etFixedNav && typeof window !== 'undefined' && window.parent !== window) {\n    try {\n      const parentBody = window.parent.document.body;\n      etFixedNav = parentBody && parentBody.classList.contains('et_fixed_nav');\n    } catch (e) {\n      // Cross-origin parent.\n    }\n  }\n  const headerIds = ['top-header', 'main-header'];\n  for (let i = 0; i < headerIds.length; i++) {\n    const hdr = resolveEl(headerIds[i]);\n    if (!hdr) {\n      continue;\n    }\n    const win = hdr.ownerDocument.defaultView;\n    if (!win) {\n      continue;\n    }\n    const st = win.getComputedStyle(hdr);\n    if (st.display === 'none' || st.visibility === 'hidden') {\n      continue;\n    }\n    const pos = st.position;\n    const fixedLike = pos === 'fixed' || pos === 'sticky';\n    const id = headerIds[i];\n    if (fixedLike || hdr.classList.contains('et-fixed-header') || etFixedNav && (id === 'main-header' || id === 'top-header')) {\n      offsetPx += hdr.offsetHeight;\n    }\n  }\n  doc.documentElement.style.setProperty('--dsm-progress-bar-fixed-offset', offsetPx + 'px');\n}\n;// ./packages/module-library/progress-bar/edit.js\n\n\n// Divi package dependencies.\n\n\n\n\n\n/**\n * React function component for registering module script data.\n */\nconst progress_bar_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\n\n/**\n * @param {number} n\n * @param {number} min\n * @param {number} max\n */\nfunction edit_clamp(n, min, max) {\n  return Math.min(max, Math.max(min, n));\n}\n\n/**\n * @param {Window} win\n */\nfunction getDocumentScrollY(win) {\n  var _ref, _ref2, _win$scrollY;\n  const d = win.document.documentElement;\n  const b = win.document.body;\n  return (_ref = (_ref2 = (_win$scrollY = win.scrollY) !== null && _win$scrollY !== void 0 ? _win$scrollY : d.scrollTop) !== null && _ref2 !== void 0 ? _ref2 : b.scrollTop) !== null && _ref !== void 0 ? _ref : 0;\n}\n\n/**\n * @param {Window} win\n */\nfunction entirePageProgress(win) {\n  const docEl = win.document.documentElement;\n  const body = win.document.body;\n  const scrollTop = getDocumentScrollY(win);\n  const scrollHeight = Math.max(body.scrollHeight, body.offsetHeight, docEl.scrollHeight, docEl.offsetHeight, docEl.clientHeight);\n  const clientHeight = win.innerHeight || docEl.clientHeight;\n  const maxScroll = scrollHeight - clientHeight;\n  if (maxScroll <= 0) {\n    return 100;\n  }\n  const pct = Math.ceil(scrollTop / maxScroll * 100);\n  return edit_clamp(pct, 0, 100);\n}\n\n/**\n * @param {Element|null} el\n * @param {Window} win\n */\nfunction percentageSeen(el, win) {\n  if (!el || !(el instanceof Element)) {\n    return 0;\n  }\n  const viewportH = win.innerHeight;\n  const scrollY = getDocumentScrollY(win);\n  const rect = el.getBoundingClientRect();\n  const elementTop = scrollY + rect.top;\n  const elementHeight = rect.height || el.offsetHeight || 1;\n  const distance = scrollY + viewportH - elementTop;\n  const denom = (viewportH + elementHeight) / 100;\n  const percentage = denom > 0 ? Math.round(distance / denom) : 0;\n  return edit_clamp(percentage, 0, 100);\n}\n\n/**\n * @param {SVGGeometryElement} circle\n * @param {number} w\n * @param {string} progressDirection\n */\nfunction applyCircularProgress(circle, w, progressDirection) {\n  const r = circle && circle.r && circle.r.baseVal ? circle.r.baseVal.value : 0;\n  if (!r) {\n    return;\n  }\n  const circumference = 2 * Math.PI * r;\n  circle.style.strokeDasharray = String(circumference);\n  const p = edit_clamp(w, 0, 100);\n  const offset = circumference * (1 - p / 100);\n  if (progressDirection === 'left') {\n    circle.style.transformOrigin = 'center';\n    circle.style.transform = 'scaleX(-1)';\n  } else {\n    circle.style.transform = '';\n  }\n  circle.style.strokeDashoffset = String(offset);\n}\nfunction progress_bar_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  const progressElement = (0,external_vendor_React_.useRef)();\n  const percentageElement = (0,external_vendor_React_.useRef)();\n  const progressBarWrapperElement = (0,external_vendor_React_.useRef)();\n  const dsm_tracker_type = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_tracker_type?.innerContent);\n  const dsm_progress_relative = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_progress_relative?.innerContent);\n  const dsm_show_percentage = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_show_percentage?.innerContent);\n  const dsm_progress_direction = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_progress_direction?.innerContent);\n  const rawSelector = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_progress_selector?.innerContent);\n  const dsm_progress_selector = (() => {\n    if (typeof rawSelector === 'object' && rawSelector !== null && 'text' in rawSelector) {\n      var _rawSelector$text;\n      return String((_rawSelector$text = rawSelector.text) !== null && _rawSelector$text !== void 0 ? _rawSelector$text : '');\n    }\n    return String(rawSelector !== null && rawSelector !== void 0 ? rawSelector : '');\n  })();\n\n  /**\n   * Divi Visual Builder renders the page inside `#et-vb-app-frame` (preview iframe).\n   * The top window stays `overflow: hidden` — only this frame’s document scrolls.\n   */\n  const getScrollContext = (0,external_vendor_React_.useCallback)(() => {\n    return {\n      win: window,\n      doc: document\n    };\n  }, []);\n  const updateProgress = (0,external_vendor_React_.useCallback)(() => {\n    const {\n      win,\n      doc\n    } = getScrollContext();\n    const progress = progressElement.current;\n    const percentage = percentageElement.current;\n    const progressWrapper = progressBarWrapperElement.current;\n    let w = 0;\n    if (dsm_progress_relative === 'entire_page') {\n      w = entirePageProgress(win);\n    } else if (dsm_progress_relative === 'selector') {\n      const sel = dsm_progress_selector;\n      const target = sel ? doc.querySelector(sel) : null;\n      w = percentageSeen(target, win);\n    }\n    if (!progress) {\n      return;\n    }\n    try {\n      if (dsm_tracker_type === 'circular') {\n        if (progressWrapper && progressWrapper.style.width) {\n          progressWrapper.style.removeProperty('width');\n        }\n        applyCircularProgress(progress, w, dsm_progress_direction || 'left');\n      }\n      if (dsm_tracker_type === 'horizontal') {\n        progress.style.setProperty('width', w + '%');\n      }\n      if (dsm_show_percentage === 'on' && percentage) {\n        percentage.textContent = Math.floor(w) + '%';\n      }\n    } catch (error) {\n      if (typeof console !== 'undefined' && console.error) {\n        console.error(error);\n      }\n    }\n  }, [dsm_progress_direction, dsm_progress_relative, dsm_progress_selector, dsm_show_percentage, dsm_tracker_type, getScrollContext]);\n  (0,external_vendor_React_.useEffect)(() => {\n    const doc = typeof document !== 'undefined' ? document : null;\n    if (doc?.documentElement) {\n      doc.documentElement.classList.add('dsm-has-progress-bar');\n    }\n    let parentWin = null;\n    try {\n      if (window.parent && window.parent !== window) {\n        parentWin = window.parent;\n      }\n    } catch (e) {\n      /* cross-origin */\n    }\n    const runFixedTopSync = () => {\n      syncProgressBarFixedTopOffset(typeof document !== 'undefined' ? document : undefined);\n    };\n    runFixedTopSync();\n    window.addEventListener('resize', runFixedTopSync, {\n      passive: true\n    });\n    if (parentWin) {\n      parentWin.addEventListener('resize', runFixedTopSync, {\n        passive: true\n      });\n    }\n    let raf = 0;\n    const onScrollOrResize = () => {\n      if (raf) {\n        cancelAnimationFrame(raf);\n      }\n      raf = requestAnimationFrame(() => {\n        raf = 0;\n        runFixedTopSync();\n        updateProgress();\n      });\n    };\n    const {\n      win\n    } = getScrollContext();\n    updateProgress();\n    win.addEventListener('scroll', onScrollOrResize, {\n      passive: true\n    });\n    win.addEventListener('resize', onScrollOrResize, {\n      passive: true\n    });\n    return () => {\n      if (doc?.documentElement) {\n        doc.documentElement.classList.remove('dsm-has-progress-bar');\n      }\n      window.removeEventListener('resize', runFixedTopSync);\n      if (parentWin) {\n        parentWin.removeEventListener('resize', runFixedTopSync);\n      }\n      if (raf) {\n        cancelAnimationFrame(raf);\n      }\n      win.removeEventListener('scroll', onScrollOrResize);\n      win.removeEventListener('resize', onScrollOrResize);\n    };\n  }, [getScrollContext, updateProgress]);\n  const showPercentage = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    ref: percentageElement,\n    className: \"dsm-current-progress-percentage\"\n  });\n  const horizontalProgress = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    ref: progressElement,\n    className: \"dsm-current-progress\"\n  }, 'on' === dsm_show_percentage && showPercentage);\n  const circularProgressbar = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    ref: progressBarWrapperElement,\n    className: \"dsm-progressbar-circular\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", {\n    width: \"100%\",\n    height: \"100%\",\n    xmlns: \"http://www.w3.org/2000/svg\",\n    version: \"1.1\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"circle\", {\n    className: \"circle\",\n    r: \"40%\",\n    cx: \"50%\",\n    cy: \"50%\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"circle\", {\n    ref: progressElement,\n    className: \"current-progress\",\n    r: \"40%\",\n    cx: \"50%\",\n    cy: \"50%\"\n  })), 'on' === dsm_show_percentage && showPercentage);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: progress_bar_edit_ModuleScriptData,\n    stylesComponent: progress_bar_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: `dsm-progress-bar-container dsm-progress-bar-tracker-${dsm_tracker_type}`,\n    \"data-relative\": dsm_progress_relative,\n    \"data-show_percentage\": dsm_show_percentage,\n    \"data-tracker_type\": dsm_tracker_type,\n    \"data-direction\": dsm_progress_direction,\n    \"data-selector\": dsm_progress_selector\n  }, 'horizontal' === dsm_tracker_type && horizontalProgress, 'circular' === dsm_tracker_type && circularProgressbar));\n}\n/* harmony default export */ const progress_bar_edit = (progress_bar_edit_Edit);\n;// ./packages/module-library/progress-bar/conversion-outline.js\nconst progress_bar_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'progress_indicator_bg_color.decoration.background',\n    borders: {\n      default: 'module.decoration.border',\n      progress_indicator_border: 'indicatorStyle.decoration.border',\n      progress_tracker_border: 'trackerStyle.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow',\n      tracker_shadow: 'trackerStyle.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    display_conditions: 'module.decoration.conditions',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    fonts: {\n      header: 'percentage.decoration.font'\n    },\n    height: 'module.decoration.sizing',\n    link_options: 'module.advanced.link',\n    margin_padding: 'module.decoration.spacing',\n    max_width: 'module.decoration.sizing',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    text: 'module.advanced.text',\n    text_shadow: {\n      default: 'module.advanced.text.textShadow'\n    },\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex'\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    dsm_tracker_type: 'dsm_tracker_type.innerContent.*',\n    dsm_progress_relative: 'dsm_progress_relative.innerContent.*',\n    dsm_progress_selector: 'dsm_progress_selector.innerContent.*',\n    dsm_progress_direction: 'dsm_progress_direction.innerContent.*',\n    dsm_show_percentage: 'dsm_show_percentage.innerContent.*',\n    dsm_percentage_direction: 'dsm_percentage_direction.innerContent.*',\n    dsm_tracker_bg_color: 'dsm_tracker_bg_color.innerContent.*',\n    dsm_progress_height: 'dsm_progress_height.innerContent.*',\n    dsm_progress_indicator_width: 'dsm_progress_indicator_width.innerContent.*',\n    dsm_progress_tracker_width: 'dsm_progress_tracker_width.innerContent.*',\n    dsm_indicator_color: 'dsm_indicator_color.innerContent.*',\n    dsm_tracker_color: 'dsm_tracker_color.innerContent.*',\n    dsm_progress_alignment: 'dsm_progress_alignment.innerContent.*',\n    dsm_progress_circle_size: 'dsm_progress_circle_size.innerContent.*',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/progress-bar/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmProgressbar', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/progress-bar': {\n      name: 'divi-supreme/progress-bar',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.765625 3.796875 C 11.308594 3.796875 10.933594 3.421875 10.933594 2.964844 C 10.933594 2.507812 11.308594 2.132812 11.765625 2.132812 C 12.222656 2.132812 12.59375 2.507812 12.59375 2.964844 C 12.59375 3.421875 12.222656 3.796875 11.765625 3.796875 Z M 11.765625 2.589844 C 11.558594 2.589844 11.390625 2.757812 11.390625 2.964844 C 11.390625 3.167969 11.558594 3.335938 11.765625 3.335938 C 11.96875 3.335938 12.136719 3.167969 12.136719 2.964844 C 12.136719 2.757812 11.96875 2.589844 11.765625 2.589844 Z M 11.765625 2.589844 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 5.984375 13.867188 C 5.589844 13.867188 5.269531 13.546875 5.269531 13.15625 C 5.269531 12.761719 5.589844 12.441406 5.984375 12.441406 C 6.375 12.441406 6.695312 12.761719 6.695312 13.15625 C 6.695312 13.546875 6.375 13.867188 5.984375 13.867188 Z M 5.984375 12.835938 C 5.808594 12.835938 5.664062 12.980469 5.664062 13.15625 C 5.664062 13.328125 5.808594 13.472656 5.984375 13.472656 C 6.160156 13.472656 6.304688 13.328125 6.304688 13.15625 C 6.304688 12.980469 6.160156 12.835938 5.984375 12.835938 Z M 5.984375 12.835938 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 8.433594 7.695312 L 9.453125 7.695312 L 9.980469 8.605469 C 10.015625 8.664062 10.082031 8.703125 10.148438 8.703125 C 10.21875 8.703125 10.285156 8.664062 10.320312 8.605469 L 10.847656 7.695312 L 11.671875 7.695312 C 12.015625 7.695312 12.296875 7.414062 12.296875 7.070312 L 12.296875 4.996094 C 12.296875 4.652344 12.015625 4.367188 11.671875 4.367188 L 8.433594 4.367188 C 8.089844 4.367188 7.804688 4.652344 7.804688 4.996094 L 7.804688 7.070312 C 7.804688 7.414062 8.089844 7.695312 8.433594 7.695312 Z M 8.195312 4.996094 C 8.195312 4.867188 8.304688 4.757812 8.433594 4.757812 L 11.671875 4.757812 C 11.800781 4.757812 11.90625 4.867188 11.90625 4.996094 L 11.90625 7.070312 C 11.90625 7.199219 11.800781 7.304688 11.671875 7.304688 L 10.734375 7.304688 C 10.667969 7.304688 10.601562 7.34375 10.566406 7.402344 L 10.148438 8.121094 L 9.734375 7.402344 C 9.699219 7.34375 9.632812 7.304688 9.5625 7.304688 L 8.433594 7.304688 C 8.304688 7.304688 8.195312 7.199219 8.195312 7.070312 Z M 8.195312 4.996094 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 9.453125 6.878906 C 9.488281 6.902344 9.527344 6.914062 9.566406 6.914062 C 9.628906 6.914062 9.6875 6.886719 9.726562 6.832031 L 10.703125 5.464844 C 10.765625 5.378906 10.742188 5.257812 10.65625 5.195312 C 10.570312 5.132812 10.445312 5.152344 10.382812 5.238281 L 9.40625 6.605469 C 9.34375 6.695312 9.363281 6.816406 9.453125 6.878906 Z M 9.453125 6.878906 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 9.566406 5.546875 C 9.675781 5.546875 9.761719 5.460938 9.761719 5.351562 C 9.761719 5.246094 9.675781 5.15625 9.566406 5.15625 C 9.457031 5.15625 9.371094 5.246094 9.371094 5.351562 C 9.371094 5.460938 9.457031 5.546875 9.566406 5.546875 Z M 9.566406 5.546875 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 10.539062 6.914062 C 10.648438 6.914062 10.734375 6.828125 10.734375 6.71875 C 10.734375 6.613281 10.648438 6.523438 10.539062 6.523438 C 10.429688 6.523438 10.34375 6.613281 10.34375 6.71875 C 10.34375 6.828125 10.429688 6.914062 10.539062 6.914062 Z M 10.539062 6.914062 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 13.859375 8.867188 L 11.039062 8.867188 C 10.929688 8.867188 10.84375 8.957031 10.84375 9.0625 C 10.84375 9.171875 10.929688 9.257812 11.039062 9.257812 L 13.664062 9.257812 L 13.664062 10.625 L 10.34375 10.625 L 10.34375 9.0625 C 10.34375 8.957031 10.257812 8.867188 10.148438 8.867188 L 2.140625 8.867188 C 2.035156 8.867188 1.945312 8.957031 1.945312 9.0625 L 1.945312 10.820312 C 1.945312 10.929688 2.035156 11.015625 2.140625 11.015625 L 13.859375 11.015625 C 13.96875 11.015625 14.054688 10.929688 14.054688 10.820312 L 14.054688 9.0625 C 14.054688 8.957031 13.96875 8.867188 13.859375 8.867188 Z M 3.832031 9.257812 L 4.183594 9.257812 L 3.578125 10.625 L 3.222656 10.625 Z M 2.796875 10.625 L 2.441406 10.625 L 3.050781 9.257812 L 3.402344 9.257812 Z M 4.613281 9.257812 L 4.964844 9.257812 L 4.359375 10.625 L 4.003906 10.625 Z M 5.394531 9.257812 L 5.746094 9.257812 L 5.140625 10.625 L 4.785156 10.625 Z M 6.175781 9.257812 L 6.527344 9.257812 L 5.921875 10.625 L 5.566406 10.625 Z M 6.957031 9.257812 L 7.308594 9.257812 L 6.703125 10.625 L 6.347656 10.625 Z M 7.738281 9.257812 L 8.089844 9.257812 L 7.484375 10.625 L 7.128906 10.625 Z M 8.519531 9.257812 L 8.871094 9.257812 L 8.265625 10.625 L 7.910156 10.625 Z M 9.300781 9.257812 L 9.652344 9.257812 L 9.046875 10.625 L 8.691406 10.625 Z M 2.621094 9.257812 L 2.335938 9.902344 L 2.335938 9.257812 Z M 9.472656 10.625 L 9.953125 9.546875 L 9.953125 10.625 Z M 9.472656 10.625 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/progress-bar/index.js\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n// Custom dependencies.\n\n\n\n\n\n\n\nconst progressBarModule = {\n  metadata: progress_bar_module_namespaceObject,\n  conversionOutline: progress_bar_conversion_outline_conversionOutline,\n  renderers: {\n    edit: progress_bar_edit,\n    styles: progress_bar_module_styles_ModuleStyles\n  },\n  defaultAttrs: {\n    ...progress_bar_module_default_render_attributes_namespaceObject\n  },\n  settings: {\n    content: progress_bar_settings_content,\n    design: progress_bar_settings_design,\n    advanced: progress_bar_settings_advanced\n  },\n  placeholderContent: {\n    module: {},\n    dsm_tracker_type: {\n      innerContent: {\n        desktop: {\n          value: 'horizontal'\n        }\n      }\n    },\n    dsm_progress_relative: {\n      innerContent: {\n        desktop: {\n          value: 'entire_page'\n        }\n      }\n    },\n    dsm_progress_selector: {\n      innerContent: {\n        desktop: {\n          value: {\n            text: ''\n          }\n        }\n      }\n    },\n    dsm_progress_direction: {\n      innerContent: {\n        desktop: {\n          value: 'left'\n        }\n      }\n    },\n    dsm_percentage_direction: {\n      innerContent: {\n        desktop: {\n          value: 'right'\n        }\n      }\n    },\n    dsm_show_percentage: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    dsm_progress_alignment: {\n      innerContent: {\n        desktop: {\n          value: 'center'\n        }\n      }\n    },\n    dsm_progress_indicator_width: {\n      innerContent: {\n        desktop: {\n          value: '4px'\n        }\n      }\n    },\n    dsm_progress_tracker_width: {\n      innerContent: {\n        desktop: {\n          value: '4px'\n        }\n      }\n    },\n    dsm_tracker_color: {\n      innerContent: {\n        desktop: {\n          value: '#eeeeee'\n        }\n      }\n    },\n    dsm_indicator_color: {\n      innerContent: {\n        desktop: {\n          value: '#7ebec5'\n        }\n      }\n    },\n    dsm_progress_circle_size: {\n      innerContent: {\n        desktop: {\n          value: '200px'\n        }\n      }\n    },\n    dsm_progress_height: {\n      innerContent: {\n        desktop: {\n          value: '30px'\n        }\n      }\n    }\n  }\n};\n/* harmony default export */ const progress_bar = (progressBarModule);\n;// ./packages/module-library/random-image/module.json\nconst random_image_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/random-image\",\"d4Shortcode\":\"dsm_random_image\",\"title\":\"Supreme Random Image\",\"titles\":\"Supreme Random Images\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/random-image\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"gallery_ids\":{\"type\":\"object\",\"inlineEditor\":\"GalleryContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"sizes\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_image_link_url\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"url_new_window\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"show_in_lightbox\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"lightbox_img_sizes\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"force_fullwidth\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_overlay\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"overlay_on_hover\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"overlay_icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"hover_overlay_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"hover_icon\":{\"type\":\"object\",\"inlineEditor\":\"IconPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/random-image/module-default-render-attributes.json\nconst random_image_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"module\":{\"decoration\":{}},\"gallery_ids\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"sizes\":{\"innerContent\":{\"desktop\":{\"value\":\"full\"}}},\"lightbox_img_sizes\":{\"innerContent\":{\"desktop\":{\"value\":\"full\"}}},\"use_image_link_url\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"url_new_window\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"show_in_lightbox\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"use_overlay\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"overlay_on_hover\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"force_fullwidth\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"overlay_icon_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"hover_overlay_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"hover_icon\":{\"innerContent\":{\"desktop\":{\"value\":{}}}}}');\n;// ./packages/module-library/random-image/random-image-vb-default-attrs.js\n/**\n * Visual Builder `defaultAttr` map from `module-default-render-attributes.json`.\n *\n * @package DiviSupreme\n */\n\n\nconst randomImageFieldDefaultInnerContent = Object.fromEntries(Object.entries(random_image_module_default_render_attributes_namespaceObject).filter(([, attr]) => attr && typeof attr === 'object' && attr.innerContent).map(([key, attr]) => [key, attr.innerContent]));\n\n/** @type {typeof randomImageFieldDefaultInnerContent} */\nconst randomImageFd = randomImageFieldDefaultInnerContent;\n;// ./packages/module-library/random-image/settings-content.js\n\n\n// Wordpress dependencies.\n\n\n\n\n\n// External dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\n\n\n/**\n * Read sizes map injected via wp_localize_script on divi-supreme-modules.\n *\n * @return {Record<string, string>}\n */\nfunction readImageSizesFromWindow() {\n  const raw = (0,lodash.get)(window, 'diviSupreme5.imageSizes', {});\n  return raw && typeof raw === 'object' ? raw : {};\n}\n\n/**\n * Minimal options if localize + REST are unavailable (labels are translated in JS).\n *\n * @return {Record<string, string>}\n */\nfunction getFallbackImageSizesMap() {\n  return {\n    full: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Full Size', 'dsm-supreme-modules-pro-for-divi'),\n    thumbnail: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Thumbnail', 'dsm-supreme-modules-pro-for-divi'),\n    medium: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Medium', 'dsm-supreme-modules-pro-for-divi'),\n    medium_large: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Medium Large', 'dsm-supreme-modules-pro-for-divi'),\n    large: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Large', 'dsm-supreme-modules-pro-for-divi')\n  };\n}\nfunction random_image_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  const useImageLinkUrl = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_image_link_url?.innerContent);\n  const showLightbox = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_in_lightbox?.innerContent);\n  const [imageSizesMap, setImageSizesMap] = (0,external_window_vendor_wp_element_namespaceObject.useState)(readImageSizesFromWindow);\n  (0,external_window_vendor_wp_element_namespaceObject.useEffect)(() => {\n    const fromWindow = readImageSizesFromWindow();\n    if (Object.keys(fromWindow).length > 0) {\n      setImageSizesMap(fromWindow);\n      return;\n    }\n    let cancelled = false;\n    external_window_wp_apiFetch_default()({\n      path: '/dsm/v1/image-sizes'\n    }).then(data => {\n      if (cancelled || !data || typeof data !== 'object') {\n        return;\n      }\n      setImageSizesMap(data);\n    }).catch(() => {});\n    return () => {\n      cancelled = true;\n    };\n  }, []);\n  const imageSizesOptions = (0,external_window_vendor_wp_element_namespaceObject.useMemo)(() => {\n    const source = imageSizesMap && Object.keys(imageSizesMap).length > 0 ? imageSizesMap : getFallbackImageSizesMap();\n    return Object.entries(source).reduce((acc, [key, value]) => {\n      // Labels from PHP are already translated; avoid double-__() in the builder.\n      acc[key] = {\n        label: String(value)\n      };\n      return acc;\n    }, {});\n  }, [imageSizesMap]);\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Images', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: randomImageFd.gallery_ids,\n    attrName: \"gallery_ids.innerContent\",\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadGallery, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: randomImageFd.sizes,\n    attrName: \"sizes.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Size', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('You have the option to decide whether the image should be a link. Please note that if you enter a link in the Media settings, that link will be used. Otherwise, the image URL link will be utilized instead.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: imageSizesOptions\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"link\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Link', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: randomImageFd.use_image_link_url,\n    attrName: \"use_image_link_url.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Image Link URL', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('You have the option to decide whether the image should be a link. Please note that if you enter a link in the Media settings, that link will be used. Otherwise, the image URL link will be utilized instead.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: randomImageFd.url_new_window,\n    attrName: \"url_new_window.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Link Target', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose whether or not your link opens in a new window', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useImageLinkUrl\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      off: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The Same Window', 'dsm-supreme-modules-pro-for-divi')\n      },\n      on: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The New Tab', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"lightbox\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Lightbox', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' !== useImageLinkUrl\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: randomImageFd.show_in_lightbox,\n    attrName: \"show_in_lightbox.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Open in Lightbox', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose whether or not the image should open in Lightbox. Note: if you select to open the image in Lightbox, url options below will be ignored.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: randomImageFd.lightbox_img_sizes,\n    attrName: \"lightbox_img_sizes.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Size', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === showLightbox\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: imageSizesOptions\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const random_image_settings_content = (random_image_settings_content_SettingsContent);\n;// ./packages/module-library/random-image/settings-design.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\nfunction random_image_settings_design_SettingsDesign({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  var _getAttrByMode;\n  const useOverlay = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_overlay?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'off';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"overlay\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay', 'dsm-supreme-modules-pro-for-divi'),\n    preset: \"content\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: randomImageFd.use_overlay,\n    attrName: \"use_overlay.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Overlay', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If enabled, an overlay color and icon will be displayed when a visitors hovers over the image', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: randomImageFd.overlay_on_hover,\n    attrName: \"overlay_on_hover.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Overlay On Hover', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If enabled, overlay will only show on hover.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useOverlay\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: randomImageFd.overlay_icon_color,\n    attrName: \"overlay_icon_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay Icon Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom color for the overlay icon', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useOverlay\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: randomImageFd.hover_overlay_color,\n    attrName: \"hover_overlay_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom color for the overlay', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useOverlay\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: randomImageFd.hover_icon,\n    attrName: \"hover_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Picker', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom icon for the overlay', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useOverlay\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const random_image_settings_design = (random_image_settings_design_SettingsDesign);\n;// ./packages/module-library/random-image/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction random_image_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_random_image\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const random_image_settings_advanced = (random_image_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/random-image/module-styles.js\n\n\n\n\n\n\nconst random_image_module_styles_overlayIconFontCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'font-family': true\n    }\n  });\n  if (isDsmIcon(attrValue)) {\n    return '';\n  }\n  addNativeIconFontFamily(declarations, attrValue);\n  addNativeIconFontContent(declarations, attrValue);\n  return declarations.value;\n};\n\n/**\n * React function component for rendering module style.\n */\nconst random_image_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  const gradient_angle = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.gradient_angle?.innerContent);\n  const fade_offset = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.fade_offset?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextStyle, {\n    selector: orderClass,\n    attr: attrs?.module?.advanced?.text\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'blob_style'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et_pb_has_overlay .et_overlay::before`,\n    attr: attrs?.hover_icon?.innerContent,\n    declarationFunction: random_image_module_styles_overlayIconFontCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et_overlay:before`,\n    attr: attrs?.overlay_icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et_overlay`,\n    attr: attrs?.hover_overlay_color?.innerContent,\n    property: \"background-color\"\n  }));\n};\n;// ./packages/module-library/random-image/edit.js\n\n\n\n\n\n\nconst random_image_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction random_image_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  var _getAttrByMode;\n  const galleryItems = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.gallery_ids?.innerContent);\n  const useOverlay = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_overlay?.innerContent);\n  const overlayOnHover = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.overlay_on_hover?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'on';\n  const showLightbox = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_in_lightbox?.innerContent);\n  const selectedSize = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.sizes?.innerContent) || 'full';\n  const lightboxImageSize = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.lightbox_img_sizes?.innerContent) || 'full';\n  const parsedGalleryItems = galleryItems?.split(',').map(Number);\n  const {\n    loading,\n    error,\n    media\n  } = use_media({\n    include: parsedGalleryItems\n  });\n  const [randomIndex, setRandomIndex] = (0,external_vendor_React_.useState)(null);\n  const lightboxRef = (0,external_vendor_React_.useRef)(null);\n  (0,external_vendor_React_.useEffect)(() => {\n    if (!loading && !error && media.length > 0) {\n      setRandomIndex(Math.floor(Math.random() * media.length));\n    }\n    if (showLightbox === 'on' && lightboxRef.current && media.length > 0) {\n      jQuery(lightboxRef.current).find('.dsm-image-lightbox').magnificPopup({\n        type: 'image',\n        removalDelay: 500,\n        mainClass: 'mfp-fade',\n        zoom: {\n          enabled: true,\n          duration: 500,\n          opener: function (element) {\n            return element.find('img');\n          }\n        }\n      });\n    }\n  }, [loading, error, media, showLightbox]);\n  const getImageUrl = (mediaItem, size) => {\n    if (!mediaItem || !mediaItem.media_details || !mediaItem.media_details.sizes) {\n      return mediaItem?.source_url;\n    }\n    if (size === 'full') {\n      return mediaItem.source_url;\n    }\n    const sizeInfo = mediaItem.media_details.sizes[size];\n    return sizeInfo ? sizeInfo.source_url : mediaItem.source_url;\n  };\n  const imageWrapClassName = ['et_pb_image_wrap', useOverlay === 'on' ? 'et_pb_has_overlay' : '', useOverlay === 'on' && overlayOnHover === 'off' ? 'dsm_random_image_overlay_off' : ''].filter(Boolean).join(' ');\n  const renderImage = () => {\n    if (loading || error || randomIndex === null) return null;\n    const mediaItem = media[randomIndex];\n    const imageUrl = getImageUrl(mediaItem, selectedSize);\n    const lightboxImageUrl = getImageUrl(mediaItem, lightboxImageSize);\n    const imageContent = /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n      src: imageUrl,\n      alt: mediaItem?.alt_text || ''\n    });\n    if (showLightbox === 'on') {\n      return /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n        className: \"dsm-image-lightbox\",\n        ref: lightboxRef\n      }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n        className: imageWrapClassName\n      }, /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n        href: lightboxImageUrl,\n        className: \"et_pb_image et_pb_lightbox_image dsm-image-lightbox\"\n      }, imageContent), useOverlay === 'on' && /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n        className: \"et_overlay\"\n      })));\n    }\n    return /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n      className: imageWrapClassName\n    }, imageContent, useOverlay === 'on' && /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n      className: \"et_overlay\"\n    }));\n  };\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: random_image_edit_ModuleScriptData,\n    stylesComponent: random_image_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), renderImage());\n}\n/* harmony default export */ const random_image_edit = (random_image_edit_Edit);\n;// ./packages/module-library/random-image/conversion-outline.js\n\nconst random_image_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    display_conditions: 'module.decoration.conditions',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    text: 'module.advanced.text',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    height: 'module.decoration.sizing',\n    link_options: 'module.advanced.link',\n    margin_padding: 'module.decoration.spacing',\n    max_width: 'module.decoration.sizing',\n    module: 'module.advanced.htmlAttributes'\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    gallery_ids: 'gallery_ids.innerContent.*',\n    sizes: 'sizes.innerContent.*',\n    use_image_link_url: 'use_image_link_url.innerContent.*',\n    url_new_window: 'url_new_window.innerContent.*',\n    show_in_lightbox: 'show_in_lightbox.innerContent.*',\n    lightbox_img_sizes: 'lightbox_img_sizes.innerContent.*',\n    force_fullwidth: 'force_fullwidth.innerContent.*',\n    use_overlay: 'use_overlay.innerContent.*',\n    overlay_on_hover: 'overlay_on_hover.innerContent.*',\n    overlay_icon_color: 'overlay_icon_color.innerContent.*',\n    hover_overlay_color: 'hover_overlay_color.innerContent.*',\n    hover_icon: 'hover_icon.innerContent.*',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    hover_icon: external_divi_conversion_namespaceObject.convertFontIcon,\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/random-image/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmRandomImage', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/random-image': {\n      name: 'divi-supreme/random-image',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 14.398438 1.601562 C 14.105469 1.601562 13.867188 1.359375 13.867188 1.066406 C 13.867188 0.773438 14.105469 0.535156 14.398438 0.535156 C 14.695312 0.535156 14.933594 0.773438 14.933594 1.066406 C 14.933594 1.359375 14.695312 1.601562 14.398438 1.601562 Z M 14.398438 0.828125 C 14.269531 0.828125 14.160156 0.933594 14.160156 1.066406 C 14.160156 1.199219 14.269531 1.304688 14.398438 1.304688 C 14.53125 1.304688 14.640625 1.199219 14.640625 1.066406 C 14.640625 0.933594 14.53125 0.828125 14.398438 0.828125 Z M 14.398438 0.828125 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 1.601562 15.464844 C 1.304688 15.464844 1.066406 15.226562 1.066406 14.933594 C 1.066406 14.640625 1.304688 14.398438 1.601562 14.398438 C 1.894531 14.398438 2.132812 14.640625 2.132812 14.933594 C 2.132812 15.226562 1.894531 15.464844 1.601562 15.464844 Z M 1.601562 14.695312 C 1.46875 14.695312 1.359375 14.800781 1.359375 14.933594 C 1.359375 15.066406 1.46875 15.171875 1.601562 15.171875 C 1.730469 15.171875 1.839844 15.066406 1.839844 14.933594 C 1.839844 14.800781 1.730469 14.695312 1.601562 14.695312 Z M 1.601562 14.695312 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 2.675781 4.785156 L 2.785156 4.785156 C 2.851562 4.226562 3.296875 3.789062 3.855469 3.734375 C 3.921875 3.136719 4.429688 2.667969 5.046875 2.667969 L 12.675781 2.667969 C 13.695312 2.667969 14.527344 3.496094 14.527344 4.515625 L 14.527344 9.863281 C 14.527344 10.484375 14.050781 10.996094 13.445312 11.054688 C 13.382812 11.644531 12.886719 12.109375 12.277344 12.121094 C 12.277344 12.222656 12.261719 12.324219 12.230469 12.421875 C 12.09375 12.859375 11.6875 13.175781 11.207031 13.175781 L 2.675781 13.175781 C 2.082031 13.175781 1.601562 12.695312 1.601562 12.101562 L 1.601562 5.855469 C 1.601562 5.265625 2.082031 4.785156 2.675781 4.785156 Z M 2.105469 5.855469 L 2.105469 9.988281 L 3.203125 9.160156 C 3.503906 8.933594 3.910156 8.929688 4.214844 9.148438 L 5.601562 10.160156 L 8.253906 7.433594 C 8.566406 7.105469 9.082031 7.085938 9.421875 7.386719 L 11.773438 9.460938 L 11.773438 5.855469 C 11.773438 5.542969 11.519531 5.289062 11.207031 5.289062 L 2.675781 5.289062 C 2.359375 5.289062 2.105469 5.542969 2.105469 5.855469 Z M 2.105469 12.101562 C 2.105469 12.417969 2.359375 12.671875 2.675781 12.671875 L 11.207031 12.671875 C 11.460938 12.671875 11.675781 12.503906 11.746094 12.273438 C 11.765625 12.21875 11.773438 12.160156 11.773438 12.101562 L 11.773438 10.132812 L 9.085938 7.765625 C 8.949219 7.644531 8.742188 7.652344 8.613281 7.78125 L 7.417969 9.015625 L 5.039062 11.46875 C 4.988281 11.519531 4.925781 11.542969 4.859375 11.542969 C 4.792969 11.542969 4.730469 11.519531 4.683594 11.472656 C 4.582031 11.375 4.578125 11.214844 4.675781 11.117188 L 5.25 10.527344 L 3.917969 9.558594 C 3.792969 9.46875 3.628906 9.46875 3.507812 9.5625 L 2.105469 10.621094 Z M 12.949219 10.925781 L 12.949219 4.96875 C 12.949219 4.941406 12.949219 4.917969 12.945312 4.894531 C 12.90625 4.523438 12.59375 4.234375 12.214844 4.234375 L 9.125 4.234375 C 8.984375 4.234375 8.871094 4.121094 8.871094 3.980469 C 8.871094 3.839844 8.984375 3.726562 9.125 3.726562 L 12.214844 3.726562 C 12.898438 3.726562 13.453125 4.285156 13.453125 4.96875 L 13.453125 10.542969 C 13.777344 10.484375 14.023438 10.203125 14.023438 9.863281 L 14.023438 4.515625 C 14.023438 3.773438 13.417969 3.171875 12.675781 3.171875 L 5.046875 3.171875 C 4.710938 3.171875 4.429688 3.410156 4.367188 3.726562 L 7.105469 3.726562 C 7.246094 3.726562 7.359375 3.839844 7.359375 3.980469 C 7.359375 4.121094 7.246094 4.234375 7.105469 4.234375 L 3.972656 4.234375 C 3.640625 4.234375 3.359375 4.46875 3.296875 4.785156 L 11.207031 4.785156 C 11.796875 4.785156 12.277344 5.265625 12.277344 5.855469 L 12.277344 11.613281 C 12.648438 11.605469 12.949219 11.296875 12.949219 10.925781 Z M 12.949219 10.925781 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 4.753906 6.34375 C 5.335938 6.34375 5.804688 6.816406 5.804688 7.394531 C 5.804688 7.976562 5.335938 8.445312 4.753906 8.445312 C 4.175781 8.445312 3.703125 7.976562 3.703125 7.394531 C 3.703125 6.816406 4.175781 6.34375 4.753906 6.34375 Z M 4.753906 7.957031 C 5.0625 7.957031 5.316406 7.703125 5.316406 7.394531 C 5.316406 7.085938 5.0625 6.835938 4.753906 6.835938 C 4.445312 6.835938 4.195312 7.085938 4.195312 7.394531 C 4.195312 7.703125 4.445312 7.957031 4.753906 7.957031 Z M 4.753906 7.957031 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 8.414062 4.082031 C 8.40625 4.097656 8.398438 4.113281 8.390625 4.125 C 8.378906 4.140625 8.367188 4.152344 8.355469 4.164062 C 8.34375 4.179688 8.332031 4.1875 8.316406 4.199219 C 8.300781 4.207031 8.285156 4.214844 8.269531 4.222656 C 8.253906 4.230469 8.238281 4.234375 8.222656 4.238281 C 8.203125 4.242188 8.1875 4.242188 8.171875 4.242188 C 8.152344 4.242188 8.136719 4.242188 8.117188 4.238281 C 8.101562 4.234375 8.085938 4.230469 8.070312 4.222656 C 8.054688 4.214844 8.039062 4.207031 8.023438 4.199219 C 8.011719 4.1875 7.996094 4.179688 7.984375 4.164062 C 7.972656 4.152344 7.960938 4.140625 7.953125 4.125 C 7.941406 4.113281 7.933594 4.097656 7.929688 4.082031 C 7.921875 4.066406 7.917969 4.046875 7.914062 4.03125 C 7.910156 4.015625 7.90625 3.996094 7.90625 3.980469 C 7.90625 3.964844 7.910156 3.945312 7.914062 3.929688 C 7.917969 3.910156 7.921875 3.894531 7.929688 3.878906 C 7.933594 3.863281 7.941406 3.847656 7.953125 3.835938 C 7.960938 3.820312 7.972656 3.804688 7.984375 3.792969 C 7.996094 3.78125 8.011719 3.769531 8.023438 3.761719 C 8.039062 3.753906 8.054688 3.746094 8.070312 3.738281 C 8.085938 3.730469 8.101562 3.726562 8.117188 3.722656 C 8.152344 3.714844 8.1875 3.714844 8.222656 3.722656 C 8.238281 3.726562 8.253906 3.730469 8.269531 3.738281 C 8.285156 3.746094 8.300781 3.753906 8.316406 3.761719 C 8.332031 3.769531 8.34375 3.78125 8.355469 3.792969 C 8.367188 3.804688 8.378906 3.820312 8.390625 3.835938 C 8.398438 3.847656 8.40625 3.863281 8.414062 3.878906 C 8.417969 3.894531 8.425781 3.910156 8.429688 3.929688 C 8.429688 3.945312 8.433594 3.964844 8.433594 3.980469 C 8.433594 3.996094 8.429688 4.015625 8.429688 4.03125 C 8.425781 4.046875 8.417969 4.066406 8.414062 4.082031 Z M 8.414062 4.082031 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/random-image/index.js\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\nconst random_image_defaultAttrs = random_image_module_default_render_attributes_namespaceObject;\nconst randomImageModule = {\n  metadata: random_image_module_namespaceObject,\n  conversionOutline: random_image_conversion_outline_conversionOutline,\n  renderers: {\n    edit: random_image_edit,\n    styles: random_image_module_styles_ModuleStyles\n  },\n  defaultAttrs: random_image_defaultAttrs,\n  settings: {\n    content: random_image_settings_content,\n    design: random_image_settings_design,\n    advanced: random_image_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    ...random_image_module_default_render_attributes_namespaceObject\n  }\n};\n/* harmony default export */ const random_image = (randomImageModule);\n;// ./packages/module-library/readmore/module.json\nconst readmore_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"_comment\":\"!!! THIS IS AN AUTOMATICALLY GENERATED FILE - DO NOT EDIT !!!\",\"name\":\"dsm/readmore\",\"title\":\"Supreme Read More\",\"titles\":\"Supreme Read Mores\",\"category\":\"module\",\"childrenName\":[],\"allowAllElements\":true,\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"styleProps\":{\"sizing\":{\"important\":{\"desktop\":{\"value\":{\"width\":true}}}},\"spacing\":{\"important\":true}},\"settings\":{\"decoration\":{\"animation\":{},\"attributes\":{},\"background\":{},\"border\":{},\"boxShadow\":{},\"conditions\":{},\"disabledOn\":{},\"filters\":{},\"interactions\":{},\"overflow\":{},\"order\":{},\"transition\":{},\"position\":{},\"scroll\":{},\"spacing\":{},\"sizing\":{},\"sticky\":{},\"transform\":{},\"zIndex\":{},\"layout\":{}},\"advanced\":{\"elements\":{\"groupType\":\"group-item\",\"item\":{\"groupSlug\":\"contentElements\",\"priority\":5,\"render\":true,\"component\":{\"type\":\"group\",\"name\":\"divi/elements\",\"props\":{\"grouped\":false}}}},\"link\":{},\"loop\":{},\"text\":{}},\"meta\":{\"adminLabel\":{}}}},\"showReadMore\":{\"type\":\"object\",\"settings\":{\"innerContent\":{\"groupType\":\"group-item\",\"groupSlug\":\"readMoreSettings\",\"item\":{\"groupSlug\":\"readMoreSettings\",\"attrName\":\"showReadMore.innerContent\",\"label\":\"Show Read More\",\"render\":true,\"features\":{\"preset\":\"content\"},\"component\":{\"type\":\"field\",\"name\":\"divi/toggle\"}}}}},\"closeText\":{\"type\":\"object\",\"settings\":{\"innerContent\":{\"groupType\":\"group-item\",\"groupSlug\":\"readMoreSettings\",\"item\":{\"groupSlug\":\"readMoreSettings\",\"attrName\":\"closeText.innerContent\",\"label\":\"Close Text\",\"render\":true,\"features\":{\"preset\":\"content\",\"dynamicContent\":{\"type\":\"text\"}},\"component\":{\"type\":\"field\",\"name\":\"divi/text\"}}}}},\"openText\":{\"type\":\"object\",\"settings\":{\"innerContent\":{\"groupType\":\"group-item\",\"groupSlug\":\"readMoreSettings\",\"item\":{\"groupSlug\":\"readMoreSettings\",\"attrName\":\"openText.innerContent\",\"label\":\"Open Text\",\"render\":true,\"features\":{\"preset\":\"content\"},\"component\":{\"type\":\"field\",\"name\":\"divi/text\"}}}}},\"dsmHeight\":{\"type\":\"object\",\"settings\":{\"innerContent\":{\"groupType\":\"group-item\",\"groupSlug\":\"readMoreSettings\",\"item\":{\"groupSlug\":\"readMoreSettings\",\"attrName\":\"dsmHeight.innerContent\",\"label\":\"Height\",\"render\":true,\"features\":{\"preset\":\"content\"},\"component\":{\"type\":\"field\",\"name\":\"divi/range\",\"props\":{\"min\":0,\"max\":1000,\"cssProperty\":\"height\"}}}}}},\"openIcon\":{\"type\":\"object\",\"settings\":{\"innerContent\":{\"groupType\":\"group-item\",\"groupSlug\":\"readMoreSettings\",\"item\":{\"groupSlug\":\"readMoreSettings\",\"attrName\":\"openIcon.innerContent\",\"label\":\"Open Icon\",\"render\":true,\"features\":{\"preset\":\"content\"},\"component\":{\"type\":\"field\",\"name\":\"divi/icon-picker\"}}}}},\"closeIcon\":{\"type\":\"object\",\"settings\":{\"innerContent\":{\"groupType\":\"group-item\",\"groupSlug\":\"readMoreSettings\",\"item\":{\"groupSlug\":\"readMoreSettings\",\"attrName\":\"closeIcon.innerContent\",\"label\":\"Close Icon\",\"render\":true,\"features\":{\"preset\":\"content\"},\"component\":{\"type\":\"field\",\"name\":\"divi/icon-picker\"}}}}},\"iconSize\":{\"type\":\"object\",\"settings\":{\"innerContent\":{\"groupType\":\"group-item\",\"groupSlug\":\"readMoreSettings\",\"item\":{\"groupSlug\":\"readMoreSettings\",\"attrName\":\"iconSize.innerContent\",\"label\":\"Icon Size\",\"render\":true,\"features\":{\"preset\":\"content\"},\"component\":{\"type\":\"field\",\"name\":\"divi/range\",\"props\":{\"min\":0,\"max\":100,\"cssProperty\":\"font-size\"}}}}}},\"useShadow\":{\"type\":\"object\",\"settings\":{\"innerContent\":{\"groupType\":\"group-item\",\"groupSlug\":\"readMoreSettings\",\"item\":{\"groupSlug\":\"readMoreSettings\",\"attrName\":\"useShadow.innerContent\",\"label\":\"Use Shadow\",\"render\":true,\"features\":{\"preset\":\"content\"},\"component\":{\"type\":\"field\",\"name\":\"divi/toggle\"}}}}},\"collapseScrollToTop\":{\"type\":\"object\",\"settings\":{\"innerContent\":{\"groupType\":\"group-item\",\"groupSlug\":\"readMoreSettings\",\"item\":{\"groupSlug\":\"readMoreSettings\",\"attrName\":\"collapseScrollToTop.innerContent\",\"label\":\"Scroll to module on collapse\",\"render\":true,\"features\":{\"preset\":\"content\"},\"component\":{\"type\":\"field\",\"name\":\"divi/toggle\"}}}}},\"shadowFade\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-readmore-wrapper.dsm-readmore-shadow:not(.dsm-expanded)::after\",\"default\":{\"decoration\":{\"background\":{\"desktop\":{\"value\":{\"gradient\":{\"enabled\":\"on\",\"type\":\"linear\",\"direction\":\"to top\",\"directionRadial\":\"center\",\"stops\":[{\"position\":\"10\",\"color\":\"#ffffff\"},{\"position\":\"100\",\"color\":\"rgba(0,0,0,0)\"}],\"length\":\"100%\",\"overlaysImage\":\"off\"}}}}}},\"settings\":{\"decoration\":{\"background\":{}}}},\"button\":{\"type\":\"object\",\"selector\":\"{{selector}}  .dsm-readmore-button\",\"supportsCustomAttributes\":true,\"settings\":{\"decoration\":{\"background\":{},\"border\":{},\"boxShadow\":{},\"button\":{\"GroupLabel\":\"Voila\",\"groupName\":\"Inner\",\"component\":{\"props\":{\"fieldLabel\":\"Read More Button\",\"GroupLabel\":\"Voila\",\"fields\":{\"buttonIconGroup\":{\"render\":false}}}}},\"font\":{},\"spacing\":{}}},\"elementType\":\"button\",\"elementProps\":{\"hasWrapper\":true},\"styleProps\":{\"selector\":\"{{selector}}  .dsm-readmore-button\",\"boxShadow\":{\"propertySelectors\":{\"desktop\":{\"value\":{\"box-shadow\":\"{{selector}}  .dsm-readmore-button\"}}}},\"button\":{\"propertySelectors\":{\"desktop\":{\"value\":{\"text-align\":\"{{selector}} .dsm_button_wrapper\"}}}},\"font\":{\"important\":{\"font\":{\"desktop\":{\"value\":{\"color\":true,\"line-height\":true}}}}},\"spacing\":{\"propertySelectors\":{\"desktop\":{\"value\":{\"margin\":\"{{selector}} .dsm_button_wrapper\",\"padding\":\" {{selector}}  .dsm-readmore-button\"}}},\"important\":{\"desktop\":{\"value\":{\"margin\":true,\"padding\":true}}}}}}},\"settings\":{\"advanced\":\"auto\",\"groups\":{\"contentLink\":{\"panel\":\"content\",\"priority\":90,\"groupName\":\"contentLink\",\"component\":{\"name\":\"divi/composite\",\"props\":{\"groupLabel\":\"Link\"}}},\"readMoreSettings\":{\"panel\":\"content\",\"priority\":80,\"groupName\":\"readMoreSettings\",\"multiElements\":true,\"component\":{\"name\":\"divi/composite\",\"props\":{\"groupLabel\":\"Read More\"}}},\"contentElements\":{\"panel\":\"content\",\"priority\":5,\"groupName\":\"contentElements\",\"multiElements\":true,\"component\":{\"name\":\"divi/composite\",\"props\":{\"groupLabel\":\"Elements\"}}}}}}');\n;// ./packages/module-library/readmore/readmore-vb-default-attrs.js\n/**\n * Visual Builder defaults for Read More (registerModule + FieldContainer defaultAttr).\n *\n * @package DiviSupreme\n */\n\n/** `showReadMore.innerContent` — read-more behavior on by default so settings stay visible in VB. */\nconst readmoreShowReadMoreInnerContentDefaultAttr = {\n  desktop: {\n    value: 'on'\n  }\n};\n\n/** Full `showReadMore` attribute. */\nconst readmoreDefaultShowReadMore = {\n  innerContent: readmoreShowReadMoreInnerContentDefaultAttr\n};\n\n/**\n * Default fade overlay gradient: matches legacy SCSS\n * linear-gradient(to top, #fff 10%, rgba(0, 0, 0, 0) 100%).\n * Used by `BackgroundGroup` `defaultAttr` for `shadowFade.decoration.background`.\n */\nconst readmoreShadowFadeDecorationBackgroundDefaultAttr = {\n  desktop: {\n    value: {\n      gradient: {\n        enabled: 'on',\n        type: 'linear',\n        direction: 'to top',\n        directionRadial: 'center',\n        stops: [{\n          position: '10',\n          color: '#ffffff'\n        }, {\n          position: '100',\n          color: 'rgba(0,0,0,0)'\n        }],\n        length: '100%',\n        overlaysImage: 'off'\n      }\n    }\n  }\n};\n\n/** Full `shadowFade` attribute (decoration.background on ::after overlay). */\nconst readmoreDefaultShadowFade = {\n  decoration: {\n    background: readmoreShadowFadeDecorationBackgroundDefaultAttr\n  }\n};\n\n/**\n * Range innerContent must use a string at `desktop.value` (e.g. Card\n * `image_background_height`) so RangeContainer does not show `[object Object]`.\n */\nconst readmoreIconSizeInnerContentDefaultAttr = {\n  desktop: {\n    value: '24px'\n  }\n};\n\n/** Full `iconSize` attribute. */\nconst readmoreDefaultIconSize = {\n  innerContent: {\n    desktop: {\n      value: '24px'\n    }\n  }\n};\n\n/** `dsmHeight.innerContent` — collapsed height default 100px. */\nconst readmoreDsmHeightInnerContentDefaultAttr = {\n  desktop: {\n    value: '100px'\n  }\n};\n\n/** Full `dsmHeight` attribute. */\nconst readmoreDefaultDsmHeight = {\n  innerContent: {\n    desktop: {\n      value: '100px'\n    }\n  }\n};\n\n/** `useShadow.innerContent` — shadow fade on by default. */\nconst readmoreUseShadowInnerContentDefaultAttr = {\n  desktop: {\n    value: 'on'\n  }\n};\n\n/** Full `useShadow` attribute. */\nconst readmoreDefaultUseShadow = {\n  innerContent: {\n    desktop: {\n      value: 'on'\n    }\n  }\n};\n\n/** `collapseScrollToTop.innerContent` — smooth-scroll to module when collapsing (default off). */\nconst readmoreCollapseScrollToTopInnerContentDefaultAttr = {\n  desktop: {\n    value: 'off'\n  }\n};\n\n/** Full `collapseScrollToTop` attribute. */\nconst readmoreDefaultCollapseScrollToTop = {\n  innerContent: {\n    desktop: {\n      value: 'off'\n    }\n  }\n};\n;// ./packages/module-library/readmore/settings-content.js\n\n\n\n\n\n\n\n\n/**\n * Content panel: Elements + Read More + Link (Read More uses FieldContainers so defaultAttr works).\n *\n * @param {Object} props\n * @param {Object} props.groupConfiguration\n * @param {Object} props.attrs\n * @returns {React.Element}\n */\nconst readmore_settings_content_SettingsContent = ({\n  groupConfiguration,\n  attrs\n}) => {\n  const showReadMore = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.showReadMore?.innerContent) !== 'off';\n  const contentElements = groupConfiguration?.contentElements;\n  const contentLink = groupConfiguration?.contentLink;\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, contentElements ? /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleGroups, {\n    groups: {\n      contentElements\n    }\n  }) : null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"readmorePanel\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Read More', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"showReadMore.innerContent\",\n    defaultAttr: readmoreShowReadMoreInnerContentDefaultAttr,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Read More', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"closeText.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Close Text', 'dsm-supreme-modules-pro-for-divi'),\n    visible: showReadMore,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"openText.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Open Text', 'dsm-supreme-modules-pro-for-divi'),\n    visible: showReadMore\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsmHeight.innerContent\",\n    defaultAttr: readmoreDsmHeightInnerContentDefaultAttr,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Height', 'dsm-supreme-modules-pro-for-divi'),\n    visible: showReadMore\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 1000,\n    step: 1,\n    defaultUnit: \"px\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"openIcon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Open Icon', 'dsm-supreme-modules-pro-for-divi'),\n    visible: showReadMore\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"closeIcon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Close Icon', 'dsm-supreme-modules-pro-for-divi'),\n    visible: showReadMore\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"iconSize.innerContent\",\n    defaultAttr: readmoreIconSizeInnerContentDefaultAttr,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Size', 'dsm-supreme-modules-pro-for-divi'),\n    visible: showReadMore\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    step: 1,\n    defaultUnit: \"px\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"useShadow.innerContent\",\n    defaultAttr: readmoreUseShadowInnerContentDefaultAttr,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Shadow', 'dsm-supreme-modules-pro-for-divi'),\n    visible: showReadMore\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"collapseScrollToTop.innerContent\",\n    defaultAttr: readmoreCollapseScrollToTopInnerContentDefaultAttr,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Scroll to module on collapse', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('When visitors collapse expanded content, smoothly scroll so this module aligns to the top of the viewport.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: showReadMore\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), contentLink ? /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleGroups, {\n    groups: {\n      contentLink\n    }\n  }) : null);\n};\n;// ./packages/module-library/readmore/settings-design.js\n\n\n\n\n\n\n\n/**\n * Design panel: Read More button styles (font, colors, spacing, etc.).\n *\n * @param {Object} props\n * @param {Object} props.attrs\n * @returns {React.Element}\n */\nfunction readmore_settings_design_SettingsDesign({\n  attrs\n}) {\n  const showReadMore = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.showReadMore?.innerContent) !== 'off';\n  const useShadow = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.useShadow?.innerContent) !== 'off';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextGroup, {\n    fields: {\n      color: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"dsm-readmore-button-design\",\n    preset: \"design\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Read More Button', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ButtonGroupContainer, {\n    attrName: \"button\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      buttonIconGroup: {\n        render: false\n      }\n    },\n    grouped: false,\n    visible: showReadMore\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"dsm-readmore-shadow-fade\",\n    preset: \"design\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shadow Gradient', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, {\n    attrName: \"shadowFade.decoration.background\",\n    grouped: false,\n    visible: showReadMore && useShadow,\n    defaultPanel: \"gradient\",\n    defaultAttr: readmoreShadowFadeDecorationBackgroundDefaultAttr,\n    hidePanels: ['color', 'image', 'video', 'pattern', 'mask'],\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade', 'dsm-supreme-modules-pro-for-divi')\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const readmore_settings_design = (readmore_settings_design_SettingsDesign);\n;// ./packages/module-library/readmore/module-styles.js\n\n\n\n\n\n\nconst readmore_module_styles_iconFontCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'font-family': true\n    }\n  });\n  if (attrValue?.type) {\n    const fontFamily = 'fa' === attrValue?.type ? 'FontAwesome' : 'ETmodules';\n    declarations.add('font-family', `'${fontFamily}'`);\n  }\n  if (attrValue?.weight) {\n    declarations.add('font-weight', attrValue?.weight);\n  }\n  if (attrValue?.unicode) {\n    addNativeIconFontContent(declarations, attrValue);\n  }\n  return declarations.value;\n};\n\n/**\n * Font-size from iconSize range (string or { value, unit }) — CommonStyle default expects a string.\n *\n * @param {{ attrValue?: unknown, important?: Record<string, unknown> }} params\n * @return {string}\n */\nconst iconSizeFontCss = params => {\n  var _params$important;\n  const raw = params?.attrValue;\n  let size = '24px';\n  if (typeof raw === 'string' && raw !== '') {\n    size = raw;\n  } else if (raw && typeof raw === 'object' && 'value' in raw && 'unit' in raw) {\n    size = `${raw.value}${raw.unit}`;\n  } else if (typeof raw === 'number') {\n    size = `${raw}px`;\n  }\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: (_params$important = params?.important) !== null && _params$important !== void 0 ? _params$important : {}\n  });\n  declarations.add('font-size', size);\n  return declarations.value;\n};\n\n/**\n * React function component for rendering module style.\n */\nconst readmore_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  const badgeCustomPosition = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.badge_custom_position?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextStyle, {\n    selector: orderClass,\n    attr: attrs?.module?.advanced?.text\n  }), elements.style({\n    attrName: 'button'\n  }), elements.style({\n    attrName: 'shadowFade'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_button_wrapper .dsm-btn-close::after`,\n    attr: attrs?.closeIcon?.innerContent,\n    declarationFunction: readmore_module_styles_iconFontCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_button_wrapper .dsm-btn-open::after`,\n    attr: attrs?.openIcon?.innerContent,\n    declarationFunction: readmore_module_styles_iconFontCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_button_wrapper .dsm-readmore-button::after`,\n    attr: attrs?.iconSize?.innerContent,\n    declarationFunction: iconSizeFontCss\n  }));\n};\n;// ./packages/module-library/readmore/edit.js\n\n\n\n\n\n\n/**\n * Normalize range innerContent (object with value + unit) to a CSS length string.\n *\n * @param {unknown} raw\n * @param {string} fallback\n * @return {string}\n */\nfunction readmoreRangeToCssLength(raw, fallback) {\n  if (raw === undefined || raw === null || raw === '') {\n    return fallback;\n  }\n  if (typeof raw === 'string') {\n    return raw;\n  }\n  if (typeof raw === 'object' && raw !== null && 'value' in raw && 'unit' in raw) {\n    return `${raw.value}${raw.unit}`;\n  }\n  return fallback;\n}\n\n/** Match frontend breakpoint defaults when Divi custom breakpoints are not available in VB. */\nconst READMORE_PHONE_MAX = 767;\nconst READMORE_TABLET_MAX = 980;\n\n/**\n * Collapsed height for viewport from full innerContent (desktop/tablet/phone), same inheritance as PHP.\n *\n * @param {unknown} innerContent dsmHeight.innerContent\n * @param {number} viewportWidth\n * @return {string}\n */\nfunction readmoreHeightForInnerContent(innerContent, viewportWidth) {\n  const inner = innerContent || {};\n  const desktopRaw = inner?.desktop?.value;\n  const tabletRaw = inner?.tablet?.value;\n  const phoneRaw = inner?.phone?.value;\n  const desktop = readmoreRangeToCssLength(desktopRaw, '100px');\n  const tablet = tabletRaw !== undefined && tabletRaw !== null && tabletRaw !== '' ? readmoreRangeToCssLength(tabletRaw, desktop) : desktop;\n  const phone = phoneRaw !== undefined && phoneRaw !== null && phoneRaw !== '' ? readmoreRangeToCssLength(phoneRaw, tablet) : tablet;\n  if (viewportWidth <= READMORE_PHONE_MAX) {\n    return phone;\n  }\n  if (viewportWidth <= READMORE_TABLET_MAX) {\n    return tablet;\n  }\n  return desktop;\n}\n\n/**\n * @param {HTMLElement} wrapper\n * @return {HTMLElement}\n */\nfunction readmoreGetScrollTargetElement(wrapper) {\n  return wrapper.closest('[class*=\"dsm_readmore\"]') || wrapper.closest('.et_pb_module') || wrapper;\n}\n\n/**\n * @param {HTMLElement} fromEl\n */\nfunction readmoreSnapOngoingScrolls(fromEl) {\n  const root = document.scrollingElement || document.documentElement;\n  const seen = new Set();\n  let node = fromEl;\n  while (node) {\n    const {\n      overflowY\n    } = window.getComputedStyle(node);\n    if (/(auto|scroll|overlay)/.test(overflowY) && node.scrollHeight > node.clientHeight + 2 && !seen.has(node)) {\n      seen.add(node);\n      node.scrollTo({\n        left: node.scrollLeft,\n        top: node.scrollTop,\n        behavior: 'auto'\n      });\n    }\n    if (node === root) {\n      break;\n    }\n    node = node.parentElement;\n  }\n  if (!seen.has(root)) {\n    root.scrollTo({\n      left: root.scrollLeft,\n      top: root.scrollTop,\n      behavior: 'auto'\n    });\n  }\n  window.scrollTo({\n    left: window.scrollX,\n    top: window.scrollY,\n    behavior: 'auto'\n  });\n}\n\n/**\n * Match frontend readmore.js (scrollIntoView + snap for repeat collapses).\n *\n * @param {HTMLElement} wrapper\n */\nfunction readmoreScrollModuleToTop(wrapper) {\n  const target = readmoreGetScrollTargetElement(wrapper);\n  const adminBar = document.getElementById('wpadminbar');\n  const adminOffset = adminBar && window.getComputedStyle(adminBar).position === 'fixed' ? adminBar.offsetHeight : 0;\n  const prevMargin = target.style.scrollMarginTop;\n  target.style.scrollMarginTop = adminOffset > 0 ? `${adminOffset}px` : '';\n  readmoreSnapOngoingScrolls(target);\n  window.requestAnimationFrame(() => {\n    window.requestAnimationFrame(() => {\n      target.scrollIntoView({\n        block: 'start',\n        inline: 'nearest',\n        behavior: 'smooth'\n      });\n      window.setTimeout(() => {\n        target.style.scrollMarginTop = prevMargin;\n      }, 700);\n    });\n  });\n}\nconst readmore_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction readmore_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements,\n  childrenIds,\n  isLooped,\n  loopIndex,\n  canvasId,\n  hasModule\n}) {\n  const showReadMoreRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.showReadMore?.innerContent);\n  const showReadMore = showReadMoreRaw !== 'off' && showReadMoreRaw !== false;\n  const closeText = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.closeText?.innerContent) || 'Read Less';\n  const openText = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.openText?.innerContent) || 'Read More';\n  const [viewportWidth, setViewportWidth] = (0,external_vendor_React_.useState)(typeof window !== 'undefined' ? window.innerWidth : 1200);\n  (0,external_vendor_React_.useEffect)(() => {\n    if (typeof window === 'undefined') {\n      return;\n    }\n    const onResize = () => setViewportWidth(window.innerWidth);\n    window.addEventListener('resize', onResize);\n    return () => window.removeEventListener('resize', onResize);\n  }, []);\n  const dsmHeight = readmoreHeightForInnerContent(attrs?.dsmHeight?.innerContent, viewportWidth);\n  const useShadowRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.useShadow?.innerContent);\n  const useShadow = useShadowRaw === 'off' || useShadowRaw === false ? 'off' : 'on';\n  const collapseScrollRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.collapseScrollToTop?.innerContent);\n  const collapseScrollToTop = collapseScrollRaw === 'on' || collapseScrollRaw === true;\n  const [isExpanded, setIsExpanded] = (0,external_vendor_React_.useState)(false);\n  const [scrollHeight, setScrollHeight] = (0,external_vendor_React_.useState)('auto');\n  const contentRef = (0,external_vendor_React_.useRef)(null);\n  (0,external_vendor_React_.useEffect)(() => {\n    if (contentRef.current) {\n      setScrollHeight(`${contentRef.current.scrollHeight}px`);\n    }\n  }, [isExpanded, childrenIds, dsmHeight, viewportWidth]);\n  const toggleReadMore = e => {\n    e.preventDefault();\n    const nextExpanded = !isExpanded;\n    if (isExpanded && !nextExpanded && collapseScrollToTop && contentRef.current) {\n      const el = contentRef.current;\n      let scrolled = false;\n      const runScroll = () => {\n        if (scrolled) {\n          return;\n        }\n        scrolled = true;\n        el.removeEventListener('transitionend', onTransitionEnd);\n        window.clearTimeout(fallbackId);\n        window.requestAnimationFrame(() => {\n          readmoreScrollModuleToTop(el);\n        });\n      };\n      const onTransitionEnd = event => {\n        if (event.target !== el || event.propertyName !== 'max-height') {\n          return;\n        }\n        runScroll();\n      };\n      el.addEventListener('transitionend', onTransitionEnd);\n      const fallbackId = window.setTimeout(runScroll, 650);\n    }\n    setIsExpanded(nextExpanded);\n  };\n  const currentHeight = isExpanded ? scrollHeight : dsmHeight;\n  const wrapperStyle = {\n    maxHeight: currentHeight,\n    overflow: 'hidden',\n    transition: 'max-height 0.4s ease-in-out',\n    position: 'relative'\n  };\n  const isEnabledShadow = showReadMore && 'on' === useShadow ? 'dsm-readmore-shadow' : '';\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    childrenIds: childrenIds,\n    scriptDataComponent: readmore_edit_ModuleScriptData,\n    stylesComponent: readmore_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    },\n    hasModule: hasModule,\n    isLooped: isLooped,\n    loopIndex: loopIndex\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: `dsm-readmore-wrapper ${isEnabledShadow} ${isExpanded ? 'dsm-expanded' : ''}`,\n    ref: contentRef,\n    style: showReadMore ? wrapperStyle : {\n      position: 'relative'\n    }\n  }, childrenIds && childrenIds.length > 0 && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ChildModulesContainer, {\n    ids: childrenIds,\n    isLooped: isLooped,\n    loopIndex: loopIndex,\n    canvasId: canvasId\n  }), childrenIds && childrenIds.length < 1 && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    style: {\n      padding: '30px 0px'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleAdd, {\n    moduleId: id,\n    basicModuleType: \"module\",\n    addChild: true\n  }))), showReadMore && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_button_wrapper\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n    className: `dsm-readmore-button et_pb_button ${isExpanded ? 'dsm-btn-open' : 'dsm-btn-close'}`,\n    onClick: toggleReadMore,\n    href: \"#\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", null, isExpanded ? openText : closeText))));\n}\n/* harmony default export */ const readmore_edit = (readmore_edit_Edit);\n;// ./packages/module-library/readmore/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmTextBadge', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/text-badges': {\n      name: 'divi-supreme/text-badges',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 4.953125 4.574219 C 4.574219 4.574219 4.265625 4.265625 4.265625 3.882812 C 4.265625 3.507812 4.574219 3.199219 4.953125 3.199219 C 5.332031 3.199219 5.640625 3.507812 5.640625 3.882812 C 5.640625 4.265625 5.332031 4.574219 4.953125 4.574219 Z M 4.953125 3.582031 C 4.785156 3.582031 4.644531 3.71875 4.644531 3.890625 C 4.644531 4.058594 4.785156 4.195312 4.953125 4.195312 C 5.121094 4.195312 5.261719 4.058594 5.261719 3.890625 C 5.261719 3.71875 5.121094 3.582031 4.953125 3.582031 Z M 4.953125 3.582031 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.132812 10.753906 C 10.757812 10.753906 10.449219 10.445312 10.449219 10.066406 C 10.449219 9.691406 10.757812 9.382812 11.132812 9.382812 C 11.511719 9.382812 11.820312 9.691406 11.820312 10.066406 C 11.820312 10.445312 11.511719 10.753906 11.132812 10.753906 Z M 11.132812 9.765625 C 10.964844 9.765625 10.824219 9.902344 10.824219 10.074219 C 10.824219 10.242188 10.964844 10.382812 11.132812 10.382812 C 11.304688 10.382812 11.441406 10.242188 11.441406 10.074219 C 11.441406 9.902344 11.304688 9.765625 11.132812 9.765625 Z M 11.132812 9.765625 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 9.953125 12.816406 L 7.554688 10.394531 L 5.296875 12.675781 L 5.296875 6.015625 C 5.296875 5.230469 5.589844 4.789062 5.835938 4.554688 C 6.105469 4.300781 6.375 4.242188 6.40625 4.234375 L 6.445312 4.230469 L 11.304688 4.230469 L 11.304688 4.628906 C 10.851562 4.628906 10.507812 4.753906 10.28125 5.003906 C 9.914062 5.402344 9.953125 5.992188 9.953125 6.003906 Z M 7.554688 9.835938 L 9.558594 11.855469 L 9.558594 6.023438 C 9.554688 5.933594 9.53125 5.234375 9.996094 4.734375 C 10.03125 4.695312 10.0625 4.660156 10.101562 4.628906 L 6.476562 4.628906 C 6.359375 4.664062 5.691406 4.898438 5.691406 6.015625 L 5.691406 11.710938 Z M 7.554688 9.835938 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.496094 7.320312 L 8.902344 7.320312 L 8.902344 7.664062 L 6.496094 7.664062 Z M 6.496094 7.320312 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/readmore/index.js\n// External library dependencies.\n\n\n// Wordpress dependencies.\n\n\n// Divi package dependencies.\n\n\n\n//  Custom dependencies.\n\n\n//import advanced from './settings-advanced';\n\n\n\n\nconst readmoreModule = {\n  metadata: readmore_module_namespaceObject,\n  defaultAttrs: {\n    showReadMore: readmoreDefaultShowReadMore,\n    dsmHeight: readmoreDefaultDsmHeight,\n    iconSize: readmoreDefaultIconSize,\n    useShadow: readmoreDefaultUseShadow,\n    collapseScrollToTop: readmoreDefaultCollapseScrollToTop,\n    shadowFade: readmoreDefaultShadowFade\n  },\n  renderers: {\n    edit: readmore_edit,\n    styles: readmore_module_styles_ModuleStyles\n  },\n  callbacks: {\n    content: {\n      elements: external_divi_moduleUtils_namespaceObject.elementsCallbacks\n    }\n  },\n  settings: {\n    content: readmore_settings_content_SettingsContent,\n    design: readmore_settings_design\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    showReadMore: readmoreDefaultShowReadMore,\n    closeText: {\n      innerContent: {\n        desktop: {\n          value: 'Read More'\n        }\n      }\n    },\n    openText: {\n      innerContent: {\n        desktop: {\n          value: 'Read Less'\n        }\n      }\n    },\n    dsmHeight: readmoreDefaultDsmHeight,\n    iconSize: readmoreDefaultIconSize,\n    useShadow: readmoreDefaultUseShadow,\n    collapseScrollToTop: readmoreDefaultCollapseScrollToTop,\n    shadowFade: readmoreDefaultShadowFade\n  }\n};\n/* harmony default export */ const readmore = (readmoreModule);\n;// ./packages/module-library/scroll-image/module.json\nconst scroll_image_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/scroll-image\",\"d4Shortcode\":\"dsm_scroll_image\",\"title\":\"Supreme Scroll Image\",\"titles\":\"Supreme Scroll Images\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/scroll-image\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"layout\":{},\"conditions\":{},\"interactions\":{}}},\"styleProps\":{\"sizing\":{\"propertySelectors\":{\"desktop\":{\"value\":{\"height\":\"{{selector}} .dsm-scroll-image-wrapper\",\"margin-left\":\"{{selector}}.et_pb_module\",\"margin-right\":\"{{selector}}.et_pb_module\"}}},\"important\":{\"desktop\":{\"value\":{\"margin-left\":true,\"margin-right\":true,\"width\":true}}}}},\"default\":{\"advanced\":{\"text\":{\"text\":{\"desktop\":{\"value\":{\"color\":\"light\"}}}}}}},\"image\":{\"type\":\"object\",\"label\":\"Image\",\"elementType\":\"image\",\"selector\":\"{{selector}} .dsm_scroll_image_img\",\"supportsCustomAttributes\":true,\"inlineEditor\":\"UploadContainer\",\"childrenSanitizer\":\"et_core_esc_previously\",\"attributes\":{\"class\":\"dsm_scroll_image_img\"}},\"alt\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"show_in_lightbox\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"show_lightbox_other_img\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"show_lightbox_other_img_src\":{\"type\":\"object\",\"elementType\":\"image\",\"selector\":\"{{selector}} .dsm_lightbox_image img\",\"inlineEditor\":\"UploadContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"lightbox_close_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"lightbox_max_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"url\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"url_new_window\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_video_popup\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"scroll_image_speed\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"scroll_image_reverse_direction\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"scroll_image_direction\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"scroll_image_mobile_behavior\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_overlay\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"overlay_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_icon\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"overlay_icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"hover_icon\":{\"type\":\"object\",\"inlineEditor\":\"SelectIcon\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"overlay_on_hover\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/scroll-image/module-default-render-attributes.json\nconst scroll_image_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"module\":{\"decoration\":{},\"advanced\":{\"text\":{\"text\":{\"desktop\":{\"value\":{\"color\":\"light\"}}}}}},\"image\":{\"innerContent\":{\"desktop\":{\"value\":{\"src\":\"\"}}}},\"alt\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"url\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"show_lightbox_other_img_src\":{\"innerContent\":{\"desktop\":{\"value\":{\"src\":\"\"}}}},\"overlay_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"overlay_icon_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"hover_icon\":{\"innerContent\":{\"desktop\":{\"value\":{}}}},\"show_in_lightbox\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"show_lightbox_other_img\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"lightbox_close_color\":{\"innerContent\":{\"desktop\":{\"value\":\"rgba(255,255,255,0.2)\"}}},\"lightbox_max_width\":{\"innerContent\":{\"desktop\":{\"value\":\"860px\"}}},\"use_video_popup\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"scroll_image_reverse_direction\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"scroll_image_direction\":{\"innerContent\":{\"desktop\":{\"value\":\"vertical\"}}},\"scroll_image_mobile_behavior\":{\"innerContent\":{\"desktop\":{\"value\":\"auto\"}}},\"scroll_image_speed\":{\"innerContent\":{\"desktop\":{\"value\":\"10s\"}}},\"url_new_window\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"use_overlay\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"use_icon\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"overlay_on_hover\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}}}');\n;// ./packages/module-library/scroll-image/scroll-image-vb-default-attrs.js\n/**\n * Visual Builder `defaultAttr` map from `module-default-render-attributes.json`.\n *\n * @package DiviSupreme\n */\n\n\nconst scrollImageFieldDefaultInnerContent = Object.fromEntries(Object.entries(scroll_image_module_default_render_attributes_namespaceObject).filter(([, attr]) => attr && typeof attr === 'object' && attr.innerContent).map(([key, attr]) => [key, attr.innerContent]));\n\n/** @type {typeof scrollImageFieldDefaultInnerContent} */\nconst scrollImageFd = scrollImageFieldDefaultInnerContent;\n\n/** Must match `index.js` placeholder `image` / lightbox alternate image. */\nconst scrollImageUploadVbDefaultAttr = {\n  desktop: {\n    value: {\n      src: 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTA4MCIgaGVpZ2h0PSI1NDAiIHZpZXdCb3g9IjAgMCAxMDgwIDU0MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPHBhdGggZmlsbD0iI0VCRUJFQiIgZD0iTTAgMGgxMDgwdjU0MEgweiIvPgogICAgICAgIDxwYXRoIGQ9Ik00NDUuNjQ5IDU0MGgtOTguOTk1TDE0NC42NDkgMzM3Ljk5NSAwIDQ4Mi42NDR2LTk4Ljk5NWwxMTYuMzY1LTExNi4zNjVjMTUuNjItMTUuNjIgNDAuOTQ3LTE1LjYyIDU2LjU2OCAwTDQ0NS42NSA1NDB6IiBmaWxsLW9wYWNpdHk9Ii4xIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgICAgICA8Y2lyY2xlIGZpbGwtb3BhY2l0eT0iLjA1IiBmaWxsPSIjMDAwIiBjeD0iMzMxIiBjeT0iMTQ4IiByPSI3MCIvPgogICAgICAgIDxwYXRoIGQ9Ik0xMDgwIDM3OXYxMTMuMTM3TDcyOC4xNjIgMTQwLjMgMzI4LjQ2MiA1NDBIMjE1LjMyNEw2OTkuODc4IDU1LjQ0NmMxNS42Mi0xNS42MiA0MC45NDgtMTUuNjIgNTYuNTY4IDBMMTA4MCAzNzl6IiBmaWxsLW9wYWNpdHk9Ii4yIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgIDwvZz4KPC9zdmc+Cg=='\n    }\n  }\n};\n;// ./packages/module-library/scroll-image/settings-content.js\n\n// Wordpress dependencies.\n\n// Divi package dependencies.\n\n\n\n\n\n\nfunction scroll_image_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  const showInLightbox = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_in_lightbox?.innerContent);\n  const useLightboxOtherImage = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_lightbox_other_img?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: scrollImageUploadVbDefaultAttr,\n    attrName: \"image.innerContent\",\n    subName: \"src\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"scroll_setting\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Scroll Settings', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: scrollImageFd.scroll_image_direction,\n    attrName: \"scroll_image_direction.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Scroll Direction', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Vertical reveals the image by scrolling top-to-bottom; horizontal scrolls left-to-right.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      vertical: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Vertical', 'dsm-supreme-modules-pro-for-divi')\n      },\n      horizontal: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Horizontal', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: scrollImageFd.scroll_image_speed,\n    attrName: \"scroll_image_speed.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Scroll Speed (in s)', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 30,\n    defaultUnit: 's',\n    allowedUnits: ['s']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: scrollImageFd.scroll_image_mobile_behavior,\n    attrName: \"scroll_image_mobile_behavior.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Mobile & accessibility', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Auto: touch devices use tap/focus to reveal; reduced motion uses a static frame. Hover only keeps desktop hover. Static disables scroll animation.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      auto: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Auto (recommended)', 'dsm-supreme-modules-pro-for-divi')\n      },\n      hover: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hover only', 'dsm-supreme-modules-pro-for-divi')\n      },\n      static: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Static (no scroll)', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: scrollImageFd.scroll_image_reverse_direction,\n    attrName: \"scroll_image_reverse_direction.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Scroll Reverse Direction', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"link\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Link', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: scrollImageFd.show_in_lightbox,\n    attrName: \"show_in_lightbox.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Open in Lightbox', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: scrollImageFd.url,\n    attrName: \"url.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Link URL', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'off' === showInLightbox\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: scrollImageFd.url_new_window,\n    attrName: \"url_new_window.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Link Target', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'off' === showInLightbox\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      off: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The Same Window', 'dsm-supreme-modules-pro-for-divi')\n      },\n      on: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The New Tab', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: scrollImageFd.show_lightbox_other_img,\n    attrName: \"show_lightbox_other_img.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Other Lightbox Image', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === showInLightbox\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: scrollImageUploadVbDefaultAttr,\n    attrName: \"show_lightbox_other_img_src.innerContent\",\n    subName: \"src\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Other Lightbox Image', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useLightboxOtherImage && 'on' === showInLightbox,\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: scrollImageFd.use_video_popup,\n    attrName: \"use_video_popup.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use as Video Popup', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'off' === showInLightbox\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const scroll_image_settings_content = (scroll_image_settings_content_SettingsContent);\n;// ./packages/module-library/scroll-image/module-styles.js\n\n\n\n\n\nconst module_styles_scrollImageSpeedFunc = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string'\n    // important: {\n    // \ttransition: true,\n    // },\n  });\n  declarations.add('transition', `all ${attrValue}`);\n  return declarations.value;\n};\nconst scroll_image_module_styles_iconFontCss = buildLegacyPseudoIconFontCss;\n\n/**\n * React function component for rendering module style.\n */\nconst scroll_image_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  const useIconOn = 'on' === (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_icon?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm_scroll_image img`,\n    attr: attrs?.scroll_image_speed?.innerContent,\n    declarationFunction: module_styles_scrollImageSpeedFunc\n  }), useIconOn ? /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et_overlay::before`,\n    attr: attrs?.hover_icon?.innerContent,\n    declarationFunction: scroll_image_module_styles_iconFontCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et_overlay::before`,\n    attr: attrs?.overlay_icon_color?.innerContent,\n    property: \"color\"\n  })) : null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et_overlay`,\n    attr: attrs?.overlay_color?.innerContent,\n    property: \"background\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .mfp-content .mfp-close`,\n    attr: attrs?.lightbox_close_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .mfp-content`,\n    attr: attrs?.lightbox_max_width?.innerContent,\n    property: \"max-width\"\n  }));\n};\n;// ./packages/module-library/scroll-image/settings-design.js\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\nfunction scroll_image_settings_design_SettingsDesign({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  const useOverlay = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_overlay?.innerContent);\n  const useIcon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_icon?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"overlay\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay', 'dsm-supreme-modules-pro-for-divi'),\n    preset: \"content\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: scrollImageFd.use_overlay,\n    attrName: \"use_overlay.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Overlay', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', '')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: scrollImageFd.overlay_color,\n    attrName: \"overlay_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', ''),\n    visible: 'on' === useOverlay\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: scrollImageFd.use_icon,\n    attrName: \"use_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Icon', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', ''),\n    visible: 'on' === useOverlay\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: scrollImageFd.overlay_icon_color,\n    attrName: \"overlay_icon_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay Icon Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', ''),\n    visible: 'on' === useOverlay && 'on' === useIcon\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: scrollImageFd.hover_icon,\n    attrName: \"hover_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Picker', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', ''),\n    visible: 'on' === useOverlay && 'on' === useIcon\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: scrollImageFd.overlay_on_hover,\n    attrName: \"overlay_on_hover.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Overlay On Hover', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', ''),\n    visible: 'on' === useOverlay\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"lightbox\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Lightbox', ''),\n    preset: \"content\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"lightbox_close_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Close Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', '')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: scrollImageFd.lightbox_max_width,\n    attrName: \"lightbox_max_width.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Max Width', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', '')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 100,\n    max: 1200,\n    defaultUnit: 'px'\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const scroll_image_settings_design = (scroll_image_settings_design_SettingsDesign);\n;// ./packages/module-library/scroll-image/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction scroll_image_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_scroll_image\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const scroll_image_settings_advanced = (scroll_image_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/scroll-image/edit.js\n\n\n\n// Divi package dependencies.\n\n\n\n\n// Custom dependencies.\n\n\n\n/**\n * Normalize upload innerContent for DynamicValueResolver and img src.\n *\n * @param {*} raw From getAttrByMode( attrs.image.innerContent ).\n * @return {string}\n */\nfunction scroll_image_edit_getUploadValueForDynamicData(raw) {\n  if (raw == null || raw === '') {\n    return '';\n  }\n  if (typeof raw === 'string' || typeof raw === 'number') {\n    return String(raw);\n  }\n  if (typeof raw === 'object') {\n    if (typeof raw.src === 'string' && raw.src !== '') {\n      return raw.src;\n    }\n    if (typeof raw.url === 'string' && raw.url !== '') {\n      return raw.url;\n    }\n  }\n  return '';\n}\n\n/**\n * React function component for registering module script data.\n */\nconst scroll_image_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}), elements.scriptData({\n  attrName: 'image'\n}));\nfunction scroll_image_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  const {} = attrs;\n  const imageUrl = scroll_image_edit_getUploadValueForDynamicData((0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.image?.innerContent));\n  const scrollImageReverseDirection = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.scroll_image_reverse_direction?.innerContent);\n  const scrollImageDirection = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.scroll_image_direction?.innerContent);\n  const scrollImageMobileBehavior = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.scroll_image_mobile_behavior?.innerContent);\n  const altTextRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.alt?.innerContent);\n  const altText = typeof altTextRaw === 'string' || typeof altTextRaw === 'number' ? String(altTextRaw) : '';\n  const srcDesktopRaw = attrs?.image?.innerContent?.desktop?.value;\n  const scrollImgAttachmentId = srcDesktopRaw && typeof srcDesktopRaw === 'object' && srcDesktopRaw.id ? parseInt(String(srcDesktopRaw.id), 10) : 0;\n  const showInLightbox = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_in_lightbox?.innerContent);\n  const useOverlay = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_overlay?.innerContent);\n  const overlayOnHover = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.overlay_on_hover?.innerContent);\n  const useVideoPopup = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_video_popup?.innerContent);\n  const useIcon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_icon?.innerContent);\n  const showLightboxOtherImg = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_lightbox_other_img?.innerContent);\n  const url = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.url?.innerContent);\n  const showLightboxOtherImgSrc = scroll_image_edit_getUploadValueForDynamicData((0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_lightbox_other_img_src?.innerContent));\n  (0,external_vendor_React_.useEffect)(() => {\n    jQuery(function ($) {\n      const uniqueClass = `dsm_scroll_image_${id}`;\n      if ('off' === useVideoPopup) {\n        $('.dsm-scroll-image-wrapper').each(function () {\n          $(this).find('a.dsm_lightbox_image').magnificPopup({\n            type: 'image',\n            removalDelay: 500,\n            mainClass: 'mfp-fade',\n            items: {\n              src: 'off' === showLightboxOtherImg ? imageUrl : showLightboxOtherImgSrc\n            },\n            callbacks: {\n              open: function () {\n                this.container.addClass(uniqueClass + ' dsm-lightbox-custom');\n              }\n            }\n          });\n        });\n      }\n      if ('on' === useVideoPopup) {\n        $('.dsm-scroll-image-wrapper').each(function () {\n          $(this).find('a.dsm_lightbox_video').magnificPopup({\n            type: 'iframe',\n            removalDelay: 500,\n            iframe: {\n              markup: '<div class=\"mfp-iframe-scaler dsm-video-popup\">' + '<div class=\"mfp-close\"></div>' + '<iframe class=\"mfp-iframe\" frameborder=\"0\" allowfullscreen allow=\"autoplay\"></iframe>' + '</div>',\n              patterns: {\n                youtube: {\n                  index: 'youtube.com/',\n                  id: 'v=',\n                  src: '//www.youtube.com/embed/%id%?autoplay=1&rel=0'\n                },\n                youtu_be: {\n                  index: 'youtu.be',\n                  id: '/',\n                  src: '//www.youtube.com/embed/%id%?autoplay=1&rel=0'\n                },\n                vimeo: {\n                  index: 'vimeo.com/',\n                  id: '/',\n                  src: '//player.vimeo.com/video/%id%?autoplay=1'\n                },\n                dailymotion: {\n                  index: 'dailymotion.com',\n                  id: function (url) {\n                    var m = url.match(/^.+dailymotion.com\\/(video|hub)\\/([^_]+)[^#]*(#video=([^_&]+))?/);\n                    if (m !== null) {\n                      if (m[4] !== undefined) {\n                        return m[4];\n                      }\n                      return m[2];\n                    }\n                    return null;\n                  },\n                  src: 'https://www.dailymotion.com/embed/video/%id%'\n                }\n              },\n              srcAction: 'iframe_src'\n            },\n            mainClass: 'dsm-video-popup-wrap mfp-fade',\n            callbacks: {\n              open: function () {\n                this.container.addClass(uniqueClass + ' dsm-lightbox-custom');\n              }\n            }\n          });\n        });\n      }\n    });\n  }, [showInLightbox, useVideoPopup, showLightboxOtherImg, showLightboxOtherImgSrc]);\n  const isImageReverseDirection = 'on' === scrollImageReverseDirection ? 'dsm-scroll-reverse-direction' : '';\n  const directionClass = 'horizontal' === scrollImageDirection ? 'dsm-scroll-direction-horizontal' : 'dsm-scroll-direction-vertical';\n  const mobileBehavior = 'static' === scrollImageMobileBehavior || 'hover' === scrollImageMobileBehavior ? scrollImageMobileBehavior : 'auto';\n  const mobileModifierClass = `dsm-scroll-mobile-${mobileBehavior}`;\n  const scrollImgClassName = scrollImgAttachmentId > 0 ? `wp-image-${scrollImgAttachmentId}` : '';\n  const overlayEl = 'on' === useOverlay ? /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: 'on' === useIcon ? 'et_overlay et_pb_inline_icon' : 'et_overlay dsm-scroll-image-icon-empty'\n  }) : null;\n  const isOverlayOnHover = 'on' === overlayOnHover ? 'dsm-scroll-image-overlay-on' : 'dsm-scroll-image-overlay-off';\n  const renderScrollImg = resolvedImage => /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n    src: resolvedImage,\n    alt: altText,\n    decoding: \"async\",\n    loading: \"lazy\",\n    className: ['dsm_scroll_image_img', scrollImgClassName || ''].filter(Boolean).join(' ') || undefined\n  });\n  const lightboxImageMarkup = /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n    className: \"dsm_lightbox_image\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"et_pb_image_wrap\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: imageUrl\n  }, resolvedImage => renderScrollImg(resolvedImage)), overlayEl));\n  const lightboxVideoMarkup = /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n    href: url,\n    className: \"dsm_lightbox_video\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"et_pb_image_wrap\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: imageUrl\n  }, resolvedImage => renderScrollImg(resolvedImage)), overlayEl));\n  const scrollImageMarkup = /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"et_pb_image_wrap\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: imageUrl\n  }, resolvedImage => renderScrollImg(resolvedImage)), overlayEl);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: scroll_image_edit_ModuleScriptData,\n    stylesComponent: scroll_image_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: `dsm-scroll-image-wrapper ${directionClass} ${isImageReverseDirection} ${isOverlayOnHover} ${mobileModifierClass}`,\n    tabIndex: 'auto' === mobileBehavior ? 0 : undefined\n  }, 'off' === showInLightbox && 'off' === useVideoPopup && scrollImageMarkup, 'on' === showInLightbox && 'off' === useVideoPopup && lightboxImageMarkup, 'off' === showInLightbox && 'on' === useVideoPopup && lightboxVideoMarkup));\n}\n/* harmony default export */ const scroll_image_edit = (scroll_image_edit_Edit);\n;// ./packages/module-library/scroll-image/conversion-outline.js\n\nconst scroll_image_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    display_conditions: 'module.decoration.conditions',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    height: 'module.decoration.sizing',\n    link_options: 'module.advanced.link',\n    margin_padding: 'module.decoration.spacing',\n    max_width: 'module.decoration.sizing',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex'\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    src: 'image.innerContent.*.src',\n    alt: 'alt.innerContent.*',\n    show_in_lightbox: 'show_in_lightbox.innerContent.*',\n    show_lightbox_other_img: 'show_lightbox_other_img.innerContent.*',\n    show_lightbox_other_img_src: 'show_lightbox_other_img_src.innerContent.*.src',\n    lightbox_close_color: 'lightbox_close_color.innerContent.*',\n    lightbox_max_width: 'lightbox_max_width.innerContent.*',\n    url: 'url.innerContent.*',\n    url_new_window: 'url_new_window.innerContent.*',\n    use_video_popup: 'use_video_popup.innerContent.*',\n    scroll_image_speed: 'scroll_image_speed.innerContent.*',\n    scroll_image_reverse_direction: 'scroll_image_reverse_direction.innerContent.*',\n    scroll_image_direction: 'scroll_image_direction.innerContent.*',\n    scroll_image_mobile_behavior: 'scroll_image_mobile_behavior.innerContent.*',\n    use_overlay: 'use_overlay.innerContent.*',\n    overlay_color: 'overlay_color.innerContent.*',\n    use_icon: 'use_icon.innerContent.*',\n    overlay_icon_color: 'overlay_icon_color.innerContent.*',\n    hover_icon: 'hover_icon.innerContent.*',\n    overlay_on_hover: 'overlay_on_hover.innerContent.*',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    hover_icon: external_divi_conversion_namespaceObject.convertFontIcon,\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/scroll-image/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmScrollImage', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/scroll-image': {\n      name: 'divi-supreme/scroll-image',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 4.328125 7.1875 C 4 7.1875 3.734375 6.917969 3.734375 6.589844 C 3.734375 6.261719 4 5.996094 4.328125 5.996094 C 4.65625 5.996094 4.925781 6.261719 4.925781 6.589844 C 4.929688 6.917969 4.660156 7.1875 4.328125 7.1875 Z M 4.328125 6.328125 C 4.183594 6.328125 4.0625 6.449219 4.0625 6.59375 C 4.0625 6.742188 4.183594 6.863281 4.328125 6.863281 C 4.476562 6.863281 4.597656 6.742188 4.597656 6.59375 C 4.597656 6.445312 4.476562 6.328125 4.328125 6.328125 Z M 4.328125 6.328125 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.25 10.363281 C 10.925781 10.363281 10.65625 10.09375 10.65625 9.765625 C 10.65625 9.4375 10.925781 9.171875 11.25 9.171875 C 11.578125 9.171875 11.847656 9.4375 11.847656 9.765625 C 11.847656 10.09375 11.578125 10.363281 11.25 10.363281 Z M 11.25 9.5 C 11.105469 9.5 10.984375 9.621094 10.984375 9.765625 C 10.984375 9.914062 11.105469 10.035156 11.25 10.035156 C 11.398438 10.035156 11.519531 9.914062 11.519531 9.765625 C 11.515625 9.621094 11.398438 9.5 11.25 9.5 Z M 11.25 9.5 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 8.234375 10.738281 C 8.160156 10.738281 8.085938 10.710938 8.03125 10.65625 L 5.371094 7.996094 C 5.265625 7.886719 5.265625 7.707031 5.371094 7.597656 C 5.425781 7.539062 5.496094 7.507812 5.574219 7.507812 C 5.652344 7.507812 5.726562 7.535156 5.777344 7.589844 L 8.234375 10.046875 L 10.738281 7.542969 L 10.753906 7.542969 C 10.863281 7.488281 10.996094 7.5 11.085938 7.589844 C 11.144531 7.644531 11.171875 7.714844 11.171875 7.792969 C 11.171875 7.871094 11.148438 7.941406 11.089844 7.996094 L 8.433594 10.65625 C 8.382812 10.707031 8.308594 10.738281 8.234375 10.738281 Z M 8.234375 10.738281 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 8.234375 8.5625 C 8.160156 8.5625 8.085938 8.535156 8.03125 8.480469 L 5.371094 5.824219 C 5.265625 5.714844 5.265625 5.535156 5.371094 5.425781 C 5.480469 5.3125 5.660156 5.308594 5.777344 5.417969 L 8.234375 7.871094 L 10.738281 5.367188 L 10.753906 5.367188 C 10.867188 5.308594 11.007812 5.324219 11.101562 5.421875 C 11.207031 5.53125 11.207031 5.714844 11.089844 5.824219 L 8.4375 8.480469 C 8.382812 8.535156 8.308594 8.5625 8.234375 8.5625 Z M 8.234375 8.5625 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 8.234375 10.738281 C 8.15625 10.738281 8.089844 10.707031 8.03125 10.65625 L 5.375 7.996094 C 5.316406 7.941406 5.292969 7.867188 5.292969 7.789062 C 5.292969 7.710938 5.320312 7.644531 5.378906 7.585938 C 5.488281 7.480469 5.664062 7.480469 5.773438 7.585938 L 8.230469 10.042969 L 10.683594 7.589844 C 10.738281 7.535156 10.808594 7.507812 10.890625 7.507812 C 10.96875 7.507812 11.035156 7.539062 11.09375 7.597656 C 11.199219 7.707031 11.199219 7.878906 11.09375 7.992188 L 8.433594 10.652344 C 8.382812 10.707031 8.308594 10.738281 8.234375 10.738281 Z M 8.234375 10.738281 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 8.234375 8.5625 C 8.15625 8.5625 8.089844 8.53125 8.03125 8.480469 L 5.375 5.824219 C 5.320312 5.765625 5.292969 5.695312 5.292969 5.617188 C 5.292969 5.542969 5.320312 5.472656 5.378906 5.417969 C 5.488281 5.308594 5.664062 5.308594 5.773438 5.417969 L 8.230469 7.871094 L 10.683594 5.421875 C 10.789062 5.308594 10.972656 5.308594 11.085938 5.417969 C 11.140625 5.46875 11.171875 5.542969 11.171875 5.617188 C 11.171875 5.695312 11.144531 5.765625 11.089844 5.820312 L 8.429688 8.484375 C 8.382812 8.53125 8.308594 8.5625 8.234375 8.5625 Z M 10.925781 5.652344 C 10.921875 5.652344 10.925781 5.652344 10.925781 5.652344 Z M 10.925781 5.652344 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/scroll-image/index.js\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\nconst scrollImagePlaceholderSrc = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTA4MCIgaGVpZ2h0PSI1NDAiIHZpZXdCb3g9IjAgMCAxMDgwIDU0MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPHBhdGggZmlsbD0iI0VCRUJFQiIgZD0iTTAgMGgxMDgwdjU0MEgweiIvPgogICAgICAgIDxwYXRoIGQ9Ik00NDUuNjQ5IDU0MGgtOTguOTk1TDE0NC42NDkgMzM3Ljk5NSAwIDQ4Mi42NDR2LTk4Ljk5NWwxMTYuMzY1LTExNi4zNjVjMTUuNjItMTUuNjIgNDAuOTQ3LTE1LjYyIDU2LjU2OCAwTDQ0NS42NSA1NDB6IiBmaWxsLW9wYWNpdHk9Ii4xIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgICAgICA8Y2lyY2xlIGZpbGwtb3BhY2l0eT0iLjA1IiBmaWxsPSIjMDAwIiBjeD0iMzMxIiBjeT0iMTQ4IiByPSI3MCIvPgogICAgICAgIDxwYXRoIGQ9Ik0xMDgwIDM3OXYxMTMuMTM3TDcyOC4xNjIgMTQwLjMgMzI4LjQ2MiA1NDBIMjE1LjMyNEw2OTkuODc4IDU1LjQ0NmMxNS42Mi0xNS42MiA0MC45NDgtMTUuNjIgNTYuNTY4IDBMMTA4MCAzNzl6IiBmaWxsLW9wYWNpdHk9Ii4yIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgIDwvZz4KPC9zdmc+Cg==';\nconst scroll_image_defaultAttrs = {\n  ...scroll_image_module_default_render_attributes_namespaceObject,\n  image: {\n    innerContent: {\n      desktop: {\n        value: {\n          src: scrollImagePlaceholderSrc\n        }\n      }\n    }\n  }\n};\nconst scroll_image_scrollImageModule = {\n  metadata: scroll_image_module_namespaceObject,\n  conversionOutline: scroll_image_conversion_outline_conversionOutline,\n  renderers: {\n    edit: scroll_image_edit,\n    styles: scroll_image_module_styles_ModuleStyles\n  },\n  defaultAttrs: scroll_image_defaultAttrs,\n  settings: {\n    content: scroll_image_settings_content,\n    design: scroll_image_settings_design,\n    advanced: scroll_image_settings_advanced\n  },\n  placeholderContent: {\n    ...scroll_image_defaultAttrs\n  }\n};\n/* harmony default export */ const scroll_image = (scroll_image_scrollImageModule);\n;// ./packages/module-library/shapes/module.json\nconst shapes_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/shapes\",\"d4Shortcode\":\"dsm_shapes\",\"title\":\"Supreme Shapes\",\"titles\":\"Supreme Shapes\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/shapes\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"shapes_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"shapes_square_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"shape_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_shape_gradient\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"shape_fill\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_shapes_svg\",\"childrenSanitizer\":\"et_core_esc_previously\",\"settings\":{\"decoration\":{\"background\":{}}},\"styleProps\":{}},\"use_shape_border\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"shapes_styling\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_shapes_wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{}}}}');\n;// ./packages/module-library/shapes/module-default-render-attributes.json\nconst shapes_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"module\":{\"decoration\":{},\"advanced\":{}},\"shapes_type\":{\"innerContent\":{\"desktop\":{\"value\":\"square\"}}},\"shapes_square_size\":{\"innerContent\":{\"desktop\":{\"value\":\"80px\"}}},\"shape_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#2ea3f2\"}}},\"use_shape_border\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"use_shape_gradient\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"shape_fill\":{\"decoration\":{\"background\":{}}},\"shapes_styling\":{\"decoration\":{\"border\":{},\"boxShadow\":{}}}}');\n;// ./packages/module-library/shapes/shapes-vb-default-attrs.js\n/**\n * Visual Builder `defaultAttr` map from `module-default-render-attributes.json`.\n *\n * @package DiviSupreme\n */\n\n\n\n/** `innerContent` defaults per attribute key (for `FieldContainer` `defaultAttr`). */\nconst shapesFieldDefaultInnerContent = Object.fromEntries(Object.entries(shapes_module_default_render_attributes_namespaceObject).filter(([, attr]) => attr && typeof attr === 'object' && attr.innerContent).map(([key, attr]) => [key, attr.innerContent]));\n\n/** @type {typeof shapesFieldDefaultInnerContent} */\nconst shapesFd = shapesFieldDefaultInnerContent;\n;// ./packages/module-library/shapes/settings-content.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\nfunction shapes_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  const fd = shapesFd;\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"shapes\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shapes', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"shapes_type.innerContent\",\n    defaultAttr: fd.shapes_type,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Type', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      square: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Square', 'dsm-supreme-modules-pro-for-divi')\n      },\n      circle: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Circle', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rectangle: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rectangle', 'dsm-supreme-modules-pro-for-divi')\n      },\n      triangle: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Triangle', 'dsm-supreme-modules-pro-for-divi')\n      },\n      oval: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Oval', 'dsm-supreme-modules-pro-for-divi')\n      },\n      trapezoid: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Trapezoid', 'dsm-supreme-modules-pro-for-divi')\n      },\n      parallelogram: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Parallelogram', 'dsm-supreme-modules-pro-for-divi')\n      },\n      diamond_square: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Diamond Square', 'dsm-supreme-modules-pro-for-divi')\n      },\n      hexagon: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hexagon', 'dsm-supreme-modules-pro-for-divi')\n      },\n      pentagon: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pentagon', 'dsm-supreme-modules-pro-for-divi')\n      },\n      octagon: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Octagon', 'dsm-supreme-modules-pro-for-divi')\n      },\n      star_five: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Star', 'dsm-supreme-modules-pro-for-divi')\n      },\n      semi_circle: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Semi Circle', 'dsm-supreme-modules-pro-for-divi')\n      },\n      pill: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pill', 'dsm-supreme-modules-pro-for-divi')\n      },\n      ring: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Ring', 'dsm-supreme-modules-pro-for-divi')\n      },\n      heart: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Heart', 'dsm-supreme-modules-pro-for-divi')\n      },\n      shield: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shield', 'dsm-supreme-modules-pro-for-divi')\n      },\n      squircle: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Squircle', 'dsm-supreme-modules-pro-for-divi')\n      },\n      cross_plus: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Plus', 'dsm-supreme-modules-pro-for-divi')\n      },\n      chevron_right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Chevron', 'dsm-supreme-modules-pro-for-divi')\n      },\n      blob_one: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Blob #1', 'dsm-supreme-modules-pro-for-divi')\n      },\n      blob_two: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Blob #2', 'dsm-supreme-modules-pro-for-divi')\n      },\n      blob_three: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Blob #3', 'dsm-supreme-modules-pro-for-divi')\n      },\n      blob_four: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Blob #4', 'dsm-supreme-modules-pro-for-divi')\n      },\n      blob_five: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Blob #5', 'dsm-supreme-modules-pro-for-divi')\n      },\n      blob_six: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Blob #6', 'dsm-supreme-modules-pro-for-divi')\n      },\n      blob_seven: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Blob #7', 'dsm-supreme-modules-pro-for-divi')\n      },\n      blob_eight: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Blob #8', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"shapes_square_size.innerContent\",\n    defaultAttr: fd.shapes_square_size,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Size', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 800,\n    defaultUnit: '',\n    allowedUnits: ['']\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const shapes_settings_content = (shapes_settings_content_SettingsContent);\n;// ./packages/module-library/shapes/settings-design.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\n\nfunction shapes_settings_design_SettingsDesign({\n  attrs\n}) {\n  const fd = shapesFd;\n  const shapeTypeAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.shapes_type?.innerContent);\n  const useBorderAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_shape_border?.innerContent);\n  const useShapeGradientAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_shape_gradient?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"shapes\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shapes', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"shape_color.innerContent\",\n    defaultAttr: fd.shape_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shape Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' !== useShapeGradientAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_shape_gradient.innerContent\",\n    defaultAttr: fd.use_shape_gradient,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Gradient Fill', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Uses Divi gradient controls for the SVG shape fill (linear and radial). Conic gradients fall back to solid color.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, {\n    attrName: \"shape_fill.decoration.background\",\n    grouped: false,\n    visible: 'on' === useShapeGradientAttr,\n    defaultPanel: \"gradient\",\n    hidePanels: ['color', 'image', 'video', 'pattern', 'mask'],\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shape Gradient', 'dsm-supreme-modules-pro-for-divi')\n  }), 'trapezoid' !== shapeTypeAttr && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_shape_border.innerContent\",\n    defaultAttr: fd.use_shape_border,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Border', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"shapes_styling.decoration.border\",\n    grouped: false,\n    visible: 'on' === useBorderAttr\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"shapes_styling.decoration.boxShadow\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const shapes_settings_design = (shapes_settings_design_SettingsDesign);\n;// ./packages/module-library/shapes/settings-advanced.js\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\nfunction shapes_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_shapes\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const shapes_settings_advanced = (shapes_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/shapes/module-styles.js\n\n\n\n\n\n/**\n * Normalize shapes_square_size innerContent to a positive pixel number (matches PHP shapes_parse_size_px).\n *\n * @param {*} raw Attribute leaf from CommonStyle (string like \"80px\", number, or nested { value }).\n * @return {number}\n */\nfunction dsmShapesParseSizePx(raw) {\n  if (raw === null || raw === undefined) {\n    return 80;\n  }\n  if (typeof raw === 'object' && raw !== null && !Array.isArray(raw)) {\n    if ('value' in raw && raw.value !== undefined) {\n      return dsmShapesParseSizePx(raw.value);\n    }\n    if ('desktop' in raw && raw.desktop !== undefined) {\n      return dsmShapesParseSizePx(raw.desktop);\n    }\n  }\n  if (typeof raw === 'number' && !Number.isNaN(raw) && raw > 0) {\n    return raw;\n  }\n  const n = parseFloat(String(raw).replace(/[^0-9.]/g, ''));\n  return n > 0 ? n : 80;\n}\n\n/**\n * @param {object|undefined} elAttr Attribute object with innerContent.\n * @param {string}           breakpoint desktop|tablet|phone.\n * @param {string}           state      value|hover|…\n * @return {string}\n */\nfunction dsmShapesReadInnerContentString(elAttr, breakpoint, state) {\n  const ic = elAttr?.innerContent;\n  if (!ic || typeof ic !== 'object') {\n    return '';\n  }\n  const order = [breakpoint, 'desktop', 'tablet', 'phone'].filter((v, i, a) => a.indexOf(v) === i);\n  for (const bp of order) {\n    const node = ic[bp];\n    if (!node || typeof node !== 'object') {\n      continue;\n    }\n    if (state !== 'value' && node[state]?.value !== undefined) {\n      const v = node[state].value;\n      if (typeof v === 'string') {\n        return v;\n      }\n    }\n    const nv = node.value;\n    if (typeof nv === 'string') {\n      return nv;\n    }\n    if (nv && typeof nv === 'object' && typeof nv.value === 'string') {\n      return nv.value;\n    }\n  }\n  return '';\n}\n\n/**\n * @param {string} boxShadowCss Box-shadow value only (no inset).\n * @return {string} filter drop-shadow(...) or ''.\n */\nfunction dsmShapesBoxShadowCssToDropShadow(boxShadowCss) {\n  const t = String(boxShadowCss || '').replace(/^inset\\s+/i, '').trim();\n  if (!t || /^none$/i.test(t)) {\n    return '';\n  }\n  const m = t.match(/^(.+?)\\s+((?:rgba?|hsla?)\\([^)]+\\)|#[0-9a-fA-F]{3,8})$/i);\n  if (m) {\n    const dims = m[1].trim().split(/\\s+/);\n    if (dims.length === 4) {\n      dims.pop();\n    }\n    return `drop-shadow(${dims.join(' ')} ${m[2]})`;\n  }\n  return `drop-shadow(${t})`;\n}\n\n/**\n * @param {object} params Declaration callback argument.\n * @return {string}\n */\nfunction dsmShapesSvgDropShadowDeclaration(params) {\n  const attrValue = params?.attrValue;\n  if (!attrValue || typeof attrValue !== 'object') {\n    return '';\n  }\n  if (attrValue.position === 'inner') {\n    return '';\n  }\n  const decl = (0,external_divi_styleLibrary_namespaceObject.boxShadowDeclaration)({\n    attrValue,\n    defaultAttrValue: params.defaultAttrValue || {},\n    important: false,\n    returnType: 'string'\n  });\n  const raw = String(decl || '');\n  const m = raw.match(/box-shadow:\\s*([^;!]+)/i);\n  const boxStr = m ? m[1].trim() : raw.replace(/box-shadow\\s*:\\s*/i, '').trim();\n  const filterVal = dsmShapesBoxShadowCssToDropShadow(boxStr);\n  if (!filterVal) {\n    return '';\n  }\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: params.important || false\n  });\n  declarations.add('filter', filterVal);\n  return declarations.value;\n}\n\n/**\n * @param {object} params Declaration callback argument.\n * @return {string}\n */\nfunction dsmShapesWrapperInsetBoxShadowDeclaration(params) {\n  const attrValue = params?.attrValue;\n  if (!attrValue || attrValue.position !== 'inner') {\n    return '';\n  }\n  return (0,external_divi_styleLibrary_namespaceObject.boxShadowDeclaration)({\n    attrValue,\n    defaultAttrValue: params.defaultAttrValue || {},\n    important: params.important,\n    returnType: params.returnType || 'string'\n  });\n}\n\n/**\n * @param {object} params Declaration callback argument.\n * @param {object} attrs  Full module attrs.\n * @return {string}\n */\nfunction dsmShapesSvgVectorBorderDeclaration(params, attrs) {\n  const breakpoint = params?.breakpoint || 'desktop';\n  const state = params?.state || 'value';\n  const shapeType = dsmShapesReadInnerContentString(attrs?.shapes_type, breakpoint, state);\n  if (shapeType === 'trapezoid') {\n    return '';\n  }\n  const useBorder = dsmShapesReadInnerContentString(attrs?.use_shape_border, breakpoint, state);\n  if (useBorder !== 'on') {\n    return '';\n  }\n  const av = params?.attrValue;\n  if (!av || typeof av !== 'object') {\n    return '';\n  }\n  const styles = av.styles;\n  if (!styles || typeof styles !== 'object') {\n    return '';\n  }\n  let side = styles.all || {};\n  if (!side?.width) {\n    for (const k of ['top', 'right', 'bottom', 'left']) {\n      if (styles[k]?.width) {\n        side = styles[k];\n        break;\n      }\n    }\n  }\n  let width = typeof side.width === 'string' ? side.width.trim() : '';\n  let color = typeof side.color === 'string' ? side.color.trim() : '';\n  let bStyle = typeof side.style === 'string' ? side.style.trim() : '';\n  if (!width || width === '0px' || width === '0') {\n    return '';\n  }\n  if (!color) {\n    color = '#333';\n  }\n  if (!bStyle) {\n    bStyle = 'solid';\n  }\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: true\n  });\n  declarations.add('stroke', color);\n  declarations.add('stroke-width', width);\n  declarations.add('vector-effect', 'non-scaling-stroke');\n  declarations.add('paint-order', 'fill stroke');\n  declarations.add('stroke-linejoin', 'round');\n  if (bStyle === 'dashed') {\n    declarations.add('stroke-dasharray', '6 4');\n  } else if (bStyle === 'dotted') {\n    declarations.add('stroke-dasharray', '1 4');\n    declarations.add('stroke-linecap', 'round');\n  } else {\n    declarations.add('stroke-dasharray', 'none');\n  }\n  return declarations.value;\n}\n\n/**\n * React function component for rendering module style.\n */\nconst shapes_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  const useShapeGradientAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_shape_gradient?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'shapes_square_size'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_shapes_svg`,\n    attr: attrs?.shapes_styling?.decoration?.boxShadow,\n    declarationFunction: dsmShapesSvgDropShadowDeclaration\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_shapes_wrapper`,\n    attr: attrs?.shapes_styling?.decoration?.boxShadow,\n    declarationFunction: dsmShapesWrapperInsetBoxShadowDeclaration\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_shapes_svg *`,\n    attr: attrs?.shapes_styling?.decoration?.border,\n    declarationFunction: p => dsmShapesSvgVectorBorderDeclaration(p, attrs)\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_shapes_wrapper`,\n    attr: attrs?.shapes_square_size?.innerContent,\n    declarationFunction: attrValue => {\n      const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n        returnType: 'string',\n        important: {\n          width: true\n        }\n      });\n      const v = dsmShapesParseSizePx(attrValue.attrValue);\n      declarations.add('width', `${v}px`);\n      return declarations.value;\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_shapes_wrapper.dsm_shapes_circle, ${orderClass} .dsm_shapes_wrapper.dsm_shapes_square, ${orderClass} .dsm_shapes_wrapper.dsm_shapes_triangle, ${orderClass} .dsm_shapes_wrapper.dsm_shapes_trapezoid, ${orderClass} .dsm_shapes_wrapper.dsm_shapes_hexagon, ${orderClass} .dsm_shapes_wrapper.dsm_shapes_diamond_square, ${orderClass} .dsm_shapes_wrapper.dsm_shapes_pentagon, ${orderClass} .dsm_shapes_wrapper.dsm_shapes_octagon, ${orderClass} .dsm_shapes_wrapper.dsm_shapes_star_five, ${orderClass} .dsm_shapes_wrapper.dsm_shapes_heart, ${orderClass} .dsm_shapes_wrapper.dsm_shapes_shield, ${orderClass} .dsm_shapes_wrapper.dsm_shapes_squircle, ${orderClass} .dsm_shapes_wrapper.dsm_shapes_cross_plus, ${orderClass} .dsm_shapes_wrapper.dsm_shapes_chevron_right, ${orderClass} .dsm_shapes_wrapper.dsm_shapes_blob_one, ${orderClass} .dsm_shapes_wrapper.dsm_shapes_blob_two, ${orderClass} .dsm_shapes_wrapper.dsm_shapes_blob_three, ${orderClass} .dsm_shapes_wrapper.dsm_shapes_blob_four, ${orderClass} .dsm_shapes_wrapper.dsm_shapes_blob_five, ${orderClass} .dsm_shapes_wrapper.dsm_shapes_blob_six, ${orderClass} .dsm_shapes_wrapper.dsm_shapes_blob_seven, ${orderClass} .dsm_shapes_wrapper.dsm_shapes_blob_eight`,\n    attr: attrs?.shapes_square_size?.innerContent,\n    declarationFunction: attrValue => {\n      const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n        returnType: 'string'\n      });\n      const v = dsmShapesParseSizePx(attrValue.attrValue);\n      declarations.add('height', `${v}px`);\n      return declarations.value;\n    }\n  }), 'on' !== useShapeGradientAttr && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_shapes_wrapper`,\n    attr: attrs?.shape_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_shapes_wrapper.dsm_shapes_rectangle, ${orderClass} .dsm_shapes_wrapper.dsm_shapes_oval, ${orderClass} .dsm_shapes_wrapper.dsm_shapes_parallelogram `,\n    attr: attrs?.shapes_square_size?.innerContent,\n    declarationFunction: attrValue => {\n      const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n        returnType: 'string',\n        important: {\n          height: true\n        }\n      });\n      const v = dsmShapesParseSizePx(attrValue.attrValue);\n      declarations.add('height', `${v / 2}px`);\n      return declarations.value;\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_shapes_wrapper.dsm_shapes_semi_circle`,\n    attr: attrs?.shapes_square_size?.innerContent,\n    declarationFunction: attrValue => {\n      const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n        returnType: 'string'\n      });\n      const v = dsmShapesParseSizePx(attrValue.attrValue);\n      const half = v / 2;\n      declarations.add('width', `${v}px`);\n      declarations.add('height', `${half}px`);\n      return declarations.value;\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_shapes_wrapper.dsm_shapes_pill`,\n    attr: attrs?.shapes_square_size?.innerContent,\n    declarationFunction: attrValue => {\n      const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n        returnType: 'string'\n      });\n      const v = dsmShapesParseSizePx(attrValue.attrValue);\n      const half = v / 2;\n      declarations.add('width', `${v}px`);\n      declarations.add('height', `${half}px`);\n      return declarations.value;\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_shapes_wrapper.dsm_shapes_ring`,\n    attr: attrs?.shapes_square_size?.innerContent,\n    declarationFunction: attrValue => {\n      const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n        returnType: 'string'\n      });\n      const v = dsmShapesParseSizePx(attrValue.attrValue);\n      declarations.add('width', `${v}px`);\n      declarations.add('height', `${v}px`);\n      return declarations.value;\n    }\n  }));\n};\n;// ./packages/module-library/shapes/shapes-gradient.js\nfunction shapes_gradient_extends() {\n  return shapes_gradient_extends = Object.assign ? Object.assign.bind() : function (n) {\n    for (var e = 1; e < arguments.length; e++) {\n      var t = arguments[e];\n      for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n    }\n    return n;\n  }, shapes_gradient_extends.apply(null, arguments);\n}\n\nconst GRADIENT_BASE = {\n  enabled: 'off',\n  stops: [{\n    position: '0',\n    color: '#2B87DA'\n  }, {\n    position: '100',\n    color: '#29C4A9'\n  }],\n  length: '100%',\n  type: 'linear',\n  direction: '180deg',\n  directionRadial: 'center',\n  overlaysImage: 'off',\n  repeat: 'off'\n};\n\n/**\n * @param {string} rawId Block / module instance id.\n * @return {string} Unique SVG id fragment.\n */\nfunction dsmShapesSanitizeGradientId(rawId) {\n  const s = String(rawId || '').replace(/[^a-zA-Z0-9_-]/g, '');\n  return `dsm_svg_grad_${s || 'shape'}`;\n}\n\n/**\n * @param {object} g Partial gradient from attrs.\n * @return {object}\n */\nfunction mergeGradient(g) {\n  return {\n    ...GRADIENT_BASE,\n    ...g\n  };\n}\n\n/**\n * @param {string} direction Divi linear direction.\n * @return {number[]}\n */\nfunction linearVector(direction) {\n  const map = {\n    'to bottom': [0, 0, 0, 1],\n    'to top': [0, 1, 0, 0],\n    'to right': [0, 0, 1, 0],\n    'to left': [1, 0, 0, 0],\n    'to bottom right': [0, 0, 1, 1],\n    'to bottom left': [1, 0, 0, 1],\n    'to top right': [0, 1, 1, 0],\n    'to top left': [1, 1, 0, 0],\n    '180deg': [0, 0, 0, 1],\n    '90deg': [0, 0, 1, 0],\n    '270deg': [1, 0, 0, 0],\n    '0deg': [0, 1, 0, 0]\n  };\n  if (map[direction]) {\n    return map[direction];\n  }\n  const m = /^(-?[\\d.]+)deg$/.exec(direction || '');\n  if (m) {\n    const rad = parseFloat(m[1]) * Math.PI / 180;\n    const dx = Math.sin(rad);\n    const dy = -Math.cos(rad);\n    return [0.5 - 0.5 * dx, 0.5 - 0.5 * dy, 0.5 + 0.5 * dx, 0.5 + 0.5 * dy];\n  }\n  return [0, 0, 0, 1];\n}\n\n/**\n * @param {string} directionRadial Divi radial placement.\n * @return {number[]}\n */\nfunction radialCenter(directionRadial) {\n  const map = {\n    center: [0.5, 0.5],\n    top: [0.5, 0],\n    bottom: [0.5, 1],\n    left: [0, 0.5],\n    right: [1, 0.5],\n    'top right': [1, 0],\n    'top left': [0, 0],\n    'bottom right': [1, 1],\n    'bottom left': [0, 1]\n  };\n  return map[directionRadial] || [0.5, 0.5];\n}\n\n/**\n * @param {object} gradient Merged gradient.\n * @param {string} uniqueId SVG id.\n * @return {React.ReactElement|null}\n */\nfunction DsmShapesGradientDefs({\n  gradient,\n  uniqueId\n}) {\n  if (!gradient || gradient.enabled !== 'on') {\n    return null;\n  }\n  const g = mergeGradient(gradient);\n  if (!Array.isArray(g.stops) || g.stops.length < 2) {\n    return null;\n  }\n  if (g.type === 'conic') {\n    return null;\n  }\n  const spread = g.repeat === 'on' ? 'repeat' : 'pad';\n  const stopEls = (g.stops || []).map((stop, i) => {\n    var _stop$position;\n    let pos = String((_stop$position = stop?.position) !== null && _stop$position !== void 0 ? _stop$position : '0');\n    const color = stop?.color;\n    if (!color) {\n      return null;\n    }\n    if (pos && !pos.includes('%') && !pos.toLowerCase().includes('px')) {\n      pos += '%';\n    }\n    return /*#__PURE__*/external_vendor_React_default().createElement(\"stop\", {\n      key: i,\n      offset: pos,\n      stopColor: color\n    });\n  }).filter(Boolean);\n  if (!stopEls.length) {\n    return null;\n  }\n  if (g.type === 'linear' || !g.type) {\n    const [x1, y1, x2, y2] = linearVector(g.direction);\n    return /*#__PURE__*/external_vendor_React_default().createElement(\"defs\", null, /*#__PURE__*/external_vendor_React_default().createElement(\"linearGradient\", {\n      id: uniqueId,\n      gradientUnits: \"objectBoundingBox\",\n      x1: String(x1),\n      y1: String(y1),\n      x2: String(x2),\n      y2: String(y2),\n      spreadMethod: spread\n    }, stopEls));\n  }\n  if (g.type === 'circular' || g.type === 'elliptical') {\n    const [cx, cy] = radialCenter(g.directionRadial || 'center');\n    const transform = g.type === 'elliptical' ? 'translate(0.5 0.5) scale(1 0.65) translate(-0.5 -0.5)' : undefined;\n    return /*#__PURE__*/external_vendor_React_default().createElement(\"defs\", null, /*#__PURE__*/external_vendor_React_default().createElement(\"radialGradient\", shapes_gradient_extends({\n      id: uniqueId,\n      gradientUnits: \"objectBoundingBox\",\n      cx: String(cx),\n      cy: String(cy),\n      r: \"0.75\",\n      spreadMethod: spread\n    }, transform ? {\n      gradientTransform: transform\n    } : {}), stopEls));\n  }\n  return null;\n}\n\n/**\n * @param {object} args\n * @param {object} args.attrs       Module attrs.\n * @param {string} args.clientId   Builder block id.\n * @param {string} args.shapeType  Current shape slug.\n * @return {{ gradientDefs: React.ReactNode|null, paintFill: string, paintStroke: string }}\n */\nfunction dsmShapesResolveSvgPaint({\n  attrs,\n  clientId,\n  shapeType\n}) {\n  var _attrs$use_shape_grad;\n  const useGrad = (_attrs$use_shape_grad = attrs?.use_shape_gradient?.innerContent?.desktop?.value) !== null && _attrs$use_shape_grad !== void 0 ? _attrs$use_shape_grad : 'off';\n  if (useGrad !== 'on') {\n    return {\n      gradientDefs: null,\n      paintFill: 'currentColor',\n      paintStroke: 'currentColor'\n    };\n  }\n  const raw = attrs?.shape_fill?.decoration?.background?.desktop?.value?.gradient;\n  const g = raw ? mergeGradient(raw) : null;\n  if (!g || g.enabled !== 'on' || !Array.isArray(g.stops) || g.stops.length < 2 || g.type === 'conic') {\n    return {\n      gradientDefs: null,\n      paintFill: 'currentColor',\n      paintStroke: 'currentColor'\n    };\n  }\n  const uid = dsmShapesSanitizeGradientId(clientId);\n  const url = `url(#${uid})`;\n  const isRing = shapeType === 'ring';\n  return {\n    gradientDefs: /*#__PURE__*/external_vendor_React_default().createElement(DsmShapesGradientDefs, {\n      gradient: g,\n      uniqueId: uid\n    }),\n    paintFill: isRing ? 'none' : url,\n    paintStroke: isRing ? url : 'currentColor'\n  };\n}\n;// ./packages/module-library/shapes/shape-svg.js\n\nconst svgProps = viewBox => ({\n  xmlns: 'http://www.w3.org/2000/svg',\n  viewBox,\n  preserveAspectRatio: 'xMidYMid meet',\n  width: '100%',\n  height: '100%',\n  className: 'dsm_shapes_svg',\n  'aria-hidden': 'true',\n  focusable: 'false'\n});\n\n/**\n * Inline SVG for the Shapes module (server render: Shapes.php).\n *\n * @param {Object}            props\n * @param {string}            props.shapeType     Module shape slug.\n * @param {string}            [props.paintFill]\n * @param {string}            [props.paintStroke]\n * @param {React.ReactNode}   [props.gradientDefs]\n * @return {React.ReactElement}\n */\nconst ShapesSvgInner = ({\n  shapeType,\n  paintFill = 'currentColor',\n  paintStroke = 'currentColor',\n  gradientDefs = null\n}) => {\n  let type = shapeType && String(shapeType).trim() !== '' ? String(shapeType) : 'square';\n  if (type === 'star_six') {\n    type = 'star_five';\n  }\n  switch (type) {\n    case 'square':\n      return /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", svgProps('0 0 100 100'), gradientDefs, /*#__PURE__*/external_vendor_React_default().createElement(\"rect\", {\n        width: \"100\",\n        height: \"100\",\n        fill: paintFill\n      }));\n    case 'circle':\n      return /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", svgProps('0 0 100 100'), gradientDefs, /*#__PURE__*/external_vendor_React_default().createElement(\"circle\", {\n        cx: \"50\",\n        cy: \"50\",\n        r: \"50\",\n        fill: paintFill\n      }));\n    case 'rectangle':\n      return /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", svgProps('0 0 100 100'), gradientDefs, /*#__PURE__*/external_vendor_React_default().createElement(\"rect\", {\n        x: \"0\",\n        y: \"25\",\n        width: \"100\",\n        height: \"50\",\n        fill: paintFill\n      }));\n    case 'triangle':\n      return /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", svgProps('0 0 100 100'), gradientDefs, /*#__PURE__*/external_vendor_React_default().createElement(\"polygon\", {\n        points: \"50,8 92,92 8,92\",\n        fill: paintFill\n      }));\n    case 'oval':\n      return /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", svgProps('0 0 100 100'), gradientDefs, /*#__PURE__*/external_vendor_React_default().createElement(\"ellipse\", {\n        cx: \"50\",\n        cy: \"50\",\n        rx: \"50\",\n        ry: \"25\",\n        fill: paintFill\n      }));\n    case 'trapezoid':\n      return /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", svgProps('0 0 100 100'), gradientDefs, /*#__PURE__*/external_vendor_React_default().createElement(\"polygon\", {\n        points: \"22,22 78,22 100,92 0,92\",\n        fill: paintFill\n      }));\n    case 'parallelogram':\n      return /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", svgProps('0 0 100 100'), gradientDefs, /*#__PURE__*/external_vendor_React_default().createElement(\"polygon\", {\n        points: \"18,30 100,30 82,70 0,70\",\n        fill: paintFill\n      }));\n    case 'diamond_square':\n      return /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", svgProps('0 0 100 100'), gradientDefs, /*#__PURE__*/external_vendor_React_default().createElement(\"polygon\", {\n        points: \"50,2 98,50 50,98 2,50\",\n        fill: paintFill\n      }));\n    case 'hexagon':\n      return /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", svgProps('0 0 100 100'), gradientDefs, /*#__PURE__*/external_vendor_React_default().createElement(\"polygon\", {\n        points: \"50,3 97,28 97,72 50,97 3,72 3,28\",\n        fill: paintFill\n      }));\n    case 'pentagon':\n      return /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", svgProps('0 0 100 100'), gradientDefs, /*#__PURE__*/external_vendor_React_default().createElement(\"polygon\", {\n        points: \"50,2 99,36 80,95 20,95 1,36\",\n        fill: paintFill\n      }));\n    case 'octagon':\n      return /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", svgProps('0 0 100 100'), gradientDefs, /*#__PURE__*/external_vendor_React_default().createElement(\"polygon\", {\n        points: \"30,0 70,0 100,30 100,70 70,100 30,100 0,70 0,30\",\n        fill: paintFill\n      }));\n    case 'star_five':\n      return /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", svgProps('0 0 100 100'), gradientDefs, /*#__PURE__*/external_vendor_React_default().createElement(\"polygon\", {\n        points: \"50,2 61,35 98,35 68,57 79,91 50,70 21,91 32,57 2,35 39,35\",\n        fill: paintFill\n      }));\n    case 'semi_circle':\n      return /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", svgProps('0 0 100 50'), gradientDefs, /*#__PURE__*/external_vendor_React_default().createElement(\"path\", {\n        d: \"M0,50 A50,50 0 0 1 100,50 Z\",\n        fill: paintFill\n      }));\n    case 'pill':\n      return /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", svgProps('0 0 100 50'), gradientDefs, /*#__PURE__*/external_vendor_React_default().createElement(\"rect\", {\n        width: \"100\",\n        height: \"50\",\n        rx: \"25\",\n        ry: \"25\",\n        fill: paintFill\n      }));\n    case 'ring':\n      return /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", svgProps('0 0 100 100'), gradientDefs, /*#__PURE__*/external_vendor_React_default().createElement(\"circle\", {\n        cx: \"50\",\n        cy: \"50\",\n        r: \"38\",\n        fill: \"none\",\n        stroke: paintStroke,\n        strokeWidth: \"24\"\n      }));\n    case 'heart':\n      return /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", svgProps('0 0 100 100'), gradientDefs, /*#__PURE__*/external_vendor_React_default().createElement(\"path\", {\n        d: \"M50,88 C18,58 5,40 5,28 C5,12 20,6 35,14 C42,18 48,26 50,30 C52,26 58,18 65,14 C80,6 95,12 95,28 C95,40 82,58 50,88 Z\",\n        fill: paintFill\n      }));\n    case 'shield':\n      return /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", svgProps('0 0 100 100'), gradientDefs, /*#__PURE__*/external_vendor_React_default().createElement(\"polygon\", {\n        points: \"0,2 100,2 100,68 50,98 0,68\",\n        fill: paintFill\n      }));\n    case 'squircle':\n      return /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", svgProps('0 0 100 100'), gradientDefs, /*#__PURE__*/external_vendor_React_default().createElement(\"rect\", {\n        width: \"100\",\n        height: \"100\",\n        rx: \"32\",\n        ry: \"32\",\n        fill: paintFill\n      }));\n    case 'cross_plus':\n      return /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", svgProps('0 0 100 100'), gradientDefs, /*#__PURE__*/external_vendor_React_default().createElement(\"polygon\", {\n        points: \"33,0 67,0 67,33 100,33 100,67 67,67 67,100 33,100 33,67 0,67 0,33 33,33\",\n        fill: paintFill\n      }));\n    case 'chevron_right':\n      return /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", svgProps('0 0 100 100'), gradientDefs, /*#__PURE__*/external_vendor_React_default().createElement(\"polygon\", {\n        points: \"0,8 52,8 52,0 100,50 52,100 52,92 0,92 42,50\",\n        fill: paintFill\n      }));\n    case 'blob_one':\n      return /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", svgProps('0 0 100 100'), gradientDefs, /*#__PURE__*/external_vendor_React_default().createElement(\"path\", {\n        d: \"M50,2 C78,2 98,22 96,48 C94,78 72,100 42,98 C12,96 2,72 4,42 C6,14 28,2 50,2 Z\",\n        fill: paintFill\n      }));\n    case 'blob_two':\n      return /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", svgProps('0 0 100 100'), gradientDefs, /*#__PURE__*/external_vendor_React_default().createElement(\"path\", {\n        d: \"M48,0 C82,8 100,38 92,68 C84,96 52,104 24,92 C4,82 -4,54 8,28 C18,8 32,0 48,0 Z\",\n        fill: paintFill\n      }));\n    case 'blob_three':\n      return /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", svgProps('0 0 100 100'), gradientDefs, /*#__PURE__*/external_vendor_React_default().createElement(\"path\", {\n        d: \"M50,4 C72,0 96,18 98,42 C102,68 88,94 62,100 C32,104 6,88 2,58 C0,32 18,8 50,4 Z\",\n        fill: paintFill\n      }));\n    case 'blob_four':\n      return /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", svgProps('0 0 100 100'), gradientDefs, /*#__PURE__*/external_vendor_React_default().createElement(\"path\", {\n        d: \"M52,0 C80,6 100,34 94,62 C88,90 58,102 30,96 C6,90 -2,64 6,38 C12,10 34,0 52,0 Z\",\n        fill: paintFill\n      }));\n    case 'blob_five':\n      return /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", svgProps('0 0 100 100'), gradientDefs, /*#__PURE__*/external_vendor_React_default().createElement(\"path\", {\n        d: \"M50,3 C75,0 98,20 99,48 C100,76 80,99 52,100 C24,101 0,82 1,52 C2,26 22,6 50,3 Z\",\n        fill: paintFill\n      }));\n    case 'blob_six':\n      return /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", svgProps('0 0 100 100'), gradientDefs, /*#__PURE__*/external_vendor_React_default().createElement(\"path\", {\n        d: \"M50,2 C78,6 100,32 96,60 C92,88 66,102 38,98 C10,94 -2,70 4,40 C10,12 28,0 50,2 Z\",\n        fill: paintFill\n      }));\n    case 'blob_seven':\n      return /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", svgProps('0 0 100 100'), gradientDefs, /*#__PURE__*/external_vendor_React_default().createElement(\"path\", {\n        d: \"M50,4 C74,0 98,18 100,46 C102,74 82,98 54,100 C26,102 0,86 0,56 C0,30 22,8 50,4 Z\",\n        fill: paintFill\n      }));\n    case 'blob_eight':\n      return /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", svgProps('0 0 100 100'), gradientDefs, /*#__PURE__*/external_vendor_React_default().createElement(\"path\", {\n        d: \"M48,0 C76,10 100,36 96,66 C92,96 62,108 34,98 C8,90 -4,60 8,32 C16,10 32,0 48,0 Z\",\n        fill: paintFill\n      }));\n    default:\n      return /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", svgProps('0 0 100 100'), gradientDefs, /*#__PURE__*/external_vendor_React_default().createElement(\"rect\", {\n        width: \"100\",\n        height: \"100\",\n        fill: paintFill\n      }));\n  }\n};\n;// ./packages/module-library/shapes/edit.js\n\n\n\n// Divi package dependencies.\n\n\n\n\n// Custom dependencies.\n\n\n\n\n\n/**\n * React function component for registering module script data.\n */\nconst shapes_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction shapes_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  const {} = attrs;\n  const shapeTypeRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.shapes_type?.innerContent);\n  let shapeTypeAttr = shapeTypeRaw && String(shapeTypeRaw).trim() !== '' ? String(shapeTypeRaw) : 'square';\n  if (shapeTypeAttr === 'star_six') {\n    shapeTypeAttr = 'star_five';\n  }\n  const {\n    gradientDefs,\n    paintFill,\n    paintStroke\n  } = dsmShapesResolveSvgPaint({\n    attrs,\n    clientId: id,\n    shapeType: shapeTypeAttr\n  });\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: shapes_edit_ModuleScriptData,\n    stylesComponent: shapes_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: `dsm_shapes_wrapper dsm_shapes_${shapeTypeAttr}`\n  }, /*#__PURE__*/external_vendor_React_default().createElement(ShapesSvgInner, {\n    shapeType: shapeTypeAttr,\n    paintFill: paintFill,\n    paintStroke: paintStroke,\n    gradientDefs: gradientDefs\n  })));\n}\n/* harmony default export */ const shapes_edit = (shapes_edit_Edit);\n;// ./packages/module-library/shapes/conversion-outline.js\nconst shapes_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border',\n      shapes: 'shapes_styling.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow',\n      shapes: 'shapes_styling.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    display_conditions: 'module.decoration.conditions',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    margin_padding: 'module.decoration.spacing',\n    max_width: 'module.decoration.sizing',\n    height: 'module.decoration.sizing',\n    link_options: 'module.advanced.link',\n    filters: {\n      default: 'module.decoration.filters'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    shapes_type: 'shapes_type.innerContent.*',\n    shapes_square_size: 'shapes_square_size.innerContent.*',\n    shape_color: 'shape_color.innerContent.*',\n    use_shape_border: 'use_shape_border.innerContent.*',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/shapes/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmShapes', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/shapes': {\n      name: 'divi-supreme/shapes',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 4.921875 11.941406 C 4.457031 11.941406 4.082031 11.566406 4.082031 11.105469 C 4.082031 10.640625 4.457031 10.265625 4.921875 10.265625 C 5.382812 10.265625 5.761719 10.640625 5.761719 11.105469 C 5.761719 11.566406 5.382812 11.941406 4.921875 11.941406 Z M 4.921875 10.734375 C 4.714844 10.734375 4.542969 10.902344 4.542969 11.109375 C 4.542969 11.316406 4.714844 11.488281 4.921875 11.488281 C 5.128906 11.488281 5.296875 11.316406 5.296875 11.109375 C 5.292969 10.898438 5.121094 10.734375 4.921875 10.734375 Z M 4.921875 10.734375 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 10.90625 4.34375 C 10.445312 4.34375 10.066406 3.96875 10.066406 3.507812 C 10.066406 3.042969 10.445312 2.667969 10.90625 2.667969 C 11.367188 2.667969 11.746094 3.042969 11.746094 3.507812 C 11.746094 3.96875 11.367188 4.34375 10.90625 4.34375 Z M 10.90625 3.128906 C 10.699219 3.128906 10.527344 3.300781 10.527344 3.507812 C 10.527344 3.714844 10.699219 3.882812 10.90625 3.882812 C 11.113281 3.882812 11.285156 3.714844 11.285156 3.507812 C 11.285156 3.300781 11.113281 3.128906 10.90625 3.128906 Z M 10.90625 3.128906 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 5.339844 9.21875 C 4.160156 9.21875 3.199219 8.257812 3.199219 7.078125 C 3.199219 5.898438 4.160156 4.9375 5.339844 4.9375 C 6.519531 4.9375 7.480469 5.898438 7.480469 7.078125 C 7.480469 8.257812 6.519531 9.21875 5.339844 9.21875 Z M 5.339844 5.410156 C 4.417969 5.410156 3.667969 6.160156 3.667969 7.082031 C 3.667969 8.007812 4.417969 8.753906 5.339844 8.753906 C 6.265625 8.753906 7.015625 8.007812 7.015625 7.082031 C 7.015625 6.160156 6.257812 5.410156 5.339844 5.410156 Z M 5.339844 5.410156 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.09375 9.289062 L 9.714844 9.289062 C 9.15625 9.289062 8.699219 8.835938 8.699219 8.273438 L 8.699219 5.898438 C 8.699219 5.335938 9.15625 4.878906 9.714844 4.878906 L 12.09375 4.878906 C 12.652344 4.878906 13.109375 5.335938 13.109375 5.898438 L 13.109375 8.273438 C 13.117188 8.835938 12.660156 9.289062 12.09375 9.289062 Z M 9.722656 5.34375 C 9.417969 5.34375 9.167969 5.59375 9.167969 5.898438 L 9.167969 8.273438 C 9.167969 8.578125 9.417969 8.828125 9.722656 8.828125 L 12.101562 8.828125 C 12.40625 8.828125 12.652344 8.578125 12.652344 8.273438 L 12.652344 5.898438 C 12.652344 5.59375 12.40625 5.34375 12.101562 5.34375 Z M 9.722656 5.34375 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 10.414062 13.585938 L 5.90625 13.585938 C 5.753906 13.585938 5.613281 13.5 5.542969 13.367188 C 5.46875 13.234375 5.476562 13.070312 5.566406 12.941406 L 7.824219 9.582031 C 7.902344 9.46875 8.03125 9.402344 8.167969 9.402344 C 8.308594 9.402344 8.4375 9.46875 8.515625 9.582031 L 10.773438 12.941406 C 10.859375 13.070312 10.871094 13.234375 10.796875 13.367188 C 10.707031 13.5 10.566406 13.585938 10.414062 13.585938 Z M 5.996094 13.117188 L 10.324219 13.117188 L 8.15625 9.898438 Z M 5.996094 13.117188 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/shapes/index.js\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\nconst shapes_defaultAttrs = shapes_module_default_render_attributes_namespaceObject;\nconst shapesModule = {\n  metadata: shapes_module_namespaceObject,\n  conversionOutline: shapes_conversion_outline_conversionOutline,\n  renderers: {\n    edit: shapes_edit,\n    styles: shapes_module_styles_ModuleStyles\n  },\n  defaultAttrs: shapes_defaultAttrs,\n  settings: {\n    content: shapes_settings_content,\n    design: shapes_settings_design,\n    advanced: shapes_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    ...shapes_module_default_render_attributes_namespaceObject\n  }\n};\n/* harmony default export */ const shapes = (shapesModule);\n;// ./packages/module-library/shuffle-letters/module.json\nconst shuffle_letters_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/shuffle-letters\",\"d4Shortcode\":\"dsm_shuffle_letters\",\"title\":\"Supreme Shuffle Letters\",\"titles\":\"Supreme Shuffle Letters\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/shuffle-letters\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"before\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-before-shuffle-text\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"header\":{\"type\":\"object\",\"selector\":\"{{selector}} .et_pb_module_header\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"after\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-after-shuffle-text\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"before_shuffle_text\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"title\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"tagName\":\"span\",\"elementType\":\"headingLink\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"before_new_line\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"after_shuffle_text\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"after_new_line\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"shuffle_text_speed\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"shuffle_text_duration\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"shuffle_text_change\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/shuffle-letters/module-default-render-attributes.json\nconst shuffle_letters_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"module\":{\"decoration\":{},\"advanced\":{\"text\":{\"text\":{\"desktop\":{\"value\":{\"color\":\"light\"}}}}}},\"header\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"headingLevel\":\"h1\"}}}}}},\"before_shuffle_text\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"title\":{\"innerContent\":{\"desktop\":{\"value\":{\"text\":\"Divi Shuffle Letters\",\"url\":\"\",\"target\":\"off\"}}}},\"before_new_line\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"after_shuffle_text\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"after_new_line\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"shuffle_text_speed\":{\"innerContent\":{\"desktop\":{\"value\":\"0.05s\"}}},\"shuffle_text_duration\":{\"innerContent\":{\"desktop\":{\"value\":\"1s\"}}},\"shuffle_text_change\":{\"innerContent\":{\"desktop\":{\"value\":\"AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz~!@#$%^&*()-+=[]{}|;:,./<>?\"}}}}');\n;// ./packages/module-library/shuffle-letters/shuffle-letters-vb-default-attrs.js\n/**\n * Visual Builder `defaultAttr` map from `module-default-render-attributes.json`.\n *\n * @package DiviSupreme\n */\n\n\n\n/** `FontGroup` for `attrName=\"header.decoration.font\"` — keep in sync with JSON `header.decoration.font`. */\nconst shuffleLettersHeaderFontGroupDefaultAttr = shuffle_letters_module_default_render_attributes_namespaceObject.header.decoration.font;\n\n/** `innerContent` defaults per field key (for `FieldContainer` `defaultAttr`). */\nconst shuffleLettersFieldDefaultInnerContent = Object.fromEntries(Object.entries(shuffle_letters_module_default_render_attributes_namespaceObject).filter(([, attr]) => attr && typeof attr === 'object' && attr.innerContent).map(([key, attr]) => [key, attr.innerContent]));\n\n/** @type {typeof shuffleLettersFieldDefaultInnerContent} */\nconst shuffleLettersFd = shuffleLettersFieldDefaultInnerContent;\n;// ./packages/module-library/shuffle-letters/settings-content.js\n\n// Wordpress dependencies.\n\n\n// Divi package dependencies.\n\n\n\n\nfunction shuffle_letters_settings_content_SettingsContent({\n  defaultSettingsAttrs\n}) {\n  const fd = shuffleLettersFd;\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"before_shuffle_text.innerContent\",\n    defaultAttr: fd.before_shuffle_text,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Before Text', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"title.innerContent\",\n    subName: \"text\",\n    defaultAttr: fd.title,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shuffle Text', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('The title of your Shuffle Effect.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"before_new_line.innerContent\",\n    defaultAttr: fd.before_new_line,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shuffle Text On a New line', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If enabled, your shuffle text will appear on the next line after the before text.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"after_shuffle_text.innerContent\",\n    defaultAttr: fd.after_shuffle_text,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('After Text', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"after_new_line.innerContent\",\n    defaultAttr: fd.after_new_line,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('After Text On a New line', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If enabled, your after text will appear on the next line after the Shuffle text.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"shuffleLettersOptions\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shuffle Letters Options', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"shuffle_text_speed.innerContent\",\n    defaultAttr: fd.shuffle_text_speed,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shuffle Speed (in s)', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0.01,\n    max: 2,\n    step: 0.001,\n    defaultUnit: 's'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"shuffle_text_duration.innerContent\",\n    defaultAttr: fd.shuffle_text_duration,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Duration (in s)', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text will be revealed after shuffle completed.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0.1,\n    max: 20,\n    step: 0.1,\n    defaultUnit: 's'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"shuffle_text_change.innerContent\",\n    defaultAttr: fd.shuffle_text_change,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overwrite Random Shuffle Text', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)(\"Enter only if you want to have your own random character text. Use without space e.g 'Shuffle Text'\", 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const shuffle_letters_settings_content = (shuffle_letters_settings_content_SettingsContent);\n;// ./packages/module-library/shuffle-letters/settings-design.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\nfunction shuffle_letters_settings_design_SettingsDesign() {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextGroup, {\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"before.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Before Text', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Before', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"header.decoration.font\",\n    defaultAttr: shuffleLettersHeaderFontGroupDefaultAttr,\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shuffle Text', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shuffle', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: true\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"after.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('After Text', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('After', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const shuffle_letters_settings_design = (shuffle_letters_settings_design_SettingsDesign);\n;// ./packages/module-library/shuffle-letters/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction shuffle_letters_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_shuffle_letters\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const shuffle_letters_settings_advanced = (shuffle_letters_settings_advanced_SettingsAdvanced);\n// EXTERNAL MODULE: ./node_modules/prop-types/index.js\nvar prop_types = __webpack_require__(\"./node_modules/prop-types/index.js\");\nvar prop_types_default = /*#__PURE__*/__webpack_require__.n(prop_types);\n// EXTERNAL MODULE: ./node_modules/baffle/dist/baffle.min.js\nvar baffle_min = __webpack_require__(\"./node_modules/baffle/dist/baffle.min.js\");\nvar baffle_min_default = /*#__PURE__*/__webpack_require__.n(baffle_min);\n;// ./node_modules/baffle-react/es/baffle.js\n\n\n// this is dumb but makes it stubbable for tests\n/* harmony default export */ const baffle = ((baffle_min_default()));\n// EXTERNAL MODULE: ./node_modules/lodash/pickBy.js\nvar pickBy = __webpack_require__(\"./node_modules/lodash/pickBy.js\");\nvar pickBy_default = /*#__PURE__*/__webpack_require__.n(pickBy);\n;// ./node_modules/baffle-react/es/index.js\nvar _class, _temp;\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\n\n\n\n\n\nvar Baffle = (_temp = _class = function (_Component) {\n  _inherits(Baffle, _Component);\n\n  function Baffle() {\n    _classCallCheck(this, Baffle);\n\n    return _possibleConstructorReturn(this, _Component.apply(this, arguments));\n  }\n\n  Baffle.prototype.componentDidMount = function componentDidMount() {\n    var _props = this.props,\n        update = _props.update,\n        obfuscate = _props.obfuscate,\n        characters = _props.characters,\n        exclude = _props.exclude,\n        speed = _props.speed,\n        revealDuration = _props.revealDuration,\n        revealDelay = _props.revealDelay;\n\n\n    var options = pickBy_default()({ characters: characters, exclude: exclude, speed: speed }, function (value) {\n      return value !== undefined;\n    });\n\n    this.baffle = baffle(this.span, options);\n\n    if (update && obfuscate) {\n      this.baffle.start();\n    } else if (!update && obfuscate) {\n      this.baffle.once();\n    } else if (update && !obfuscate) {\n      this.baffle.start();\n      this.baffle.reveal(revealDuration, revealDelay);\n    }\n  };\n\n  // TODO: clean up this function, it's gross\n\n\n  Baffle.prototype.componentDidUpdate = function componentDidUpdate(prevProps) {\n    var _props2 = this.props,\n        children = _props2.children,\n        characters = _props2.characters,\n        exclude = _props2.exclude,\n        speed = _props2.speed,\n        obfuscate = _props2.obfuscate,\n        update = _props2.update,\n        revealDuration = _props2.revealDuration,\n        revealDelay = _props2.revealDelay;\n\n\n    var options = pickBy_default()({ characters: characters, exclude: exclude, speed: speed }, function (value, key) {\n      return value !== prevProps[key];\n    });\n\n    this.baffle.set(options);\n\n    if (update && !prevProps.update && obfuscate || obfuscate && !prevProps.obfuscate && update) {\n      this.baffle.start();\n    } else if (!update && prevProps.update) {\n      this.baffle.stop();\n    }\n\n    if (!obfuscate && prevProps.obfuscate) {\n      if (!update) {\n        this.baffle.reveal();\n      } else {\n        this.baffle.reveal(revealDuration, revealDelay);\n      }\n    }\n\n    if (obfuscate && !prevProps.obfuscate && !update) {\n      this.baffle.once();\n    }\n\n    if (children !== prevProps.children) {\n      this.baffle.text(function () {\n        return children;\n      });\n    }\n  };\n\n  Baffle.prototype.render = function render() {\n    var _this2 = this;\n\n    var children = this.props.children;\n\n    return external_vendor_React_default().createElement(\n      \"span\",\n      { ref: function ref(span) {\n          return _this2.span = span;\n        } },\n      children\n    );\n  };\n\n  return Baffle;\n}(external_vendor_React_.Component), _class.defaultProps = {\n  characters: \"AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz~!@#$%^&*()-+=[]{}|;:,./<>?\",\n  exclude: [\" \"],\n  speed: 50,\n  obfuscate: true,\n  update: true,\n  revealDuration: 1000,\n  revealDelay: 0\n}, _temp);\n\n true ? Baffle.propTypes = {\n  children: (prop_types_default()).string,\n  characters: prop_types_default().oneOfType([(prop_types_default()).string, (prop_types_default()).array]),\n  exclude: (prop_types_default()).array,\n  speed: (prop_types_default()).number,\n  obfuscate: (prop_types_default()).bool,\n  update: (prop_types_default()).bool,\n  revealDuration: (prop_types_default()).number,\n  revealDelay: (prop_types_default()).number\n} : 0;\n;// ./packages/module-library/shuffle-letters/module-styles.js\n\n\n\nconst before_new_line_text_css = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      display: true\n    }\n  });\n  declarations.add('display', 'on' === attrValue ? 'block' : 'inline-block');\n  return declarations.value;\n};\nconst after_new_line_text_css = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      display: true\n    }\n  });\n  declarations.add('display', 'on' === attrValue ? 'block' : 'inline-block');\n  return declarations.value;\n};\n\n/**\n * React function component for rendering module style.\n */\nconst shuffle_letters_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextStyle, {\n    selector: orderClass,\n    attr: attrs?.module?.advanced?.text\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'before'\n  }), elements.style({\n    attrName: 'after'\n  }), elements.style({\n    attrName: 'header'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-before-shuffle-text`,\n    attr: attrs?.before_new_line?.innerContent,\n    declarationFunction: before_new_line_text_css\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-after-shuffle-text`,\n    attr: attrs?.after_new_line?.innerContent,\n    declarationFunction: after_new_line_text_css\n  }));\n};\n;// ./packages/module-library/shuffle-letters/edit.js\n\n\n\n\n// Divi package dependencies.\n\n\n\n\n\n\n/**\n * @param {string} raw Heading tag.\n * @return {keyof JSX.IntrinsicElements}\n */\nfunction shuffle_letters_edit_sanitizeHeadingTag(raw) {\n  if (typeof raw === 'string' && /^(h[1-6]|p|div)$/i.test(raw.trim())) {\n    return raw.trim().toLowerCase();\n  }\n  return 'h1';\n}\n\n/**\n * React function component for registering module script data.\n */\nconst shuffle_letters_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\n\n/**\n * `headingLink` text leaf (or legacy string) for `useDynamicData` — matches Card pattern for dynamic fields.\n *\n * @param {object|undefined} attrs Module attrs.\n * @return {unknown}\n */\nfunction getShuffleTitleDynamicSource(attrs) {\n  const raw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.title?.innerContent);\n  if (raw == null) {\n    return '';\n  }\n  if (typeof raw === 'object' && raw !== null && 'text' in raw) {\n    return raw.text;\n  }\n  return raw;\n}\n\n/**\n * Plain string for `baffle-react` (requires `.split`); strip tags if dynamic resolved to HTML.\n *\n * @param {unknown} resolved Resolved or static title fragment.\n * @return {string}\n */\nfunction toPlainStringForBaffle(resolved) {\n  if (resolved == null) {\n    return '';\n  }\n  if (typeof resolved === 'number') {\n    return String(resolved);\n  }\n  if (typeof resolved !== 'string') {\n    return '';\n  }\n  if (/<[^>]+>/.test(resolved)) {\n    var _doc$body$textContent;\n    if (typeof DOMParser === 'undefined') {\n      return resolved.replace(/<[^>]*>/g, '');\n    }\n    const doc = new DOMParser().parseFromString(resolved, 'text/html');\n    return (_doc$body$textContent = doc.body?.textContent) !== null && _doc$body$textContent !== void 0 ? _doc$body$textContent : '';\n  }\n  return resolved;\n}\n\n/**\n * Parse RangeContainer / string value (e.g. `0.05s`) to milliseconds for baffle `options.speed`.\n * Matches `shuffle.js`: parseFloat(value) * 1000.\n *\n * @param {unknown} raw Value from `getAttrByMode( innerContent )`.\n * @param {number}    fallbackSeconds Default if missing or invalid.\n * @return {number}\n */\nfunction shuffleAttrToSpeedMs(raw, fallbackSeconds) {\n  let s = '';\n  if (raw != null) {\n    if (typeof raw === 'string' || typeof raw === 'number') {\n      s = String(raw);\n    } else if (typeof raw === 'object' && 'value' in raw && raw.value != null) {\n      s = String(raw.value);\n    }\n  }\n  const n = parseFloat(s);\n  return Number.isFinite(n) ? n * 1000 : fallbackSeconds * 1000;\n}\n\n/**\n * Parse user “duration” setting to milliseconds for baffle `reveal(0, delay)` — same as `shuffle.js`.\n *\n * @param {unknown} raw Value from `getAttrByMode( innerContent )`.\n * @param {number}    fallbackSeconds Default if missing or invalid.\n * @return {number}\n */\nfunction shuffleAttrToRevealDelayMs(raw, fallbackSeconds) {\n  return shuffleAttrToSpeedMs(raw, fallbackSeconds);\n}\n\n/**\n * After the node intersects the viewport, sets true once (parity with `shuffle.js` Waypoints).\n *\n * @return {[React.RefObject<HTMLSpanElement|null>, boolean]}\n */\nfunction useShuffleViewportStart() {\n  const ref = (0,external_vendor_React_.useRef)(null);\n  const [started, setStarted] = (0,external_vendor_React_.useState)(false);\n  (0,external_vendor_React_.useEffect)(() => {\n    if (started) {\n      return;\n    }\n    const el = ref.current;\n    if (!el) {\n      return;\n    }\n    if (typeof IntersectionObserver === 'undefined') {\n      setStarted(true);\n      return;\n    }\n    const observer = new IntersectionObserver(entries => {\n      const entry = entries[0];\n      if (entry?.isIntersecting) {\n        setStarted(true);\n        observer.disconnect();\n      }\n    }, {\n      root: null,\n      rootMargin: '0px',\n      threshold: 0\n    });\n    observer.observe(el);\n    return () => observer.disconnect();\n  }, [started]);\n  return [ref, started];\n}\nfunction shuffle_letters_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  var _attrs$module$advance, _attrs$module$advance2, _attrs$title$innerCon;\n  const before_text = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.before_shuffle_text?.innerContent);\n  const after_text = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.after_shuffle_text?.innerContent);\n  const headingRaw = attrs?.header?.decoration?.font?.font?.desktop?.value?.headingLevel;\n  const Tag = shuffle_letters_edit_sanitizeHeadingTag(typeof headingRaw === 'string' ? headingRaw : 'h1');\n  const shuffle_text_speed = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.shuffle_text_speed?.innerContent);\n  const shuffle_text_duration = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.shuffle_text_duration?.innerContent);\n  const baffleSpeedMs = shuffleAttrToSpeedMs(shuffle_text_speed, 0.05);\n  const baffleRevealDelayMs = shuffleAttrToRevealDelayMs(shuffle_text_duration, 1);\n  const shuffle_text_change = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.shuffle_text_change?.innerContent);\n  const shuffleCharacters = shuffle_text_change == null || '' === shuffle_text_change ? undefined : String(shuffle_text_change);\n  const titleDynamicSource = getShuffleTitleDynamicSource(attrs);\n  const textColor = (_attrs$module$advance = attrs?.module?.advanced?.text?.text?.desktop?.value?.color) !== null && _attrs$module$advance !== void 0 ? _attrs$module$advance : 'light';\n  const moduleLinkUrl = (_attrs$module$advance2 = attrs?.module?.advanced?.link?.desktop?.value?.url) !== null && _attrs$module$advance2 !== void 0 ? _attrs$module$advance2 : '';\n  const hasModuleLink = typeof moduleLinkUrl === 'string' && '' !== moduleLinkUrl.trim();\n  const refreshKey = [shuffle_text_speed, shuffle_text_duration, shuffle_text_change, JSON.stringify((_attrs$title$innerCon = attrs?.title?.innerContent) !== null && _attrs$title$innerCon !== void 0 ? _attrs$title$innerCon : null)].join('|');\n  const [shuffleViewportRef, shuffleInView] = useShuffleViewportStart();\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    moduleClassName: \"dsm_shuffle_letters\",\n    name: name,\n    scriptDataComponent: shuffle_letters_edit_ModuleScriptData,\n    stylesComponent: shuffle_letters_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat, _attrs$module$advance3;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: {\n          ...((_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}),\n          link: (_attrs$module$advance3 = attrs?.module?.advanced?.link) !== null && _attrs$module$advance3 !== void 0 ? _attrs$module$advance3 : {}\n        }\n      }));\n      params.classnamesInstance.add(`et_pb_bg_layout_${textColor}`);\n      if (hasModuleLink) {\n        params.classnamesInstance.add('dsm-link');\n      }\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(Tag, {\n    className: \"dsm-shuffle-letters et_pb_module_header\",\n    key: refreshKey\n  }, !(0,lodash.isEmpty)(before_text) && /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm-before-shuffle-text\"\n  }, elements.render({\n    attrName: 'before_shuffle_text'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    ref: shuffleViewportRef,\n    className: \"dsm-shuffle-vb-viewport-track\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: titleDynamicSource\n  }, resolvedTitle => shuffleInView ? /*#__PURE__*/external_vendor_React_default().createElement(Baffle, {\n    key: `shuffle-baffle-${refreshKey}`,\n    speed: baffleSpeedMs,\n    characters: shuffleCharacters,\n    revealDuration: 0,\n    revealDelay: baffleRevealDelayMs,\n    obfuscate: false\n  }, toPlainStringForBaffle(resolvedTitle)) : /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm-shuffle-text\"\n  }, toPlainStringForBaffle(resolvedTitle)))), !(0,lodash.isEmpty)(after_text) && /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm-after-shuffle-text\"\n  }, elements.render({\n    attrName: 'after_shuffle_text'\n  }))));\n}\n/* harmony default export */ const shuffle_letters_edit = (shuffle_letters_edit_Edit);\n;// ./packages/module-library/shuffle-letters/conversion-outline.js\nconst shuffle_letters_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    disabled_on: 'module.decoration.disabledOn',\n    borders: {\n      default: 'module.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow'\n    },\n    module: 'module.advanced.htmlAttributes',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    text: 'module.advanced.text',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    text_shadow: {\n      default: 'module.advanced.text.textShadow'\n    },\n    link_options: 'module.advanced.link',\n    fonts: {\n      before: 'before.decoration.font',\n      header: 'header.decoration.font',\n      after: 'after.decoration.font'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    before_shuffle_text: 'before_shuffle_text.innerContent.*',\n    title: 'title.innerContent.*.text',\n    before_new_line: 'before_new_line.innerContent.*',\n    after_shuffle_text: 'after_shuffle_text.innerContent.*',\n    after_new_line: 'after_new_line.innerContent.*',\n    shuffle_text_speed: 'shuffle_text_speed.innerContent.*',\n    shuffle_text_duration: 'shuffle_text_duration.innerContent.*',\n    shuffle_text_change: 'shuffle_text_change.innerContent.*',\n    header_level: 'header.decoration.font.font.*.headingLevel',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/shuffle-letters/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmShuffleLetter', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/shuffle-letters': {\n      name: 'divi-supreme/shuffle-letters',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 9.976562 11.953125 L 6.640625 11.953125 L 6.640625 11.511719 C 6.851562 11.511719 7.011719 11.453125 7.121094 11.335938 C 7.335938 11.097656 7.304688 10.699219 7.304688 10.691406 L 7.304688 7.519531 L 6.277344 7.519531 C 5.953125 7.519531 5.738281 7.679688 5.625 7.820312 C 5.546875 7.914062 5.414062 7.945312 5.300781 7.90625 C 5.179688 7.859375 5.105469 7.75 5.105469 7.625 L 5.105469 5.539062 L 11.527344 5.539062 L 11.527344 7.625 C 11.527344 7.75 11.453125 7.859375 11.335938 7.90625 C 11.214844 7.949219 11.085938 7.914062 11.007812 7.820312 C 10.886719 7.679688 10.679688 7.519531 10.355469 7.519531 L 9.328125 7.519531 L 9.328125 10.699219 C 9.328125 10.703125 9.300781 11.105469 9.511719 11.339844 C 9.621094 11.460938 9.777344 11.515625 9.992188 11.515625 L 9.992188 11.953125 Z M 7.53125 11.515625 L 9.078125 11.515625 C 8.847656 11.175781 8.867188 10.75 8.871094 10.675781 L 8.871094 7.089844 L 10.335938 7.089844 C 10.652344 7.089844 10.898438 7.1875 11.078125 7.316406 L 11.078125 5.976562 L 5.535156 5.976562 L 5.535156 7.308594 C 5.71875 7.183594 5.957031 7.085938 6.273438 7.085938 L 7.738281 7.085938 L 7.738281 10.671875 C 7.742188 10.75 7.761719 11.175781 7.53125 11.515625 Z M 7.53125 11.515625 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 3.457031 9.988281 C 3.023438 9.988281 2.667969 9.632812 2.667969 9.199219 C 2.667969 8.761719 3.023438 8.40625 3.457031 8.40625 C 3.890625 8.40625 4.246094 8.761719 4.246094 9.199219 C 4.246094 9.632812 3.890625 9.988281 3.457031 9.988281 Z M 3.457031 8.84375 C 3.261719 8.84375 3.101562 9.003906 3.101562 9.199219 C 3.101562 9.394531 3.261719 9.554688 3.457031 9.554688 C 3.652344 9.554688 3.8125 9.394531 3.8125 9.199219 C 3.8125 9.003906 3.652344 8.84375 3.457031 8.84375 Z M 3.457031 8.84375 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 10.203125 3.179688 C 9.765625 3.179688 9.414062 2.824219 9.414062 2.390625 C 9.414062 1.953125 9.765625 1.601562 10.203125 1.601562 C 10.636719 1.601562 10.992188 1.953125 10.992188 2.390625 C 10.992188 2.824219 10.636719 3.179688 10.203125 3.179688 Z M 10.203125 2.035156 C 10.007812 2.035156 9.847656 2.195312 9.847656 2.390625 C 9.847656 2.585938 10.007812 2.746094 10.203125 2.746094 C 10.398438 2.746094 10.558594 2.585938 10.558594 2.390625 C 10.558594 2.195312 10.398438 2.035156 10.203125 2.035156 Z M 10.203125 2.035156 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 4.023438 6.769531 L 3.582031 6.769531 L 3.582031 4.136719 L 13.53125 4.136719 L 13.53125 4.578125 L 4.023438 4.578125 Z M 4.023438 6.769531 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.429688 5.757812 L 12.167969 5.40625 L 13.546875 4.367188 L 12.171875 3.390625 L 12.425781 3.039062 L 14.289062 4.355469 Z M 12.429688 5.757812 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.457031 13.371094 L 4.183594 13.371094 L 4.183594 12.933594 L 11.015625 12.933594 L 11.015625 11.15625 L 11.457031 11.15625 Z M 11.457031 13.371094 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 5.292969 14.472656 L 3.433594 13.15625 L 5.289062 11.753906 L 5.558594 12.101562 L 4.175781 13.144531 L 5.550781 14.117188 Z M 5.292969 14.472656 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/shuffle-letters/index.js\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n\n\n\n\n\n\nconst shuffle_letters_defaultAttrs = shuffle_letters_module_default_render_attributes_namespaceObject;\nconst shuffleLettersModule = {\n  metadata: shuffle_letters_module_namespaceObject,\n  conversionOutline: shuffle_letters_conversion_outline_conversionOutline,\n  renderers: {\n    edit: shuffle_letters_edit,\n    styles: shuffle_letters_module_styles_ModuleStyles\n  },\n  defaultAttrs: shuffle_letters_defaultAttrs,\n  settings: {\n    content: shuffle_letters_settings_content,\n    design: shuffle_letters_settings_design,\n    advanced: shuffle_letters_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    ...shuffle_letters_module_default_render_attributes_namespaceObject\n  }\n};\n/* harmony default export */ const shuffle_letters = (shuffleLettersModule);\n;// ./packages/module-library/social-share-buttons-child/module.json\nconst social_share_buttons_child_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/social-share-buttons-child\",\"d4Shortcode\":\"dsm_social_share_buttons_child\",\"title\":\"Supreme Social Share Buttons Child\",\"titles\":\"Supreme Social Share Buttons Childs\",\"category\":\"child-module\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"dsm_network\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"facebook\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_custom_image_icon\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"src\":{\"type\":\"object\",\"inlineEditor\":\"UploadContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"alt\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"title_text\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_custom_label\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_color_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_custom_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_custom_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/social-share-buttons-child/conversion-outline.js\nconst social_share_buttons_child_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    module: 'module.advanced.htmlAttributes',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow'\n    },\n    max_width: 'module.decoration.sizing',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    margin_padding: 'module.decoration.spacing',\n    disabled_on: 'module.decoration.disabledOn',\n    filters: {\n      default: 'module.decoration.filters'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    dsm_network: 'dsm_network.innerContent.*',\n    dsm_custom_image_icon: 'dsm_custom_image_icon.innerContent.*',\n    dsm_custom_label: 'dsm_custom_label.innerContent.*',\n    dsm_color_type: 'dsm_color_type.innerContent.*',\n    dsm_custom_bg_color: 'dsm_custom_bg_color.innerContent.*',\n    dsm_custom_color: 'dsm_custom_color.innerContent.*',\n    src: 'src.innerContent.*.src',\n    alt: 'alt.innerContent.*',\n    title_text: 'title_text.innerContent.*',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/social-share-buttons-child/module-default-render-attributes.json\nconst social_share_buttons_child_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"dsm_network\":{\"innerContent\":{\"desktop\":{\"value\":\"facebook\"}}},\"dsm_custom_image_icon\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"src\":{\"innerContent\":{\"desktop\":{\"value\":{\"src\":\"\"}}}},\"alt\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"title_text\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"dsm_custom_label\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"dsm_color_type\":{\"innerContent\":{\"desktop\":{\"value\":\"official\"}}},\"dsm_custom_bg_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"dsm_custom_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}}}');\n;// ./packages/module-library/social-share-buttons-child/social-share-buttons-child-vb-default-attrs.js\n/**\n * Visual Builder `defaultAttr` map for child items: `innerContent` slices\n * aligned with Divi 4 `SocialShareButtonsChild` field defaults.\n *\n * Used only in `settings-content.js` and `settings-design.js`.\n *\n * @package DiviSupreme\n */\n\n\nconst socialShareButtonsChildFieldDefaultInnerContent = Object.fromEntries(Object.entries(social_share_buttons_child_module_default_render_attributes_namespaceObject).map(([key, attr]) => [key, attr.innerContent]));\n;// ./packages/module-library/social-share-buttons-child/settings-content.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\n\nfunction social_share_buttons_child_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  const customImageIcon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_custom_image_icon?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('General', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_network.innerContent\",\n    defaultAttr: socialShareButtonsChildFieldDefaultInnerContent.dsm_network,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Network', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', '')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      facebook: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Facebook', 'dsm-supreme-modules-pro-for-divi')\n      },\n      twitter: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Twitter', 'dsm-supreme-modules-pro-for-divi')\n      },\n      linkedin: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Linkedin', 'dsm-supreme-modules-pro-for-divi')\n      },\n      pinterest: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pinterest', 'dsm-supreme-modules-pro-for-divi')\n      },\n      reddit: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Reddit', 'dsm-supreme-modules-pro-for-divi')\n      },\n      vk: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Vk', 'dsm-supreme-modules-pro-for-divi')\n      },\n      tumblr: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tumblr', 'dsm-supreme-modules-pro-for-divi')\n      },\n      digg: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Digg', 'dsm-supreme-modules-pro-for-divi')\n      },\n      skype: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Skype', 'dsm-supreme-modules-pro-for-divi')\n      },\n      stumbleupon: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Stumbleupon', 'dsm-supreme-modules-pro-for-divi')\n      },\n      mix: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Mix', 'dsm-supreme-modules-pro-for-divi')\n      },\n      telegram: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Telegram', 'dsm-supreme-modules-pro-for-divi')\n      },\n      pocket: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pocket', 'dsm-supreme-modules-pro-for-divi')\n      },\n      xing: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Xing', 'dsm-supreme-modules-pro-for-divi')\n      },\n      whatsapp: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Whatsapp', 'dsm-supreme-modules-pro-for-divi')\n      },\n      email: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Email', 'dsm-supreme-modules-pro-for-divi')\n      },\n      print: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Print', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_custom_image_icon.innerContent\",\n    defaultAttr: socialShareButtonsChildFieldDefaultInnerContent.dsm_custom_image_icon,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Custom Image Icon', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', '')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"src.innerContent\",\n    subName: \"src\",\n    defaultAttr: socialShareButtonsChildFieldDefaultInnerContent.src,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', ''),\n    visible: 'on' === customImageIcon,\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_custom_label.innerContent\",\n    defaultAttr: socialShareButtonsChildFieldDefaultInnerContent.dsm_custom_label,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Custom Label', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', ''),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const social_share_buttons_child_settings_content = (social_share_buttons_child_settings_content_SettingsContent);\n;// ./packages/module-library/social-share-buttons-child/settings-design.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\nfunction social_share_buttons_child_settings_design_SettingsDesign({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  const colorType = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_color_type?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"share_button\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Share Button', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_color_type.innerContent\",\n    defaultAttr: socialShareButtonsChildFieldDefaultInnerContent.dsm_color_type,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', '')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      official: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Official', 'dsm-supreme-modules-pro-for-divi')\n      },\n      custom: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Custom', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_custom_bg_color.innerContent\",\n    defaultAttr: socialShareButtonsChildFieldDefaultInnerContent.dsm_custom_bg_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', ''),\n    visible: 'custom' === colorType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_custom_color.innerContent\",\n    defaultAttr: socialShareButtonsChildFieldDefaultInnerContent.dsm_custom_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', ''),\n    visible: 'custom' === colorType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null));\n}\n/* harmony default export */ const social_share_buttons_child_settings_design = (social_share_buttons_child_settings_design_SettingsDesign);\n;// ./packages/module-library/social-share-buttons-child/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction social_share_buttons_child_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_social_share_buttons_child\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const social_share_buttons_child_settings_advanced = (social_share_buttons_child_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/social-share-buttons-child/module-styles.js\n\n\n\n\n/**\n * React function component for rendering module style.\n */\nconst social_share_buttons_child_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  const colorType = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_color_type?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), elements.style({\n    attrName: 'text'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), 'custom' === colorType && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm-social-share-buttons-container ${orderClass} .dsm-social-share-button-wrapper .dsm-social-share-button-inner-wrapper`,\n    attr: attrs?.dsm_custom_bg_color?.innerContent,\n    property: \"background\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm-social-share-buttons-container ${orderClass} .dsm-social-share-button-wrapper .dsm-social-share-button-inner-wrapper`,\n    attr: attrs?.dsm_custom_color?.innerContent,\n    property: \"color\"\n  })));\n};\n;// ./packages/module-library/social-share-buttons-child/edit.js\n\n\n\n\n// Divi package dependencies.\n\n\n\n\n// Custom dependencies.\n\n\n\n/**\n * React function component for registering module script data.\n */\n\nconst social_share_buttons_child_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction social_share_buttons_child_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements,\n  parentAttrs\n}) {\n  const {} = attrs;\n  const network = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_network?.innerContent);\n  const customLabelAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_custom_label?.innerContent);\n  const rawUpload = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.src?.innerContent);\n  const imageUrl = rawUpload && typeof rawUpload === 'object' && 'src' in rawUpload ? rawUpload.src : rawUpload;\n  const customImageIcon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_custom_image_icon?.innerContent);\n  const socialButtonView = parentAttrs?.dsm_view?.innerContent?.desktop?.value;\n  const socialButtonLabel = parentAttrs?.dsm_label?.innerContent?.desktop?.value;\n  const socialShareButtonsNetwork = typeof network === 'undefined' ? 'facebook' : network;\n  const socialButtonHoverAnimation = parentAttrs?.dsm_social_hover_animation?.innerContent?.desktop?.value;\n  let socialShareButtonsMarkup = '';\n  switch (socialShareButtonsNetwork) {\n    case 'facebook':\n      {\n        const customLabel = (0,lodash.isEmpty)(customLabelAttr) ? 'Facebook' : customLabelAttr;\n        const dsmButtonText = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-text\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n          value: customLabel\n        }, resolvedContent => /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n          className: \"dsm-text\"\n        }, resolvedContent)));\n        const isButtonText = ('on' === socialButtonLabel || (0,lodash.isEmpty)(socialButtonLabel)) && dsmButtonText;\n        const dsmButtonIcon = 'off' === customImageIcon ? /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-icon\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n          className: \"dsm_icon\"\n        }, \"\\uF09A\")) : /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-icon\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n          value: imageUrl\n        }, resolvedImage => /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n          src: resolvedImage,\n          className: \"dsm_custom_image_icon\"\n        })));\n        const dsmIconTextButton = 'icon_text' === socialButtonView ? /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, dsmButtonIcon, isButtonText) : null;\n        socialShareButtonsMarkup = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: `dsm-social-share-button-inner-wrapper dsm-facebook ${socialButtonHoverAnimation}`\n        }, 'text' === socialButtonView && dsmButtonText, 'icon' === socialButtonView && dsmButtonIcon, dsmIconTextButton);\n      }\n      break;\n    case 'twitter':\n      {\n        const customLabel = (0,lodash.isEmpty)(customLabelAttr) ? 'Twitter' : customLabelAttr;\n        const dsmButtonText = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-text\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n          value: customLabel\n        }, resolvedContent => /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n          className: \"dsm-text\"\n        }, resolvedContent)));\n        const isButtonText = ('on' === socialButtonLabel || (0,lodash.isEmpty)(socialButtonLabel)) && dsmButtonText;\n        const dsmButtonIcon = 'off' === customImageIcon ? /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-icon\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n          className: \"dsm_icon\"\n        }, \"\\uE094\")) : /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-icon\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n          value: imageUrl\n        }, resolvedImage => /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n          src: resolvedImage,\n          className: \"dsm_custom_image_icon\"\n        })));\n        const dsmIconTextButton = 'icon_text' === socialButtonView || typeof socialButtonView === 'undefined' ? /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, dsmButtonIcon, isButtonText) : null;\n        socialShareButtonsMarkup = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: `dsm-social-share-button-inner-wrapper dsm-twitter ${socialButtonHoverAnimation}`\n        }, 'text' === socialButtonView && dsmButtonText, 'icon' === socialButtonView && dsmButtonIcon, dsmIconTextButton);\n      }\n      break;\n    case 'linkedin':\n      {\n        const customLabel = (0,lodash.isEmpty)(customLabelAttr) ? 'LinkedIn' : customLabelAttr;\n        const dsmButtonText = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-text\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n          value: customLabel\n        }, resolvedContent => /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n          className: \"dsm-text\"\n        }, resolvedContent)));\n        const isButtonText = ('on' === socialButtonLabel || (0,lodash.isEmpty)(socialButtonLabel)) && dsmButtonText;\n        const dsmButtonIcon = 'off' === customImageIcon ? /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-icon\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n          className: \"dsm_icon\"\n        }, \"\\uF08C\")) : /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-icon\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n          value: imageUrl\n        }, resolvedImage => /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n          src: resolvedImage,\n          className: \"dsm_custom_image_icon\"\n        })));\n        const dsmIconTextButton = 'icon_text' === socialButtonView || typeof socialButtonView === 'undefined' ? /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, dsmButtonIcon, isButtonText) : null;\n        socialShareButtonsMarkup = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: `dsm-social-share-button-inner-wrapper dsm-linkedin ${socialButtonHoverAnimation}`\n        }, 'text' === socialButtonView && dsmButtonText, 'icon' === socialButtonView && dsmButtonIcon, dsmIconTextButton);\n      }\n      break;\n    case 'pinterest':\n      {\n        const customLabel = (0,lodash.isEmpty)(customLabelAttr) ? 'Pinterest' : customLabelAttr;\n        const dsmButtonText = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-text\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n          value: customLabel\n        }, resolvedContent => /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n          className: \"dsm-text\"\n        }, resolvedContent)));\n        const isButtonText = ('on' === socialButtonLabel || (0,lodash.isEmpty)(socialButtonLabel)) && dsmButtonText;\n        const dsmButtonIcon = 'off' === customImageIcon ? /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-icon\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n          className: \"dsm_icon\"\n        }, \"\\uF0D2\")) : /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-icon\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n          value: imageUrl\n        }, resolvedImage => /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n          src: resolvedImage,\n          className: \"dsm_custom_image_icon\"\n        })));\n        const dsmIconTextButton = 'icon_text' === socialButtonView || typeof socialButtonView === 'undefined' ? /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, dsmButtonIcon, isButtonText) : null;\n        socialShareButtonsMarkup = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: `dsm-social-share-button-inner-wrapper dsm-pinterest ${socialButtonHoverAnimation}`\n        }, 'text' === socialButtonView && dsmButtonText, 'icon' === socialButtonView && dsmButtonIcon, dsmIconTextButton);\n      }\n      break;\n    case 'reddit':\n      {\n        const customLabel = (0,lodash.isEmpty)(customLabelAttr) ? 'Reddit' : customLabelAttr;\n        const dsmButtonText = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-text\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n          value: customLabel\n        }, resolvedContent => /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n          className: \"dsm-text\"\n        }, resolvedContent)));\n        const isButtonText = ('on' === socialButtonLabel || (0,lodash.isEmpty)(socialButtonLabel)) && dsmButtonText;\n        const dsmButtonIcon = 'off' === customImageIcon ? /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-icon\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n          className: \"dsm_icon\"\n        }, \"\\uF1A1\")) : /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-icon\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n          value: imageUrl\n        }, resolvedImage => /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n          src: resolvedImage,\n          className: \"dsm_custom_image_icon\"\n        })));\n        const dsmIconTextButton = 'icon_text' === socialButtonView || typeof socialButtonView === 'undefined' ? /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, dsmButtonIcon, isButtonText) : null;\n        socialShareButtonsMarkup = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: `dsm-social-share-button-inner-wrapper dsm-reddit ${socialButtonHoverAnimation}`\n        }, 'text' === socialButtonView && dsmButtonText, 'icon' === socialButtonView && dsmButtonIcon, dsmIconTextButton);\n      }\n      break;\n    case 'vk':\n      {\n        const customLabel = (0,lodash.isEmpty)(customLabelAttr) ? 'Vk' : customLabelAttr;\n        const dsmButtonText = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-text\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n          value: customLabel\n        }, resolvedContent => /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n          className: \"dsm-text\"\n        }, resolvedContent)));\n        const isButtonText = ('on' === socialButtonLabel || (0,lodash.isEmpty)(socialButtonLabel)) && dsmButtonText;\n        const dsmButtonIcon = 'off' === customImageIcon ? /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-icon\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n          className: \"dsm_icon\"\n        }, \"\\uF189\")) : /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-icon\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n          value: imageUrl\n        }, resolvedImage => /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n          src: resolvedImage,\n          className: \"dsm_custom_image_icon\"\n        })));\n        const dsmIconTextButton = 'icon_text' === socialButtonView || typeof socialButtonView === 'undefined' ? /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, dsmButtonIcon, isButtonText) : null;\n        socialShareButtonsMarkup = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: `dsm-social-share-button-inner-wrapper dsm-vk ${socialButtonHoverAnimation}`\n        }, 'text' === socialButtonView && dsmButtonText, 'icon' === socialButtonView && dsmButtonIcon, dsmIconTextButton);\n      }\n      break;\n    case 'tumblr':\n      {\n        const customLabel = (0,lodash.isEmpty)(customLabelAttr) ? 'Tumblr' : customLabelAttr;\n        const dsmButtonText = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-text\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n          value: customLabel\n        }, resolvedContent => /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n          className: \"dsm-text\"\n        }, resolvedContent)));\n        const isButtonText = ('on' === socialButtonLabel || (0,lodash.isEmpty)(socialButtonLabel)) && dsmButtonText;\n        const dsmButtonIcon = 'off' === customImageIcon ? /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-icon\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n          className: \"dsm_icon\"\n        }, \"\\uF173\")) : /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-icon\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n          value: imageUrl\n        }, resolvedImage => /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n          src: resolvedImage,\n          className: \"dsm_custom_image_icon\"\n        })));\n        const dsmIconTextButton = 'icon_text' === socialButtonView || typeof socialButtonView === 'undefined' ? /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, dsmButtonIcon, isButtonText) : null;\n        socialShareButtonsMarkup = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: `dsm-social-share-button-inner-wrapper dsm-tumbler ${socialButtonHoverAnimation}`\n        }, 'text' === socialButtonView && dsmButtonText, 'icon' === socialButtonView && dsmButtonIcon, dsmIconTextButton);\n      }\n      break;\n    case 'digg':\n      {\n        const customLabel = (0,lodash.isEmpty)(customLabelAttr) ? 'Digg' : customLabelAttr;\n        const dsmButtonText = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-text\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n          value: customLabel\n        }, resolvedContent => /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n          className: \"dsm-text\"\n        }, resolvedContent)));\n        const isButtonText = ('on' === socialButtonLabel || (0,lodash.isEmpty)(socialButtonLabel)) && dsmButtonText;\n        const dsmButtonIcon = 'off' === customImageIcon ? /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-icon\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n          className: \"dsm_icon\"\n        }, \"\\uF1A6\")) : /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-icon\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n          value: imageUrl\n        }, resolvedImage => /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n          src: resolvedImage,\n          className: \"dsm_custom_image_icon\"\n        })));\n        const dsmIconTextButton = 'icon_text' === socialButtonView || typeof socialButtonView === 'undefined' ? /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, dsmButtonIcon, isButtonText) : null;\n        socialShareButtonsMarkup = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: `dsm-social-share-button-inner-wrapper dsm-digg ${socialButtonHoverAnimation}`\n        }, 'text' === socialButtonView && dsmButtonText, 'icon' === socialButtonView && dsmButtonIcon, dsmIconTextButton);\n      }\n      break;\n    case 'skype':\n      {\n        const customLabel = (0,lodash.isEmpty)(customLabelAttr) ? 'Skype' : customLabelAttr;\n        const dsmButtonText = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-text\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n          value: customLabel\n        }, resolvedContent => /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n          className: \"dsm-text\"\n        }, resolvedContent)));\n        const isButtonText = ('on' === socialButtonLabel || (0,lodash.isEmpty)(socialButtonLabel)) && dsmButtonText;\n        const dsmButtonIcon = 'off' === customImageIcon ? /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-icon\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n          className: \"dsm_icon\"\n        }, \"\\uF17E\")) : /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-icon\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n          value: imageUrl\n        }, resolvedImage => /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n          src: resolvedImage,\n          className: \"dsm_custom_image_icon\"\n        })));\n        const dsmIconTextButton = 'icon_text' === socialButtonView || typeof socialButtonView === 'undefined' ? /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, dsmButtonIcon, isButtonText) : null;\n        socialShareButtonsMarkup = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: `dsm-social-share-button-inner-wrapper dsm-skype ${socialButtonHoverAnimation}`\n        }, 'text' === socialButtonView && dsmButtonText, 'icon' === socialButtonView && dsmButtonIcon, dsmIconTextButton);\n      }\n      break;\n    case 'stumbleupon':\n      {\n        const customLabel = (0,lodash.isEmpty)(customLabelAttr) ? 'Stumbleupon' : customLabelAttr;\n        const dsmButtonText = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-text\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n          value: customLabel\n        }, resolvedContent => /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n          className: \"dsm-text\"\n        }, resolvedContent)));\n        const isButtonText = ('on' === socialButtonLabel || (0,lodash.isEmpty)(socialButtonLabel)) && dsmButtonText;\n        const dsmButtonIcon = 'off' === customImageIcon ? /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-icon\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n          className: \"dsm_icon\"\n        }, \"\\uF1A4\")) : /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-icon\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n          value: imageUrl\n        }, resolvedImage => /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n          src: resolvedImage,\n          className: \"dsm_custom_image_icon\"\n        })));\n        const dsmIconTextButton = 'icon_text' === socialButtonView || typeof socialButtonView === 'undefined' ? /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, dsmButtonIcon, isButtonText) : null;\n        socialShareButtonsMarkup = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: `dsm-social-share-button-inner-wrapper dsm-stumbleupon ${socialButtonHoverAnimation}`\n        }, 'text' === socialButtonView && dsmButtonText, 'icon' === socialButtonView && dsmButtonIcon, dsmIconTextButton);\n      }\n      break;\n    case 'mix':\n      {\n        const customLabel = (0,lodash.isEmpty)(customLabelAttr) ? 'Mix' : customLabelAttr;\n        const dsmButtonText = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-text\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n          value: customLabel\n        }, resolvedContent => /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n          className: \"dsm-text\"\n        }, resolvedContent)));\n        const isButtonText = ('on' === socialButtonLabel || (0,lodash.isEmpty)(socialButtonLabel)) && dsmButtonText;\n        const dsmButtonIcon = 'off' === customImageIcon ? /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-icon\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n          className: \"dsm_icon\"\n        }, \"\\uF3CB\")) : /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-icon\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n          value: imageUrl\n        }, resolvedImage => /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n          src: resolvedImage,\n          className: \"dsm_custom_image_icon\"\n        })));\n        const dsmIconTextButton = 'icon_text' === socialButtonView || typeof socialButtonView === 'undefined' ? /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, dsmButtonIcon, isButtonText) : null;\n        socialShareButtonsMarkup = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: `dsm-social-share-button-inner-wrapper dsm-mix ${socialButtonHoverAnimation}`\n        }, 'text' === socialButtonView && dsmButtonText, 'icon' === socialButtonView && dsmButtonIcon, dsmIconTextButton);\n      }\n      break;\n    case 'telegram':\n      {\n        const customLabel = (0,lodash.isEmpty)(customLabelAttr) ? 'Telegram' : customLabelAttr;\n        const dsmButtonText = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-text\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n          value: customLabel\n        }, resolvedContent => /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n          className: \"dsm-text\"\n        }, resolvedContent)));\n        const isButtonText = ('on' === socialButtonLabel || (0,lodash.isEmpty)(socialButtonLabel)) && dsmButtonText;\n        const dsmButtonIcon = 'off' === customImageIcon ? /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-icon\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n          className: \"dsm_icon\"\n        }, \"\\uF2C6\")) : /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-icon\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n          value: imageUrl\n        }, resolvedImage => /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n          src: resolvedImage,\n          className: \"dsm_custom_image_icon\"\n        })));\n        const dsmIconTextButton = 'icon_text' === socialButtonView || typeof socialButtonView === 'undefined' ? /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, dsmButtonIcon, isButtonText) : null;\n        socialShareButtonsMarkup = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: `dsm-social-share-button-inner-wrapper dsm-telegram ${socialButtonHoverAnimation}`\n        }, 'text' === socialButtonView && dsmButtonText, 'icon' === socialButtonView && dsmButtonIcon, dsmIconTextButton);\n      }\n      break;\n    case 'pocket':\n      {\n        const customLabel = (0,lodash.isEmpty)(customLabelAttr) ? 'Pocket' : customLabelAttr;\n        const dsmButtonText = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-text\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n          value: customLabel\n        }, resolvedContent => /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n          className: \"dsm-text\"\n        }, resolvedContent)));\n        const isButtonText = ('on' === socialButtonLabel || (0,lodash.isEmpty)(socialButtonLabel)) && dsmButtonText;\n        const dsmButtonIcon = 'off' === customImageIcon ? /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-icon\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n          className: \"dsm_icon\"\n        }, \"\\uF265\")) : /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-icon\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n          value: imageUrl\n        }, resolvedImage => /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n          src: resolvedImage,\n          className: \"dsm_custom_image_icon\"\n        })));\n        const dsmIconTextButton = 'icon_text' === socialButtonView || typeof socialButtonView === 'undefined' ? /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, dsmButtonIcon, isButtonText) : null;\n        socialShareButtonsMarkup = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: `dsm-social-share-button-inner-wrapper dsm-pocket ${socialButtonHoverAnimation}`\n        }, 'text' === socialButtonView && dsmButtonText, 'icon' === socialButtonView && dsmButtonIcon, dsmIconTextButton);\n      }\n      break;\n    case 'xing':\n      {\n        const customLabel = (0,lodash.isEmpty)(customLabelAttr) ? 'Xing' : customLabelAttr;\n        const dsmButtonText = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-text\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n          value: customLabel\n        }, resolvedContent => /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n          className: \"dsm-text\"\n        }, resolvedContent)));\n        const isButtonText = ('on' === socialButtonLabel || (0,lodash.isEmpty)(socialButtonLabel)) && dsmButtonText;\n        const dsmButtonIcon = 'off' === customImageIcon ? /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-icon\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n          className: \"dsm_icon\"\n        }, \"\\uF168\")) : /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-icon\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n          value: imageUrl\n        }, resolvedImage => /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n          src: resolvedImage,\n          className: \"dsm_custom_image_icon\"\n        })));\n        const dsmIconTextButton = 'icon_text' === socialButtonView || typeof socialButtonView === 'undefined' ? /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, dsmButtonIcon, isButtonText) : null;\n        socialShareButtonsMarkup = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: `dsm-social-share-button-inner-wrapper dsm-xing ${socialButtonHoverAnimation}`\n        }, 'text' === socialButtonView && dsmButtonText, 'icon' === socialButtonView && dsmButtonIcon, dsmIconTextButton);\n      }\n      break;\n    case 'whatsapp':\n      {\n        const customLabel = (0,lodash.isEmpty)(customLabelAttr) ? 'WhatsApp' : customLabelAttr;\n        const dsmButtonText = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-text\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n          value: customLabel\n        }, resolvedContent => /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n          className: \"dsm-text\"\n        }, resolvedContent)));\n        const isButtonText = ('on' === socialButtonLabel || (0,lodash.isEmpty)(socialButtonLabel)) && dsmButtonText;\n        const dsmButtonIcon = 'off' === customImageIcon ? /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-icon\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n          className: \"dsm_icon\"\n        }, \"\\uF232\")) : /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-icon\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n          value: imageUrl\n        }, resolvedImage => /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n          src: resolvedImage,\n          className: \"dsm_custom_image_icon\"\n        })));\n        const dsmIconTextButton = 'icon_text' === socialButtonView || typeof socialButtonView === 'undefined' ? /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, dsmButtonIcon, isButtonText) : null;\n        socialShareButtonsMarkup = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: `dsm-social-share-button-inner-wrapper dsm-whatsapp ${socialButtonHoverAnimation}`\n        }, 'text' === socialButtonView && dsmButtonText, 'icon' === socialButtonView && dsmButtonIcon, dsmIconTextButton);\n      }\n      break;\n    case 'email':\n      {\n        const customLabel = (0,lodash.isEmpty)(customLabelAttr) ? 'Email' : customLabelAttr;\n        const dsmButtonText = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-text\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n          value: customLabel\n        }, resolvedContent => /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n          className: \"dsm-text\"\n        }, resolvedContent)));\n        const isButtonText = ('on' === socialButtonLabel || (0,lodash.isEmpty)(socialButtonLabel)) && dsmButtonText;\n        const dsmButtonIcon = 'off' === customImageIcon ? /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-icon\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n          className: \"dsm_icon\"\n        }, \"\\uF0E0\")) : /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-icon\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n          value: imageUrl\n        }, resolvedImage => /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n          src: resolvedImage,\n          className: \"dsm_custom_image_icon\"\n        })));\n        const dsmIconTextButton = 'icon_text' === socialButtonView || typeof socialButtonView === 'undefined' ? /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, dsmButtonIcon, isButtonText) : null;\n        socialShareButtonsMarkup = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: `dsm-social-share-button-inner-wrapper dsm-email ${socialButtonHoverAnimation}`\n        }, 'text' === socialButtonView && dsmButtonText, 'icon' === socialButtonView && dsmButtonIcon, dsmIconTextButton);\n      }\n      break;\n    case 'print':\n      {\n        const customLabel = (0,lodash.isEmpty)(customLabelAttr) ? 'Print' : customLabelAttr;\n        const dsmButtonText = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-text\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n          value: customLabel\n        }, resolvedContent => /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n          className: \"dsm-text\"\n        }, resolvedContent)));\n        const isButtonText = ('on' === socialButtonLabel || (0,lodash.isEmpty)(socialButtonLabel)) && dsmButtonText;\n        const dsmButtonIcon = 'off' === customImageIcon ? /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-icon\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n          className: \"dsm_icon\"\n        }, \"\\uF02F\")) : /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: \"dsm-social-share-button-icon\"\n        }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n          value: imageUrl\n        }, resolvedImage => /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n          src: resolvedImage,\n          className: \"dsm_custom_image_icon\"\n        })));\n        const dsmIconTextButton = 'icon_text' === socialButtonView || typeof socialButtonView === 'undefined' ? /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, dsmButtonIcon, isButtonText) : null;\n        socialShareButtonsMarkup = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n          className: `dsm-social-share-button-inner-wrapper dsm-print ${socialButtonHoverAnimation}`\n        }, 'text' === socialButtonView && dsmButtonText, 'icon' === socialButtonView && dsmButtonIcon, dsmIconTextButton);\n      }\n      break;\n  }\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: social_share_buttons_child_edit_ModuleScriptData,\n    stylesComponent: social_share_buttons_child_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-social-share-button-wrapper\"\n  }, socialShareButtonsMarkup));\n}\n/* harmony default export */ const social_share_buttons_child_edit = (social_share_buttons_child_edit_Edit);\n;// ./packages/module-library/social-share-buttons-child/index.js\n// External library dependencies.\n\n// Wordpress dependencies.\n\n\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n//  Custom dependencies.\n\n\n\n\n\n\nconst socialShareButtonChildModule = {\n  metadata: social_share_buttons_child_module_namespaceObject,\n  conversionOutline: social_share_buttons_child_conversion_outline_conversionOutline,\n  settings: {\n    content: social_share_buttons_child_settings_content,\n    design: social_share_buttons_child_settings_design,\n    advanced: social_share_buttons_child_settings_advanced\n  },\n  renderers: {\n    edit: social_share_buttons_child_edit,\n    styles: social_share_buttons_child_module_styles_ModuleStyles\n  },\n  parentsName: ['dsm/social-share-buttons'],\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    dsm_network: {\n      innerContent: {\n        desktop: {\n          value: 'facebook'\n        }\n      }\n    },\n    dsm_custom_image_icon: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    dsm_color_type: {\n      innerContent: {\n        desktop: {\n          value: 'official'\n        }\n      }\n    }\n  }\n};\n/* harmony default export */ const social_share_buttons_child = (socialShareButtonChildModule);\n;// ./packages/module-library/social-share-buttons/module.json\nconst social_share_buttons_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/social-share-buttons\",\"d4Shortcode\":\"dsm_social_share_buttons\",\"title\":\"Supreme Social Share Buttons\",\"titles\":\"Supreme Social Share Buttons\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/social-share-buttons\",\"childrenName\":[\"dsm/social-share-buttons-child\"],\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"dsm_view\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"icon_text\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_label\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_label_text\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"selector\":\"{{selector}} .dsm_social_share_buttons_child .dsm-social-share-button-text\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_skin\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"gradient\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_shape\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"square\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_column\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"auto\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_alignment\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_column_gap\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_row_gap\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"10px\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_icon_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_button_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_button_height\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_color_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"official\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_custom_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_custom_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_target_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"current_page\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_target_link_url\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_social_hover_animation\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"dsm-none\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/social-share-buttons/conversion-outline.js\nconst social_share_buttons_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    margin_padding: 'module.decoration.spacing',\n    max_width: 'module.decoration.sizing',\n    height: 'module.decoration.sizing',\n    borders: {\n      default: 'module.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    fonts: {\n      header: 'dsm_label_text.decoration.font'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    dsm_view: 'dsm_view.innerContent.*',\n    dsm_label: 'dsm_label.innerContent.*',\n    dsm_skin: 'dsm_skin.innerContent.*',\n    dsm_shape: 'dsm_shape.innerContent.*',\n    dsm_column: 'dsm_column.innerContent.*',\n    dsm_alignment: 'dsm_alignment.innerContent.*',\n    dsm_column_gap: 'dsm_column_gap.innerContent.*',\n    dsm_row_gap: 'dsm_row_gap.innerContent.*',\n    dsm_icon_size: 'dsm_icon_size.innerContent.*',\n    dsm_button_size: 'dsm_button_size.innerContent.*',\n    dsm_button_height: 'dsm_button_height.innerContent.*',\n    dsm_color_type: 'dsm_color_type.innerContent.*',\n    dsm_custom_bg_color: 'dsm_custom_bg_color.innerContent.*',\n    dsm_custom_color: 'dsm_custom_color.innerContent.*',\n    dsm_target_type: 'dsm_target_type.innerContent.*',\n    dsm_target_link_url: 'dsm_target_link_url.innerContent.*',\n    dsm_social_hover_animation: 'dsm_social_hover_animation.innerContent.*',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/social-share-buttons/module-default-render-attributes.json\nconst social_share_buttons_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"dsm_view\":{\"innerContent\":{\"desktop\":{\"value\":\"icon_text\"}}},\"dsm_label\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"dsm_skin\":{\"innerContent\":{\"desktop\":{\"value\":\"gradient\"}}},\"dsm_shape\":{\"innerContent\":{\"desktop\":{\"value\":\"square\"}}},\"dsm_column\":{\"innerContent\":{\"desktop\":{\"value\":\"auto\"}}},\"dsm_alignment\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"dsm_target_type\":{\"innerContent\":{\"desktop\":{\"value\":\"current_page\"}}},\"dsm_target_link_url\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"dsm_social_hover_animation\":{\"innerContent\":{\"desktop\":{\"value\":\"dsm-none\"}}},\"dsm_column_gap\":{\"innerContent\":{\"desktop\":{\"value\":\"10px\"}}},\"dsm_row_gap\":{\"innerContent\":{\"desktop\":{\"value\":\"10px\"}}},\"dsm_color_type\":{\"innerContent\":{\"desktop\":{\"value\":\"official\"}}},\"dsm_custom_bg_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"dsm_custom_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}}}');\n;// ./packages/module-library/social-share-buttons/social-share-buttons-vb-default-attrs.js\n/**\n * Visual Builder `defaultAttr` map: each value is an `innerContent` object\n * (`{ desktop: { value } }`), aligned with Divi 4 option defaults in\n * `divi-4/includes/modules/SocialShareButtons/SocialShareButtons.php`.\n *\n * Used only in `settings-content.js` and `settings-design.js`.\n *\n * @package DiviSupreme\n */\n\n\nconst socialShareButtonsFieldDefaultInnerContent = Object.fromEntries(Object.entries(social_share_buttons_module_default_render_attributes_namespaceObject).map(([key, attr]) => [key, attr.innerContent]));\n;// ./packages/module-library/social-share-buttons/settings-content.js\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\n\n\nfunction social_share_buttons_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  const targetType = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_target_type?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(ChildDraggableModuleList, {\n    childModuleName: \"dsm/social-share-buttons-child\",\n    addTitle: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Add New Item', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"general\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('General', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_view.innerContent\",\n    defaultAttr: socialShareButtonsFieldDefaultInnerContent.dsm_view,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('View', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      icon_text: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon & Text', 'dsm-supreme-modules-pro-for-divi')\n      },\n      icon: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi')\n      },\n      text: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_label.innerContent\",\n    defaultAttr: socialShareButtonsFieldDefaultInnerContent.dsm_label,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Label', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_skin.innerContent\",\n    defaultAttr: socialShareButtonsFieldDefaultInnerContent.dsm_skin,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Skin', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      gradient: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Gradient', 'dsm-supreme-modules-pro-for-divi')\n      },\n      minimal: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Minimal', 'dsm-supreme-modules-pro-for-divi')\n      },\n      framed: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Framed', 'dsm-supreme-modules-pro-for-divi')\n      },\n      boxed_icon: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Boxed Icon', 'dsm-supreme-modules-pro-for-divi')\n      },\n      flat: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Flat', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_shape.innerContent\",\n    defaultAttr: socialShareButtonsFieldDefaultInnerContent.dsm_shape,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shape', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      square: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Square', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rounded: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rounded', 'dsm-supreme-modules-pro-for-divi')\n      },\n      circle: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Circle', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_column.innerContent\",\n    defaultAttr: socialShareButtonsFieldDefaultInnerContent.dsm_column,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Columns', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      auto: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Auto', 'dsm-supreme-modules-pro-for-divi')\n      },\n      one: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('One', 'dsm-supreme-modules-pro-for-divi')\n      },\n      two: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Two', 'dsm-supreme-modules-pro-for-divi')\n      },\n      three: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Three', 'dsm-supreme-modules-pro-for-divi')\n      },\n      four: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Four', 'dsm-supreme-modules-pro-for-divi')\n      },\n      five: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Five', 'dsm-supreme-modules-pro-for-divi')\n      },\n      six: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Six', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_alignment.innerContent\",\n    defaultAttr: socialShareButtonsFieldDefaultInnerContent.dsm_alignment,\n    multipleChoices: false,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    onChangeParams: ['multipleChoices'],\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose the image alignment.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_target_type.innerContent\",\n    defaultAttr: socialShareButtonsFieldDefaultInnerContent.dsm_target_type,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Target URL', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      current_page: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Current', 'dsm-supreme-modules-pro-for-divi')\n      },\n      custom: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Custom', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_target_link_url.innerContent\",\n    defaultAttr: socialShareButtonsFieldDefaultInnerContent.dsm_target_link_url,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Link URL', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'custom' === targetType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_social_hover_animation.innerContent\",\n    defaultAttr: socialShareButtonsFieldDefaultInnerContent.dsm_social_hover_animation,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hover Animation', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      'dsm-none': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('None', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'dsm-grow': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Grow', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'dsm-grow-rotate': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Grow Rotate', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'dsm-shrink': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shrink', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'dsm-pulse': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pulse', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'dsm-pulse-grow': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pulse Grow', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'dsm-pulse-shrink': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pulse Shrink', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'dsm-push': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Push', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'dsm-pop': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pop', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'dsm-bounce-in': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bounce In', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'dsm-bounce-out': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bounce Out', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'dsm-rotate': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rotate', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'dsm-float': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Float', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'dsm-sink': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Sink', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'dsm-bob': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bob', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'dsm-hang': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hang', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'dsm-skew': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Skew', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'dsm-skew-forward': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Skew Forward', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'dsm-skew-backward': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Skew Backward', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'dsm-wobble-vertical': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Wobble Vertical', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'dsm-wobble-horizontal': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Wobble Horizontal', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'dsm-wobble-to-bottom-right': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Wobble To Bottom Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'dsm-wobble-to-top-right': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Wobble To Top Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'dsm-wobble-top': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Wobble Top', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'dsm-wobble-bottom': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Wobble Bottom', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'dsm-wobble-skew': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Wobble Skew', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'dsm-buzz': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Buzz', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'dsm-buzz-out': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Buzz Out', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'dsm-forward': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Forward', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'dsm-backward': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Backward', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const social_share_buttons_settings_content = (social_share_buttons_settings_content_SettingsContent);\n;// ./packages/module-library/social-share-buttons/settings-design.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\nfunction social_share_buttons_settings_design_SettingsDesign({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  const colorTypeAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_color_type?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"share_button\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Share Button', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_column_gap.innerContent\",\n    defaultAttr: socialShareButtonsFieldDefaultInnerContent.dsm_column_gap,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Column Gap', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', '')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_row_gap.innerContent\",\n    defaultAttr: socialShareButtonsFieldDefaultInnerContent.dsm_row_gap,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rows Gap', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', '')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_button_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Size', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', '')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 2,\n    defaultUnit: 'px',\n    allowedUnits: ['px'],\n    step: 0.1\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_icon_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Size', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', '')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_button_height.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Height', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', '')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_color_type.innerContent\",\n    defaultAttr: socialShareButtonsFieldDefaultInnerContent.dsm_color_type,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', '')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      official: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Official', 'dsm-supreme-modules-pro-for-divi')\n      },\n      custom: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Custom', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_custom_bg_color.innerContent\",\n    defaultAttr: socialShareButtonsFieldDefaultInnerContent.dsm_custom_bg_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', ''),\n    visible: 'custom' === colorTypeAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_custom_color.innerContent\",\n    defaultAttr: socialShareButtonsFieldDefaultInnerContent.dsm_custom_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', ''),\n    visible: 'custom' === colorTypeAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"dsm_label_text.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Label', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Label', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const social_share_buttons_settings_design = (social_share_buttons_settings_design_SettingsDesign);\n;// ./packages/module-library/social-share-buttons/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction social_share_buttons_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_social_share_buttons\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const social_share_buttons_settings_advanced = (social_share_buttons_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/social-share-buttons/module-styles.js\n\n\n\n\n\n/**\n * React function component for rendering module style.\n */\nconst social_share_buttons_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  const colorTypeAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_color_type?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'dsm_label_text'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-social-share-button-icon .dsm_icon`,\n    attr: attrs?.dsm_icon_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-social-share-buttons-container .dsm-social-share-button-inner-wrapper`,\n    attr: attrs?.dsm_button_height?.innerContent,\n    property: \"height\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}`,\n    attr: attrs?.dsm_alignment?.innerContent,\n    property: \"text-align\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-social-share-buttons-container`,\n    attr: attrs?.dsm_column_gap?.innerContent,\n    property: \"column-gap\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-social-share-buttons-container`,\n    attr: attrs?.dsm_row_gap?.innerContent,\n    property: \"row-gap\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-social-share-button-inner-wrapper`,\n    attr: attrs?.dsm_button_size?.innerContent,\n    declarationFunction: styleParams => {\n      var _getAttrByMode;\n      const raw = styleParams?.attrValue;\n      let sizeStr = '';\n      if (typeof raw === 'string') {\n        sizeStr = raw;\n      } else if (raw && typeof raw === 'object') {\n        if (typeof raw.attrValue !== 'undefined') {\n          sizeStr = String(raw.attrValue);\n        } else if (typeof raw.value === 'string') {\n          sizeStr = raw.value;\n        }\n      }\n      if ('' === sizeStr) {\n        return '';\n      }\n      const heightStr = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_button_height?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : '';\n      const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n        returnType: 'string',\n        important: true\n      });\n      declarations.add('font-size', `calc(${sizeStr} * 10)`);\n      if ('' === heightStr) {\n        declarations.add('height', '4.5em');\n      }\n      return declarations.value;\n    }\n  }), 'custom' === colorTypeAttr && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-social-share-buttons-container .dsm-social-share-button-inner-wrapper`,\n    attr: attrs?.dsm_custom_bg_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-social-share-buttons-container .dsm-social-share-button-inner-wrapper`,\n    attr: attrs?.dsm_custom_color?.innerContent,\n    property: \"color\"\n  })));\n};\n;// ./packages/module-library/social-share-buttons/edit.js\n\n\n\n// Divi package dependencies.\n\n\n\n// Custom dependencies.\n\n\n\n\n/**\n * React function component for registering module script data.\n */\nconst social_share_buttons_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction social_share_buttons_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements,\n  childrenIds\n}) {\n  const skin = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_skin?.innerContent);\n  const view = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_view?.innerContent);\n  const column = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_column?.innerContent);\n  const shape = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_shape?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: social_share_buttons_edit_ModuleScriptData,\n    stylesComponent: social_share_buttons_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n      params.classnamesInstance.add(`dsm-social-share-button-column-${column}`);\n      params.classnamesInstance.add(`dsm-social-share-button-shape-${shape}`);\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: `dsm-social-share-buttons-container dsm-${skin} dsm-${view}`\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ChildModulesContainer, {\n    ids: childrenIds\n  })));\n}\n/* harmony default export */ const social_share_buttons_edit = (social_share_buttons_edit_Edit);\n;// ./packages/module-library/social-share-buttons/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmSocialShareButtons', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/social-share-buttons': {\n      name: 'divi-supreme/social-share-buttons',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 8.929688 7.921875 C 9.261719 7.921875 9.53125 7.664062 9.53125 7.347656 C 9.53125 7.027344 9.261719 6.769531 8.929688 6.769531 C 8.597656 6.769531 8.324219 7.027344 8.324219 7.347656 C 8.324219 7.378906 8.328125 7.410156 8.335938 7.441406 L 7.855469 7.695312 C 7.730469 7.550781 7.539062 7.457031 7.324219 7.457031 C 6.941406 7.457031 6.632812 7.753906 6.632812 8.121094 C 6.632812 8.488281 6.941406 8.785156 7.324219 8.785156 C 7.539062 8.785156 7.730469 8.695312 7.855469 8.546875 L 8.335938 8.800781 C 8.328125 8.832031 8.324219 8.863281 8.324219 8.898438 C 8.324219 9.214844 8.597656 9.472656 8.929688 9.472656 C 9.261719 9.472656 9.53125 9.214844 9.53125 8.898438 C 9.53125 8.578125 9.261719 8.320312 8.929688 8.320312 C 8.769531 8.320312 8.625 8.378906 8.515625 8.476562 L 8.011719 8.210938 C 8.015625 8.183594 8.019531 8.152344 8.019531 8.121094 C 8.019531 8.089844 8.015625 8.0625 8.011719 8.03125 L 8.515625 7.765625 C 8.625 7.863281 8.769531 7.921875 8.929688 7.921875 Z M 8.929688 8.6875 C 9.050781 8.6875 9.148438 8.78125 9.148438 8.898438 C 9.148438 9.015625 9.050781 9.109375 8.929688 9.109375 C 8.808594 9.109375 8.707031 9.015625 8.707031 8.898438 C 8.707031 8.78125 8.808594 8.6875 8.929688 8.6875 Z M 7.324219 8.417969 C 7.152344 8.417969 7.015625 8.285156 7.015625 8.121094 C 7.015625 7.957031 7.152344 7.824219 7.324219 7.824219 C 7.496094 7.824219 7.636719 7.957031 7.636719 8.121094 C 7.636719 8.285156 7.496094 8.417969 7.324219 8.417969 Z M 8.929688 7.136719 C 9.050781 7.136719 9.148438 7.230469 9.148438 7.347656 C 9.148438 7.460938 9.050781 7.554688 8.929688 7.554688 C 8.808594 7.554688 8.707031 7.460938 8.707031 7.347656 C 8.707031 7.230469 8.808594 7.136719 8.929688 7.136719 Z M 8.929688 7.136719 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 9.535156 5.515625 C 9.554688 5.523438 9.578125 5.527344 9.601562 5.527344 C 9.632812 5.527344 9.667969 5.515625 9.695312 5.496094 C 9.722656 5.472656 9.742188 5.445312 9.75 5.410156 C 9.753906 5.378906 9.75 5.339844 9.738281 5.3125 C 9.722656 5.28125 9.695312 5.253906 9.664062 5.238281 C 9.269531 5.050781 8.839844 4.941406 8.402344 4.917969 C 7.960938 4.894531 7.523438 4.957031 7.109375 5.105469 C 7.070312 5.121094 7.039062 5.148438 7.023438 5.183594 C 7.003906 5.222656 7.003906 5.265625 7.015625 5.300781 C 7.03125 5.339844 7.058594 5.371094 7.09375 5.386719 C 7.132812 5.40625 7.171875 5.40625 7.210938 5.394531 C 7.585938 5.257812 7.988281 5.199219 8.386719 5.222656 C 8.785156 5.242188 9.175781 5.34375 9.535156 5.515625 Z M 9.535156 5.515625 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.195312 9.476562 C 11.230469 9.492188 11.273438 9.488281 11.308594 9.472656 C 11.347656 9.457031 11.375 9.425781 11.390625 9.386719 C 11.535156 8.972656 11.601562 8.535156 11.578125 8.09375 C 11.554688 7.65625 11.445312 7.226562 11.257812 6.828125 C 11.238281 6.796875 11.207031 6.769531 11.167969 6.757812 C 11.132812 6.746094 11.09375 6.75 11.058594 6.765625 C 11.023438 6.78125 10.996094 6.8125 10.980469 6.847656 C 10.96875 6.882812 10.96875 6.925781 10.980469 6.960938 C 11.15625 7.320312 11.253906 7.710938 11.273438 8.109375 C 11.296875 8.507812 11.238281 8.90625 11.101562 9.285156 C 11.089844 9.320312 11.089844 9.363281 11.109375 9.398438 C 11.125 9.4375 11.15625 9.464844 11.195312 9.476562 Z M 11.195312 9.476562 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 8.949219 11.226562 C 8.476562 11.347656 7.976562 11.347656 7.5 11.226562 C 7.480469 11.222656 7.460938 11.21875 7.441406 11.222656 C 7.421875 11.226562 7.402344 11.234375 7.382812 11.242188 C 7.367188 11.253906 7.351562 11.269531 7.339844 11.285156 C 7.328125 11.300781 7.320312 11.316406 7.316406 11.335938 C 7.308594 11.355469 7.308594 11.378906 7.3125 11.398438 C 7.316406 11.417969 7.320312 11.4375 7.332031 11.453125 C 7.34375 11.46875 7.355469 11.484375 7.371094 11.496094 C 7.386719 11.507812 7.40625 11.519531 7.425781 11.523438 C 7.949219 11.65625 8.5 11.65625 9.023438 11.523438 C 9.042969 11.519531 9.0625 11.507812 9.078125 11.496094 C 9.09375 11.484375 9.109375 11.46875 9.117188 11.453125 C 9.128906 11.4375 9.136719 11.417969 9.140625 11.398438 C 9.140625 11.378906 9.140625 11.355469 9.136719 11.335938 C 9.132812 11.316406 9.121094 11.300781 9.109375 11.285156 C 9.097656 11.269531 9.082031 11.253906 9.066406 11.242188 C 9.050781 11.234375 9.03125 11.226562 9.011719 11.222656 C 8.992188 11.21875 8.96875 11.222656 8.949219 11.226562 Z M 8.949219 11.226562 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 5.15625 7.355469 C 5.136719 7.351562 5.117188 7.351562 5.097656 7.351562 C 5.078125 7.355469 5.058594 7.363281 5.039062 7.375 C 5.023438 7.382812 5.007812 7.398438 4.996094 7.414062 C 4.984375 7.429688 4.976562 7.449219 4.972656 7.46875 C 4.785156 8.21875 4.867188 9.007812 5.199219 9.703125 C 5.210938 9.730469 5.230469 9.753906 5.257812 9.769531 C 5.28125 9.785156 5.308594 9.792969 5.335938 9.792969 C 5.359375 9.792969 5.382812 9.785156 5.402344 9.777344 C 5.441406 9.757812 5.46875 9.726562 5.480469 9.691406 C 5.496094 9.652344 5.492188 9.609375 5.476562 9.574219 C 5.171875 8.941406 5.097656 8.222656 5.269531 7.539062 C 5.273438 7.523438 5.273438 7.5 5.269531 7.480469 C 5.269531 7.460938 5.261719 7.441406 5.25 7.425781 C 5.238281 7.410156 5.226562 7.394531 5.210938 7.382812 C 5.195312 7.371094 5.175781 7.359375 5.15625 7.355469 Z M 5.15625 7.355469 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 5.9375 7.046875 C 6.140625 7.046875 6.335938 6.964844 6.476562 6.824219 C 6.621094 6.679688 6.703125 6.488281 6.703125 6.285156 L 6.703125 4.757812 C 6.703125 4.558594 6.621094 4.363281 6.476562 4.21875 C 6.335938 4.078125 6.140625 3.996094 5.9375 3.996094 L 4.414062 3.996094 C 4.210938 3.996094 4.019531 4.078125 3.875 4.21875 C 3.734375 4.363281 3.652344 4.558594 3.652344 4.757812 L 3.652344 5.527344 C 3.652344 5.566406 3.667969 5.605469 3.695312 5.632812 C 3.726562 5.660156 3.765625 5.679688 3.804688 5.679688 C 3.84375 5.679688 3.882812 5.660156 3.914062 5.632812 C 3.941406 5.605469 3.957031 5.566406 3.957031 5.527344 L 3.957031 4.757812 C 3.957031 4.636719 4.003906 4.523438 4.089844 4.4375 C 4.175781 4.351562 4.292969 4.300781 4.414062 4.300781 L 5.9375 4.300781 C 6.0625 4.300781 6.175781 4.351562 6.261719 4.4375 C 6.347656 4.523438 6.398438 4.636719 6.398438 4.757812 L 6.398438 6.285156 C 6.398438 6.40625 6.347656 6.523438 6.261719 6.609375 C 6.175781 6.695312 6.0625 6.742188 5.9375 6.742188 L 4.414062 6.742188 C 4.292969 6.742188 4.175781 6.695312 4.089844 6.609375 C 4.003906 6.523438 3.957031 6.40625 3.957031 6.285156 L 3.957031 6.132812 C 3.957031 6.089844 3.941406 6.050781 3.914062 6.023438 C 3.882812 5.996094 3.84375 5.980469 3.804688 5.980469 C 3.765625 5.980469 3.726562 5.996094 3.695312 6.023438 C 3.667969 6.050781 3.652344 6.089844 3.652344 6.132812 L 3.652344 6.285156 C 3.652344 6.488281 3.734375 6.679688 3.875 6.824219 C 4.019531 6.964844 4.210938 7.046875 4.414062 7.046875 Z M 5.9375 7.046875 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 5.328125 4.910156 L 5.632812 4.910156 C 5.675781 4.910156 5.714844 4.894531 5.742188 4.867188 C 5.769531 4.839844 5.785156 4.800781 5.785156 4.757812 C 5.785156 4.71875 5.769531 4.679688 5.742188 4.652344 C 5.714844 4.625 5.675781 4.605469 5.632812 4.605469 L 5.328125 4.605469 C 5.207031 4.605469 5.09375 4.65625 5.007812 4.742188 C 4.921875 4.828125 4.871094 4.941406 4.871094 5.066406 L 4.871094 5.371094 L 4.566406 5.371094 C 4.527344 5.371094 4.488281 5.386719 4.460938 5.414062 C 4.429688 5.441406 4.414062 5.480469 4.414062 5.523438 C 4.414062 5.5625 4.429688 5.601562 4.460938 5.628906 C 4.488281 5.660156 4.527344 5.675781 4.566406 5.675781 L 4.871094 5.675781 L 4.871094 6.285156 C 4.871094 6.324219 4.886719 6.363281 4.917969 6.390625 C 4.945312 6.421875 4.984375 6.4375 5.023438 6.4375 C 5.066406 6.4375 5.105469 6.421875 5.132812 6.390625 C 5.160156 6.363281 5.175781 6.324219 5.175781 6.285156 L 5.175781 5.675781 L 5.480469 5.675781 C 5.523438 5.675781 5.5625 5.660156 5.589844 5.628906 C 5.617188 5.601562 5.632812 5.5625 5.632812 5.523438 C 5.632812 5.480469 5.617188 5.441406 5.589844 5.414062 C 5.5625 5.386719 5.523438 5.371094 5.480469 5.371094 L 5.175781 5.371094 L 5.175781 5.066406 C 5.175781 5.023438 5.191406 4.984375 5.222656 4.957031 C 5.25 4.929688 5.289062 4.910156 5.328125 4.910156 Z M 5.328125 4.910156 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 5.175781 10.859375 L 5.175781 11.46875 C 5.175781 11.507812 5.191406 11.546875 5.222656 11.578125 C 5.25 11.605469 5.289062 11.621094 5.328125 11.621094 C 5.371094 11.621094 5.410156 11.605469 5.4375 11.578125 C 5.464844 11.546875 5.480469 11.507812 5.480469 11.46875 L 5.480469 10.859375 C 5.480469 10.820312 5.464844 10.78125 5.4375 10.75 C 5.410156 10.722656 5.371094 10.707031 5.328125 10.707031 C 5.289062 10.707031 5.25 10.722656 5.222656 10.75 C 5.191406 10.78125 5.175781 10.820312 5.175781 10.859375 Z M 5.175781 10.859375 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 5.9375 10.707031 C 5.898438 10.707031 5.859375 10.722656 5.832031 10.75 C 5.800781 10.78125 5.785156 10.820312 5.785156 10.859375 L 5.785156 11.46875 C 5.785156 11.507812 5.800781 11.546875 5.832031 11.578125 C 5.859375 11.605469 5.898438 11.621094 5.9375 11.621094 C 5.976562 11.621094 6.015625 11.605469 6.046875 11.578125 C 6.074219 11.546875 6.089844 11.507812 6.089844 11.46875 L 6.089844 10.859375 C 6.089844 10.820312 6.074219 10.78125 6.046875 10.75 C 6.015625 10.722656 5.976562 10.707031 5.9375 10.707031 Z M 5.9375 10.707031 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.398438 10.097656 L 4.871094 10.097656 C 4.710938 10.097656 4.554688 10.160156 4.441406 10.273438 C 4.328125 10.390625 4.261719 10.542969 4.261719 10.707031 L 4.261719 11.621094 C 4.261719 11.785156 4.328125 11.9375 4.441406 12.054688 C 4.554688 12.167969 4.710938 12.230469 4.871094 12.230469 L 4.871094 12.6875 C 4.871094 12.71875 4.878906 12.746094 4.894531 12.769531 C 4.910156 12.796875 4.933594 12.816406 4.960938 12.828125 C 4.980469 12.835938 5.003906 12.839844 5.023438 12.839844 C 5.0625 12.839844 5.09375 12.828125 5.121094 12.804688 L 5.855469 12.195312 C 5.886719 12.171875 5.90625 12.132812 5.910156 12.09375 C 5.914062 12.050781 5.898438 12.011719 5.875 11.980469 C 5.847656 11.949219 5.8125 11.929688 5.769531 11.925781 C 5.730469 11.921875 5.691406 11.9375 5.660156 11.960938 L 5.175781 12.363281 L 5.175781 12.078125 C 5.175781 12.039062 5.160156 12 5.132812 11.972656 C 5.105469 11.941406 5.066406 11.925781 5.023438 11.925781 L 4.871094 11.925781 C 4.792969 11.925781 4.714844 11.894531 4.65625 11.835938 C 4.601562 11.78125 4.566406 11.703125 4.566406 11.621094 L 4.566406 10.707031 C 4.566406 10.625 4.601562 10.546875 4.65625 10.492188 C 4.714844 10.433594 4.792969 10.402344 4.871094 10.402344 L 6.398438 10.402344 C 6.476562 10.402344 6.554688 10.433594 6.613281 10.492188 C 6.671875 10.546875 6.703125 10.625 6.703125 10.707031 L 6.703125 11.621094 C 6.703125 11.703125 6.671875 11.78125 6.613281 11.835938 C 6.554688 11.894531 6.476562 11.925781 6.398438 11.925781 C 6.355469 11.925781 6.316406 11.941406 6.289062 11.972656 C 6.261719 12 6.246094 12.039062 6.246094 12.078125 C 6.246094 12.121094 6.261719 12.15625 6.289062 12.1875 C 6.316406 12.214844 6.355469 12.230469 6.398438 12.230469 C 6.558594 12.230469 6.714844 12.167969 6.828125 12.054688 C 6.941406 11.9375 7.007812 11.785156 7.007812 11.621094 L 7.007812 10.707031 C 7.007812 10.542969 6.941406 10.390625 6.828125 10.273438 C 6.714844 10.160156 6.558594 10.097656 6.398438 10.097656 Z M 6.398438 10.097656 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.125 12.230469 L 11.429688 12.230469 C 11.472656 12.230469 11.507812 12.214844 11.539062 12.1875 C 11.566406 12.160156 11.582031 12.121094 11.582031 12.078125 C 11.582031 12.039062 11.566406 12 11.539062 11.972656 C 11.507812 11.941406 11.472656 11.925781 11.429688 11.925781 L 11.125 11.925781 C 11.085938 11.925781 11.046875 11.910156 11.015625 11.882812 C 10.988281 11.851562 10.972656 11.816406 10.972656 11.773438 L 10.972656 11.46875 L 11.277344 11.46875 C 11.316406 11.46875 11.355469 11.453125 11.386719 11.425781 C 11.414062 11.394531 11.429688 11.355469 11.429688 11.316406 C 11.429688 11.277344 11.414062 11.238281 11.386719 11.207031 C 11.355469 11.179688 11.316406 11.164062 11.277344 11.164062 L 10.972656 11.164062 L 10.972656 10.554688 C 10.972656 10.515625 10.957031 10.476562 10.929688 10.445312 C 10.898438 10.417969 10.859375 10.402344 10.820312 10.402344 C 10.78125 10.402344 10.742188 10.417969 10.710938 10.445312 C 10.683594 10.476562 10.667969 10.515625 10.667969 10.554688 L 10.667969 11.164062 L 10.363281 11.164062 C 10.324219 11.164062 10.285156 11.179688 10.253906 11.207031 C 10.226562 11.238281 10.210938 11.277344 10.210938 11.316406 C 10.210938 11.355469 10.226562 11.394531 10.253906 11.425781 C 10.285156 11.453125 10.324219 11.46875 10.363281 11.46875 L 10.667969 11.46875 L 10.667969 11.773438 C 10.667969 11.894531 10.714844 12.011719 10.800781 12.097656 C 10.886719 12.183594 11.003906 12.230469 11.125 12.230469 Z M 11.125 12.230469 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.734375 9.792969 L 10.210938 9.792969 C 10.007812 9.792969 9.816406 9.871094 9.671875 10.015625 C 9.527344 10.15625 9.449219 10.351562 9.449219 10.554688 L 9.449219 12.078125 C 9.449219 12.28125 9.527344 12.476562 9.671875 12.617188 C 9.816406 12.761719 10.007812 12.839844 10.210938 12.839844 L 11.734375 12.839844 C 11.9375 12.839844 12.132812 12.761719 12.273438 12.617188 C 12.417969 12.476562 12.496094 12.28125 12.496094 12.078125 L 12.496094 11.925781 C 12.496094 11.886719 12.480469 11.847656 12.453125 11.820312 C 12.425781 11.789062 12.386719 11.773438 12.34375 11.773438 C 12.304688 11.773438 12.265625 11.789062 12.238281 11.820312 C 12.207031 11.847656 12.191406 11.886719 12.191406 11.925781 L 12.191406 12.078125 C 12.191406 12.199219 12.144531 12.316406 12.058594 12.402344 C 11.972656 12.488281 11.855469 12.535156 11.734375 12.535156 L 10.210938 12.535156 C 10.089844 12.535156 9.972656 12.488281 9.886719 12.402344 C 9.800781 12.316406 9.753906 12.199219 9.753906 12.078125 L 9.753906 10.554688 C 9.753906 10.433594 9.800781 10.316406 9.886719 10.230469 C 9.972656 10.144531 10.089844 10.097656 10.210938 10.097656 L 11.734375 10.097656 C 11.855469 10.097656 11.972656 10.144531 12.058594 10.230469 C 12.144531 10.316406 12.191406 10.433594 12.191406 10.554688 L 12.191406 11.320312 C 12.191406 11.359375 12.207031 11.398438 12.238281 11.429688 C 12.265625 11.457031 12.304688 11.472656 12.34375 11.472656 C 12.386719 11.472656 12.425781 11.457031 12.453125 11.429688 C 12.480469 11.398438 12.496094 11.359375 12.496094 11.320312 L 12.496094 10.554688 C 12.496094 10.351562 12.417969 10.15625 12.273438 10.015625 C 12.132812 9.871094 11.9375 9.792969 11.734375 9.792969 Z M 11.734375 9.792969 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.039062 5.066406 C 12.039062 5.035156 12.03125 5.007812 12.019531 4.984375 C 12.003906 4.960938 11.980469 4.941406 11.957031 4.929688 L 11.042969 4.46875 C 11.019531 4.457031 10.992188 4.453125 10.964844 4.453125 C 10.941406 4.457031 10.914062 4.464844 10.894531 4.476562 C 10.871094 4.492188 10.851562 4.511719 10.839844 4.53125 C 10.828125 4.554688 10.820312 4.582031 10.820312 4.605469 L 10.820312 5.523438 C 10.820312 5.546875 10.828125 5.574219 10.839844 5.597656 C 10.851562 5.617188 10.871094 5.636719 10.894531 5.652344 C 10.914062 5.664062 10.941406 5.671875 10.964844 5.675781 C 10.992188 5.675781 11.019531 5.671875 11.042969 5.660156 L 11.957031 5.199219 C 11.980469 5.1875 12.003906 5.167969 12.019531 5.144531 C 12.03125 5.121094 12.039062 5.09375 12.039062 5.066406 Z M 11.125 5.273438 L 11.125 4.855469 L 11.546875 5.066406 Z M 11.125 5.273438 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.039062 3.691406 L 10.820312 3.691406 C 10.617188 3.691406 10.425781 3.773438 10.28125 3.914062 C 10.140625 4.058594 10.058594 4.253906 10.058594 4.453125 L 10.058594 5.675781 C 10.058594 5.875 10.140625 6.070312 10.28125 6.214844 C 10.425781 6.355469 10.617188 6.4375 10.820312 6.4375 L 11.429688 6.4375 C 11.472656 6.4375 11.511719 6.421875 11.539062 6.390625 C 11.566406 6.363281 11.582031 6.324219 11.582031 6.285156 C 11.582031 6.242188 11.566406 6.207031 11.539062 6.175781 C 11.511719 6.148438 11.472656 6.132812 11.429688 6.132812 L 10.820312 6.132812 C 10.699219 6.132812 10.582031 6.082031 10.496094 5.996094 C 10.410156 5.910156 10.363281 5.796875 10.363281 5.675781 L 10.363281 4.453125 C 10.363281 4.332031 10.410156 4.21875 10.496094 4.132812 C 10.582031 4.046875 10.699219 3.996094 10.820312 3.996094 L 12.039062 3.996094 C 12.160156 3.996094 12.277344 4.046875 12.363281 4.132812 C 12.449219 4.21875 12.5 4.332031 12.5 4.453125 L 12.5 5.675781 C 12.5 5.796875 12.449219 5.910156 12.363281 5.996094 C 12.277344 6.082031 12.160156 6.132812 12.039062 6.132812 C 12 6.132812 11.960938 6.148438 11.933594 6.175781 C 11.902344 6.207031 11.886719 6.242188 11.886719 6.285156 C 11.886719 6.324219 11.902344 6.363281 11.933594 6.390625 C 11.960938 6.421875 12 6.4375 12.039062 6.4375 C 12.242188 6.4375 12.4375 6.355469 12.578125 6.214844 C 12.722656 6.070312 12.804688 5.875 12.804688 5.675781 L 12.804688 4.453125 C 12.804688 4.253906 12.722656 4.058594 12.578125 3.914062 C 12.4375 3.773438 12.242188 3.691406 12.039062 3.691406 Z M 12.039062 3.691406 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.34375 2.988281 C 10.933594 2.988281 10.601562 2.65625 10.601562 2.246094 C 10.601562 1.835938 10.933594 1.5 11.34375 1.5 C 11.753906 1.5 12.089844 1.835938 12.089844 2.246094 C 12.089844 2.65625 11.753906 2.988281 11.34375 2.988281 Z M 11.34375 1.910156 C 11.160156 1.910156 11.011719 2.0625 11.011719 2.246094 C 11.011719 2.425781 11.160156 2.578125 11.34375 2.578125 C 11.527344 2.578125 11.679688 2.425781 11.679688 2.246094 C 11.679688 2.0625 11.527344 1.910156 11.34375 1.910156 Z M 11.34375 1.910156 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 5.851562 15.035156 C 5.5 15.035156 5.214844 14.746094 5.214844 14.394531 C 5.214844 14.042969 5.5 13.757812 5.851562 13.757812 C 6.203125 13.757812 6.492188 14.042969 6.492188 14.394531 C 6.492188 14.746094 6.203125 15.035156 5.851562 15.035156 Z M 5.851562 14.109375 C 5.695312 14.109375 5.566406 14.238281 5.566406 14.394531 C 5.566406 14.554688 5.695312 14.683594 5.851562 14.683594 C 6.011719 14.683594 6.140625 14.554688 6.140625 14.394531 C 6.140625 14.238281 6.011719 14.109375 5.851562 14.109375 Z M 5.851562 14.109375 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/social-share-buttons/index.js\n// External library dependencies.\n\n\n// Wordpress dependencies.\n\n\n\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\n\nconst SOCIAL_SHARE_BUTTONS_CHILD = 'dsm/social-share-buttons-child';\nconst socialShareButtonsDefaultChildTemplate = buildParentDefaultChildTemplate(SOCIAL_SHARE_BUTTONS_CHILD, 3, ['facebook', 'twitter', 'linkedin'].map(network => ({\n  dsm_network: {\n    innerContent: {\n      desktop: {\n        value: network\n      }\n    }\n  }\n})));\nconst socialShareButtonsModule = {\n  metadata: social_share_buttons_module_namespaceObject,\n  conversionOutline: social_share_buttons_conversion_outline_conversionOutline,\n  renderers: {\n    edit: social_share_buttons_edit,\n    styles: social_share_buttons_module_styles_ModuleStyles\n  },\n  childrenName: [SOCIAL_SHARE_BUTTONS_CHILD],\n  template: socialShareButtonsDefaultChildTemplate,\n  callbacks: buildChildDraggableListCallbacks([SOCIAL_SHARE_BUTTONS_CHILD]),\n  settings: {\n    content: social_share_buttons_settings_content,\n    design: social_share_buttons_settings_design,\n    advanced: social_share_buttons_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    dsm_view: {\n      innerContent: {\n        desktop: {\n          value: 'icon_text'\n        }\n      }\n    },\n    dsm_label: {\n      innerContent: {\n        desktop: {\n          value: 'on'\n        }\n      }\n    },\n    dsm_skin: {\n      innerContent: {\n        desktop: {\n          value: 'gradient'\n        }\n      }\n    },\n    dsm_shape: {\n      innerContent: {\n        desktop: {\n          value: 'square'\n        }\n      }\n    },\n    dsm_column: {\n      innerContent: {\n        desktop: {\n          value: 'auto'\n        }\n      }\n    },\n    dsm_target_type: {\n      innerContent: {\n        desktop: {\n          value: 'current_page'\n        }\n      }\n    },\n    dsm_color_type: {\n      innerContent: {\n        desktop: {\n          value: 'official'\n        }\n      }\n    },\n    dsm_social_hover_animation: {\n      innerContent: {\n        desktop: {\n          value: 'dsm-none'\n        }\n      }\n    }\n  }\n};\n/* harmony default export */ const social_share_buttons = (socialShareButtonsModule);\n;// ./packages/module-library/star-rating/module.json\nconst star_rating_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/star-rating\",\"d4Shortcode\":\"dsm_star_rating\",\"title\":\"Supreme Star Rating\",\"titles\":\"Supreme Star Rating\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/star-rating\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"default\":{\"advanced\":{\"text\":{\"text\":{\"desktop\":{\"value\":{\"color\":\"light\"}}}}}},\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"title\":{\"type\":\"object\",\"selector\":\"{{selector}} .et_pb_module_header\",\"attributes\":{\"class\":\"dsm-star-rating-title et_pb_module_header\"},\"tagName\":\"h4\",\"inlineEditor\":\"plainText\",\"elementType\":\"headingLink\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-star-rating-title\",\"hover\":\"{{selector}}:hover .dsm-star-rating-title\"}}}}},\"rating_text\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-star-rating-text\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"rating_scale\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"5\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"rating\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"5\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"title_inline_position\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"left\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"title_stacked_position\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"bottom\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"title_gap\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"stars_display_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"inline-block\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"star_alignment\":{\"type\":\"object\",\"inlineEditor\":\"ButtonContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"stars_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"stars_gap\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"stars_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"show_number\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"stars_schema_markup\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"stars_schema_author\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"stars_schema_product_item_name\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"stars_schema_num_of_rating\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/star-rating/module-default-render-attributes.json\nconst star_rating_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"module\":{\"decoration\":{},\"advanced\":{\"text\":{\"text\":{\"desktop\":{\"value\":{\"color\":\"light\"}}}}}},\"title\":{\"innerContent\":{\"desktop\":{\"value\":{\"text\":\"\",\"url\":\"\",\"target\":\"off\"}}},\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"headingLevel\":\"h4\"}}}}}},\"rating_text\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{}}}}}},\"rating_scale\":{\"innerContent\":{\"desktop\":{\"value\":\"5\"}}},\"rating\":{\"innerContent\":{\"desktop\":{\"value\":\"5\"}}},\"title_inline_position\":{\"innerContent\":{\"desktop\":{\"value\":\"left\"}}},\"title_stacked_position\":{\"innerContent\":{\"desktop\":{\"value\":\"bottom\"}}},\"title_gap\":{\"innerContent\":{\"desktop\":{\"value\":\"7px\"}}},\"stars_display_type\":{\"innerContent\":{\"desktop\":{\"value\":\"inline-block\"}}},\"star_alignment\":{\"innerContent\":{\"desktop\":{\"value\":\"left\"}}},\"stars_size\":{\"innerContent\":{\"desktop\":{\"value\":\"14px\"}}},\"stars_gap\":{\"innerContent\":{\"desktop\":{\"value\":\"0px\"}}},\"stars_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#f0ad4e\"}}},\"show_number\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"stars_schema_markup\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"stars_schema_author\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"stars_schema_product_item_name\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"stars_schema_num_of_rating\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}}}');\n;// ./packages/module-library/star-rating/star-rating-vb-default-attrs.js\nvar star_rating_vb_default_attrs_defaultRenderAttribu, _defaultRenderAttribu2;\n/**\n * Visual Builder `defaultAttr` map from `module-default-render-attributes.json`.\n *\n * @package DiviSupreme\n */\n\n\n\n/**\n * `FontGroup` `attrName=\"title.decoration.font\"`.\n * Fallback keeps VB heading dropdown populated when JSON merge is missing a key.\n */\nconst starRatingTitleFontGroupDefaultAttr = (star_rating_vb_default_attrs_defaultRenderAttribu = star_rating_module_default_render_attributes_namespaceObject.title?.decoration?.font) !== null && star_rating_vb_default_attrs_defaultRenderAttribu !== void 0 ? star_rating_vb_default_attrs_defaultRenderAttribu : {\n  font: {\n    desktop: {\n      value: {\n        headingLevel: 'h4'\n      }\n    }\n  }\n};\n\n/** `FontGroup` `attrName=\"rating_text.decoration.font\"`. */\nconst starRatingRatingTextFontGroupDefaultAttr = (_defaultRenderAttribu2 = star_rating_module_default_render_attributes_namespaceObject.rating_text?.decoration?.font) !== null && _defaultRenderAttribu2 !== void 0 ? _defaultRenderAttribu2 : {\n  font: {\n    desktop: {\n      value: {}\n    }\n  }\n};\n\n/** `innerContent` defaults per attribute key (for `FieldContainer` `defaultAttr`). */\nconst starRatingFieldDefaultInnerContent = Object.fromEntries(Object.entries(star_rating_module_default_render_attributes_namespaceObject).filter(([, attr]) => attr && typeof attr === 'object' && attr.innerContent).map(([key, attr]) => [key, attr.innerContent]));\n\n/** @type {typeof starRatingFieldDefaultInnerContent} */\nconst starRatingFd = starRatingFieldDefaultInnerContent;\n;// ./packages/module-library/star-rating/settings-content.js\n\n// Wordpress dependencies.\n\n// Divi package dependencies.\n\n\n\n\n\nfunction star_rating_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  const fd = starRatingFd;\n  const starDisplayType = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.stars_display_type?.innerContent);\n  const starSchemaMarkup = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.stars_schema_markup?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rating', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"rating_scale.innerContent\",\n    defaultAttr: fd.rating_scale,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rating Scale', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      5: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('0 - 5', 'dsm-supreme-modules-pro-for-divi')\n      },\n      10: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('0 - 10', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"rating.innerContent\",\n    defaultAttr: fd.rating,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rating', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"title.innerContent\",\n    subName: \"text\",\n    defaultAttr: fd.title,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"stars_display_type.innerContent\",\n    defaultAttr: fd.stars_display_type,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Display Type', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      'inline-block': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inline', 'dsm-supreme-modules-pro-for-divi')\n      },\n      block: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Stacked', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"title_stacked_position.innerContent\",\n    defaultAttr: fd.title_stacked_position,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title Stacked Position', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'block' === starDisplayType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      top: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"title_inline_position.innerContent\",\n    defaultAttr: fd.title_inline_position,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title Inline Position', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'inline-block' === starDisplayType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"show_number.innerContent\",\n    defaultAttr: fd.show_number,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Rating Number', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"schema\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Schema', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"stars_schema_markup.innerContent\",\n    defaultAttr: fd.stars_schema_markup,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enable Schema Support', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"stars_schema_author.innerContent\",\n    defaultAttr: fd.stars_schema_author,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Author', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === starSchemaMarkup,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"stars_schema_product_item_name.innerContent\",\n    defaultAttr: fd.stars_schema_product_item_name,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Product Item Name', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === starSchemaMarkup,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"stars_schema_num_of_rating.innerContent\",\n    defaultAttr: fd.stars_schema_num_of_rating,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Number of Rating', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === starSchemaMarkup,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const star_rating_settings_content = (star_rating_settings_content_SettingsContent);\n;// ./packages/module-library/star-rating/settings-design.js\n\n// Wordpress dependencies.\n\n\n// Divi package dependencies.\n\n\n\n\nfunction star_rating_settings_design_SettingsDesign() {\n  const fd = starRatingFd;\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"alignment\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Alignment', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"star_alignment.innerContent\",\n    defaultAttr: fd.star_alignment,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Stars Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"stars\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Stars', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"stars_size.innerContent\",\n    defaultAttr: fd.stars_size,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Size', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', '')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnits: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"stars_gap.innerContent\",\n    defaultAttr: fd.stars_gap,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Gap', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', '')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnits: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"stars_color.innerContent\",\n    defaultAttr: fd.stars_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Stars Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', '')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"title\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"title_gap.innerContent\",\n    defaultAttr: fd.title_gap,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Gap', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', '')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnits: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"title.decoration.font\",\n    defaultAttr: starRatingTitleFontGroupDefaultAttr,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: true\n      }\n    },\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"rating_text.decoration.font\",\n    defaultAttr: starRatingRatingTextFontGroupDefaultAttr,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rating Number', 'dsm-supreme-modules-pro-for-divi'),\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rating Number Text', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const star_rating_settings_design = (star_rating_settings_design_SettingsDesign);\n;// ./packages/module-library/star-rating/settings-advanced.js\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\nfunction star_rating_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_star_rating\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const star_rating_settings_advanced = (star_rating_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/star-rating/module-styles.js\n\n\n\n\n/**\n * React function component for rendering module style.\n */\nconst star_rating_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextStyle, {\n    selector: orderClass,\n    attr: attrs?.module?.advanced?.text\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'title'\n  }), elements.style({\n    attrName: 'rating_text'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm-star-display-type-block .dsm-star-rating-wrapper`,\n    attr: attrs?.star_alignment?.innerContent,\n    property: \"text-align\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm-star-display-type-inline-block .dsm-star-rating-wrapper`,\n    attr: attrs?.star_alignment?.innerContent,\n    declarationFunction: attrValue => {\n      var _attrValue$attrValue;\n      const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n        returnType: 'string'\n      });\n      const raw = (_attrValue$attrValue = attrValue?.attrValue) !== null && _attrValue$attrValue !== void 0 ? _attrValue$attrValue : 'left';\n      const slug = typeof raw === 'string' ? raw.toLowerCase().trim() : 'left';\n      let justify = 'flex-start';\n      let textAlign = slug;\n      if (slug === 'center') {\n        justify = 'center';\n      } else if (slug === 'right') {\n        justify = 'flex-end';\n      } else if (slug === 'justified' || slug === 'justify') {\n        justify = 'space-between';\n        textAlign = 'left';\n      }\n      declarations.add('justify-content', justify);\n      declarations.add('text-align', textAlign);\n      return declarations.value;\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-star-rating`,\n    attr: attrs?.stars_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-star-rating i:not(:last-of-type)`,\n    attr: attrs?.stars_gap?.innerContent,\n    property: \"margin-right\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-star-rating, ${orderClass} .dsm-star-rating i::before, ${orderClass} .dsm-star-rating i::after`,\n    attr: attrs?.stars_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm-star-display-type-inline-block.dsm-star-title-position-left .dsm-star-rating-title`,\n    attr: attrs?.title_gap?.innerContent,\n    property: \"margin-right\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm-star-display-type-inline-block.dsm-star-title-position-right .dsm-star-rating-title`,\n    attr: attrs?.title_gap?.innerContent,\n    property: \"margin-left\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm-star-display-type-block.dsm-star-title-position-top .dsm-star-rating-title`,\n    attr: attrs?.title_gap?.innerContent,\n    property: \"margin-bottom\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm-star-display-type-block.dsm-star-title-position-bottom .dsm-star-rating-title`,\n    attr: attrs?.title_gap?.innerContent,\n    property: \"margin-top\"\n  }));\n};\n;// ./packages/module-library/star-rating/edit.js\n\n\n\n\n\n/** Matches D4 / FE `module.json` title `attributes.class` (VB may not apply metadata classes). */\nconst STAR_RATING_TITLE_RENDER_PROPS = {\n  attrName: 'title',\n  attributes: {\n    class: 'dsm-star-rating-title et_pb_module_header'\n  }\n};\n\n/**\n * React function component for registering module script data.\n */\nconst star_rating_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\n\n/**\n * Stars row (Visual Builder) — matches `StarRating::get_starrating` / Divi 4 output.\n *\n * @param {object} props Component props.\n * @return {React.ReactElement}\n */\nfunction StarRatingStars({\n  ratingScale,\n  ratingFloat,\n  showNumber,\n  starsSchemaMarkup\n}) {\n  const scale = Math.max(1, parseInt(String(ratingScale), 10) || 5);\n  const rating = parseFloat(String(ratingFloat)) || 0;\n  const intRating = Math.floor(rating);\n  const stars = [];\n  for (let i = 1; i <= scale; i++) {\n    let starClass = 'dsm-star-empty';\n    if (i <= intRating) {\n      starClass = 'dsm-star-full';\n    } else if (intRating + 1 === i && intRating !== rating) {\n      const partial = Math.round((rating - intRating) * 10);\n      starClass = `dsm-star-${partial}`;\n    }\n    stars.push(/*#__PURE__*/external_vendor_React_default().createElement(\"i\", {\n      className: starClass,\n      key: `star-${i}`\n    }));\n  }\n  const ratingNumberRow = starsSchemaMarkup === 'on' ? /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm-star-rating-text\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"meta\", {\n    itemProp: \"worstRating\",\n    content: \"1\"\n  }), '( ', /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    itemProp: \"ratingValue\"\n  }, intRating), ' / ', /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    itemProp: \"bestRating\"\n  }, scale), ' )') : showNumber === 'on' ? /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm-star-rating-text\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", null, \"( \", /*#__PURE__*/external_vendor_React_default().createElement(\"span\", null, intRating), \" / \", /*#__PURE__*/external_vendor_React_default().createElement(\"span\", null, scale), \" )\")) : null;\n  return /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-star-rating\"\n  }, stars, ratingNumberRow);\n}\nfunction star_rating_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  var _attrs$module$advance;\n  const rating_scale = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.rating_scale?.innerContent);\n  const show_number = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_number?.innerContent);\n  const stars_schema_markup = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.stars_schema_markup?.innerContent);\n  const rating = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.rating?.innerContent);\n  const starDisplayType = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.stars_display_type?.innerContent);\n  const titleInlinePosition = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.title_inline_position?.innerContent);\n  const titleStackedPosition = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.title_stacked_position?.innerContent);\n  const displayType = starDisplayType && String(starDisplayType).trim() !== '' ? String(starDisplayType) : 'inline-block';\n  const titlePositionSlug = displayType === 'inline-block' ? titleInlinePosition && String(titleInlinePosition).trim() !== '' ? String(titleInlinePosition) : 'left' : titleStackedPosition && String(titleStackedPosition).trim() !== '' ? String(titleStackedPosition) : 'bottom';\n  const textColor = (_attrs$module$advance = attrs?.module?.advanced?.text?.text?.desktop?.value?.color) !== null && _attrs$module$advance !== void 0 ? _attrs$module$advance : 'light';\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    moduleClassName: \"dsm_star_rating\",\n    name: name,\n    scriptDataComponent: star_rating_edit_ModuleScriptData,\n    stylesComponent: star_rating_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n      params.classnamesInstance.add(`et_pb_bg_layout_${textColor}`);\n      params.classnamesInstance.add(`dsm-star-display-type-${displayType}`);\n      params.classnamesInstance.add(`dsm-star-title-position-${titlePositionSlug}`);\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-star-rating-wrapper\"\n  }, 'inline-block' === displayType && 'left' === titleInlinePosition && /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, {\n    key: \"title-left\"\n  }, elements.render(STAR_RATING_TITLE_RENDER_PROPS)), 'block' === displayType && 'top' === titleStackedPosition && /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, {\n    key: \"title-top\"\n  }, elements.render(STAR_RATING_TITLE_RENDER_PROPS)), /*#__PURE__*/external_vendor_React_default().createElement(StarRatingStars, {\n    ratingScale: rating_scale,\n    ratingFloat: rating,\n    showNumber: show_number,\n    starsSchemaMarkup: stars_schema_markup\n  }), 'inline-block' === displayType && 'right' === titleInlinePosition && /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, {\n    key: \"title-right\"\n  }, elements.render(STAR_RATING_TITLE_RENDER_PROPS)), 'block' === displayType && 'bottom' === titleStackedPosition && /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, {\n    key: \"title-bottom\"\n  }, elements.render(STAR_RATING_TITLE_RENDER_PROPS))));\n}\n/* harmony default export */ const star_rating_edit = (star_rating_edit_Edit);\n;// ./packages/module-library/star-rating/conversion-outline.js\nconst star_rating_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    margin_padding: 'module.decoration.spacing',\n    max_width: 'module.decoration.sizing',\n    height: 'module.decoration.sizing',\n    link_options: 'module.advanced.link',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    fonts: {\n      header: 'title.decoration.font',\n      rating_number: 'rating_text.decoration.font'\n    },\n    text: 'module.advanced.text',\n    text_shadow: {\n      default: 'module.advanced.text.textShadow'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    title: 'title.innerContent.*.text',\n    rating_scale: 'rating_scale.innerContent.*',\n    rating: 'rating.innerContent.*',\n    title_inline_position: 'title_inline_position.innerContent.*',\n    title_stacked_position: 'title_stacked_position.innerContent.*',\n    title_gap: 'title_gap.innerContent.*',\n    stars_display_type: 'stars_display_type.innerContent.*',\n    star_alignment: 'star_alignment.innerContent.*',\n    stars_size: 'stars_size.innerContent.*',\n    stars_gap: 'stars_gap.innerContent.*',\n    stars_color: 'stars_color.innerContent.*',\n    show_number: 'show_number.innerContent.*',\n    stars_schema_markup: 'stars_schema_markup.innerContent.*',\n    stars_schema_author: 'stars_schema_author.innerContent.*',\n    stars_schema_product_item_name: 'stars_schema_product_item_name.innerContent.*',\n    stars_schema_num_of_rating: 'stars_schema_num_of_rating.innerContent.*',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/star-rating/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmStarRating', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/star-rating': {\n      name: 'divi-supreme/star-rating',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 4.320312 5.195312 C 3.917969 5.195312 3.589844 4.867188 3.589844 4.464844 C 3.589844 4.0625 3.917969 3.734375 4.320312 3.734375 C 4.722656 3.734375 5.050781 4.0625 5.050781 4.464844 C 5.050781 4.867188 4.722656 5.195312 4.320312 5.195312 Z M 4.320312 4.136719 C 4.140625 4.136719 3.992188 4.285156 3.992188 4.464844 C 3.992188 4.644531 4.140625 4.792969 4.320312 4.792969 C 4.5 4.792969 4.648438 4.644531 4.648438 4.464844 C 4.648438 4.285156 4.5 4.136719 4.320312 4.136719 Z M 4.320312 4.136719 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.824219 11.929688 C 11.421875 11.929688 11.09375 11.601562 11.09375 11.199219 C 11.09375 10.796875 11.421875 10.46875 11.824219 10.46875 C 12.226562 10.46875 12.554688 10.796875 12.554688 11.199219 C 12.554688 11.601562 12.226562 11.929688 11.824219 11.929688 Z M 11.824219 10.871094 C 11.644531 10.871094 11.496094 11.019531 11.496094 11.199219 C 11.496094 11.378906 11.644531 11.527344 11.824219 11.527344 C 12.003906 11.527344 12.152344 11.378906 12.152344 11.199219 C 12.152344 11.019531 12.003906 10.871094 11.824219 10.871094 Z M 11.824219 10.871094 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 13.660156 9.902344 L 1.957031 9.902344 C 1.464844 9.902344 1.066406 9.5 1.066406 9.015625 L 1.066406 6.957031 C 1.066406 6.464844 1.46875 6.066406 1.957031 6.066406 L 13.65625 6.066406 C 14.148438 6.066406 14.542969 6.46875 14.542969 6.957031 L 14.542969 9.015625 C 14.550781 9.5 14.148438 9.902344 13.660156 9.902344 Z M 1.957031 6.46875 C 1.6875 6.46875 1.46875 6.6875 1.46875 6.957031 L 1.46875 9.015625 C 1.46875 9.285156 1.6875 9.5 1.957031 9.5 L 13.65625 9.5 C 13.925781 9.5 14.140625 9.285156 14.140625 9.015625 L 14.140625 6.957031 C 14.140625 6.6875 13.925781 6.46875 13.65625 6.46875 Z M 1.957031 6.46875 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 4.382812 9.15625 C 4.339844 9.15625 4.296875 9.148438 4.261719 9.125 L 3.789062 8.875 L 3.320312 9.125 C 3.234375 9.171875 3.125 9.164062 3.042969 9.105469 C 2.964844 9.046875 2.921875 8.945312 2.9375 8.851562 L 3.027344 8.328125 L 2.648438 7.957031 C 2.578125 7.886719 2.550781 7.78125 2.578125 7.6875 C 2.609375 7.589844 2.691406 7.523438 2.789062 7.507812 L 3.3125 7.433594 L 3.546875 6.957031 C 3.589844 6.867188 3.679688 6.808594 3.78125 6.808594 C 3.878906 6.808594 3.96875 6.867188 4.011719 6.957031 L 4.246094 7.433594 L 4.769531 7.507812 C 4.871094 7.523438 4.949219 7.589844 4.980469 7.6875 C 5.011719 7.78125 4.988281 7.886719 4.914062 7.957031 L 4.53125 8.328125 L 4.621094 8.851562 C 4.636719 8.949219 4.601562 9.046875 4.515625 9.105469 C 4.488281 9.136719 4.4375 9.15625 4.382812 9.15625 Z M 3.144531 7.867188 L 3.46875 8.183594 L 3.394531 8.628906 L 3.796875 8.417969 L 4.199219 8.628906 L 4.125 8.183594 L 4.445312 7.867188 L 3.996094 7.800781 L 3.796875 7.394531 L 3.59375 7.800781 Z M 2.933594 7.664062 C 2.9375 7.664062 2.9375 7.664062 2.933594 7.664062 Z M 2.933594 7.664062 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 8.398438 9.15625 C 8.359375 9.15625 8.316406 9.148438 8.277344 9.125 L 7.808594 8.875 L 7.335938 9.125 C 7.25 9.171875 7.140625 9.164062 7.0625 9.105469 C 6.980469 9.046875 6.941406 8.945312 6.957031 8.851562 L 7.046875 8.328125 L 6.664062 7.957031 C 6.59375 7.886719 6.570312 7.78125 6.59375 7.6875 C 6.628906 7.589844 6.707031 7.523438 6.808594 7.507812 L 7.332031 7.433594 L 7.5625 6.957031 C 7.605469 6.867188 7.695312 6.808594 7.796875 6.808594 C 7.898438 6.808594 7.988281 6.867188 8.03125 6.957031 L 8.261719 7.433594 L 8.785156 7.507812 C 8.886719 7.523438 8.964844 7.589844 8.996094 7.6875 C 9.03125 7.78125 9.003906 7.886719 8.929688 7.957031 L 8.546875 8.328125 L 8.636719 8.851562 C 8.652344 8.949219 8.617188 9.046875 8.53125 9.105469 C 8.503906 9.136719 8.453125 9.15625 8.398438 9.15625 Z M 7.160156 7.867188 L 7.484375 8.183594 L 7.410156 8.628906 L 7.8125 8.417969 L 8.214844 8.628906 L 8.140625 8.183594 L 8.464844 7.867188 L 8.011719 7.800781 L 7.808594 7.394531 L 7.605469 7.800781 Z M 7.160156 7.867188 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.410156 9.15625 C 12.367188 9.15625 12.324219 9.148438 12.289062 9.125 L 11.816406 8.875 L 11.347656 9.125 C 11.261719 9.171875 11.152344 9.164062 11.070312 9.105469 C 10.992188 9.046875 10.949219 8.945312 10.964844 8.84375 L 11.054688 8.320312 L 10.675781 7.949219 C 10.605469 7.882812 10.578125 7.777344 10.605469 7.679688 C 10.636719 7.585938 10.71875 7.515625 10.816406 7.5 L 11.339844 7.425781 L 11.574219 6.949219 C 11.617188 6.859375 11.707031 6.800781 11.808594 6.800781 C 11.90625 6.800781 11.996094 6.859375 12.039062 6.949219 L 12.273438 7.425781 L 12.796875 7.5 C 12.898438 7.515625 12.976562 7.585938 13.007812 7.679688 C 13.039062 7.777344 13.011719 7.882812 12.941406 7.949219 L 12.558594 8.320312 L 12.648438 8.84375 C 12.664062 8.945312 12.628906 9.039062 12.542969 9.097656 C 12.523438 9.136719 12.46875 9.15625 12.410156 9.15625 Z M 11.171875 7.867188 L 11.496094 8.183594 L 11.421875 8.628906 L 11.824219 8.417969 L 12.226562 8.628906 L 12.152344 8.183594 L 12.472656 7.867188 L 12.023438 7.800781 L 11.824219 7.394531 L 11.621094 7.800781 Z M 11.171875 7.867188 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/star-rating/index.js\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\nconst star_rating_defaultAttrs = star_rating_module_default_render_attributes_namespaceObject;\nconst starRatingModule = {\n  metadata: star_rating_module_namespaceObject,\n  conversionOutline: star_rating_conversion_outline_conversionOutline,\n  renderers: {\n    edit: star_rating_edit,\n    styles: star_rating_module_styles_ModuleStyles\n  },\n  defaultAttrs: star_rating_defaultAttrs,\n  settings: {\n    content: star_rating_settings_content,\n    design: star_rating_settings_design,\n    advanced: star_rating_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    ...star_rating_module_default_render_attributes_namespaceObject\n  }\n};\n/* harmony default export */ const star_rating = (starRatingModule);\n;// ./packages/module-library/step-flow/module.json\nconst step_flow_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/step-flow\",\"d4Shortcode\":\"dsm_step_flow\",\"title\":\"Supreme Step Flow\",\"titles\":\"Supreme Step Flow\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/step-flow\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}},\"styleProps\":{\"spacing\":{\"selector\":\"{{selector}} .dsm-step-flow-container\"}}},\"dsm_title\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"selector\":\"{{selector}} .dsm-title\",\"default\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"headingLevel\":\"h4\"}}}}}},\"tagName\":\"h4\",\"attributes\":{\"class\":\"dsm-title\"},\"elementType\":\"headingLink\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_badge\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-step-badge\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_use_content\":{\"type\":\"object\",\"inlineEditor\":\"toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content\":{\"type\":\"object\",\"inlineEditor\":\"RichTextContainer\",\"selector\":\"{{selector}} .dsm-content\",\"elementType\":\"content\",\"tagName\":\"div\",\"attributes\":{\"class\":\"dsm-content\"},\"allowHtml\":true,\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_text\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\",\"tagName\":\"span\"},\"button_url\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"url_new_window\":{\"type\":\"object\",\"inlineEditor\":\"selectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"button\":{\"type\":\"object\",\"selector\":\"{{selector}}.et_pb_module .dsm-button-wrapper .et_pb_button\",\"default\":{\"decoration\":{\"button\":{\"desktop\":{\"value\":{\"enable\":\"off\",\"icon\":{\"enable\":\"on\",\"onHover\":\"on\"}}}},\"border\":{\"desktop\":{\"value\":{\"styles\":{\"all\":{\"color\":\"\"}}}}},\"font\":{\"font\":{\"desktop\":{\"value\":{\"color\":\"\"}}}}}},\"elementType\":\"button\",\"styleProps\":{\"font\":{\"important\":{\"font\":{\"desktop\":{\"value\":{\"color\":true,\"font-size\":true,\"letter-spacing\":true}}}}},\"spacing\":{\"propertySelectors\":{\"desktop\":{\"value\":{\"margin\":\"{{selector}}.et_pb_module .dsm-button-wrapper\"}}},\"important\":true}}},\"dsm_show_dir\":{\"type\":\"object\",\"inlineEditor\":\"toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_dir_type\":{\"type\":\"object\",\"inlineEditor\":\"selectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_dir_image\":{\"type\":\"object\",\"inlineEditor\":\"uploadContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_dir_font_icon\":{\"type\":\"object\",\"inlineEditor\":\"iconPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_dir_color\":{\"type\":\"object\",\"inlineEditor\":\"colorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_use_icon\":{\"type\":\"object\",\"inlineEditor\":\"toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_image\":{\"type\":\"object\",\"inlineEditor\":\"uploadContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"font_icon\":{\"type\":\"object\",\"inlineEditor\":\"iconPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_image_icon_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"colorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_image_icon_alignment\":{\"type\":\"object\",\"inlineEditor\":\"buttonAlignmentContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_image_width\":{\"type\":\"object\",\"inlineEditor\":\"rangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_badge_position\":{\"type\":\"object\",\"inlineEditor\":\"selectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_badge_use_position\":{\"type\":\"object\",\"inlineEditor\":\"toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_badge_left_position\":{\"type\":\"object\",\"inlineEditor\":\"rangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_badge_top_position\":{\"type\":\"object\",\"inlineEditor\":\"rangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_badge_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"colorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_icon_color\":{\"type\":\"object\",\"inlineEditor\":\"colorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_icon_font_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_dir_style\":{\"type\":\"object\",\"inlineEditor\":\"selectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_dir_offset_top\":{\"type\":\"object\",\"inlineEditor\":\"rangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_dir_offset_left\":{\"type\":\"object\",\"inlineEditor\":\"rangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_dir_image_width\":{\"type\":\"object\",\"inlineEditor\":\"rangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_dir_width\":{\"type\":\"object\",\"inlineEditor\":\"rangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_dir_font_size\":{\"type\":\"object\",\"inlineEditor\":\"rangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_image_icon_margin\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-steps-image-icon-wrapper .dsm_icon, {{selector}} .dsm-steps-image-icon-wrapper img\",\"inlineEditor\":\"spacingGroup\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_image_icon_padding\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-steps-image-icon-wrapper .dsm_icon, {{selector}} .dsm-steps-image-icon-wrapper img\",\"inlineEditor\":\"spacingGroup\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_badge_margin\":{\"type\":\"object\",\"inlineEditor\":\"spacingGroup\",\"selector\":\"{{selector}} .dsm-step-badge\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_badge_padding\":{\"type\":\"object\",\"inlineEditor\":\"spacingGroup\",\"selector\":\"{{selector}} .dsm-step-badge\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"imageIconStyle\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-steps-image-icon-wrapper .dsm_icon, {{selector}} .dsm-steps-image-icon-wrapper img\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-steps-image-icon-wrapper .dsm_icon, {{selector}} .dsm-steps-image-icon-wrapper img\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-steps-image-icon-wrapper .dsm_icon, {{selector}} .dsm-steps-image-icon-wrapper img\",\"useOverlay\":true}}},\"badgeStyle\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-step-badge\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-step-badge\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-step-badge\",\"useOverlay\":true}}},\"button_alignment\":{\"type\":\"object\",\"inlineEditor\":\"ButtonContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"css\":{\"type\":\"object\",\"inlineEditor\":\"codemirror\",\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/step-flow/settings-content.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\nfunction step_flow_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _getAttrByMode4;\n  const useContent = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_use_content?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'on';\n  const showDir = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_show_dir?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'off';\n  const type = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_dir_type?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'default';\n  const useIcon = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_use_icon?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : 'off';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"general\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('General', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_title.innerContent\",\n    subName: \"text\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enter your Title text here.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: {\n          text: ''\n        }\n      }\n    },\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_badge.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Badge', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enter the Text for Badge here, which will appear on top of the Card. You can style it & change its position from the Design.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_use_content.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Description', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enable/Disable this option to show/hide the Description.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'on'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content.innerContent\",\n    subName: \"text\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Your Description Content goes here.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useContent,\n    defaultAttr: {\n      desktop: {\n        value: {\n          text: ''\n        }\n      }\n    },\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RichTextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_text.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Text', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Add in your Button Text here.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_url.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Link URL', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Add your Button link here.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"url_new_window.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Link Target', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Choose Whether you want to open the Link in the Same Tab or a New Tab.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'off'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      off: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The Same Window', 'dsm-supreme-modules-pro-for-divi')\n      },\n      on: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The New Tab', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_show_dir.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Direction', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)(\"Enable this option If you'd like to show a Direction Arrow. \", 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'off'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_dir_type.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Type', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === showDir,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose the type of Direction. The Default will add an arrow that you can style from the Design tab. Or you can even choose an Arrow from Divi Icon Library or upload your own.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'default'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      default: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Default', 'dsm-supreme-modules-pro-for-divi')\n      },\n      icon: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi')\n      },\n      image: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_dir_font_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'icon' === type && 'on' === showDir,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Choose an icon to display with your direction.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_dir_image.innerContent\",\n    subName: \"src\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'image' === type && 'on' === showDir,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Upload your desired image, or type in the URL to the image you would like to display for the Direction Image.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"Image_Icon\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image & Icon', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_use_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Icon', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)(\"Enable this Option If you'd like to use an Icon instead of the image.\", 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'off'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"font_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useIcon,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Choose an icon to display with Step Flow.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_image.innerContent\",\n    subName: \"src\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'off' === useIcon,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Upload your image for the Step Flow Card here.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const step_flow_settings_content = (step_flow_settings_content_SettingsContent);\n;// ./packages/module-library/step-flow/settings-design.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\nfunction step_flow_settings_design_SettingsDesign({\n  attrs,\n  defaultSettingsAttrs\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _defaultSettingsAttrs;\n  const showDir = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_show_dir?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'off';\n  const type = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_dir_type?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'default';\n  const useIcon = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_use_icon?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'off';\n  const badgeUseRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_badge_use_position?.innerContent);\n  const useBadgePosition = 'on' === badgeUseRaw ? 'on' : 'off';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"dsm_title.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: true\n      },\n      color: {\n        render: true\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"dsm_content.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      },\n      color: {\n        render: true\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"Image_Icon\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image & Icon', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_icon_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Color', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useIcon,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom color for your icon.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_image_icon_bg_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom background color for your icon.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    grouped: false,\n    attrName: \"dsm_image_icon_margin.decoration.spacing\",\n    fields: {\n      padding: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    grouped: false,\n    attrName: \"dsm_image_icon_padding.decoration.spacing\",\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Font Size', 'dsm-supreme-modules-pro-for-divi'),\n    attrName: \"dsm_icon_font_size.innerContent\",\n    visible: 'on' === useIcon,\n    defaultAttr: {\n      desktop: {\n        value: '96px'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_image_icon_alignment.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    defaultAttr: {\n      desktop: {\n        value: 'center'\n      }\n    },\n    features: {\n      hover: false,\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_image_width.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Width', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: '50%'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    defaultUnit: '%'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"imageIconStyle.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"imageIconStyle.decoration.boxShadow\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"direction\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Direction', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === showDir\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_dir_image_width.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Width', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === showDir && 'image' === type,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can adjust image width.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: '100%'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    defaultUnit: '%'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_dir_font_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Font Size', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === showDir && 'icon' === type,\n    defaultAttr: {\n      desktop: {\n        value: '56px'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_dir_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Color', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === showDir,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom color for your direction arrow.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: '#dddddd'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_dir_style.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Style', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === showDir && 'default' === type,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose position of the badge.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'solid'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      solid: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Solid', 'dsm-supreme-modules-pro-for-divi')\n      },\n      dotted: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Dotted', 'dsm-supreme-modules-pro-for-divi')\n      },\n      dashed: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Dashed', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_dir_width.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Width', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === showDir && 'default' === type,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can adjust image width.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: '100px'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 150,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_dir_offset_top.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Offset Top', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === showDir\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 500,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_dir_offset_left.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Offset Left', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === showDir\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 500,\n    defaultUnit: 'px'\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"badge\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Badge', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_badge_position.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Position', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose position of the badge.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    visible: 'off' === useBadgePosition,\n    defaultAttr: {\n      desktop: {\n        value: 'top_right'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      top_left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      top_center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      top_right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center_left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center_right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom_left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom_center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom_right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom Right', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_badge_use_position.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Custom Position', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose to have a custom position for your badge.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'off'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_badge_left_position.innerContent\",\n    visible: 'on' === useBadgePosition,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left Position', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: '0%'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: '%'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_badge_top_position.innerContent\",\n    visible: 'on' === useBadgePosition,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top Position', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: '0%'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: '%'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_badge_bg_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom background color for your badge.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    grouped: false,\n    attrName: \"dsm_badge_margin.decoration.spacing\",\n    fields: {\n      padding: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    grouped: false,\n    attrName: \"dsm_badge_padding.decoration.spacing\",\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    grouped: false,\n    attrName: \"dsm_badge.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Badge', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      },\n      color: {\n        render: true\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"badgeStyle.decoration.border\",\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"badgeStyle.decoration.boxShadow\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"button\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ButtonGroupContainer, {\n    attrName: \"button\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi'),\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi'),\n    defaultGroupAttr: (_defaultSettingsAttrs = defaultSettingsAttrs?.button?.decoration?.asMutable({\n      deep: true\n    })) !== null && _defaultSettingsAttrs !== void 0 ? _defaultSettingsAttrs : {},\n    fields: {\n      alignment: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_alignment.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const step_flow_settings_design = (step_flow_settings_design_SettingsDesign);\n;// ./packages/module-library/step-flow/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction step_flow_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_step_flow\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const step_flow_settings_advanced = (step_flow_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/step-flow/module-styles.js\n\n\n\n\n\n\n\n/**\n * React function component for rendering module style.\n */\n\nconst step_flow_module_styles_iconFontCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'font-family': true\n    }\n  });\n  if (isDsmIcon(attrValue)) {\n    return '';\n  }\n  addNativeIconFontFamily(declarations, attrValue);\n  addNativeIconFontContent(declarations, attrValue);\n  return declarations.value;\n};\nconst directionIconFontCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'font-family': true\n    }\n  });\n  if (isDsmIcon(attrValue)) {\n    return '';\n  }\n  addNativeIconFontFamily(declarations, attrValue);\n  addNativeIconFontContent(declarations, attrValue);\n  return declarations.value;\n};\n\n/**\n * Hide direction elements per breakpoint when \"Show Direction\" is off (matches VB `getAttrByMode`).\n * Frontend HTML may still output markup when desktop is on; static CSS must mirror responsive toggles.\n *\n * @param {Object} attr CommonStyle attr bag.\n * @return {string} CSS declarations or empty string when visible.\n */\nconst showDirectionDisplayCss = attr => {\n  const raw = attr?.attrValue;\n  if ('on' === raw) {\n    return '';\n  }\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string'\n  });\n  declarations.add('display', 'none');\n  return declarations.value;\n};\n\n/** Match D4 `if ( props['dsm_badge_*_position'] )` (empty or string \"0\" keeps 5px baseline). */\nconst badgePositionOverridesBaseline = raw => {\n  if (raw === null || raw === undefined || raw === '') {\n    return false;\n  }\n  const t = String(raw).trim();\n  return t !== '' && t !== '0';\n};\nconst badgeAxisRawString = ({\n  attrValue\n}) => {\n  if (attrValue === null || attrValue === undefined) {\n    return '';\n  }\n  if (typeof attrValue === 'object' && attrValue !== null && 'value' in attrValue) {\n    const v = attrValue.value;\n    if (v === null || v === undefined) {\n      return '';\n    }\n    return String(v);\n  }\n  return String(attrValue);\n};\nconst badgeCustomPositionBaselineCss = ({\n  important\n}) => {\n  const decl = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important\n  });\n  decl.add('left', '5px');\n  decl.add('top', '5px');\n  return decl.value;\n};\nconst badgeCustomPositionLeftCss = attr => {\n  const raw = badgeAxisRawString(attr);\n  if (!badgePositionOverridesBaseline(raw)) {\n    return '';\n  }\n  const decl = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: attr.important\n  });\n  decl.add('left', raw);\n  return decl.value;\n};\nconst badgeCustomPositionTopCss = attr => {\n  const raw = badgeAxisRawString(attr);\n  if (!badgePositionOverridesBaseline(raw)) {\n    return '';\n  }\n  const decl = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: attr.important\n  });\n  decl.add('top', raw);\n  return decl.value;\n};\nconst step_flow_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  var _getAttrByMode;\n  // Empty omitted key must behave as preset mode (off), matching StepFlow.php / D4.\n  const useContent = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_use_content?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'on';\n  const useBadgePosition = 'on' === (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_badge_use_position?.innerContent) ? 'on' : 'off';\n  const dirStyleInnerContent = attrs?.dsm_dir_style?.innerContent && Object.keys(attrs.dsm_dir_style.innerContent).length > 0 ? attrs.dsm_dir_style.innerContent : {\n    desktop: {\n      value: 'solid'\n    }\n  };\n  const dirColorInnerContent = attrs?.dsm_dir_color?.innerContent && Object.keys(attrs.dsm_dir_color.innerContent).length > 0 ? attrs.dsm_dir_color.innerContent : {\n    desktop: {\n      value: '#dddddd'\n    }\n  };\n  const dirArrowSelector = `${orderClass} .dsm-steps-image-icon-wrapper .dsm-step-arrow`;\n  const dirArrowBeforeSelector = `${orderClass} .dsm-steps-image-icon-wrapper .dsm-step-arrow::before`;\n  const dirElementsSelector = `${dirArrowSelector}, ${orderClass} .dsm-steps-image-icon-wrapper .dsm_dir_icon, ${orderClass} .dsm-steps-image-icon-wrapper .dsm-dir-image`;\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextStyle, {\n    selector: orderClass,\n    attr: attrs?.module?.advanced?.text\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'dsm_image_icon_margin'\n  }), elements.style({\n    attrName: 'dsm_image_icon_padding'\n  }), elements.style({\n    attrName: 'imageIconStyle'\n  }), elements.style({\n    attrName: 'dsm_title'\n  }), 'on' === useContent && elements.style({\n    attrName: 'dsm_content'\n  }), elements.style({\n    attrName: 'dsm_badge'\n  }), elements.style({\n    attrName: 'dsm_badge_padding'\n  }), elements.style({\n    attrName: 'dsm_badge_margin'\n  }), elements.style({\n    attrName: 'badgeStyle'\n  }), elements.style({\n    attrName: 'button'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_icon::before`,\n    attr: attrs?.font_icon?.innerContent,\n    declarationFunction: step_flow_module_styles_iconFontCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_dir_icon::before`,\n    attr: attrs?.dsm_dir_font_icon?.innerContent,\n    declarationFunction: directionIconFontCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_icon::before`,\n    attr: attrs?.dsm_icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_icon, ${orderClass} .dsm-steps-image-icon-wrapper img`,\n    attr: attrs?.dsm_image_icon_bg_color?.innerContent,\n    property: \"background\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_icon`,\n    attr: attrs?.dsm_icon_font_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-step-flow-container`,\n    attr: attrs?.dsm_image_icon_alignment?.innerContent,\n    property: \"text-align\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-step-badge`,\n    attr: attrs?.dsm_badge_bg_color?.innerContent,\n    property: \"background\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-step-badge`,\n    attr: attrs?.dsm_badge_bg_color?.innerContent,\n    property: \"background\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-button-wrapper`,\n    attr: attrs?.button_alignment?.innerContent,\n    property: \"text-align\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-steps-image-icon-wrapper .dsm-image-wrap`,\n    attr: attrs?.dsm_image_width?.innerContent,\n    property: \"width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: dirElementsSelector,\n    attr: attrs?.dsm_show_dir?.innerContent,\n    declarationFunction: showDirectionDisplayCss\n  }), 'on' === useBadgePosition && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-step-badge`,\n    attr: {\n      desktop: {\n        value: 'on'\n      }\n    },\n    declarationFunction: badgeCustomPositionBaselineCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-step-badge`,\n    attr: attrs?.dsm_badge_left_position?.innerContent,\n    declarationFunction: badgeCustomPositionLeftCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-step-badge`,\n    attr: attrs?.dsm_badge_top_position?.innerContent,\n    declarationFunction: badgeCustomPositionTopCss\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: dirArrowSelector,\n    attr: dirColorInnerContent,\n    property: \"border-top-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: dirArrowBeforeSelector,\n    attr: dirColorInnerContent,\n    property: \"border-top-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: dirArrowBeforeSelector,\n    attr: dirColorInnerContent,\n    property: \"border-right-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: dirArrowSelector,\n    attr: dirStyleInnerContent,\n    property: \"border-style\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: dirArrowBeforeSelector,\n    attr: dirStyleInnerContent,\n    property: \"border-top-style\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: dirArrowBeforeSelector,\n    attr: dirStyleInnerContent,\n    property: \"border-right-style\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: dirElementsSelector,\n    attr: attrs?.dsm_dir_offset_top?.innerContent,\n    property: \"top\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: dirElementsSelector,\n    attr: attrs?.dsm_dir_offset_left?.innerContent,\n    property: \"left\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-steps-image-icon-wrapper .dsm_dir_icon`,\n    attr: attrs?.dsm_dir_font_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-steps-image-icon-wrapper .dsm_dir_icon`,\n    attr: dirColorInnerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-steps-image-icon-wrapper .dsm-dir-image`,\n    attr: attrs?.dsm_dir_image_width?.innerContent,\n    property: \"width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-steps-image-icon-wrapper .dsm-step-arrow`,\n    attr: attrs?.dsm_dir_width?.innerContent,\n    property: \"width\"\n  }));\n};\n;// ./packages/module-library/step-flow/edit.js\n\n\n\n\n// Divi package dependencies.\n\n\n\n\n// Custom dependencies.\n\n\n\n\n/**\n * React function component for registering module script data.\n */\nconst step_flow_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction step_flow_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _getAttrByMode4;\n  const useIcon = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_use_icon?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'off';\n  const fontIconAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.font_icon?.innerContent);\n  const useContent = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_use_content?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'on';\n  const imageUrl = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_image?.innerContent);\n  const button = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.button_text?.innerContent);\n  const badge = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_badge?.innerContent);\n  const useBadgePosition = 'on' === (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_badge_use_position?.innerContent) ? 'on' : 'off';\n  const badgePositionRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_badge_position?.innerContent);\n  const badgePosition = badgePositionRaw && String(badgePositionRaw).trim() !== '' ? badgePositionRaw : 'top_right';\n  const showDirection = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_show_dir?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'off';\n  const directionType = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_dir_type?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : 'default';\n  const directionImageUrl = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_dir_image?.innerContent);\n  const isUseBadgePosition = 'off' === useBadgePosition ? `dsm-badge-position-${badgePosition}` : '';\n  const badgeMarkup = !(0,lodash.isEmpty)(badge) && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: `dsm-step-badge ${isUseBadgePosition}`\n  }, elements.render({\n    attrName: 'dsm_badge',\n    attrSubName: 'text'\n  }));\n  const iconMarkup = 'on' === useIcon ? /*#__PURE__*/external_vendor_React_default().createElement(ModuleIconHost, {\n    icon: fontIconAttr,\n    className: \"dsm_icon\"\n  }) : null;\n  const imageMarkup = 'off' === useIcon && /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm-image-wrap\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: imageUrl\n  }, resolvedImage => /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n    src: resolvedImage\n  })));\n  const buttonMarkup = !(0,lodash.isEmpty)(button) && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-button-wrapper\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n    className: \"et_pb_button\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", null, button)));\n  const directionArrowMarkup = 'on' === showDirection && 'default' === directionType && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: `dsm-step-arrow dsm-dir-type-${directionType}`\n  });\n  const directionIconMarkup = 'on' === showDirection && 'icon' === directionType && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_dir_icon\"\n  });\n  const directionImageMarkup = 'on' === showDirection && 'image' === directionType && /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n    className: \"dsm-dir-image\",\n    src: directionImageUrl\n  });\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: step_flow_edit_ModuleScriptData,\n    stylesComponent: step_flow_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"et_pb_module_inner\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-step-flow-container\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-steps-image-icon-wrapper\"\n  }, directionArrowMarkup, imageMarkup, iconMarkup, directionIconMarkup, directionImageMarkup), badgeMarkup, elements.render({\n    attrName: 'dsm_title'\n  }), 'on' === useContent && elements.render({\n    attrName: 'dsm_content',\n    attrSubName: 'text'\n  }), buttonMarkup)));\n}\n/* harmony default export */ const step_flow_edit = (step_flow_edit_Edit);\n;// ./packages/module-library/step-flow/conversion-outline.js\n\n\nconst step_flow_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    disabled_on: 'module.decoration.disabledOn',\n    display_conditions: 'module.decoration.conditions',\n    borders: {\n      default: 'module.decoration.border',\n      dsm_image_icon_border: 'imageIconStyle.decoration.border',\n      dsm_badge_border: 'badgeStyle.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow',\n      dsm_image_icon_shadow: 'imageIconStyle.decoration.boxShadow',\n      dsm_badge_shadow: 'badgeStyle.decoration.boxShadow'\n    },\n    module: 'module.advanced.htmlAttributes',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    margin_padding: 'module.decoration.spacing',\n    link_options: 'module.advanced.link',\n    height: 'module.decoration.sizing',\n    max_width: 'module.decoration.sizing',\n    text: 'module.advanced.text',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    text_shadow: {\n      default: 'module.advanced.text.textShadow'\n    },\n    fonts: {\n      header: 'dsm_title.decoration.font',\n      dsm_body_text: 'dsm_content.decoration.font',\n      dsm_badge_text: 'dsm_badge.decoration.font'\n    },\n    button: {\n      button: 'button'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    dsm_title: 'dsm_title.innerContent.*.text',\n    dsm_badge: 'dsm_badge.innerContent.*',\n    dsm_content: 'dsm_content.innerContent.*',\n    dsm_use_content: 'dsm_use_content.innerContent.*',\n    button_text: 'button_text.innerContent.*',\n    button_url: 'button_url.innerContent.*',\n    url_new_window: 'url_new_window.innerContent.*',\n    dsm_show_dir: 'dsm_show_dir.innerContent.*',\n    dsm_dir_type: 'dsm_dir_type.innerContent.*',\n    dsm_dir_image: 'dsm_dir_image.innerContent.*',\n    dsm_dir_font_icon: 'dsm_dir_font_icon.innerContent.*',\n    dsm_dir_color: 'dsm_dir_color.innerContent.*',\n    dsm_use_icon: 'dsm_use_icon.innerContent.*',\n    dsm_image: 'dsm_image.innerContent.*',\n    font_icon: 'font_icon.innerContent.*',\n    dsm_image_icon_bg_color: 'dsm_image_icon_bg_color.innerContent.*',\n    dsm_image_icon_alignment: 'dsm_image_icon_alignment.innerContent.*',\n    dsm_image_width: 'dsm_image_width.innerContent.*',\n    dsm_badge_position: 'dsm_badge_position.innerContent.*',\n    dsm_badge_use_position: 'dsm_badge_use_position.innerContent.*',\n    dsm_badge_left_position: 'dsm_badge_left_position.innerContent.*',\n    dsm_badge_top_position: 'dsm_badge_top_position.innerContent.*',\n    dsm_badge_bg_color: 'dsm_badge_bg_color.innerContent.*',\n    dsm_icon_color: 'dsm_icon_color.innerContent.*',\n    dsm_icon_font_size: 'dsm_icon_font_size.innerContent.*',\n    dsm_dir_style: 'dsm_dir_style.innerContent.*',\n    dsm_dir_offset_top: 'dsm_dir_offset_top.innerContent.*',\n    dsm_dir_offset_left: 'dsm_dir_offset_left.innerContent.*',\n    dsm_dir_image_width: 'dsm_dir_image_width.innerContent.*',\n    dsm_dir_width: 'dsm_dir_width.innerContent.*',\n    dsm_dir_font_size: 'dsm_dir_font_size.innerContent.*',\n    dsm_badge_margin: 'dsm_badge_margin.decoration.spacing.*.margin',\n    dsm_badge_padding: 'dsm_badge_padding.decoration.spacing.*.padding',\n    dsm_image_icon_margin: 'dsm_image_icon_margin.decoration.spacing.*.margin',\n    dsm_image_icon_padding: 'dsm_image_icon_padding.decoration.spacing.*.padding',\n    button_alignment: 'button_alignment.innerContent.*',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    dsm_badge_margin: 'convertSpacing',\n    dsm_badge_padding: 'convertSpacing',\n    dsm_image_icon_margin: 'convertSpacing',\n    dsm_image_icon_padding: 'convertSpacing',\n    font_icon: external_divi_conversion_namespaceObject.convertFontIcon,\n    dsm_dir_font_icon: external_divi_conversion_namespaceObject.convertFontIcon,\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/step-flow/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmStepFlow', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/step-flow': {\n      name: 'divi-supreme/step-flow',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11 10.820312 C 10.835938 10.820312 10.671875 10.867188 10.53125 10.960938 C 10.390625 11.054688 10.28125 11.1875 10.21875 11.34375 C 10.15625 11.496094 10.136719 11.667969 10.171875 11.832031 C 10.203125 11.996094 10.285156 12.148438 10.402344 12.265625 C 10.519531 12.386719 10.671875 12.464844 10.835938 12.5 C 11 12.53125 11.171875 12.515625 11.324219 12.449219 C 11.480469 12.386719 11.613281 12.277344 11.707031 12.136719 C 11.800781 12 11.847656 11.835938 11.847656 11.667969 C 11.847656 11.441406 11.761719 11.226562 11.601562 11.066406 C 11.441406 10.910156 11.226562 10.820312 11 10.820312 Z M 11 12.089844 C 10.917969 12.089844 10.835938 12.066406 10.765625 12.019531 C 10.695312 11.972656 10.640625 11.90625 10.609375 11.828125 C 10.578125 11.75 10.570312 11.667969 10.585938 11.585938 C 10.601562 11.503906 10.644531 11.425781 10.703125 11.367188 C 10.761719 11.308594 10.835938 11.269531 10.917969 11.25 C 11 11.234375 11.085938 11.242188 11.164062 11.277344 C 11.242188 11.308594 11.308594 11.363281 11.355469 11.429688 C 11.402344 11.5 11.425781 11.582031 11.425781 11.667969 C 11.425781 11.78125 11.378906 11.886719 11.300781 11.964844 C 11.222656 12.046875 11.113281 12.089844 11 12.089844 Z M 11 12.089844 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 3.796875 8.699219 C 3.964844 8.699219 4.128906 8.652344 4.269531 8.558594 C 4.40625 8.464844 4.515625 8.332031 4.582031 8.175781 C 4.644531 8.023438 4.660156 7.851562 4.628906 7.6875 C 4.597656 7.523438 4.515625 7.371094 4.398438 7.253906 C 4.277344 7.136719 4.128906 7.054688 3.964844 7.019531 C 3.796875 6.988281 3.628906 7.003906 3.472656 7.070312 C 3.320312 7.132812 3.1875 7.242188 3.09375 7.382812 C 3 7.519531 2.949219 7.683594 2.949219 7.851562 C 2.949219 8.078125 3.039062 8.292969 3.199219 8.453125 C 3.359375 8.609375 3.574219 8.699219 3.796875 8.699219 Z M 3.796875 7.429688 C 3.882812 7.429688 3.964844 7.453125 4.03125 7.5 C 4.101562 7.546875 4.15625 7.613281 4.1875 7.691406 C 4.222656 7.769531 4.230469 7.851562 4.214844 7.933594 C 4.195312 8.019531 4.15625 8.09375 4.097656 8.152344 C 4.039062 8.210938 3.960938 8.253906 3.878906 8.269531 C 3.796875 8.285156 3.710938 8.277344 3.636719 8.246094 C 3.558594 8.210938 3.492188 8.15625 3.445312 8.089844 C 3.398438 8.019531 3.375 7.9375 3.375 7.851562 C 3.375 7.742188 3.417969 7.632812 3.5 7.554688 C 3.578125 7.472656 3.683594 7.429688 3.796875 7.429688 Z M 3.796875 7.429688 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 3.796875 14.421875 C 3.964844 14.421875 4.128906 14.371094 4.269531 14.277344 C 4.40625 14.1875 4.515625 14.054688 4.582031 13.898438 C 4.644531 13.742188 4.660156 13.574219 4.628906 13.410156 C 4.597656 13.246094 4.515625 13.09375 4.398438 12.976562 C 4.277344 12.855469 4.128906 12.777344 3.964844 12.742188 C 3.796875 12.710938 3.628906 12.726562 3.472656 12.792969 C 3.320312 12.855469 3.1875 12.964844 3.09375 13.101562 C 3 13.242188 2.949219 13.40625 2.949219 13.574219 C 2.949219 13.796875 3.039062 14.015625 3.199219 14.171875 C 3.359375 14.332031 3.574219 14.421875 3.796875 14.421875 Z M 3.796875 13.148438 C 3.882812 13.148438 3.964844 13.175781 4.03125 13.222656 C 4.101562 13.269531 4.15625 13.335938 4.1875 13.410156 C 4.222656 13.488281 4.230469 13.574219 4.214844 13.65625 C 4.195312 13.738281 4.15625 13.816406 4.097656 13.875 C 4.039062 13.933594 3.960938 13.972656 3.878906 13.988281 C 3.796875 14.007812 3.710938 13.996094 3.636719 13.964844 C 3.558594 13.933594 3.492188 13.878906 3.445312 13.808594 C 3.398438 13.738281 3.375 13.65625 3.375 13.574219 C 3.375 13.460938 3.417969 13.355469 3.5 13.273438 C 3.578125 13.195312 3.683594 13.152344 3.796875 13.148438 Z M 3.796875 13.148438 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 13.21875 2.820312 L 11.097656 1.730469 C 11.066406 1.714844 11.03125 1.707031 10.992188 1.707031 C 10.957031 1.710938 10.921875 1.71875 10.890625 1.738281 C 10.859375 1.757812 10.835938 1.785156 10.816406 1.816406 C 10.800781 1.847656 10.789062 1.882812 10.789062 1.917969 L 10.789062 5.308594 L 9.519531 5.308594 C 9.492188 5.308594 9.460938 5.316406 9.4375 5.324219 C 9.410156 5.335938 9.386719 5.351562 9.367188 5.371094 C 9.347656 5.390625 9.332031 5.414062 9.324219 5.441406 C 9.3125 5.464844 9.304688 5.492188 9.304688 5.523438 L 9.304688 6.371094 C 9.304688 6.398438 9.3125 6.425781 9.324219 6.449219 C 9.332031 6.476562 9.347656 6.5 9.367188 6.519531 C 9.386719 6.539062 9.410156 6.554688 9.4375 6.566406 C 9.460938 6.574219 9.492188 6.582031 9.519531 6.582031 L 12.484375 6.582031 C 12.511719 6.582031 12.539062 6.574219 12.566406 6.566406 C 12.589844 6.554688 12.613281 6.539062 12.632812 6.519531 C 12.652344 6.5 12.667969 6.476562 12.679688 6.449219 C 12.691406 6.425781 12.695312 6.398438 12.695312 6.371094 L 12.695312 5.523438 C 12.695312 5.492188 12.691406 5.464844 12.679688 5.441406 C 12.667969 5.414062 12.652344 5.390625 12.632812 5.371094 C 12.613281 5.351562 12.589844 5.335938 12.566406 5.324219 C 12.539062 5.316406 12.511719 5.308594 12.484375 5.308594 L 11.214844 5.308594 L 11.214844 3.972656 L 13.195312 3.207031 C 13.234375 3.191406 13.269531 3.167969 13.292969 3.132812 C 13.316406 3.101562 13.328125 3.0625 13.332031 3.019531 C 13.335938 2.980469 13.324219 2.9375 13.304688 2.902344 C 13.285156 2.867188 13.253906 2.839844 13.21875 2.820312 Z M 12.273438 5.734375 L 12.273438 6.15625 L 9.730469 6.15625 L 9.730469 5.734375 Z M 11.214844 3.519531 L 11.214844 2.265625 L 12.601562 2.980469 Z M 11.214844 3.519531 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 10.789062 12.9375 C 10.789062 13.050781 10.746094 13.160156 10.664062 13.238281 C 10.585938 13.316406 10.476562 13.363281 10.367188 13.363281 L 4.925781 13.363281 L 4.925781 13.785156 L 10.367188 13.785156 C 10.589844 13.785156 10.804688 13.695312 10.964844 13.539062 C 11.125 13.378906 11.214844 13.164062 11.214844 12.9375 L 11.214844 12.726562 L 10.789062 12.726562 Z M 10.789062 12.9375 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 10.789062 10.394531 L 10.789062 10.609375 L 11.214844 10.609375 L 11.214844 10.394531 C 11.214844 10.171875 11.125 9.957031 10.964844 9.796875 C 10.804688 9.636719 10.589844 9.546875 10.367188 9.546875 L 4.433594 9.546875 C 4.320312 9.546875 4.214844 9.503906 4.132812 9.421875 C 4.054688 9.34375 4.007812 9.238281 4.007812 9.125 L 4.007812 8.914062 L 3.585938 8.914062 L 3.585938 9.125 C 3.585938 9.347656 3.675781 9.5625 3.832031 9.722656 C 3.992188 9.882812 4.207031 9.972656 4.433594 9.972656 L 10.367188 9.972656 C 10.480469 9.972656 10.585938 10.015625 10.664062 10.097656 C 10.746094 10.175781 10.789062 10.285156 10.789062 10.394531 Z M 10.789062 10.394531 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 8.882812 5.734375 L 4.433594 5.734375 C 4.207031 5.734375 3.992188 5.824219 3.832031 5.980469 C 3.675781 6.140625 3.585938 6.355469 3.585938 6.582031 L 3.585938 6.792969 L 4.007812 6.792969 L 4.007812 6.582031 C 4.007812 6.46875 4.054688 6.359375 4.132812 6.28125 C 4.214844 6.203125 4.320312 6.15625 4.433594 6.15625 L 8.882812 6.15625 Z M 8.882812 5.734375 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 14.398438 1.601562 C 14.105469 1.601562 13.867188 1.359375 13.867188 1.066406 C 13.867188 0.773438 14.105469 0.535156 14.398438 0.535156 C 14.695312 0.535156 14.933594 0.773438 14.933594 1.066406 C 14.933594 1.359375 14.695312 1.601562 14.398438 1.601562 Z M 14.398438 0.828125 C 14.269531 0.828125 14.160156 0.933594 14.160156 1.066406 C 14.160156 1.199219 14.269531 1.304688 14.398438 1.304688 C 14.53125 1.304688 14.640625 1.199219 14.640625 1.066406 C 14.640625 0.933594 14.53125 0.828125 14.398438 0.828125 Z M 14.398438 0.828125 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 1.601562 15.464844 C 1.304688 15.464844 1.066406 15.226562 1.066406 14.933594 C 1.066406 14.640625 1.304688 14.398438 1.601562 14.398438 C 1.894531 14.398438 2.132812 14.640625 2.132812 14.933594 C 2.132812 15.226562 1.894531 15.464844 1.601562 15.464844 Z M 1.601562 14.695312 C 1.46875 14.695312 1.359375 14.800781 1.359375 14.933594 C 1.359375 15.066406 1.46875 15.171875 1.601562 15.171875 C 1.730469 15.171875 1.839844 15.066406 1.839844 14.933594 C 1.839844 14.800781 1.730469 14.695312 1.601562 14.695312 Z M 1.601562 14.695312 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/step-flow/index.js\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\nconst stepflowModule = {\n  metadata: step_flow_module_namespaceObject,\n  conversionOutline: step_flow_conversion_outline_conversionOutline,\n  renderers: {\n    edit: step_flow_edit,\n    styles: step_flow_module_styles_ModuleStyles\n  },\n  // Matches Divi 4 `get_fields()` / `get_advanced_fields_config()` defaults (innerContent.desktop.value).\n  defaultAttrs: {\n    dsm_title: {\n      decoration: {\n        font: {\n          font: {\n            desktop: {\n              value: {\n                headingLevel: 'h4'\n              }\n            }\n          }\n        }\n      },\n      innerContent: {\n        desktop: {\n          value: {\n            text: ''\n          }\n        }\n      }\n    },\n    dsm_content: {\n      innerContent: {\n        desktop: {\n          value: {\n            text: ''\n          }\n        }\n      }\n    },\n    dsm_use_content: {\n      innerContent: {\n        desktop: {\n          value: 'on'\n        }\n      }\n    },\n    url_new_window: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    dsm_show_dir: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    dsm_dir_type: {\n      innerContent: {\n        desktop: {\n          value: 'default'\n        }\n      }\n    },\n    dsm_use_icon: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    dsm_badge_position: {\n      innerContent: {\n        desktop: {\n          value: 'top_right'\n        }\n      }\n    },\n    dsm_badge_use_position: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    dsm_badge_left_position: {\n      innerContent: {\n        desktop: {\n          value: '0%'\n        }\n      }\n    },\n    dsm_badge_top_position: {\n      innerContent: {\n        desktop: {\n          value: '0%'\n        }\n      }\n    },\n    dsm_dir_style: {\n      innerContent: {\n        desktop: {\n          value: 'solid'\n        }\n      }\n    },\n    dsm_image_icon_alignment: {\n      innerContent: {\n        desktop: {\n          value: 'center'\n        }\n      }\n    },\n    dsm_image_width: {\n      innerContent: {\n        desktop: {\n          value: '50%'\n        }\n      }\n    },\n    dsm_icon_font_size: {\n      innerContent: {\n        desktop: {\n          value: '96px'\n        }\n      }\n    },\n    dsm_dir_font_size: {\n      innerContent: {\n        desktop: {\n          value: '56px'\n        }\n      }\n    },\n    dsm_dir_width: {\n      innerContent: {\n        desktop: {\n          value: '100px'\n        }\n      }\n    },\n    dsm_dir_color: {\n      innerContent: {\n        desktop: {\n          value: '#dddddd'\n        }\n      }\n    },\n    dsm_dir_image_width: {\n      innerContent: {\n        desktop: {\n          value: '100%'\n        }\n      }\n    }\n  },\n  settings: {\n    content: step_flow_settings_content,\n    design: step_flow_settings_design,\n    advanced: step_flow_settings_advanced\n  },\n  placeholderContent: {\n    module: {},\n    dsm_title: {\n      decoration: {\n        font: {\n          font: {\n            desktop: {\n              value: {\n                headingLevel: 'h4'\n              }\n            }\n          }\n        }\n      },\n      innerContent: {\n        desktop: {\n          value: {\n            text: 'Your Title Goes Here'\n          }\n        }\n      }\n    },\n    dsm_content: {\n      innerContent: {\n        desktop: {\n          value: {\n            text: 'Your description goes here. Edit or remove this text inline or in the description settings'\n          }\n        }\n      }\n    },\n    dsm_use_content: {\n      innerContent: {\n        desktop: {\n          value: 'on'\n        }\n      }\n    },\n    url_new_window: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    dsm_show_dir: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    dsm_dir_type: {\n      innerContent: {\n        desktop: {\n          value: 'default'\n        }\n      }\n    },\n    dsm_use_icon: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    dsm_badge_position: {\n      innerContent: {\n        desktop: {\n          value: 'top_right'\n        }\n      }\n    },\n    dsm_badge_use_position: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    dsm_badge_left_position: {\n      innerContent: {\n        desktop: {\n          value: '0%'\n        }\n      }\n    },\n    dsm_badge_top_position: {\n      innerContent: {\n        desktop: {\n          value: '0%'\n        }\n      }\n    },\n    dsm_dir_style: {\n      innerContent: {\n        desktop: {\n          value: 'solid'\n        }\n      }\n    }\n  }\n};\n/* harmony default export */ const step_flow = (stepflowModule);\n;// ./packages/module-library/text-badges/module.json\nconst text_badges_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/text-badges\",\"d4Shortcode\":\"dsm_text_badges\",\"title\":\"Supreme Text Badges\",\"titles\":\"Supreme Text Badges\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/text-badges\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"main_text\":{\"type\":\"object\",\"selector\":\"{{selector}} .et_pb_module_header\",\"attributes\":{\"class\":\"dsm-text-badges-main et_pb_module_header\"},\"tagName\":\"h4\",\"inlineEditor\":\"plainText\",\"elementType\":\"headingLink\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}}, {{selector}} .et_pb_module_header\",\"hover\":\"{{selector}}:hover, {{selector}}:hover .et_pb_module_header\"}}}}},\"badges_text\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"selector\":\"{{selector}} .dsm-badges\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-badges\",\"important\":true}}},\"badges_placement\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"badges_background_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPallete\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"badges_gap\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/text-badges/module-default-render-attributes.json\nconst text_badges_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"module\":{\"decoration\":{}},\"main_text\":{\"innerContent\":{\"desktop\":{\"value\":{\"text\":\"Badges\",\"url\":\"\",\"target\":\"off\"}}},\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"headingLevel\":\"h4\"}}}}}},\"badges_text\":{\"innerContent\":{\"desktop\":{\"value\":\"New\"}},\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"color\":\"#ffffff\"}}}}}},\"badges_placement\":{\"innerContent\":{\"desktop\":{\"value\":\"after\"}}},\"badges_background_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#2ea3f2\"}}},\"badges_gap\":{\"innerContent\":{\"desktop\":{\"value\":\"7px\"}}}}');\n;// ./packages/module-library/text-badges/text-badges-vb-default-attrs.js\nvar text_badges_vb_default_attrs_defaultRenderAttribu;\n/**\n * Visual Builder `defaultAttr` map from `module-default-render-attributes.json`.\n *\n * @package DiviSupreme\n */\n\n\n\n/**\n * `FontGroup` `attrName=\"main_text.decoration.font\"` (heading level + main font).\n * Shape: `decoration.font` → `{ font: { desktop: { value: { headingLevel, … } } } }`.\n * Fallback keeps VB heading dropdown populated when JSON merge is missing a key.\n */\nconst textBadgesMainTextFontGroupDefaultAttr = (text_badges_vb_default_attrs_defaultRenderAttribu = text_badges_module_default_render_attributes_namespaceObject.main_text?.decoration?.font) !== null && text_badges_vb_default_attrs_defaultRenderAttribu !== void 0 ? text_badges_vb_default_attrs_defaultRenderAttribu : {\n  font: {\n    desktop: {\n      value: {\n        headingLevel: 'h4'\n      }\n    }\n  }\n};\n\n/** `FontGroup` `badges_text.decoration.font` — keep in sync with JSON `badges_text.decoration.font`. */\nconst textBadgesBadgeFontGroupDefaultAttr = text_badges_module_default_render_attributes_namespaceObject.badges_text.decoration.font;\n\n/** `innerContent` defaults per attribute key (for `FieldContainer` `defaultAttr`). */\nconst textBadgesFieldDefaultInnerContent = Object.fromEntries(Object.entries(text_badges_module_default_render_attributes_namespaceObject).filter(([, attr]) => attr && typeof attr === 'object' && attr.innerContent).map(([key, attr]) => [key, attr.innerContent]));\n\n/** @type {typeof textBadgesFieldDefaultInnerContent} */\nconst textBadgesFd = textBadgesFieldDefaultInnerContent;\n;// ./packages/module-library/text-badges/settings-content.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\nfunction text_badges_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  const fd = textBadgesFd;\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi'),\n    preset: \"content\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"main_text.innerContent\",\n    subName: \"text\",\n    defaultAttr: fd.main_text,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Main Text', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"badges_text.innerContent\",\n    defaultAttr: fd.badges_text,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Badges Text', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"badges_placement.innerContent\",\n    defaultAttr: fd.badges_placement,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Badges Placement', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      before: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Before', 'dsm-supreme-modules-pro-for-divi')\n      },\n      after: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('After', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const text_badges_settings_content = (text_badges_settings_content_SettingsContent);\n;// ./packages/module-library/text-badges/settings-design.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\nfunction text_badges_settings_design_SettingsDesign({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  const fd = textBadgesFd;\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextGroup, {\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"main_text\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Main Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"main_text.decoration.font\",\n    defaultAttr: textBadgesMainTextFontGroupDefaultAttr,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Main', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: true\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"badge_text\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Badge Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"badges_background_color.innerContent\",\n    defaultAttr: fd.badges_background_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"badges_gap.innerContent\",\n    defaultAttr: fd.badges_gap,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Gap', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 120,\n    defaultUnit: 'px',\n    allowedUnits: ['%', 'em', 'rem', 'px', 'cm', 'mm', 'in', 'pt', 'pc', 'ex', 'vh', 'vw']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"badges_text.decoration.font\",\n    defaultAttr: textBadgesBadgeFontGroupDefaultAttr,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Badge', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Badge', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    attrName: \"badges_text.decoration.border\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const text_badges_settings_design = (text_badges_settings_design_SettingsDesign);\n;// ./packages/module-library/text-badges/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction text_badges_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_text_badges\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const text_badges_settings_advanced = (text_badges_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/text-badges/module-styles.js\n\n\n\n/**\n * React function component for rendering module style.\n */\nconst text_badges_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextStyle, {\n    selector: orderClass,\n    attr: attrs?.module?.advanced?.text\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'main_text'\n  }), elements.style({\n    attrName: 'badges_text'\n  }), elements.style({\n    attrName: 'badges_background_color'\n  }), elements.style({\n    attrName: 'badges_gap'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-badges`,\n    attr: attrs?.badges_background_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-text-badges .dsm-badges`,\n    attr: attrs?.badges_gap?.innerContent,\n    property: \"margin-left\"\n  }));\n};\n;// ./packages/module-library/text-badges/edit.js\n\n\n// Divi package dependencies.\n\n\n\n\n\n/**\n * React function component for registering module script data.\n */\nconst text_badges_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction text_badges_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  var _attrs$module$advance;\n  const badgePlacementAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.badges_placement?.innerContent) || 'after';\n  const moduleLinkUrl = (_attrs$module$advance = attrs?.module?.advanced?.link?.desktop?.value?.url) !== null && _attrs$module$advance !== void 0 ? _attrs$module$advance : '';\n  const hasModuleLink = typeof moduleLinkUrl === 'string' && '' !== moduleLinkUrl.trim();\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    moduleClassName: \"dsm_text_badges\",\n    name: name,\n    scriptDataComponent: text_badges_edit_ModuleScriptData,\n    stylesComponent: text_badges_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat, _attrs$module$advance2;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: {\n          ...((_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}),\n          link: (_attrs$module$advance2 = attrs?.module?.advanced?.link) !== null && _attrs$module$advance2 !== void 0 ? _attrs$module$advance2 : {}\n        }\n      }));\n      if (hasModuleLink) {\n        params.classnamesInstance.add('dsm-link');\n      }\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-text-badges\"\n  }, 'before' === badgePlacementAttr && /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm-badges\"\n  }, elements.render({\n    attrName: 'badges_text'\n  })), elements.render({\n    attrName: 'main_text'\n  }), 'after' === badgePlacementAttr && /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm-badges\"\n  }, elements.render({\n    attrName: 'badges_text'\n  }))));\n}\n/* harmony default export */ const text_badges_edit = (text_badges_edit_Edit);\n;// ./packages/module-library/text-badges/conversion-outline.js\nconst text_badges_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    margin_padding: 'module.decoration.spacing',\n    max_width: 'module.decoration.sizing',\n    height: 'module.decoration.sizing',\n    link_options: 'module.advanced.link',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    fonts: {\n      header: 'main_text.decoration.font',\n      badges: 'badges_text.decoration.font'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    main_text: 'main_text.innerContent.*.text',\n    badges_text: 'badges_text.innerContent.*',\n    badges_placement: 'badges_placement.innerContent.*',\n    badges_background_color: 'badges_background_color.innerContent.*',\n    badges_gap: 'badges_gap.innerContent.*',\n    header_level: 'main_text.decoration.font.font.*.headingLevel',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/text-badges/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmTextBadge', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/text-badges': {\n      name: 'divi-supreme/text-badges',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 4.953125 4.574219 C 4.574219 4.574219 4.265625 4.265625 4.265625 3.882812 C 4.265625 3.507812 4.574219 3.199219 4.953125 3.199219 C 5.332031 3.199219 5.640625 3.507812 5.640625 3.882812 C 5.640625 4.265625 5.332031 4.574219 4.953125 4.574219 Z M 4.953125 3.582031 C 4.785156 3.582031 4.644531 3.71875 4.644531 3.890625 C 4.644531 4.058594 4.785156 4.195312 4.953125 4.195312 C 5.121094 4.195312 5.261719 4.058594 5.261719 3.890625 C 5.261719 3.71875 5.121094 3.582031 4.953125 3.582031 Z M 4.953125 3.582031 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.132812 10.753906 C 10.757812 10.753906 10.449219 10.445312 10.449219 10.066406 C 10.449219 9.691406 10.757812 9.382812 11.132812 9.382812 C 11.511719 9.382812 11.820312 9.691406 11.820312 10.066406 C 11.820312 10.445312 11.511719 10.753906 11.132812 10.753906 Z M 11.132812 9.765625 C 10.964844 9.765625 10.824219 9.902344 10.824219 10.074219 C 10.824219 10.242188 10.964844 10.382812 11.132812 10.382812 C 11.304688 10.382812 11.441406 10.242188 11.441406 10.074219 C 11.441406 9.902344 11.304688 9.765625 11.132812 9.765625 Z M 11.132812 9.765625 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 9.953125 12.816406 L 7.554688 10.394531 L 5.296875 12.675781 L 5.296875 6.015625 C 5.296875 5.230469 5.589844 4.789062 5.835938 4.554688 C 6.105469 4.300781 6.375 4.242188 6.40625 4.234375 L 6.445312 4.230469 L 11.304688 4.230469 L 11.304688 4.628906 C 10.851562 4.628906 10.507812 4.753906 10.28125 5.003906 C 9.914062 5.402344 9.953125 5.992188 9.953125 6.003906 Z M 7.554688 9.835938 L 9.558594 11.855469 L 9.558594 6.023438 C 9.554688 5.933594 9.53125 5.234375 9.996094 4.734375 C 10.03125 4.695312 10.0625 4.660156 10.101562 4.628906 L 6.476562 4.628906 C 6.359375 4.664062 5.691406 4.898438 5.691406 6.015625 L 5.691406 11.710938 Z M 7.554688 9.835938 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.496094 7.320312 L 8.902344 7.320312 L 8.902344 7.664062 L 6.496094 7.664062 Z M 6.496094 7.320312 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/text-badges/index.js\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n\n\n\n\n\n\nconst text_badges_defaultAttrs = text_badges_module_default_render_attributes_namespaceObject;\nconst textBadgeModule = {\n  metadata: text_badges_module_namespaceObject,\n  conversionOutline: text_badges_conversion_outline_conversionOutline,\n  renderers: {\n    edit: text_badges_edit,\n    styles: text_badges_module_styles_ModuleStyles\n  },\n  defaultAttrs: text_badges_defaultAttrs,\n  settings: {\n    content: text_badges_settings_content,\n    design: text_badges_settings_design,\n    advanced: text_badges_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    ...text_badges_module_default_render_attributes_namespaceObject\n  }\n};\n/* harmony default export */ const text_badges = (textBadgeModule);\n;// ./packages/module-library/text-divider/module.json\nconst text_divider_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/text-divider\",\"d4Shortcode\":\"dsm_text_divider\",\"title\":\"Supreme Text Divider\",\"titles\":\"Supreme Text Dividers\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/text-divider\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}},\"default\":{\"advanced\":{\"text\":{\"text\":{\"desktop\":{\"value\":{\"color\":\"light\"}}}}}}},\"header\":{\"type\":\"object\",\"selector\":\"{{selector}} .et_pb_module_header\",\"attributes\":{\"class\":\"dsm-text-divider-header et_pb_module_header\"},\"tagName\":\"h3\",\"inlineEditor\":\"plainText\",\"elementType\":\"headingLink\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .et_pb_module_header\",\"hover\":\"{{selector}}:hover .et_pb_module_header\"}}}}},\"color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"divider_weight\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"divider_style\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"divider_position\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"divider_alignment\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"text_gap\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"height\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/text-divider/module-default-render-attributes.json\nconst text_divider_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"module\":{\"decoration\":{},\"advanced\":{\"text\":{\"text\":{\"desktop\":{\"value\":{\"color\":\"light\"}}}}}},\"header\":{\"innerContent\":{\"desktop\":{\"value\":{\"text\":\"Divider Text\"}}},\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"headingLevel\":\"h3\"}},\"tablet\":{\"value\":{\"headingLevel\":\"h3\"}},\"phone\":{\"value\":{\"headingLevel\":\"h3\"}}}}}},\"color\":{\"innerContent\":{\"desktop\":{\"value\":\"#2ea3f2\"}}},\"divider_alignment\":{\"innerContent\":{\"desktop\":{\"value\":\"center\"}}},\"divider_position\":{\"innerContent\":{\"desktop\":{\"value\":\"center\"}}},\"divider_style\":{\"innerContent\":{\"desktop\":{\"value\":\"solid\"}}},\"text_gap\":{\"innerContent\":{\"desktop\":{\"value\":\"10px\"}}},\"divider_weight\":{\"innerContent\":{\"desktop\":{\"value\":\"1px\"}}},\"height\":{\"innerContent\":{\"desktop\":{\"value\":\"23px\"}}}}');\n;// ./packages/module-library/text-divider/text-divider-vb-default-attrs.js\n/**\n * Visual Builder `defaultAttr` map from `module-default-render-attributes.json`.\n *\n * @package DiviSupreme\n */\n\n\nconst textDividerFieldDefaultInnerContent = Object.fromEntries(Object.entries(text_divider_module_default_render_attributes_namespaceObject).filter(([, attr]) => attr && typeof attr === 'object' && attr.innerContent).map(([key, attr]) => [key, attr.innerContent]));\n\n/** @type {typeof textDividerFieldDefaultInnerContent} */\nconst textDividerFd = textDividerFieldDefaultInnerContent;\n;// ./packages/module-library/text-divider/settings-content.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\nfunction text_divider_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'divi_supreme')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: textDividerFd.header,\n    attrName: \"header.innerContent\",\n    subName: \"text\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'divi_supreme'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'divi_supreme'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const text_divider_settings_content = (text_divider_settings_content_SettingsContent);\n;// ./packages/module-library/text-divider/settings-design.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\nfunction text_divider_settings_design_SettingsDesign({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"color\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Color', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: textDividerFd.color,\n    attrName: \"color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"style\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Styles', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: textDividerFd.divider_style,\n    attrName: \"divider_style.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Divider Style', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      solid: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Solid', 'dsm-supreme-modules-pro-for-divi')\n      },\n      dashed: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Dashed', 'dsm-supreme-modules-pro-for-divi')\n      },\n      dotted: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Dotted', 'dsm-supreme-modules-pro-for-divi')\n      },\n      double: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Double', 'dsm-supreme-modules-pro-for-divi')\n      },\n      groove: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Groove', 'dsm-supreme-modules-pro-for-divi')\n      },\n      ridge: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Ridge', 'dsm-supreme-modules-pro-for-divi')\n      },\n      inset: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inset', 'dsm-supreme-modules-pro-for-divi')\n      },\n      outset: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Outset', 'dsm-supreme-modules-pro-for-divi')\n      },\n      none: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('none', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: textDividerFd.divider_position,\n    attrName: \"divider_position.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Divider Position', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      'flex-start': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Vertically Centered', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'flex-end': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"text\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: textDividerFd.divider_alignment,\n    attrName: \"divider_alignment.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextGroup, {\n    grouped: false,\n    fields: {\n      orientation: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"header.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Divider Text', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: true\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"sizing\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Sizing', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: textDividerFd.divider_weight,\n    attrName: \"divider_weight.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Divider Weight', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    allowedUnits: ['%', 'em', 'rem', 'px', 'cm', 'mm', 'in', 'pt', 'pc', 'ex', 'vh', 'vw']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: textDividerFd.text_gap,\n    attrName: \"text_gap.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text Gap', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: \"px\",\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: textDividerFd.height,\n    attrName: \"height.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Height', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Space below the divider.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 500,\n    defaultUnit: \"px\",\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, {\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const text_divider_settings_design = (text_divider_settings_design_SettingsDesign);\n;// ./packages/module-library/text-divider/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction text_divider_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_text_divider\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const text_divider_settings_advanced = (text_divider_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/text-divider/module-styles.js\n\n\n\n/**\n * React function component for rendering module style.\n */\nconst text_divider_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextStyle, {\n    selector: orderClass,\n    attr: attrs?.module?.advanced?.text\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'header'\n  }), elements.style({\n    attrName: 'color'\n  }), elements.style({\n    attrName: 'divider_weight'\n  }), elements.style({\n    attrName: 'divider_style'\n  }), elements.style({\n    attrName: 'text_gap'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-divider`,\n    attr: attrs?.color?.innerContent,\n    property: \"border-top-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-divider`,\n    attr: attrs?.divider_weight?.innerContent,\n    property: \"border-top-width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-divider`,\n    attr: attrs?.divider_style?.innerContent,\n    property: \"border-top-style\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-text-divider-wrapper`,\n    attr: attrs?.text_gap?.innerContent,\n    property: \"gap\"\n  }));\n};\n;// ./packages/module-library/text-divider/edit.js\n\n\n\n// Divi package dependencies.\n\n\n\n\n// Custom dependencies.\n\n\n\n/**\n * React function component for registering module script data.\n */\nconst text_divider_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction text_divider_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  var _getAttrByMode, _getAttrByMode2;\n  const {} = attrs;\n  const dividerAlignment = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.divider_alignment?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'center';\n  const dividerPosition = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.divider_position?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'center';\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: text_divider_edit_ModuleScriptData,\n    stylesComponent: text_divider_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: `dsm-text-divider-wrapper  dsm-text-divider-align-${dividerAlignment} dsm-text-divider-vertical-align-${dividerPosition}`\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-text-divider-before dsm-divider\"\n  }), elements.render({\n    attrName: 'header'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-text-divider-after dsm-divider\"\n  })));\n}\n/* harmony default export */ const text_divider_edit = (text_divider_edit_Edit);\n;// ./packages/module-library/text-divider/conversion-outline.js\nconst text_divider_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    display_conditions: 'module.decoration.conditions',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    fonts: {\n      header: 'header.decoration.font'\n    },\n    height: 'module.decoration.sizing',\n    link_options: 'module.advanced.link',\n    margin_padding: 'module.decoration.spacing',\n    max_width: 'module.decoration.sizing',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    text: 'module.advanced.text',\n    text_shadow: {\n      default: 'module.advanced.text.textShadow'\n    },\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex'\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    header: 'header.innerContent.*.text',\n    // D4 Advanced → Divider (header) font \"header_level\" (empty / invalid → h3 in post-convert).\n    header_level: 'header.decoration.font.font.*.headingLevel',\n    color: 'color.innerContent.*',\n    height: 'height.innerContent.*',\n    divider_weight: 'divider_weight.innerContent.*',\n    divider_style: 'divider_style.innerContent.*',\n    divider_position: 'divider_position.innerContent.*',\n    text_alignment: 'divider_alignment.innerContent.*',\n    text_gap: 'text_gap.innerContent.*',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/text-divider/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmTextDivider', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/text-divider': {\n      name: 'divi-supreme/text-divider',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.082031 5.105469 C 11.671875 5.105469 11.335938 4.800781 11.335938 4.429688 C 11.335938 4.054688 11.671875 3.75 12.082031 3.75 C 12.492188 3.75 12.828125 4.054688 12.828125 4.429688 C 12.828125 4.800781 12.492188 5.105469 12.082031 5.105469 Z M 12.082031 4.128906 C 11.898438 4.128906 11.746094 4.265625 11.746094 4.433594 C 11.746094 4.601562 11.898438 4.738281 12.082031 4.738281 C 12.265625 4.738281 12.417969 4.601562 12.417969 4.433594 C 12.417969 4.265625 12.265625 4.128906 12.082031 4.128906 Z M 12.082031 4.128906 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 3.34375 12.152344 C 2.972656 12.152344 2.667969 11.847656 2.667969 11.472656 C 2.667969 11.101562 2.972656 10.796875 3.34375 10.796875 C 3.71875 10.796875 4.023438 11.101562 4.023438 11.472656 C 4.027344 11.847656 3.722656 12.152344 3.34375 12.152344 Z M 3.34375 11.167969 C 3.175781 11.167969 3.039062 11.308594 3.039062 11.472656 C 3.039062 11.640625 3.175781 11.777344 3.34375 11.777344 C 3.511719 11.777344 3.648438 11.640625 3.648438 11.472656 C 3.648438 11.308594 3.511719 11.167969 3.34375 11.167969 Z M 3.34375 11.167969 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.765625 13.777344 L 5.710938 13.777344 C 5.152344 13.777344 4.699219 13.320312 4.699219 12.761719 L 4.699219 3.683594 C 4.699219 3.121094 5.15625 2.667969 5.710938 2.667969 L 12.765625 2.667969 C 13.328125 2.667969 13.777344 3.125 13.777344 3.683594 L 13.777344 12.753906 C 13.777344 13.320312 13.320312 13.777344 12.765625 13.777344 Z M 5.710938 3.046875 C 5.363281 3.046875 5.082031 3.328125 5.082031 3.679688 L 5.082031 12.753906 C 5.082031 13.105469 5.363281 13.390625 5.710938 13.390625 L 12.765625 13.390625 C 13.113281 13.390625 13.394531 13.105469 13.394531 12.753906 L 13.394531 3.683594 C 13.394531 3.335938 13.113281 3.050781 12.765625 3.050781 L 5.710938 3.050781 Z M 5.710938 3.046875 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.054688 6.191406 L 12.421875 6.191406 L 12.421875 6.597656 L 6.054688 6.597656 Z M 6.054688 6.191406 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.054688 9.578125 L 12.421875 9.578125 L 12.421875 9.847656 L 6.054688 9.847656 Z M 6.054688 9.578125 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 5.988281 7.890625 L 6.308594 7.890625 L 6.308594 8.273438 L 5.988281 8.273438 Z M 5.988281 7.890625 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.460938 8.273438 L 10.816406 8.273438 L 10.816406 7.890625 L 11.460938 7.890625 Z M 10.171875 8.273438 L 9.527344 8.273438 L 9.527344 7.890625 L 10.171875 7.890625 Z M 8.886719 8.273438 L 8.242188 8.273438 L 8.242188 7.890625 L 8.886719 7.890625 Z M 7.597656 8.273438 L 6.953125 8.273438 L 6.953125 7.890625 L 7.597656 7.890625 Z M 7.597656 8.273438 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.105469 7.890625 L 12.425781 7.890625 L 12.425781 8.273438 L 12.105469 8.273438 Z M 12.105469 7.890625 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 5.988281 10.394531 L 12.417969 10.394531 L 12.417969 10.648438 L 5.988281 10.648438 Z M 5.988281 10.394531 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/text-divider/index.js\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\nconst text_divider_defaultAttrs = text_divider_module_default_render_attributes_namespaceObject;\nconst text_divider_textDividerModule = {\n  metadata: text_divider_module_namespaceObject,\n  conversionOutline: text_divider_conversion_outline_conversionOutline,\n  renderers: {\n    edit: text_divider_edit,\n    styles: text_divider_module_styles_ModuleStyles\n  },\n  defaultAttrs: text_divider_defaultAttrs,\n  settings: {\n    content: text_divider_settings_content,\n    design: text_divider_settings_design,\n    advanced: text_divider_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    ...text_divider_module_default_render_attributes_namespaceObject\n  }\n};\n/* harmony default export */ const text_divider = (text_divider_textDividerModule);\n;// ./packages/module-library/text-notation/module.json\nconst text_notation_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/text-notation\",\"d4Shortcode\":\"dsm_text_notation\",\"title\":\"Supreme Text Notation\",\"titles\":\"Supreme Text Notations\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/text-notation\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"before_text\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-text-notation-before\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-text-notation-before\",\"important\":true}}},\"notation_text\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-text-notation-middle\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-text-notation-middle\",\"important\":true}}},\"after_text\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-text-notation-after\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-text-notation-after\",\"important\":true}}},\"header\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-text-notation-main\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"notation_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"underline\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"notation_bracket_style\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"left|right\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"notation_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"#7ebec5\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"notation_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"1\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"notation_iterations\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"2\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"notation_viewport\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"80%\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"notation_delay\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"0ms\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"heading_html_tag\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"h1\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"before_background_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"notation_background_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"after_background_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"before_margin\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-text-notation-before\",\"inlineEditor\":\"SpacingControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"before_padding\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-text-notation-before\",\"inlineEditor\":\"SpacingControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"after_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingControl\",\"selector\":\"{{selector}} .dsm-text-notation-after\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"after_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingControl\",\"selector\":\"{{selector}} .dsm-text-notation-after\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"notation_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingControl\",\"selector\":\"{{selector}} .dsm-text-notation-middle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"notation_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingControl\",\"selector\":\"{{selector}} .dsm-text-notation-middle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"before_display_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"inline-block\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"notation_display_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"inline-block\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"after_display_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"inline-block\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/text-notation/module-default-render-attributes.json\nconst text_notation_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"module\":{\"decoration\":{},\"advanced\":{\"text\":{\"text\":{\"desktop\":{\"value\":{\"color\":\"light\"}}}}}},\"header\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"size\":\"26px\",\"lineHeight\":\"1em\",\"letterSpacing\":\"0px\"}}}}}},\"before_text\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}},\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"lineHeight\":\"1em\",\"letterSpacing\":\"0px\"}}}}}},\"after_text\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}},\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"lineHeight\":\"1em\",\"letterSpacing\":\"0px\"}}}}}},\"notation_text\":{\"innerContent\":{\"desktop\":{\"value\":\"Text Notation\"}},\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"lineHeight\":\"1em\",\"letterSpacing\":\"0px\"}}}}}},\"notation_type\":{\"innerContent\":{\"desktop\":{\"value\":\"underline\"}}},\"notation_bracket_style\":{\"innerContent\":{\"desktop\":{\"value\":\"left|right\"}}},\"notation_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#7ebec5\"}}},\"notation_width\":{\"innerContent\":{\"desktop\":{\"value\":\"1\"}}},\"notation_iterations\":{\"innerContent\":{\"desktop\":{\"value\":\"2\"}}},\"notation_viewport\":{\"innerContent\":{\"desktop\":{\"value\":\"80%\"}}},\"notation_delay\":{\"innerContent\":{\"desktop\":{\"value\":\"0ms\"}}},\"heading_html_tag\":{\"innerContent\":{\"desktop\":{\"value\":\"h1\"}}},\"before_background_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"notation_background_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"after_background_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"before_display_type\":{\"innerContent\":{\"desktop\":{\"value\":\"inline-block\"}}},\"notation_display_type\":{\"innerContent\":{\"desktop\":{\"value\":\"inline-block\"}}},\"after_display_type\":{\"innerContent\":{\"desktop\":{\"value\":\"inline-block\"}}}}');\n;// ./packages/module-library/text-notation/text-notation-vb-default-attrs.js\n/**\n * Visual Builder `defaultAttr` map from `module-default-render-attributes.json`.\n *\n * @package DiviSupreme\n */\n\n\n\n/** @see `module-default-render-attributes.json` → `header.decoration.font` */\nconst textNotationHeaderFontGroupDefaultAttr = text_notation_module_default_render_attributes_namespaceObject.header?.decoration?.font;\n\n/** @see `module-default-render-attributes.json` → `before_text.decoration.font` */\nconst textNotationBeforeTextFontGroupDefaultAttr = text_notation_module_default_render_attributes_namespaceObject.before_text?.decoration?.font;\n\n/** @see `module-default-render-attributes.json` → `after_text.decoration.font` */\nconst textNotationAfterTextFontGroupDefaultAttr = text_notation_module_default_render_attributes_namespaceObject.after_text?.decoration?.font;\n\n/** @see `module-default-render-attributes.json` → `notation_text.decoration.font` */\nconst textNotationPhraseFontGroupDefaultAttr = text_notation_module_default_render_attributes_namespaceObject.notation_text?.decoration?.font;\nconst text_notation_vb_default_attrs_skipInnerContentMapKeys = new Set(['module']);\n\n/** `innerContent` defaults per attribute key (for `FieldContainer` `defaultAttr`). */\nconst textNotationFieldDefaultInnerContent = Object.fromEntries(Object.entries(text_notation_module_default_render_attributes_namespaceObject).filter(([key, attr]) => !text_notation_vb_default_attrs_skipInnerContentMapKeys.has(key) && attr && typeof attr === 'object' && Object.prototype.hasOwnProperty.call(attr, 'innerContent')).map(([key, attr]) => [key, attr.innerContent]));\n\n/** @type {typeof textNotationFieldDefaultInnerContent} */\nconst textNotationFd = textNotationFieldDefaultInnerContent;\n;// ./packages/module-library/text-notation/settings-content.js\n\n\n\n\n\n\n\nfunction text_notation_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  const notationType = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.notation_type?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"before_text.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Before Text', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: textNotationFd.before_text,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"notation_text.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Notation Text', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: textNotationFd.notation_text,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"after_text.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('After Text', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: textNotationFd.after_text,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"notation_settings\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Notation Settings', 'dsm-supreme-modules-pro-for-divi'),\n    preset: \"content\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"notation_type.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Type', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: textNotationFd.notation_type\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      underline: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Underline', 'dsm-supreme-modules-pro-for-divi')\n      },\n      box: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Box', 'dsm-supreme-modules-pro-for-divi')\n      },\n      circle: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Circle', 'dsm-supreme-modules-pro-for-divi')\n      },\n      highlight: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Highlight', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'strike-through': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Strike Through', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'crossed-off': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Crossed Off', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bracket: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bracket', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"notation_bracket_style.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bracket Styles', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: textNotationFd.notation_bracket_style,\n    visible: 'bracket' === notationType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      'left|right': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left To Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'right|left': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right To Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'top|bottom': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top To Bottom', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'bottom|top': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom To Top', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"notation_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Color', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: textNotationFd.notation_color\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"notation_width.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Stroke Width', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: textNotationFd.notation_width\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 29,\n    defaultUnit: \"\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"notation_iterations.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Iterations', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: textNotationFd.notation_iterations\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 5,\n    defaultUnit: \"\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"notation_viewport.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animate in Viewport', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: textNotationFd.notation_viewport\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: \"%\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"notation_delay.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Delay', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: textNotationFd.notation_delay\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 5000,\n    step: 50,\n    defaultUnit: \"ms\",\n    allowedUnits: ['ms']\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const text_notation_settings_content = (text_notation_settings_content_SettingsContent);\n;// ./packages/module-library/text-notation/settings-design.js\n\n\n// Divi package dependencies.\n\n\n\n\n\nfunction text_notation_settings_design_SettingsDesign({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"heading_setting\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Heading Settings', 'dsm-supreme-modules-pro-for-divi'),\n    preset: \"content\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"heading_html_tag.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Heading HTML Tag', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: textNotationFd.heading_html_tag\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      h1: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('H1', 'dsm-supreme-modules-pro-for-divi')\n      },\n      h2: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('H2', 'dsm-supreme-modules-pro-for-divi')\n      },\n      h3: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('H3', 'dsm-supreme-modules-pro-for-divi')\n      },\n      h4: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('H4', 'dsm-supreme-modules-pro-for-divi')\n      },\n      h5: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('H5', 'dsm-supreme-modules-pro-for-divi')\n      },\n      h6: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('H6', 'dsm-supreme-modules-pro-for-divi')\n      },\n      div: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Div', 'dsm-supreme-modules-pro-for-divi')\n      },\n      span: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Span', 'dsm-supreme-modules-pro-for-divi')\n      },\n      p: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('P', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"main_text\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Main Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    grouped: false,\n    attrName: \"header.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Main Text', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Main Text', 'dsm-supreme-modules-pro-for-divi'),\n    defaultGroupAttr: textNotationHeaderFontGroupDefaultAttr,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextGroup, {\n    grouped: false,\n    fields: {\n      textShadowGroup: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"before_text\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Before Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"before_background_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: textNotationFd.before_background_color\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"before_margin.decoration.spacing\",\n    fields: {\n      padding: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"before_padding.decoration.spacing\",\n    fields: {\n      margin: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"before_display_type.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Display', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: textNotationFd.before_display_type,\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      'inline-block': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inline Block', 'dsm-supreme-modules-pro-for-divi')\n      },\n      inline: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inline', 'dsm-supreme-modules-pro-for-divi')\n      },\n      block: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Block', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"before_text.decoration.font\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Before', 'dsm-supreme-modules-pro-for-divi'),\n    defaultGroupAttr: textNotationBeforeTextFontGroupDefaultAttr,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Before Text', 'dsm-supreme-modules-pro-for-divi'),\n    attrName: \"before_text.decoration.border\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"notation_text\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Notation Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"notation_background_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: textNotationFd.notation_background_color\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"notation_margin.decoration.spacing\",\n    fields: {\n      padding: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"notation_padding.decoration.spacing\",\n    fields: {\n      margin: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"notation_display_type.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Display', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: textNotationFd.notation_display_type,\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      'inline-block': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inline Block', 'dsm-supreme-modules-pro-for-divi')\n      },\n      inline: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inline', 'dsm-supreme-modules-pro-for-divi')\n      },\n      block: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Block', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"notation_text.decoration.font\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Notation', 'dsm-supreme-modules-pro-for-divi'),\n    defaultGroupAttr: textNotationPhraseFontGroupDefaultAttr,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Notation Text', 'dsm-supreme-modules-pro-for-divi'),\n    attrName: \"notation_text.decoration.border\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"after_text\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('After Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"after_background_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: textNotationFd.after_background_color\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"after_margin.decoration.spacing\",\n    fields: {\n      padding: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"after_padding.decoration.spacing\",\n    fields: {\n      margin: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"after_display_type.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Display', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: textNotationFd.after_display_type,\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      'inline-block': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inline Block', 'dsm-supreme-modules-pro-for-divi')\n      },\n      inline: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inline', 'dsm-supreme-modules-pro-for-divi')\n      },\n      block: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Block', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"after_text.decoration.font\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('After', 'dsm-supreme-modules-pro-for-divi'),\n    defaultGroupAttr: textNotationAfterTextFontGroupDefaultAttr,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('After Text', 'dsm-supreme-modules-pro-for-divi'),\n    attrName: \"after_text.decoration.border\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const text_notation_settings_design = (text_notation_settings_design_SettingsDesign);\n;// ./packages/module-library/text-notation/settings-advanced.js\n\nfunction text_notation_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_text_notation\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const text_notation_settings_advanced = (text_notation_settings_advanced_SettingsAdvanced);\n;// ./node_modules/rough-notation/lib/rough-notation.esm.js\nconst rough_notation_esm_t=\"http://www.w3.org/2000/svg\";class rough_notation_esm_e{constructor(t){this.seed=t}next(){return this.seed?(2**31-1&(this.seed=Math.imul(48271,this.seed)))/2**31:Math.random()}}function rough_notation_esm_s(t,e,s,i,n){return{type:\"path\",ops:rough_notation_esm_c(t,e,s,i,n)}}function rough_notation_esm_i(t,e,i){const n=(t||[]).length;if(n>2){const s=[];for(let e=0;e<n-1;e++)s.push(...rough_notation_esm_c(t[e][0],t[e][1],t[e+1][0],t[e+1][1],i));return e&&s.push(...rough_notation_esm_c(t[n-1][0],t[n-1][1],t[0][0],t[0][1],i)),{type:\"path\",ops:s}}return 2===n?rough_notation_esm_s(t[0][0],t[0][1],t[1][0],t[1][1],i):{type:\"path\",ops:[]}}function rough_notation_esm_n(t,e,s,n,o){return function(t,e){return rough_notation_esm_i(t,!0,e)}([[t,e],[t+s,e],[t+s,e+n],[t,e+n]],o)}function rough_notation_esm_o(t,e,s,i,n){return function(t,e,s,i){const[n,o]=rough_notation_esm_l(i.increment,t,e,i.rx,i.ry,1,i.increment*rough_notation_esm_h(.1,rough_notation_esm_h(.4,1,s),s),s);let r=rough_notation_esm_f(n,null,s);if(!s.disableMultiStroke){const[n]=rough_notation_esm_l(i.increment,t,e,i.rx,i.ry,1.5,0,s),o=rough_notation_esm_f(n,null,s);r=r.concat(o)}return{estimatedPoints:o,opset:{type:\"path\",ops:r}}}(t,e,n,function(t,e,s){const i=Math.sqrt(2*Math.PI*Math.sqrt((Math.pow(t/2,2)+Math.pow(e/2,2))/2)),n=Math.max(s.curveStepCount,s.curveStepCount/Math.sqrt(200)*i),o=2*Math.PI/n;let r=Math.abs(t/2),h=Math.abs(e/2);const c=1-s.curveFitting;return r+=rough_notation_esm_a(r*c,s),h+=rough_notation_esm_a(h*c,s),{increment:o,rx:r,ry:h}}(s,i,n)).opset}function rough_notation_esm_r(t){return t.randomizer||(t.randomizer=new rough_notation_esm_e(t.seed||0)),t.randomizer.next()}function rough_notation_esm_h(t,e,s,i=1){return s.roughness*i*(rough_notation_esm_r(s)*(e-t)+t)}function rough_notation_esm_a(t,e,s=1){return rough_notation_esm_h(-t,t,e,s)}function rough_notation_esm_c(t,e,s,i,n,o=!1){const r=o?n.disableMultiStrokeFill:n.disableMultiStroke,h=rough_notation_esm_u(t,e,s,i,n,!0,!1);if(r)return h;const a=rough_notation_esm_u(t,e,s,i,n,!0,!0);return h.concat(a)}function rough_notation_esm_u(t,e,s,i,n,o,h){const c=Math.pow(t-s,2)+Math.pow(e-i,2),u=Math.sqrt(c);let f=1;f=u<200?1:u>500?.4:-.0016668*u+1.233334;let l=n.maxRandomnessOffset||0;l*l*100>c&&(l=u/10);const g=l/2,d=.2+.2*rough_notation_esm_r(n);let p=n.bowing*n.maxRandomnessOffset*(i-e)/200,_=n.bowing*n.maxRandomnessOffset*(t-s)/200;p=rough_notation_esm_a(p,n,f),_=rough_notation_esm_a(_,n,f);const m=[],w=()=>rough_notation_esm_a(g,n,f),v=()=>rough_notation_esm_a(l,n,f);return o&&(h?m.push({op:\"move\",data:[t+w(),e+w()]}):m.push({op:\"move\",data:[t+rough_notation_esm_a(l,n,f),e+rough_notation_esm_a(l,n,f)]})),h?m.push({op:\"bcurveTo\",data:[p+t+(s-t)*d+w(),_+e+(i-e)*d+w(),p+t+2*(s-t)*d+w(),_+e+2*(i-e)*d+w(),s+w(),i+w()]}):m.push({op:\"bcurveTo\",data:[p+t+(s-t)*d+v(),_+e+(i-e)*d+v(),p+t+2*(s-t)*d+v(),_+e+2*(i-e)*d+v(),s+v(),i+v()]}),m}function rough_notation_esm_f(t,e,s){const i=t.length,n=[];if(i>3){const o=[],r=1-s.curveTightness;n.push({op:\"move\",data:[t[1][0],t[1][1]]});for(let e=1;e+2<i;e++){const s=t[e];o[0]=[s[0],s[1]],o[1]=[s[0]+(r*t[e+1][0]-r*t[e-1][0])/6,s[1]+(r*t[e+1][1]-r*t[e-1][1])/6],o[2]=[t[e+1][0]+(r*t[e][0]-r*t[e+2][0])/6,t[e+1][1]+(r*t[e][1]-r*t[e+2][1])/6],o[3]=[t[e+1][0],t[e+1][1]],n.push({op:\"bcurveTo\",data:[o[1][0],o[1][1],o[2][0],o[2][1],o[3][0],o[3][1]]})}if(e&&2===e.length){const t=s.maxRandomnessOffset;n.push({op:\"lineTo\",data:[e[0]+rough_notation_esm_a(t,s),e[1]+rough_notation_esm_a(t,s)]})}}else 3===i?(n.push({op:\"move\",data:[t[1][0],t[1][1]]}),n.push({op:\"bcurveTo\",data:[t[1][0],t[1][1],t[2][0],t[2][1],t[2][0],t[2][1]]})):2===i&&n.push(...rough_notation_esm_c(t[0][0],t[0][1],t[1][0],t[1][1],s));return n}function rough_notation_esm_l(t,e,s,i,n,o,r,h){const c=[],u=[],f=rough_notation_esm_a(.5,h)-Math.PI/2;u.push([rough_notation_esm_a(o,h)+e+.9*i*Math.cos(f-t),rough_notation_esm_a(o,h)+s+.9*n*Math.sin(f-t)]);for(let r=f;r<2*Math.PI+f-.01;r+=t){const t=[rough_notation_esm_a(o,h)+e+i*Math.cos(r),rough_notation_esm_a(o,h)+s+n*Math.sin(r)];c.push(t),u.push(t)}return u.push([rough_notation_esm_a(o,h)+e+i*Math.cos(f+2*Math.PI+.5*r),rough_notation_esm_a(o,h)+s+n*Math.sin(f+2*Math.PI+.5*r)]),u.push([rough_notation_esm_a(o,h)+e+.98*i*Math.cos(f+r),rough_notation_esm_a(o,h)+s+.98*n*Math.sin(f+r)]),u.push([rough_notation_esm_a(o,h)+e+.9*i*Math.cos(f+.5*r),rough_notation_esm_a(o,h)+s+.9*n*Math.sin(f+.5*r)]),[u,c]}function rough_notation_esm_g(t,e){return{maxRandomnessOffset:2,roughness:\"highlight\"===t?3:1.5,bowing:1,stroke:\"#000\",strokeWidth:1.5,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:\"hachure\",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,combineNestedSvgPaths:!1,disableMultiStroke:\"double\"!==t,disableMultiStrokeFill:!1,seed:e}}function rough_notation_esm_d(e,r,h,a,c,u){const f=[];let l=h.strokeWidth||2;const d=function(t){const e=t.padding;if(e||0===e){if(\"number\"==typeof e)return[e,e,e,e];if(Array.isArray(e)){const t=e;if(t.length)switch(t.length){case 4:return[...t];case 1:return[t[0],t[0],t[0],t[0]];case 2:return[...t,...t];case 3:return[...t,t[1]];default:return[t[0],t[1],t[2],t[3]]}}}return[5,5,5,5]}(h),p=void 0===h.animate||!!h.animate,_=h.iterations||2,m=h.rtl?1:0,w=rough_notation_esm_g(\"single\",u);switch(h.type){case\"underline\":{const t=r.y+r.h+d[2];for(let e=m;e<_+m;e++)e%2?f.push(rough_notation_esm_s(r.x+r.w,t,r.x,t,w)):f.push(rough_notation_esm_s(r.x,t,r.x+r.w,t,w));break}case\"strike-through\":{const t=r.y+r.h/2;for(let e=m;e<_+m;e++)e%2?f.push(rough_notation_esm_s(r.x+r.w,t,r.x,t,w)):f.push(rough_notation_esm_s(r.x,t,r.x+r.w,t,w));break}case\"box\":{const t=r.x-d[3],e=r.y-d[0],s=r.w+(d[1]+d[3]),i=r.h+(d[0]+d[2]);for(let o=0;o<_;o++)f.push(rough_notation_esm_n(t,e,s,i,w));break}case\"bracket\":{const t=Array.isArray(h.brackets)?h.brackets:h.brackets?[h.brackets]:[\"right\"],e=r.x-2*d[3],s=r.x+r.w+2*d[1],n=r.y-2*d[0],o=r.y+r.h+2*d[2];for(const h of t){let t;switch(h){case\"bottom\":t=[[e,r.y+r.h],[e,o],[s,o],[s,r.y+r.h]];break;case\"top\":t=[[e,r.y],[e,n],[s,n],[s,r.y]];break;case\"left\":t=[[r.x,n],[e,n],[e,o],[r.x,o]];break;case\"right\":t=[[r.x+r.w,n],[s,n],[s,o],[r.x+r.w,o]]}t&&f.push(rough_notation_esm_i(t,!1,w))}break}case\"crossed-off\":{const t=r.x,e=r.y,i=t+r.w,n=e+r.h;for(let o=m;o<_+m;o++)o%2?f.push(rough_notation_esm_s(i,n,t,e,w)):f.push(rough_notation_esm_s(t,e,i,n,w));for(let o=m;o<_+m;o++)o%2?f.push(rough_notation_esm_s(t,n,i,e,w)):f.push(rough_notation_esm_s(i,e,t,n,w));break}case\"circle\":{const t=rough_notation_esm_g(\"double\",u),e=r.w+(d[1]+d[3]),s=r.h+(d[0]+d[2]),i=r.x-d[3]+e/2,n=r.y-d[0]+s/2,h=Math.floor(_/2),a=_-2*h;for(let r=0;r<h;r++)f.push(rough_notation_esm_o(i,n,e,s,t));for(let t=0;t<a;t++)f.push(rough_notation_esm_o(i,n,e,s,w));break}case\"highlight\":{const t=rough_notation_esm_g(\"highlight\",u);l=.95*r.h;const e=r.y+r.h/2;for(let i=m;i<_+m;i++)i%2?f.push(rough_notation_esm_s(r.x+r.w,e,r.x,e,t)):f.push(rough_notation_esm_s(r.x,e,r.x+r.w,e,t));break}}if(f.length){const s=function(t){const e=[];for(const s of t){let t=\"\";for(const i of s.ops){const s=i.data;switch(i.op){case\"move\":t.trim()&&e.push(t.trim()),t=`M${s[0]} ${s[1]} `;break;case\"bcurveTo\":t+=`C${s[0]} ${s[1]}, ${s[2]} ${s[3]}, ${s[4]} ${s[5]} `;break;case\"lineTo\":t+=`L${s[0]} ${s[1]} `}}t.trim()&&e.push(t.trim())}return e}(f),i=[],n=[];let o=0;const r=(t,e,s)=>t.setAttribute(e,s);for(const a of s){const s=document.createElementNS(rough_notation_esm_t,\"path\");if(r(s,\"d\",a),r(s,\"fill\",\"none\"),r(s,\"stroke\",h.color||\"currentColor\"),r(s,\"stroke-width\",\"\"+l),p){const t=s.getTotalLength();i.push(t),o+=t}e.appendChild(s),n.push(s)}if(p){let t=0;for(let e=0;e<n.length;e++){const s=n[e],r=i[e],h=o?c*(r/o):0,u=a+t,f=s.style;f.strokeDashoffset=\"\"+r,f.strokeDasharray=\"\"+r,f.animation=`rough-notation-dash ${h}ms ease-out ${u}ms forwards`,t+=h}}}}class rough_notation_esm_p{constructor(t,e){this._state=\"unattached\",this._resizing=!1,this._seed=Math.floor(Math.random()*2**31),this._lastSizes=[],this._animationDelay=0,this._resizeListener=()=>{this._resizing||(this._resizing=!0,setTimeout(()=>{this._resizing=!1,\"showing\"===this._state&&this.haveRectsChanged()&&this.show()},400))},this._e=t,this._config=JSON.parse(JSON.stringify(e)),this.attach()}get animate(){return this._config.animate}set animate(t){this._config.animate=t}get animationDuration(){return this._config.animationDuration}set animationDuration(t){this._config.animationDuration=t}get iterations(){return this._config.iterations}set iterations(t){this._config.iterations=t}get color(){return this._config.color}set color(t){this._config.color!==t&&(this._config.color=t,this.refresh())}get strokeWidth(){return this._config.strokeWidth}set strokeWidth(t){this._config.strokeWidth!==t&&(this._config.strokeWidth=t,this.refresh())}get padding(){return this._config.padding}set padding(t){this._config.padding!==t&&(this._config.padding=t,this.refresh())}attach(){if(\"unattached\"===this._state&&this._e.parentElement){!function(){if(!window.__rno_kf_s){const t=window.__rno_kf_s=document.createElement(\"style\");t.textContent=\"@keyframes rough-notation-dash { to { stroke-dashoffset: 0; } }\",document.head.appendChild(t)}}();const e=this._svg=document.createElementNS(rough_notation_esm_t,\"svg\");e.setAttribute(\"class\",\"rough-annotation\");const s=e.style;s.position=\"absolute\",s.top=\"0\",s.left=\"0\",s.overflow=\"visible\",s.pointerEvents=\"none\",s.width=\"100px\",s.height=\"100px\";const i=\"highlight\"===this._config.type;if(this._e.insertAdjacentElement(i?\"beforebegin\":\"afterend\",e),this._state=\"not-showing\",i){const t=window.getComputedStyle(this._e).position;(!t||\"static\"===t)&&(this._e.style.position=\"relative\")}this.attachListeners()}}detachListeners(){window.removeEventListener(\"resize\",this._resizeListener),this._ro&&this._ro.unobserve(this._e)}attachListeners(){this.detachListeners(),window.addEventListener(\"resize\",this._resizeListener,{passive:!0}),!this._ro&&\"ResizeObserver\"in window&&(this._ro=new window.ResizeObserver(t=>{for(const e of t)e.contentRect&&this._resizeListener()})),this._ro&&this._ro.observe(this._e)}haveRectsChanged(){if(this._lastSizes.length){const t=this.rects();if(t.length!==this._lastSizes.length)return!0;for(let e=0;e<t.length;e++)if(!this.isSameRect(t[e],this._lastSizes[e]))return!0}return!1}isSameRect(t,e){const s=(t,e)=>Math.round(t)===Math.round(e);return s(t.x,e.x)&&s(t.y,e.y)&&s(t.w,e.w)&&s(t.h,e.h)}isShowing(){return\"not-showing\"!==this._state}refresh(){this.isShowing()&&!this.pendingRefresh&&(this.pendingRefresh=Promise.resolve().then(()=>{this.isShowing()&&this.show(),delete this.pendingRefresh}))}show(){switch(this._state){case\"unattached\":break;case\"showing\":this.hide(),this._svg&&this.render(this._svg,!0);break;case\"not-showing\":this.attach(),this._svg&&this.render(this._svg,!1)}}hide(){if(this._svg)for(;this._svg.lastChild;)this._svg.removeChild(this._svg.lastChild);this._state=\"not-showing\"}remove(){this._svg&&this._svg.parentElement&&this._svg.parentElement.removeChild(this._svg),this._svg=void 0,this._state=\"unattached\",this.detachListeners()}render(t,e){let s=this._config;e&&(s=JSON.parse(JSON.stringify(this._config)),s.animate=!1);const i=this.rects();let n=0;i.forEach(t=>n+=t.w);const o=s.animationDuration||800;let r=0;for(let e=0;e<i.length;e++){const h=o*(i[e].w/n);rough_notation_esm_d(t,i[e],s,r+this._animationDelay,h,this._seed),r+=h}this._lastSizes=i,this._state=\"showing\"}rects(){const t=[];if(this._svg)if(this._config.multiline){const e=this._e.getClientRects();for(let s=0;s<e.length;s++)t.push(this.svgRect(this._svg,e[s]))}else t.push(this.svgRect(this._svg,this._e.getBoundingClientRect()));return t}svgRect(t,e){const s=t.getBoundingClientRect(),i=e;return{x:(i.x||i.left)-(s.x||s.left),y:(i.y||i.top)-(s.y||s.top),w:i.width,h:i.height}}}function rough_notation_esm_(t,e){return new rough_notation_esm_p(t,e)}function rough_notation_esm_m(t){let e=0;for(const s of t){const t=s;t._animationDelay=e;e+=0===t.animationDuration?0:t.animationDuration||800}const s=[...t];return{show(){for(const t of s)t.show()},hide(){for(const t of s)t.hide()}}}\n\n;// ./packages/module-library/text-notation/module-styles.js\n\n\n\n\n/**\n * React function component for rendering module style.\n */\n\nconst beforeDisplayTypeCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      display: true\n    }\n  });\n  if ('inline-block' === attrValue || 'inline' === attrValue) {\n    declarations.add('display', 'inline-block');\n  }\n  if ('block' === attrValue) {\n    declarations.add('display', 'block');\n  }\n  return declarations.value;\n};\nconst notationDisplayTypeCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      display: true\n    }\n  });\n  if ('inline-block' === attrValue || 'inline' === attrValue) {\n    declarations.add('display', 'inline-block');\n  }\n  if ('block' === attrValue) {\n    declarations.add('display', 'block');\n  }\n  return declarations.value;\n};\nconst afterDisplayTypeCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      display: true\n    }\n  });\n  if ('inline-block' === attrValue || 'inline' === attrValue) {\n    declarations.add('display', 'inline-block');\n  }\n  if ('block' === attrValue) {\n    declarations.add('display', 'block');\n  }\n  return declarations.value;\n};\nconst text_notation_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextStyle, {\n    selector: `${orderClass}`,\n    attr: attrs?.module?.advanced?.text\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'before_text'\n  }), elements.style({\n    attrName: 'notation_text'\n  }), elements.style({\n    attrName: 'after_text'\n  }), elements.style({\n    attrName: 'header'\n  }), elements.style({\n    attrName: 'before_margin'\n  }), elements.style({\n    attrName: 'before_padding'\n  }), elements.style({\n    attrName: 'after_margin'\n  }), elements.style({\n    attrName: 'after_padding'\n  }), elements.style({\n    attrName: 'notation_margin'\n  }), elements.style({\n    attrName: 'notation_padding'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-text-notation-before`,\n    attr: attrs?.before_background_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-text-notation-middle`,\n    attr: attrs?.notation_background_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-text-notation-after`,\n    attr: attrs?.after_background_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-text-notation-before`,\n    attr: attrs?.before_display_type?.innerContent,\n    declarationFunction: beforeDisplayTypeCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-text-notation-middle`,\n    attr: attrs?.notation_display_type?.innerContent,\n    declarationFunction: notationDisplayTypeCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-text-notation-after`,\n    attr: attrs?.after_display_type?.innerContent,\n    declarationFunction: afterDisplayTypeCss\n  }));\n};\n;// ./packages/module-library/text-notation/edit.js\n\n\n\n\n\n\n\n/**\n * @param {string} colorValue\n * @return {string}\n */\nconst text_notation_edit_extractColorValue = colorValue => {\n  if (typeof colorValue === 'string' && colorValue.startsWith('$variable')) {\n    try {\n      const variableData = colorValue.slice(10, -2);\n      const decodedData = JSON.parse(variableData);\n      if (decodedData?.value?.name) {\n        return `var(--${decodedData.value.name})`;\n      }\n    } catch (e) {\n      // Ignore invalid variable payload.\n    }\n  }\n  return colorValue;\n};\nconst text_notation_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction text_notation_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  var _attrs$heading_html_t;\n  const notationTextRef = (0,external_vendor_React_.useRef)(null);\n  const beforeText = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.before_text?.innerContent);\n  const notationText = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.notation_text?.innerContent);\n  const afterText = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.after_text?.innerContent);\n  const Tag = (_attrs$heading_html_t = attrs?.heading_html_tag?.innerContent?.desktop?.value) !== null && _attrs$heading_html_t !== void 0 ? _attrs$heading_html_t : 'h1';\n  const notationType = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.notation_type?.innerContent);\n  const notationColor = text_notation_edit_extractColorValue((0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.notation_color?.innerContent));\n  const notationWidth = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.notation_width?.innerContent);\n  const notationIterations = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.notation_iterations?.innerContent);\n  const beforeDisplayType = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.before_display_type?.innerContent);\n  const notationDisplayType = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.notation_display_type?.innerContent);\n  const afterDisplayType = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.after_display_type?.innerContent);\n  const notationBracketStyle = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.notation_bracket_style?.innerContent);\n\n  // Use `div` (not `span`): Divi `elements.render` may output block-level wrappers.\n  // Block-inside-span makes the HTML parser close the span early → stacked layout in VB.\n  const beforeTitle = !(0,lodash.isEmpty)(beforeText) && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: `dsm-text-notation-before display-type-${beforeDisplayType}`\n  }, elements.render({\n    attrName: 'before_text'\n  }));\n  const middleTitle = !(0,lodash.isEmpty)(notationText) && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: `dsm-text-notation-middle display-type-${notationDisplayType}`,\n    ref: notationTextRef\n  }, elements.render({\n    attrName: 'notation_text'\n  }));\n  const afterTitle = !(0,lodash.isEmpty)(afterText) && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: `dsm-text-notation-after display-type-${afterDisplayType}`\n  }, elements.render({\n    attrName: 'after_text'\n  }));\n\n  // Rebuild annotation when structure/layout drivers change (not only Notation Settings).\n  (0,external_vendor_React_.useLayoutEffect)(() => {\n    const el = notationTextRef.current;\n    if (!el || (0,lodash.isEmpty)(notationText)) {\n      return undefined;\n    }\n    const brackets = typeof notationBracketStyle === 'string' && notationBracketStyle.includes('|') ? notationBracketStyle.split('|') : ['left', 'right'];\n    const build = () => rough_notation_esm_(el, {\n      type: notationType,\n      color: notationColor,\n      strokeWidth: Number(notationWidth) * 0.5,\n      iterations: Number(notationIterations) || 2,\n      brackets\n    });\n    let annotation = build();\n    annotation.hide();\n    let cancelled = false;\n    let rafOuter = 0;\n    let rafInner = 0;\n    const showAfterLayout = () => {\n      rafOuter = window.requestAnimationFrame(() => {\n        rafInner = window.requestAnimationFrame(() => {\n          if (cancelled) {\n            return;\n          }\n          annotation.show();\n        });\n      });\n    };\n    showAfterLayout();\n\n    // Font/spacing edits reflow the span without changing strings above — remeasure and redraw.\n    let resizeTimer = 0;\n    let ro = null;\n    if (typeof ResizeObserver !== 'undefined') {\n      ro = new ResizeObserver(() => {\n        window.clearTimeout(resizeTimer);\n        resizeTimer = window.setTimeout(() => {\n          if (cancelled || !notationTextRef.current) {\n            return;\n          }\n          annotation.remove();\n          annotation = build();\n          annotation.hide();\n          showAfterLayout();\n        }, 80);\n      });\n      ro.observe(el);\n    }\n    return () => {\n      cancelled = true;\n      window.cancelAnimationFrame(rafOuter);\n      window.cancelAnimationFrame(rafInner);\n      window.clearTimeout(resizeTimer);\n      ro?.disconnect();\n      annotation.remove();\n    };\n  }, [Tag, beforeDisplayType, notationDisplayType, afterDisplayType, beforeText, afterText, notationType, notationColor, notationWidth, notationIterations, notationBracketStyle, notationText]);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: text_notation_edit_ModuleScriptData,\n    stylesComponent: text_notation_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(Tag, {\n    className: \"dsm-text-notation-main et_pb_module_header\"\n  }, beforeTitle, middleTitle, afterTitle));\n}\n/* harmony default export */ const text_notation_edit = (text_notation_edit_Edit);\n;// ./packages/module-library/text-notation/conversion-outline.js\n\nconst text_notation_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border',\n      before: 'before_text.decoration.border',\n      notation: 'notation_text.decoration.border',\n      after: 'after_text.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    fonts: {\n      header: 'header.decoration.font',\n      before: 'before_text.decoration.font',\n      notation: 'notation_text.decoration.font',\n      after: 'after_text.decoration.font'\n    },\n    height: 'module.decoration.sizing',\n    link_options: 'module.advanced.link',\n    margin_padding: 'module.decoration.spacing',\n    max_width: 'module.decoration.sizing',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    text: 'module.advanced.text',\n    text_shadow: {\n      default: 'module.advanced.text.textShadow'\n    },\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex'\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    before_text: 'before_text.innerContent.*',\n    notation_text: 'notation_text.innerContent.*',\n    after_text: 'after_text.innerContent.*',\n    notation_type: 'notation_type.innerContent.*',\n    notation_bracket_style: 'notation_bracket_style.innerContent.*',\n    notation_color: 'notation_color.innerContent.*',\n    notation_width: 'notation_width.innerContent.*',\n    notation_iterations: 'notation_iterations.innerContent.*',\n    notation_viewport: 'notation_viewport.innerContent.*',\n    notation_delay: 'notation_delay.innerContent.*',\n    heading_html_tag: 'heading_html_tag.innerContent.*',\n    before_background_color: 'before_background_color.innerContent.*',\n    notation_background_color: 'notation_background_color.innerContent.*',\n    after_background_color: 'after_background_color.innerContent.*',\n    before_display_type: 'before_display_type.innerContent.*',\n    notation_display_type: 'notation_display_type.innerContent.*',\n    after_display_type: 'after_display_type.innerContent.*',\n    before_margin: 'before_margin.decoration.spacing.*.margin',\n    before_padding: 'before_padding.decoration.spacing.*.padding',\n    after_margin: 'after_margin.decoration.spacing.*.margin',\n    after_padding: 'after_padding.decoration.spacing.*.padding',\n    notation_margin: 'notation_margin.decoration.spacing.*.margin',\n    notation_padding: 'notation_padding.decoration.spacing.*.padding',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    before_margin: external_divi_module_namespaceObject.convertSpacing,\n    before_padding: external_divi_module_namespaceObject.convertSpacing,\n    after_margin: external_divi_module_namespaceObject.convertSpacing,\n    after_padding: external_divi_module_namespaceObject.convertSpacing,\n    notation_margin: external_divi_module_namespaceObject.convertSpacing,\n    notation_padding: external_divi_module_namespaceObject.convertSpacing,\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/text-notation/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmTextNotation', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/text-notation': {\n      name: 'divi-supreme/text-notation',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 2.273438 7.300781 Z M 3.898438 10.171875 L 5.003906 10.171875 C 4.84375 9.925781 4.855469 9.621094 4.859375 9.566406 L 4.859375 6.976562 L 5.917969 6.976562 C 6.144531 6.976562 6.320312 7.050781 6.449219 7.140625 L 6.449219 6.179688 L 2.453125 6.179688 L 2.453125 7.140625 C 2.582031 7.050781 2.757812 6.976562 2.984375 6.976562 L 4.042969 6.976562 L 4.042969 9.566406 C 4.046875 9.621094 4.058594 9.925781 3.898438 10.171875 Z M 5.65625 10.492188 L 3.246094 10.492188 L 3.246094 10.171875 C 3.402344 10.171875 3.515625 10.132812 3.59375 10.046875 C 3.746094 9.878906 3.726562 9.589844 3.726562 9.585938 L 3.722656 9.570312 L 3.722656 7.296875 L 2.984375 7.296875 C 2.75 7.296875 2.597656 7.414062 2.515625 7.511719 C 2.453125 7.578125 2.359375 7.601562 2.273438 7.570312 C 2.1875 7.539062 2.132812 7.460938 2.132812 7.367188 L 2.132812 5.859375 L 6.769531 5.859375 L 6.769531 7.367188 C 6.769531 7.457031 6.714844 7.539062 6.628906 7.570312 C 6.542969 7.601562 6.449219 7.578125 6.390625 7.511719 C 6.304688 7.414062 6.152344 7.296875 5.917969 7.296875 L 5.179688 7.296875 L 5.179688 9.585938 C 5.175781 9.589844 5.15625 9.878906 5.3125 10.046875 C 5.390625 10.132812 5.5 10.171875 5.65625 10.171875 Z M 5.65625 10.492188 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 3.210938 3.222656 C 2.898438 3.164062 2.632812 3.433594 2.691406 3.742188 C 2.722656 3.914062 2.863281 4.058594 3.035156 4.089844 C 3.347656 4.152344 3.617188 3.882812 3.558594 3.570312 C 3.523438 3.398438 3.382812 3.257812 3.210938 3.222656 Z M 3.351562 4.625 C 2.628906 4.785156 1.996094 4.152344 2.160156 3.429688 C 2.238281 3.066406 2.535156 2.773438 2.898438 2.691406 C 3.617188 2.53125 4.25 3.164062 4.089844 3.882812 C 4.007812 4.25 3.714844 4.542969 3.351562 4.625 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.375 11.90625 C 12.066406 11.847656 11.796875 12.113281 11.855469 12.425781 C 11.886719 12.597656 12.027344 12.738281 12.203125 12.773438 C 12.511719 12.832031 12.78125 12.5625 12.722656 12.25 C 12.6875 12.078125 12.546875 11.9375 12.375 11.90625 Z M 12.515625 13.304688 C 11.792969 13.464844 11.164062 12.832031 11.324219 12.113281 C 11.40625 11.75 11.699219 11.453125 12.0625 11.375 C 12.785156 11.210938 13.414062 11.84375 13.253906 12.566406 C 13.171875 12.929688 12.878906 13.222656 12.515625 13.304688 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.6875 11.09375 L 2.21875 11.09375 L 2.21875 11.605469 L 6.6875 11.605469 Z M 6.6875 11.09375 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 10.597656 5.664062 L 10.597656 8.789062 C 10.601562 8.859375 10.613281 9.226562 10.417969 9.523438 L 11.757812 9.523438 C 11.5625 9.226562 11.574219 8.859375 11.582031 8.789062 L 11.582031 5.664062 L 12.859375 5.664062 C 13.132812 5.664062 13.34375 5.75 13.5 5.859375 L 13.5 4.703125 L 8.675781 4.703125 L 8.675781 5.859375 C 8.832031 5.75 9.042969 5.664062 9.316406 5.664062 Z M 10.597656 5.664062 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 13.890625 6.136719 C 13.890625 6.246094 13.824219 6.34375 13.71875 6.382812 C 13.617188 6.421875 13.503906 6.390625 13.429688 6.308594 C 13.328125 6.191406 13.148438 6.050781 12.863281 6.050781 L 11.96875 6.050781 L 11.96875 8.816406 C 11.96875 8.816406 11.941406 9.167969 12.128906 9.371094 C 12.222656 9.472656 12.359375 9.523438 12.542969 9.523438 L 12.542969 9.910156 L 9.636719 9.910156 L 9.636719 9.523438 C 9.824219 9.523438 9.960938 9.472656 10.054688 9.371094 C 10.238281 9.167969 10.214844 8.820312 10.214844 8.816406 L 10.210938 8.796875 L 10.210938 6.050781 L 9.320312 6.050781 C 9.199219 6.050781 9.09375 6.074219 9.011719 6.113281 C 8.894531 6.164062 8.808594 6.242188 8.75 6.308594 C 8.679688 6.390625 8.566406 6.421875 8.460938 6.382812 C 8.359375 6.34375 8.292969 6.246094 8.292969 6.136719 L 8.292969 4.316406 L 13.890625 4.316406 Z M 7.675781 4.195312 L 7.675781 10.03125 C 7.675781 10.46875 8.027344 10.820312 8.464844 10.820312 L 13.714844 10.820312 C 14.152344 10.820312 14.507812 10.46875 14.507812 10.03125 L 14.507812 4.195312 C 14.507812 3.757812 14.152344 3.40625 13.714844 3.40625 L 8.464844 3.40625 C 8.027344 3.40625 7.675781 3.757812 7.675781 4.195312 Z M 7.675781 4.195312 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/text-notation/index.js\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n\n\n\n\n\n\nconst text_notation_defaultAttrs = text_notation_module_default_render_attributes_namespaceObject;\nconst textNotationModule = {\n  metadata: text_notation_module_namespaceObject,\n  conversionOutline: text_notation_conversion_outline_conversionOutline,\n  renderers: {\n    edit: text_notation_edit,\n    styles: text_notation_module_styles_ModuleStyles\n  },\n  defaultAttrs: text_notation_defaultAttrs,\n  settings: {\n    content: text_notation_settings_content,\n    design: text_notation_settings_design,\n    advanced: text_notation_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    ...text_notation_module_default_render_attributes_namespaceObject\n  }\n};\n/* harmony default export */ const text_notation = (textNotationModule);\n;// ./packages/module-library/text-path/module.json\nconst text_path_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/text-path\",\"d4Shortcode\":\"dsm_text_path\",\"title\":\"Supreme Text Path\",\"titles\":\"Supreme Text Path\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/text-path\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}},\"advanced\":{\"link\":{}}}},\"dsm_path_text\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"selector\":\"{{selector}} .dsm-text-path-container svg\",\"elementType\":\"headingLink\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-text-path-container svg\",\"hover\":\"{{selector}}:hover .dsm-text-path-container svg\"}}}}},\"dsm_path_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_custom_path_content\":{\"type\":\"object\",\"inlineEditor\":\"CodeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_text_dir\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_show_path\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_stroke_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_stroke_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_text_path_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_path_rotate\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_path_word_spacing\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_path_starting_point\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_path_alignment\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/text-path/module-default-render-attributes.json\nconst text_path_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"module\":{\"decoration\":{}},\"dsm_custom_path_content\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"dsm_path_text\":{\"innerContent\":{\"desktop\":{\"value\":{\"text\":\"\"}}}},\"dsm_path_type\":{\"innerContent\":{\"desktop\":{\"value\":\"wave\"}}},\"dsm_text_dir\":{\"innerContent\":{\"desktop\":{\"value\":\"default\"}}},\"dsm_show_path\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"dsm_stroke_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#e8178a\"}}},\"dsm_stroke_width\":{\"innerContent\":{\"desktop\":{\"value\":\"1px\"}}},\"dsm_text_path_size\":{\"innerContent\":{\"desktop\":{\"value\":\"500px\"}}},\"dsm_path_rotate\":{\"innerContent\":{\"desktop\":{\"value\":\"0deg\"}}},\"dsm_path_word_spacing\":{\"innerContent\":{\"desktop\":{\"value\":\"0px\"}}},\"dsm_path_starting_point\":{\"innerContent\":{\"desktop\":{\"value\":\"0%\"}}},\"dsm_path_alignment\":{\"innerContent\":{\"desktop\":{\"value\":\"center\"}}}}');\n;// ./packages/module-library/text-path/text-path-vb-default-attrs.js\n/**\n * Visual Builder `defaultAttr` map from `module-default-render-attributes.json`.\n *\n * @package DiviSupreme\n */\n\n\nconst textPathFieldDefaultInnerContent = Object.fromEntries(Object.entries(text_path_module_default_render_attributes_namespaceObject).filter(([, attr]) => attr && typeof attr === 'object' && attr.innerContent).map(([key, attr]) => [key, attr.innerContent]));\n\n/** @type {typeof textPathFieldDefaultInnerContent} */\nconst textPathFd = textPathFieldDefaultInnerContent;\n;// ./packages/module-library/text-path/settings-content.js\n\n// Wordpress dependencies.\n\n\n// Divi package dependencies.\n\n\n\n\n\nfunction text_path_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  const pathType = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_path_type?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"content\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: textPathFd.dsm_path_text,\n    attrName: \"dsm_path_text.innerContent\",\n    subName: \"text\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text entered here will appear as the text path.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"settings\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Settings', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: textPathFd.dsm_path_type,\n    attrName: \"dsm_path_type.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Path Type', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      wave: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Wave', 'dsm-supreme-modules-pro-for-divi')\n      },\n      arc: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Arc', 'dsm-supreme-modules-pro-for-divi')\n      },\n      circle: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Circle', 'dsm-supreme-modules-pro-for-divi')\n      },\n      line: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Line', 'dsm-supreme-modules-pro-for-divi')\n      },\n      oval: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Oval', 'dsm-supreme-modules-pro-for-divi')\n      },\n      spiral: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Spiral', 'dsm-supreme-modules-pro-for-divi')\n      },\n      heart: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Heart', 'dsm-supreme-modules-pro-for-divi')\n      },\n      triangle: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Triangle', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zigzag: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zigzag', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'figure-eight': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Figure Eight', 'dsm-supreme-modules-pro-for-divi')\n      },\n      parabola: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Parabola', 'dsm-supreme-modules-pro-for-divi')\n      },\n      diamond: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Diamond', 'dsm-supreme-modules-pro-for-divi')\n      },\n      star: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Star', 'dsm-supreme-modules-pro-for-divi')\n      },\n      cross: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Cross', 'dsm-supreme-modules-pro-for-divi')\n      },\n      staircase: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Staircase', 'dsm-supreme-modules-pro-for-divi')\n      },\n      semicircle: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Semicircle', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'double-arch': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Double Arch', 'dsm-supreme-modules-pro-for-divi')\n      },\n      crown: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Crown', 'dsm-supreme-modules-pro-for-divi')\n      },\n      lightning: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Lightning', 'dsm-supreme-modules-pro-for-divi')\n      },\n      arrow: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Arrow', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'speech-bubble': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Speech Bubble', 'dsm-supreme-modules-pro-for-divi')\n      },\n      cloud: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Cloud', 'dsm-supreme-modules-pro-for-divi')\n      },\n      smile: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Smile', 'dsm-supreme-modules-pro-for-divi')\n      },\n      custom: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Custom', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: textPathFd.dsm_custom_path_content,\n    attrName: \"dsm_custom_path_content.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('SVG Code', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Input the SVG code here.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'custom' === pathType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.CodeContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: textPathFd.dsm_text_dir,\n    attrName: \"dsm_text_dir.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text Direction', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      default: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Default', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rtl: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('RTL', 'dsm-supreme-modules-pro-for-divi')\n      },\n      ltr: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('LTR', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: textPathFd.dsm_show_path,\n    attrName: \"dsm_show_path.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Path', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"link\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Link', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, {\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const text_path_settings_content = (text_path_settings_content_SettingsContent);\n;// ./packages/module-library/text-path/settings-design.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\nfunction text_path_settings_design_SettingsDesign({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"alignment\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Alignment', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: textPathFd.dsm_path_alignment,\n    attrName: \"dsm_path_alignment.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"textPath\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text Path', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: textPathFd.dsm_stroke_color,\n    attrName: \"dsm_stroke_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Path Color', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: textPathFd.dsm_stroke_width,\n    attrName: \"dsm_stroke_width.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Path Width', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 800,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: textPathFd.dsm_text_path_size,\n    attrName: \"dsm_text_path_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Size', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 800,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: textPathFd.dsm_path_rotate,\n    attrName: \"dsm_path_rotate.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rotate', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 360,\n    defaultUnit: 'deg'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: textPathFd.dsm_path_word_spacing,\n    attrName: \"dsm_path_word_spacing.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Word Spacing', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 20,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    defaultAttr: textPathFd.dsm_path_starting_point,\n    attrName: \"dsm_path_starting_point.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Starting Point', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    defaultUnit: '%'\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"titleText\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"dsm_path_text.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title Font', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const text_path_settings_design = (text_path_settings_design_SettingsDesign);\n;// ./packages/module-library/text-path/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction text_path_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_text_path\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const text_path_settings_advanced = (text_path_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/text-path/module-styles.js\n\n\n\n\n\n/**\n * Helper function to extract color value from either hex or variable format\n * @param {string} colorValue The color value to process\n * @returns {string} The processed color value\n */\nconst module_styles_extractColorValue = colorValue => {\n  // Check if the color value is in variable format\n  if (typeof colorValue === 'string' && colorValue.startsWith('$variable')) {\n    try {\n      // Extract the variable data\n      const variableData = colorValue.slice(10, -2); // Remove $variable( and )$\n      const decodedData = JSON.parse(variableData);\n\n      // Return the variable name if it exists\n      if (decodedData?.value?.name) {\n        return `var(--${decodedData.value.name})`;\n      }\n    } catch (e) {\n      console.error('Error parsing color variable:', e);\n    }\n  }\n\n  // Return the original value if it's a hex color or invalid format\n  return colorValue;\n};\nconst pathRotateDeclaration = attr => {\n  const raw = attr?.attrValue;\n  const attrValue = typeof raw === 'string' && '' !== raw.trim() ? raw : '0deg';\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      transform: true\n    }\n  });\n  declarations.add('transform', `rotate(${attrValue})`);\n  return declarations.value;\n};\nconst pathColorCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      stroke: true\n    }\n  });\n  const pathColorAttr = module_styles_extractColorValue(attrValue);\n  declarations.add('stroke', pathColorAttr);\n  return declarations.value;\n};\n\n/**\n * React function component for rendering module style.\n */\nconst text_path_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  const showPath = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_show_path?.innerContent);\n  const pathColor = module_styles_extractColorValue((0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_path_text?.decoration?.font?.font?.desktop?.value?.color));\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextStyle, {\n    selector: orderClass,\n    attr: attrs?.module?.advanced?.text\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'dsm_path_text'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-text-path-container svg`,\n    attr: attrs?.dsm_path_rotate?.innerContent,\n    declarationFunction: pathRotateDeclaration\n  }), 'on' === showPath && /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-text-path-container path`,\n    attr: attrs?.dsm_stroke_color?.innerContent,\n    declarationFunction: pathColorCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-text-path-container path`,\n    attr: attrs?.dsm_stroke_width?.innerContent,\n    property: \"stroke-width\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-text-path-container`,\n    attr: attrs?.dsm_path_alignment?.innerContent,\n    property: \"text-align\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}  .dsm-text-path-container svg`,\n    attr: attrs?.dsm_text_path_size?.innerContent,\n    property: \"width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-text-path-container svg`,\n    attr: attrs?.dsm_path_word_spacing?.innerContent,\n    property: \"word-spacing\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-text-path-container svg`,\n    attr: pathColor,\n    property: \"fill\"\n  }));\n};\n;// ./packages/module-library/text-path/path-presets.js\n/**\n * Extra text-path shapes (viewBox + path `d`), kept in sync with `shared/dsm-text-path-shape-presets.php`.\n *\n * @type {Record<string, { viewBox: string, pathD: string }>}\n */\nconst TEXT_PATH_EXTRA_PRESETS = {\n  heart: {\n    viewBox: '0 0 500 450',\n    pathD: 'M 250 400 C 250 400, 50 280, 50 180 C 50 80, 150 50, 250 150 C 350 50, 450 80, 450 180 C 450 280, 250 400, 250 400'\n  },\n  triangle: {\n    viewBox: '0 0 500 450',\n    pathD: 'M 250 0 L 500 433 L 0 433 Z'\n  },\n  zigzag: {\n    viewBox: '0 0 500 50',\n    pathD: 'M 0 50 L 62.5 0 L 125 50 L 187.5 0 L 250 50 L 312.5 0 L 375 50 L 437.5 0 L 500 50'\n  },\n  'figure-eight': {\n    viewBox: '0 0 500 500',\n    pathD: 'M 250 250 C 250 150, 450 150, 450 250 C 450 350, 250 350, 250 250 C 250 150, 50 150, 50 250 C 50 350, 250 350, 250 250'\n  },\n  parabola: {\n    viewBox: '0 0 500 450',\n    pathD: 'M 0 400 Q 250 0, 500 400'\n  },\n  diamond: {\n    viewBox: '0 0 500 500',\n    pathD: 'M 250 0 L 500 250 L 250 500 L 0 250 Z'\n  },\n  star: {\n    viewBox: '0 0 500 450',\n    pathD: 'M 250 0 L 298 154 L 460 154 L 330 248 L 378 402 L 250 308 L 122 402 L 170 248 L 40 154 L 202 154 Z'\n  },\n  cross: {\n    viewBox: '0 0 500 500',\n    pathD: 'M 167 0 L 333 0 L 333 167 L 500 167 L 500 333 L 333 333 L 333 500 L 167 500 L 167 333 L 0 333 L 0 167 L 167 167 Z'\n  },\n  staircase: {\n    viewBox: '0 -100 500 600',\n    pathD: 'M 0 400 L 0 300 L 100 300 L 100 200 L 200 200 L 200 100 L 300 100 L 300 0 L 400 0 L 400 -100 L 500 -100'\n  },\n  semicircle: {\n    viewBox: '0 0 500 250',\n    pathD: 'M 0 250 A 250 250 0 0 1 500 250'\n  },\n  'double-arch': {\n    viewBox: '0 0 500 350',\n    pathD: 'M 0 300 C 0 100, 125 0, 125 150 C 125 0, 250 100, 250 300 C 250 100, 375 0, 375 150 C 375 0, 500 100, 500 300'\n  },\n  crown: {\n    viewBox: '0 0 500 450',\n    pathD: 'M 0 400 L 0 150 L 125 300 L 250 50 L 375 300 L 500 150 L 500 400 Z'\n  },\n  lightning: {\n    viewBox: '0 0 500 500',\n    pathD: 'M 300 0 L 150 250 L 280 250 L 200 500 L 350 200 L 220 200 Z'\n  },\n  arrow: {\n    viewBox: '0 0 500 500',\n    pathD: 'M 0 200 L 350 200 L 350 100 L 500 250 L 350 400 L 350 300 L 0 300 Z'\n  },\n  'speech-bubble': {\n    viewBox: '0 0 500 500',\n    pathD: 'M 50 0 Q 0 0, 0 50 L 0 300 Q 0 350, 50 350 L 150 350 L 200 450 L 250 350 L 450 350 Q 500 350, 500 300 L 500 50 Q 500 0, 450 0 Z'\n  },\n  cloud: {\n    viewBox: '0 0 560 400',\n    pathD: 'M 100 350 Q 20 350, 20 270 Q 20 210, 80 200 Q 60 120, 140 100 Q 180 40, 260 60 Q 300 20, 360 40 Q 430 20, 460 80 Q 520 90, 510 160 Q 560 180, 540 250 Q 530 330, 440 340 Z'\n  },\n  smile: {\n    viewBox: '0 0 500 450',\n    pathD: 'M 50 150 Q 250 400, 450 150'\n  }\n};\n;// ./packages/module-library/text-path/edit.js\n\n\n\n// Divi package dependencies.\n\n\n// Custom dependencies.\n\n\n\n\n/**\n * Plain string for `useDynamicData` — Divi parses dynamic tokens from a string, not from a headingLink `{ text }` object.\n *\n * @param {*} raw From getAttrByMode( attrs.dsm_path_text.innerContent ).\n * @return {string}\n */\nfunction getHeadingLinkTextForDynamicData(raw) {\n  if (raw == null || raw === '') {\n    return '';\n  }\n  if (typeof raw === 'string' || typeof raw === 'number') {\n    return String(raw);\n  }\n  if (typeof raw === 'object' && typeof raw.text === 'string') {\n    return raw.text;\n  }\n  return '';\n}\n\n/**\n * Coerce resolved value to plain text for SVG `<textPath>` (React cannot render objects as text children).\n *\n * @param {*} resolved Value from `useDynamicData` (string) or legacy shapes.\n * @return {string}\n */\nfunction pathTextFromResolved(resolved) {\n  if (resolved == null || resolved === '') {\n    return '';\n  }\n  if (typeof resolved === 'string' || typeof resolved === 'number') {\n    return String(resolved);\n  }\n  if (typeof resolved === 'object' && typeof resolved.text === 'string') {\n    return resolved.text;\n  }\n  return '';\n}\n\n/**\n * React function component for registering module script data.\n */\nconst text_path_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction text_path_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3;\n  const {} = attrs;\n  const textColor = attrs?.dsm_path_text?.decoration?.font?.font?.desktop?.value?.color;\n  const dsmPathStartingPointRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_path_starting_point?.innerContent);\n  const dsmPathStartingPoint = typeof dsmPathStartingPointRaw === 'string' ? dsmPathStartingPointRaw : '0%';\n  const dsmPathTextForDynamic = getHeadingLinkTextForDynamicData((0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_path_text?.innerContent));\n  const dsmTextDir = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_text_dir?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'default';\n  const dsmPathType = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_path_type?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'wave';\n  const customPathContent = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_custom_path_content?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : '';\n  const strToNumber = dsmPathStartingPoint.replace('%', '');\n  const pathDirectionOne = 'rtl' === dsmTextDir && '0%' === dsmPathStartingPoint ? '100%' : '';\n  const pathDirectionTwo = 'rtl' === dsmTextDir && '0%' !== dsmPathStartingPoint ? 100 - Number(strToNumber) + '%' : '';\n  const pathDirectionThree = 'rtl' !== dsmTextDir && '0%' === dsmPathStartingPoint ? '0%' : '';\n  const pathDirectionFour = 'rtl' !== dsmTextDir && '0%' !== dsmPathStartingPoint ? dsmPathStartingPoint : '';\n  const orderClass = `dsm_text_path_${id}`;\n  const obtainSVGPath = content => {\n    const visualContainer = document.createElement('div');\n    visualContainer.innerHTML = content;\n    const path = visualContainer.querySelector('path');\n    if (visualContainer && path) {\n      path.setAttribute('id', orderClass);\n    }\n    return path ? visualContainer.innerHTML : '';\n  };\n  const obtainSVGWidth = () => {\n    const visualContainer = document.createElement('div');\n    visualContainer.innerHTML = customPathContent;\n    const svg = visualContainer.querySelector('svg');\n    if (svg) {\n      return svg.getAttribute('width');\n    }\n    return 'auto';\n  };\n  const obtainSVGHeight = () => {\n    const visualContainer = document.createElement('div');\n    visualContainer.innerHTML = customPathContent;\n    const svg = visualContainer.querySelector('svg');\n    if (svg) {\n      return svg.getAttribute('height');\n    }\n    return 'auto';\n  };\n  let text_path_value = '';\n  switch (dsmPathType) {\n    case 'custom':\n      text_path_value = /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", {\n        xmlns: \"http://www.w3.org/2000/svg\",\n        width: obtainSVGWidth(),\n        height: obtainSVGHeight(),\n        viewBox: `0 0 ${obtainSVGWidth()} ${obtainSVGHeight()}`\n      }, /*#__PURE__*/external_vendor_React_default().createElement(\"g\", {\n        dangerouslySetInnerHTML: {\n          __html: obtainSVGPath(customPathContent)\n        }\n      }), /*#__PURE__*/external_vendor_React_default().createElement(\"text\", null, /*#__PURE__*/external_vendor_React_default().createElement(\"textPath\", {\n        href: `#${orderClass}`,\n        startOffset: [pathDirectionOne, pathDirectionTwo, pathDirectionThree, pathDirectionFour].filter(offset => offset !== '').join('')\n      }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n        value: dsmPathTextForDynamic\n      }, resolved => pathTextFromResolved(resolved)))));\n      break;\n    case 'wave':\n      text_path_value = /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", {\n        xmlns: \"http://www.w3.org/2000/svg\",\n        width: \"250\",\n        height: \"42.4994\",\n        viewBox: \"0 0 250 42.4994\"\n      }, /*#__PURE__*/external_vendor_React_default().createElement(\"path\", {\n        d: \"M0,42.2494C62.5,42.2494,62.5.25,125,.25s62.5,41.9994,125,41.9994\",\n        id: \"dsm-path-wave\"\n      }), /*#__PURE__*/external_vendor_React_default().createElement(\"path\", {\n        d: \"M-41.6693,49.25\"\n      }), /*#__PURE__*/external_vendor_React_default().createElement(\"path\", {\n        d: \"M-208.3307-6.75\"\n      }), /*#__PURE__*/external_vendor_React_default().createElement(\"text\", null, /*#__PURE__*/external_vendor_React_default().createElement(\"textPath\", {\n        href: \"#dsm-path-wave\",\n        startOffset: [pathDirectionOne, pathDirectionTwo, pathDirectionThree, pathDirectionFour].filter(offset => offset !== '').join('')\n      }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n        value: dsmPathTextForDynamic\n      }, resolved => pathTextFromResolved(resolved)))));\n      break;\n    case 'arc':\n      text_path_value = /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", {\n        xmlns: \"http://www.w3.org/2000/svg\",\n        width: \"250.5\",\n        height: \"125.25\",\n        viewBox: \"0 0 250.5 125.25\"\n      }, /*#__PURE__*/external_vendor_React_default().createElement(\"path\", {\n        d: \"M.25,125.25a125,125,0,0,1,250,0\",\n        id: \"dsm-path-arc\"\n      }), /*#__PURE__*/external_vendor_React_default().createElement(\"text\", null, /*#__PURE__*/external_vendor_React_default().createElement(\"textPath\", {\n        href: \"#dsm-path-arc\",\n        startOffset: [pathDirectionOne, pathDirectionTwo, pathDirectionThree, pathDirectionFour].filter(offset => offset !== '').join('')\n      }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n        value: dsmPathTextForDynamic\n      }, resolved => pathTextFromResolved(resolved)))));\n      break;\n    case 'circle':\n      text_path_value = /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", {\n        xmlns: \"http://www.w3.org/2000/svg\",\n        width: \"250.5\",\n        height: \"250.5\",\n        viewBox: \"0 0 250.5 250.5\"\n      }, /*#__PURE__*/external_vendor_React_default().createElement(\"path\", {\n        d: \"M.25,125.25a125,125,0,1,1,125,125,125,125,0,0,1-125-125\",\n        id: \"dsm-path-circle\"\n      }), /*#__PURE__*/external_vendor_React_default().createElement(\"text\", null, /*#__PURE__*/external_vendor_React_default().createElement(\"textPath\", {\n        href: \"#dsm-path-circle\",\n        startOffset: [pathDirectionOne, pathDirectionTwo, pathDirectionThree, pathDirectionFour].filter(offset => offset !== '').join('')\n      }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n        value: dsmPathTextForDynamic\n      }, resolved => pathTextFromResolved(resolved)))));\n      break;\n    case 'line':\n      text_path_value = /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", {\n        xmlns: \"http://www.w3.org/2000/svg\",\n        width: \"250\",\n        height: \"22\",\n        viewBox: \"0 0 250 22\"\n      }, /*#__PURE__*/external_vendor_React_default().createElement(\"path\", {\n        d: \"M 0 27 l 250 -22\",\n        id: \"dsm-path-line\"\n      }), /*#__PURE__*/external_vendor_React_default().createElement(\"text\", null, /*#__PURE__*/external_vendor_React_default().createElement(\"textPath\", {\n        href: \"#dsm-path-line\",\n        startOffset: [pathDirectionOne, pathDirectionTwo, pathDirectionThree, pathDirectionFour].filter(offset => offset !== '').join('')\n      }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n        value: dsmPathTextForDynamic\n      }, resolved => pathTextFromResolved(resolved)))));\n      break;\n    case 'oval':\n      text_path_value = /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", {\n        xmlns: \"http://www.w3.org/2000/svg\",\n        width: \"250.5\",\n        height: \"125.75\",\n        viewBox: \"0 0 250.5 125.75\"\n      }, /*#__PURE__*/external_vendor_React_default().createElement(\"path\", {\n        className: \"b473dc75-7459-43a5-8a1c-89caf910da53\",\n        d: \"M.25,62.875C.25,28.2882,56.2144.25,125.25.25s125,28.0382,125,62.625-55.9644,62.625-125,62.625S.25,97.4619.25,62.875\",\n        id: \"dsm-path-oval\"\n      }), /*#__PURE__*/external_vendor_React_default().createElement(\"text\", null, /*#__PURE__*/external_vendor_React_default().createElement(\"textPath\", {\n        href: \"#dsm-path-oval\",\n        startOffset: [pathDirectionOne, pathDirectionTwo, pathDirectionThree, pathDirectionFour].filter(offset => offset !== '').join('')\n      }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n        value: dsmPathTextForDynamic\n      }, resolved => pathTextFromResolved(resolved)))));\n      break;\n    case 'spiral':\n      text_path_value = /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", {\n        xmlns: \"http://www.w3.org/2000/svg\",\n        width: \"250.4348\",\n        height: \"239.4454\",\n        viewBox: \"0 0 250 42.4994\"\n      }, /*#__PURE__*/external_vendor_React_default().createElement(\"path\", {\n        d: \"M.1848,49.0219a149.3489,149.3489,0,0,1,210.9824-9.8266,119.479,119.479,0,0,1,7.8613,168.786A95.5831,95.5831,0,0,1,84,214.27a76.4666,76.4666,0,0,1-5.0312-108.023\",\n        id: \"dsm-path-spiral\"\n      }), /*#__PURE__*/external_vendor_React_default().createElement(\"text\", null, /*#__PURE__*/external_vendor_React_default().createElement(\"textPath\", {\n        href: \"#dsm-path-spiral\",\n        startOffset: [pathDirectionOne, pathDirectionTwo, pathDirectionThree, pathDirectionFour].filter(offset => offset !== '').join('')\n      }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n        value: dsmPathTextForDynamic\n      }, resolved => pathTextFromResolved(resolved)))));\n      break;\n    default:\n      {\n        const preset = TEXT_PATH_EXTRA_PRESETS[dsmPathType];\n        if (preset) {\n          const pathId = `dsm-path-extra-${id}`;\n          const startOffsetJoined = [pathDirectionOne, pathDirectionTwo, pathDirectionThree, pathDirectionFour].filter(offset => offset !== '').join('');\n          text_path_value = /*#__PURE__*/external_vendor_React_default().createElement(\"svg\", {\n            xmlns: \"http://www.w3.org/2000/svg\",\n            viewBox: preset.viewBox,\n            fill: \"none\"\n          }, /*#__PURE__*/external_vendor_React_default().createElement(\"path\", {\n            d: preset.pathD,\n            id: pathId\n          }), /*#__PURE__*/external_vendor_React_default().createElement(\"text\", null, /*#__PURE__*/external_vendor_React_default().createElement(\"textPath\", {\n            href: `#${pathId}`,\n            startOffset: startOffsetJoined\n          }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n            value: dsmPathTextForDynamic\n          }, resolved => pathTextFromResolved(resolved)))));\n        }\n        break;\n      }\n  }\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: text_path_edit_ModuleScriptData,\n    stylesComponent: text_path_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: `dsm-text-path-container dsm-${dsmTextDir}`,\n    style: {\n      '--text-color': textColor\n    }\n  }, text_path_value));\n}\n/* harmony default export */ const text_path_edit = (text_path_edit_Edit);\n;// ./packages/module-library/text-path/conversion-outline.js\nconst text_path_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    display_conditions: 'module.decoration.conditions',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    margin_padding: 'module.decoration.spacing',\n    max_width: 'module.decoration.sizing',\n    height: 'module.decoration.sizing',\n    link_options: 'module.advanced.link',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    text_shadow: {\n      default: 'module.advanced.text.textShadow'\n    },\n    fonts: {\n      header: 'dsm_path_text.decoration.font'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    dsm_path_text: 'dsm_path_text.innerContent.*.text',\n    dsm_path_type: 'dsm_path_type.innerContent.*',\n    dsm_custom_path_content: 'dsm_custom_path_content.innerContent.*',\n    dsm_text_dir: 'dsm_text_dir.innerContent.*',\n    dsm_show_path: 'dsm_show_path.innerContent.*',\n    dsm_stroke_color: 'dsm_stroke_color.innerContent.*',\n    dsm_stroke_width: 'dsm_stroke_width.innerContent.*',\n    dsm_text_path_size: 'dsm_text_path_size.innerContent.*',\n    dsm_path_rotate: 'dsm_path_rotate.innerContent.*',\n    dsm_path_word_spacing: 'dsm_path_word_spacing.innerContent.*',\n    dsm_path_starting_point: 'dsm_path_starting_point.innerContent.*',\n    dsm_path_alignment: 'dsm_path_alignment.innerContent.*',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/text-path/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmTextPathIcon', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/text-path': {\n      name: 'divi-supreme/text-path',\n      viewBox: '0 0 30 30',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.125 4.53125 C 10.753906 4.53125 10.453125 4.230469 10.453125 3.859375 C 10.453125 3.492188 10.753906 3.1875 11.125 3.1875 C 11.492188 3.1875 11.796875 3.492188 11.796875 3.859375 C 11.796875 4.230469 11.492188 4.53125 11.125 4.53125 Z M 11.125 3.558594 C 10.960938 3.558594 10.824219 3.695312 10.824219 3.859375 C 10.824219 4.023438 10.960938 4.160156 11.125 4.160156 C 11.289062 4.160156 11.425781 4.023438 11.425781 3.859375 C 11.425781 3.695312 11.289062 3.558594 11.125 3.558594 Z M 11.125 3.558594 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 6.179688 14.089844 C 5.863281 14.089844 5.605469 13.832031 5.605469 13.515625 C 5.605469 13.199219 5.863281 12.941406 6.179688 12.941406 C 6.496094 12.941406 6.753906 13.199219 6.753906 13.515625 C 6.753906 13.832031 6.496094 14.089844 6.179688 14.089844 Z M 6.179688 13.257812 C 6.039062 13.257812 5.921875 13.375 5.921875 13.515625 C 5.921875 13.660156 6.039062 13.773438 6.179688 13.773438 C 6.324219 13.773438 6.4375 13.660156 6.4375 13.515625 C 6.4375 13.375 6.324219 13.257812 6.179688 13.257812 Z M 6.179688 13.257812 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 4.433594 7.082031 L 3.992188 6.640625 L 4.625 6.011719 L 6.441406 7.828125 C 6.589844 7.976562 6.671875 8.171875 6.671875 8.382812 C 6.671875 8.59375 6.589844 8.789062 6.441406 8.9375 L 6.902344 9.398438 L 9.398438 6.902344 L 8.9375 6.441406 C 8.632812 6.746094 8.132812 6.746094 7.828125 6.441406 L 6.011719 4.625 L 6.640625 3.992188 L 7.082031 4.433594 L 7.542969 3.96875 L 6.242188 2.667969 L 5.777344 3.128906 L 6.179688 3.53125 L 3.53125 6.179688 L 3.128906 5.777344 L 2.667969 6.242188 L 3.96875 7.542969 Z M 7.367188 6.902344 C 7.566406 7.101562 7.816406 7.238281 8.085938 7.292969 L 7.292969 8.085938 C 7.238281 7.820312 7.109375 7.570312 6.902344 7.367188 L 5.085938 5.546875 L 5.546875 5.085938 Z M 7.367188 6.902344 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 13.296875 7.859375 C 12.359375 6.921875 10.828125 6.921875 9.890625 7.859375 L 7.136719 10.613281 C 6.453125 11.296875 5.339844 11.296875 4.652344 10.613281 L 4.171875 10.132812 L 3.710938 10.59375 L 4.191406 11.074219 C 4.660156 11.542969 5.277344 11.78125 5.894531 11.78125 C 6.511719 11.78125 7.128906 11.542969 7.597656 11.074219 L 10.351562 8.324219 C 11.035156 7.636719 12.152344 7.636719 12.835938 8.324219 L 13.316406 8.804688 L 13.777344 8.339844 Z M 13.296875 7.859375 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/text-path/index.js\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\nconst text_path_defaultAttrs = text_path_module_default_render_attributes_namespaceObject;\nconst textPathModule = {\n  metadata: text_path_module_namespaceObject,\n  conversionOutline: text_path_conversion_outline_conversionOutline,\n  renderers: {\n    edit: text_path_edit,\n    styles: text_path_module_styles_ModuleStyles\n  },\n  defaultAttrs: text_path_defaultAttrs,\n  settings: {\n    content: text_path_settings_content,\n    design: text_path_settings_design,\n    advanced: text_path_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    ...text_path_module_default_render_attributes_namespaceObject,\n    dsm_path_text: {\n      innerContent: {\n        desktop: {\n          value: {\n            text: 'Add Your Curvy Text Here'\n          }\n        }\n      }\n    }\n  }\n};\n/* harmony default export */ const text_path = (textPathModule);\n;// ./packages/module-library/text-rotator/module.json\nconst text_rotator_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/text-rotator\",\"d4Shortcode\":\"dsm_text_rotator\",\"title\":\"Supreme Text Rotator\",\"titles\":\"Supreme Text Rotator\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/text-rotator\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"main_text\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-rotate-text-main\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"before_text\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"selector\":\"{{selector}} .dsm-rotate-text-before\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"after_text\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"selector\":\"{{selector}} .dsm-rotate-text-after\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"text_rotator\":{\"type\":\"object\",\"inlineEditor\":\"\",\"selector\":\"{{selector}} .dsm-rotate-text\"},\"rotator_text\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-rotate-text\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"text_rotator_animation_in\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"text_rotator_speed\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"text_rotator_pause_hover\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"text_rotator_click_change\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"heading_html_tag\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"before_background_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"rotator_background_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"after_background_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"before_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-rotate-text-before\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"rotator_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-rotate-text\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"after_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-rotate-text-after\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"before_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-rotate-text-before\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"rotator_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-rotate-text\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"after_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-rotate-text-after\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"before_display_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"rotator_display_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"after_display_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"beforeStyle\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-rotate-text-before\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-rotate-text-before\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-rotate-text-before\",\"useOverlay\":true}}},\"rotatorStyle\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-rotate-text\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-rotate-text\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-rotate-text\",\"useOverlay\":true}}},\"afterStyle\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-rotate-text-after\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-rotate-text-after\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-rotate-text-after\",\"useOverlay\":true}}},\"css\":{\"type\":\"object\",\"inlineEditor\":\"codemirror\",\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/text-rotator/module-default-render-attributes.json\nconst text_rotator_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"module\":{\"decoration\":{},\"advanced\":{\"text\":{\"text\":{\"desktop\":{\"value\":{\"color\":\"light\"}}}}}},\"main_text\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"size\":\"26px\",\"lineHeight\":\"1em\",\"letterSpacing\":\"0px\"}}}}}},\"before_text\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}},\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"lineHeight\":\"1em\",\"letterSpacing\":\"0px\"}}}}}},\"after_text\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}},\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"lineHeight\":\"1em\",\"letterSpacing\":\"0px\"}}}}}},\"text_rotator\":{\"innerContent\":{\"desktop\":{\"value\":[{\"value\":\"Divi\",\"dragID\":\"9975d2e8-e345-460a-9e85-e702f9e02749\"},{\"value\":\"Supreme\",\"dragID\":\"5743677c-16e0-4114-a563-c02081cc82ca\"},{\"value\":\"Rotate\",\"dragID\":\"2d9453d6-b3c1-474b-987d-5a275d8856da\"}]}}},\"rotator_text\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"lineHeight\":\"1em\",\"letterSpacing\":\"0px\"}}}}}},\"text_rotator_animation_in\":{\"innerContent\":{\"desktop\":{\"value\":\"fadeIn\"}}},\"text_rotator_speed\":{\"innerContent\":{\"desktop\":{\"value\":\"3000ms\"}}},\"text_rotator_pause_hover\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"text_rotator_click_change\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"heading_html_tag\":{\"innerContent\":{\"desktop\":{\"value\":\"h2\"}}},\"before_background_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"rotator_background_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"after_background_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"before_display_type\":{\"innerContent\":{\"desktop\":{\"value\":\"inline_block\"}}},\"rotator_display_type\":{\"innerContent\":{\"desktop\":{\"value\":\"inline_block\"}}},\"after_display_type\":{\"innerContent\":{\"desktop\":{\"value\":\"inline_block\"}}}}');\n;// ./packages/module-library/text-rotator/text-rotator-vb-default-attrs.js\n/**\n * Visual Builder `defaultAttr` map from `module-default-render-attributes.json`.\n *\n * `FieldContainer` + innerContent bindings expect the **innerContent object only**\n * (`{ desktop: { value } }`), not the full attribute with `decoration` (see `text-badges-vb-default-attrs.js`).\n *\n * @package DiviSupreme\n */\n\n\n\n/** @see `module-default-render-attributes.json` → `main_text.decoration.font` */\nconst textRotatorMainTextFontGroupDefaultAttr = text_rotator_module_default_render_attributes_namespaceObject.main_text?.decoration?.font;\n\n/** @see `module-default-render-attributes.json` → `before_text.decoration.font` */\nconst textRotatorBeforeTextFontGroupDefaultAttr = text_rotator_module_default_render_attributes_namespaceObject.before_text?.decoration?.font;\n\n/** @see `module-default-render-attributes.json` → `after_text.decoration.font` */\nconst textRotatorAfterTextFontGroupDefaultAttr = text_rotator_module_default_render_attributes_namespaceObject.after_text?.decoration?.font;\n\n/** @see `module-default-render-attributes.json` → `rotator_text.decoration.font` */\nconst textRotatorRotatorTextFontGroupDefaultAttr = text_rotator_module_default_render_attributes_namespaceObject.rotator_text?.decoration?.font;\nconst text_rotator_vb_default_attrs_skipInnerContentMapKeys = new Set(['module']);\n\n/** `innerContent` defaults per attribute key (for `FieldContainer` `defaultAttr`). */\nconst textRotatorFieldDefaultInnerContent = Object.fromEntries(Object.entries(text_rotator_module_default_render_attributes_namespaceObject).filter(([key, attr]) => !text_rotator_vb_default_attrs_skipInnerContentMapKeys.has(key) && attr && typeof attr === 'object' && Object.prototype.hasOwnProperty.call(attr, 'innerContent')).map(([key, attr]) => [key, attr.innerContent]));\n\n/** @type {typeof textRotatorFieldDefaultInnerContent} */\nconst textRotatorFd = textRotatorFieldDefaultInnerContent;\n;// ./packages/module-library/text-rotator/settings-content.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\nfunction text_rotator_settings_content_SettingsContent({\n  defaultSettingsAttrs\n}) {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"rotator_text\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rotator Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"text_rotator.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rotator Text', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: textRotatorFd.text_rotator\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SortableList, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"before_text.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Before Rotator Text', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: textRotatorFd.before_text,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"after_text.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('After Rotator Text', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: textRotatorFd.after_text,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"text_rotator_animation_in.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rotate Animation', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: textRotatorFd.text_rotator_animation_in\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      fadeIn: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeInDown: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Down', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeInLeft: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeInRight: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeInUp: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Up', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bounce: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bounce', 'dsm-supreme-modules-pro-for-divi')\n      },\n      flash: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Flash', 'dsm-supreme-modules-pro-for-divi')\n      },\n      pulse: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pulse', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rubberBand: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rubber Band', 'dsm-supreme-modules-pro-for-divi')\n      },\n      shake: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shake', 'dsm-supreme-modules-pro-for-divi')\n      },\n      swing: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Swing', 'dsm-supreme-modules-pro-for-divi')\n      },\n      tada: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tada', 'dsm-supreme-modules-pro-for-divi')\n      },\n      wobble: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Wobble', 'dsm-supreme-modules-pro-for-divi')\n      },\n      jello: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Jello', 'dsm-supreme-modules-pro-for-divi')\n      },\n      lightSpeedIn: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Light Speed In', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rollIn: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Roll In', 'dsm-supreme-modules-pro-for-divi')\n      },\n      hinge: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hinge', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bounceIn: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('bounceIn', 'dsm-supreme-modules-pro-for-divi')\n      },\n      slideInUp: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide In Up', 'dsm-supreme-modules-pro-for-divi')\n      },\n      slideInDown: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide In Down', 'dsm-supreme-modules-pro-for-divi')\n      },\n      slideInLeft: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide In Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      slideInRight: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide In Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      flip: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Flip', 'dsm-supreme-modules-pro-for-divi')\n      },\n      flipInX: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Flip In X', 'dsm-supreme-modules-pro-for-divi')\n      },\n      flipInY: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Flip In Y', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rotateIn: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rotate In', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rotateInDownLeft: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rotate In Down Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rotateInDownRight: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rotate In Down Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rotateInUpLeft: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rotate In Up Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rotateInUpRight: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rotate In Up Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zoomIn: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom In', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zoomInDown: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom In Down', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zoomInLeft: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom In Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zoomInRight: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom In Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zoomInUp: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom In Up', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"text_rotator_speed.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rotate Speed (in ms)', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: textRotatorFd.text_rotator_speed,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 800,\n    max: 8000,\n    defaultUnit: 'ms'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"text_rotator_pause_hover.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pause On Hover', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: textRotatorFd.text_rotator_pause_hover\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"text_rotator_click_change.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Change On Click', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: textRotatorFd.text_rotator_click_change\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const text_rotator_settings_content = (text_rotator_settings_content_SettingsContent);\n;// ./packages/module-library/text-rotator/settings-design.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\nfunction text_rotator_settings_design_SettingsDesign() {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextGroup, {\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"headingSettings\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Heading Settings', 'dsm-supreme-modules-pro-for-divi'),\n    preset: \"content\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"heading_html_tag.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Heading HTML Tag', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: textRotatorFd.heading_html_tag\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      h1: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('H1', 'dsm-supreme-modules-pro-for-divi')\n      },\n      h2: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('H2', 'dsm-supreme-modules-pro-for-divi')\n      },\n      h3: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('H3', 'dsm-supreme-modules-pro-for-divi')\n      },\n      h4: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('H4', 'dsm-supreme-modules-pro-for-divi')\n      },\n      h5: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('H5', 'dsm-supreme-modules-pro-for-divi')\n      },\n      h6: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('H6', 'dsm-supreme-modules-pro-for-divi')\n      },\n      div: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('div', 'dsm-supreme-modules-pro-for-divi')\n      },\n      span: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('span', 'dsm-supreme-modules-pro-for-divi')\n      },\n      p: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('p', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainTypography\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Main Typography', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"main_text.decoration.font\",\n    defaultAttr: textRotatorMainTextFontGroupDefaultAttr,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Main', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      },\n      textAlign: {\n        render: true\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"beforeRotatorText\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Before Rotator Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"before_background_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom background color for the before text.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: textRotatorFd.before_background_color\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    grouped: false,\n    attrName: \"before_margin.decoration.spacing\",\n    fields: {\n      padding: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    grouped: false,\n    attrName: \"before_padding.decoration.spacing\",\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"before_display_type.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Display', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: textRotatorFd.before_display_type,\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      inline_block: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inline Block', 'dsm-supreme-modules-pro-for-divi')\n      },\n      block: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Block', 'dsm-supreme-modules-pro-for-divi')\n      },\n      inline: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inline', 'dsm-supreme-modules-pro-for-divi')\n      },\n      inline_flex: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inline Flex', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"before_text.decoration.font\",\n    defaultAttr: textRotatorBeforeTextFontGroupDefaultAttr,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Before', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      },\n      textAlign: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"beforeStyle.decoration.border\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Before Text', 'dsm-supreme-modules-pro-for-divi')\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"rotatorText\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rotator Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"rotator_background_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom background color for the rotator text.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: textRotatorFd.rotator_background_color\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    grouped: false,\n    attrName: \"rotator_margin.decoration.spacing\",\n    fields: {\n      padding: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    grouped: false,\n    attrName: \"rotator_padding.decoration.spacing\",\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"rotator_display_type.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Display', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: textRotatorFd.rotator_display_type,\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      inline_block: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inline Block', 'dsm-supreme-modules-pro-for-divi')\n      },\n      block: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Block', 'dsm-supreme-modules-pro-for-divi')\n      },\n      inline: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inline', 'dsm-supreme-modules-pro-for-divi')\n      },\n      inline_flex: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inline Flex', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"rotator_text.decoration.font\",\n    defaultAttr: textRotatorRotatorTextFontGroupDefaultAttr,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rotate', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      },\n      textAlign: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"rotatorStyle.decoration.border\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rotator Text', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"after_rotator_text\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('After Rotator Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"after_background_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom background color for the after text.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: textRotatorFd.after_background_color\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    grouped: false,\n    attrName: \"after_margin.decoration.spacing\",\n    fields: {\n      padding: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    grouped: false,\n    attrName: \"after_padding.decoration.spacing\",\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"after_display_type.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Display', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: textRotatorFd.after_display_type,\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      inline_block: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inline Block', 'dsm-supreme-modules-pro-for-divi')\n      },\n      block: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Block', 'dsm-supreme-modules-pro-for-divi')\n      },\n      inline: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inline', 'dsm-supreme-modules-pro-for-divi')\n      },\n      inline_flex: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inline Flex', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"after_text.decoration.font\",\n    defaultAttr: textRotatorAfterTextFontGroupDefaultAttr,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('After', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      },\n      textAlign: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"afterStyle.decoration.border\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('After Text', 'dsm-supreme-modules-pro-for-divi')\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const text_rotator_settings_design = (text_rotator_settings_design_SettingsDesign);\n;// ./packages/module-library/text-rotator/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction text_rotator_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_text_rotator\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const text_rotator_settings_advanced = (text_rotator_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/text-rotator/module-styles.js\n\n\n\n/**\n * React function component for rendering module style.\n */\nconst text_rotator_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextStyle, {\n    selector: orderClass,\n    attr: attrs?.module?.advanced?.text\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'main_text'\n  }), elements.style({\n    attrName: 'before_text'\n  }), elements.style({\n    attrName: 'after_text'\n  }), elements.style({\n    attrName: 'text_rotator'\n  }), elements.style({\n    attrName: 'rotator_text'\n  }), elements.style({\n    attrName: 'before_padding'\n  }), elements.style({\n    attrName: 'rotator_padding'\n  }), elements.style({\n    attrName: 'after_padding'\n  }), elements.style({\n    attrName: 'before_margin'\n  }), elements.style({\n    attrName: 'rotator_margin'\n  }), elements.style({\n    attrName: 'after_margin'\n  }), elements.style({\n    attrName: 'beforeStyle'\n  }), elements.style({\n    attrName: 'rotatorStyle'\n  }), elements.style({\n    attrName: 'afterStyle'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-rotate-text-before`,\n    attr: attrs?.before_background_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-rotate-text-after`,\n    attr: attrs?.after_background_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-rotate-text`,\n    attr: attrs?.rotator_background_color?.innerContent,\n    property: \"background-color\"\n  }));\n};\n;// ./packages/module-library/text-rotator/edit.js\n\n\n\n// Divi package dependencies.\n\n\n// Custom dependencies.\n\n\n/**\n * React function component for registering module script data.\n */\nconst text_rotator_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\n\n/**\n * After the rotator intersects the viewport, sets true once (parity with Shuffle Letters + FE Waypoints-style behavior).\n *\n * @return {[React.RefObject<HTMLSpanElement|null>, boolean]}\n */\nfunction useTextRotatorViewportStart() {\n  const ref = (0,external_vendor_React_.useRef)(null);\n  const [started, setStarted] = (0,external_vendor_React_.useState)(false);\n  (0,external_vendor_React_.useEffect)(() => {\n    if (started) {\n      return;\n    }\n    const el = ref.current;\n    if (!el) {\n      return;\n    }\n    if (typeof IntersectionObserver === 'undefined') {\n      setStarted(true);\n      return;\n    }\n    const observer = new IntersectionObserver(entries => {\n      const entry = entries[0];\n      if (entry?.isIntersecting) {\n        setStarted(true);\n        observer.disconnect();\n      }\n    }, {\n      root: null,\n      rootMargin: '0px',\n      threshold: 0\n    });\n    observer.observe(el);\n    return () => observer.disconnect();\n  }, [started]);\n  return [ref, started];\n}\nfunction text_rotator_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  const before_text = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.before_text?.innerContent);\n  const after_text = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.after_text?.innerContent);\n  const text_rotator = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.text_rotator?.innerContent);\n  const before_display_type = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.before_display_type?.innerContent);\n  const rotator_display_type = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.rotator_display_type?.innerContent);\n  const after_display_type = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.after_display_type?.innerContent);\n  const text_rotator_animation_in = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.text_rotator_animation_in?.innerContent);\n  const text_rotator_speed = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.text_rotator_speed?.innerContent);\n  const text_rotator_pause_hover = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.text_rotator_pause_hover?.innerContent);\n  const text_rotator_click_change = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.text_rotator_click_change?.innerContent);\n  const Tag = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.heading_html_tag?.innerContent);\n  const pause = text_rotator_pause_hover === 'on' ? true : false;\n  const container = (0,external_vendor_React_.useRef)(null);\n  const [rotatorViewportRef, rotatorInView] = useTextRotatorViewportStart();\n  const textRotatorObject = text_rotator !== undefined && text_rotator !== null ? Object.keys(text_rotator).length > 0 ? Object.values(text_rotator) : {} : {};\n  const formattedRotatorText = typeof textRotatorObject === 'object' && textRotatorObject !== null ? textRotatorObject.length > 0 ? textRotatorObject.map(element => element.value).join('|') : '' // Or any other default value you prefer\n  : '';\n  const beforeText = !(0,lodash.isEmpty)(before_text) && /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: `dsm-rotate-text-before dsm-before-display-${before_display_type}`\n  }, elements.render({\n    attrName: 'before_text'\n  }));\n  const afterText = !(0,lodash.isEmpty)(after_text) && /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: `dsm-rotate-text-after dsm-after-display-${after_display_type}`\n  }, elements.render({\n    attrName: 'after_text'\n  }));\n  (0,external_vendor_React_.useEffect)(() => {\n    if (!rotatorInView) {\n      return;\n    }\n    const el = container.current;\n    if (!el || !formattedRotatorText) {\n      return;\n    }\n\n    /* global ReplaceMe */\n    (function (window, $) {\n      //'use strict';\n      // Extend defaults\n      function extend(target, values) {\n        for (var P in values) {\n          if (values.hasOwnProperty(P)) {\n            target[P] = values[P];\n          }\n        }\n        return target;\n      }\n\n      // Make jQuery component\n      function jqueryComponent() {\n        if (typeof $ === 'function') {\n          $.fn.extend({\n            ReplaceMe: function (options) {\n              return this.each(function () {\n                new ReplaceMe(this, options);\n              });\n            }\n          });\n        }\n      }\n\n      // Constructor\n      function ReplaceMe(element, options) {\n        // Defaults\n        var defaults = {\n          animation: 'animated fadeIn',\n          // String (animation class)\n          speed: 2000,\n          // Integer\n          separator: ',',\n          // String\n          hoverStop: false,\n          // Boolen\n          clickChange: false,\n          // Boolen\n          loopCount: 'infinite',\n          // String or integer\n          autoRun: true,\n          // Boolen\n          onInit: false,\n          // Function\n          onChange: false,\n          // Function\n          onComplete: false // Function\n        };\n\n        // Extend defaults\n        if (typeof options === 'object') {\n          this.options = extend(defaults, options);\n        } else {\n          this.options = defaults;\n        }\n\n        // Get element\n        if (typeof element === 'undefined') {\n          throw new Error('ReplaceMe [constructor]: \"element\" parameter is required');\n        } else if (typeof element === 'object') {\n          this.element = element;\n        } else if (typeof element === 'string') {\n          this.element = document.querySelector(element);\n        } else {\n          throw new Error('ReplaceMe [constructor]: wrong \"element\" parameter');\n        }\n        this.init();\n      }\n      ReplaceMe.prototype.init = function () {\n        if (typeof this.options.onInit === 'function') {\n          this.options.onInit();\n        }\n        this.words = this.escapeHTML(this.element.innerHTML).split(this.options.separator).map(function (w) {\n          return String(w == null ? '' : w).trim();\n        }).filter(function (w) {\n          return w.length > 0;\n        });\n        this.count = this.words.length;\n        this.position = this.loopCount = 0;\n        this.running = false;\n        this.bindAll();\n        if (this.options.autoRun === true) {\n          this.start();\n        }\n      };\n      ReplaceMe.prototype.bindAll = function () {\n        if (this.options.hoverStop === true) {\n          this.element.addEventListener('mouseover', this.pause.bind(this));\n          this.element.addEventListener('mouseout', this.start.bind(this));\n        }\n        if (this.options.clickChange === true) {\n          this.element.addEventListener('click', this.onClickChange.bind(this));\n        }\n      };\n      ReplaceMe.prototype.onClickChange = function () {\n        this.pause();\n        this.change();\n        this.loop = setTimeout(this.changeAnimation.bind(this), this.options.speed);\n      };\n      ReplaceMe.prototype.changeAnimation = function () {\n        this.change();\n        this.loop = setTimeout(this.changeAnimation.bind(this), this.options.speed);\n      };\n      ReplaceMe.prototype.start = function () {\n        if (this.running !== true) {\n          this.running = true;\n          this.changeWord(this.words[this.position]);\n          this.position++;\n        }\n        this.pause();\n        this.loop = setTimeout(this.changeAnimation.bind(this), this.options.speed);\n      };\n      ReplaceMe.prototype.change = function () {\n        if (this.position > this.count - 1) {\n          this.position = 0;\n          this.loopCount++;\n          if (this.loopCount >= this.options.loopCount) {\n            this.stop();\n            return;\n          }\n        }\n        this.changeWord(this.words[this.position]);\n        this.position++;\n        if (typeof this.options.onChange === 'function') {\n          this.options.onChange();\n        }\n      };\n      ReplaceMe.prototype.stop = function () {\n        this.running = false;\n        this.position = this.loopCount = 0;\n        this.pause();\n        if (typeof this.options.onComplete === 'function') {\n          this.options.onComplete();\n        }\n      };\n      ReplaceMe.prototype.pause = function () {\n        clearTimeout(this.loop);\n      };\n      ReplaceMe.prototype.changeWord = function (word) {\n        if (word == null || typeof word === 'undefined') {\n          word = '';\n        }\n        var w = String(word);\n        this.element.innerHTML = '<span class=\"' + this.options.animation + '\" style=\"display:inline-block;\">' + w + '</span>';\n      };\n\n      // If there is html tag inside string delete it\n      ReplaceMe.prototype.escapeHTML = function (string) {\n        var reg = /<\\/?\\w+\\s*[^>]*>/g;\n        if (reg.test(string) === true) {\n          return string.replace(reg, '');\n        }\n        return string;\n      };\n      window.ReplaceMe = ReplaceMe;\n      jqueryComponent();\n    })(window, window.jQuery);\n\n    // Restore plain pipe-separated words after `stop()` / React updates (ReplaceMe replaces innerHTML).\n    el.textContent = formattedRotatorText;\n    const replace = new ReplaceMe(el, {\n      word: formattedRotatorText,\n      animation: 'animated ' + text_rotator_animation_in,\n      speed: parseFloat(text_rotator_speed),\n      separator: '|',\n      hoverStop: 'on' === text_rotator_pause_hover ? true : false,\n      clickChange: 'on' === text_rotator_click_change ? true : false,\n      loopCount: 'infinite',\n      autoRun: false,\n      onInit: false,\n      onChange: false,\n      onComplete: false\n    });\n    replace.start();\n    return () => {\n      if (replace && typeof replace.stop === 'function') {\n        replace.stop();\n      }\n    };\n  }, [rotatorInView, text_rotator, text_rotator_speed, text_rotator_pause_hover, text_rotator_click_change, text_rotator_animation_in, formattedRotatorText]);\n  const refreshKey = [formattedRotatorText, text_rotator_animation_in, text_rotator_speed, text_rotator_pause_hover, text_rotator_click_change];\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: text_rotator_edit_ModuleScriptData,\n    stylesComponent: text_rotator_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(Tag, {\n    key: refreshKey.join(','),\n    className: \"dsm-rotate-text-main et_pb_module_header\"\n  }, beforeText, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    ref: rotatorViewportRef,\n    className: \"dsm-rotate-text-vb-viewport-track\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    ref: container,\n    className: `dsm-rotate-text dsm-rotator-display-${rotator_display_type}`\n  }, formattedRotatorText)), afterText));\n}\n/* harmony default export */ const text_rotator_edit = (text_rotator_edit_Edit);\n;// ./packages/module-library/text-rotator/conversion-outline.js\nconst text_rotator_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border',\n      before: 'beforeStyle.decoration.border',\n      rotator: 'rotatorStyle.decoration.border',\n      after: 'afterStyle.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow',\n      before: 'beforeStyle.decoration.boxShadow',\n      rotator: 'rotatorStyle.decoration.boxShadow',\n      after: 'afterStyle.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    display_conditions: 'module.decoration.conditions',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    margin_padding: 'module.decoration.spacing',\n    max_width: 'module.advanced.sizing',\n    height: 'module.advanced.sizing',\n    link_options: 'module.advanced.link',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    text: 'module.advanced.text',\n    text_shadow: {\n      default: 'module.advanced.text.textShadow'\n    },\n    fonts: {\n      header: 'main_text.decoration.font',\n      before: 'before_text.decoration.font',\n      rotator: 'rotator_text.decoration.font',\n      after: 'after_text.decoration.font'\n    }\n  },\n  css: {\n    before: 'css.*.before',\n    rotator: 'css.*.rotator',\n    after: 'css.*.after',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    before_text: 'before_text.innerContent.*',\n    after_text: 'after_text.innerContent.*',\n    text_rotator: 'text_rotator.innerContent.*',\n    text_rotator_animation_in: 'text_rotator_animation_in.innerContent.*',\n    text_rotator_speed: 'text_rotator_speed.innerContent.*',\n    text_rotator_pause_hover: 'text_rotator_pause_hover.innerContent.*',\n    text_rotator_click_change: 'text_rotator_click_change.innerContent.*',\n    heading_html_tag: 'heading_html_tag.innerContent.*',\n    before_background_color: 'before_background_color.innerContent.*',\n    rotator_background_color: 'rotator_background_color.innerContent.*',\n    after_background_color: 'after_background_color.innerContent.*',\n    before_margin: 'before_margin.innerContent.*',\n    rotator_margin: 'rotator_margin.innerContent.*',\n    after_margin: 'after_margin.innerContent.*',\n    before_padding: 'before_padding.innerContent.*',\n    rotator_padding: 'rotator_padding.innerContent.*',\n    after_padding: 'after_padding.innerContent.*',\n    before_display_type: 'before_display_type.innerContent.*',\n    rotator_display_type: 'rotator_display_type.innerContent.*',\n    after_display_type: 'after_display_type.innerContent.*',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes',\n    text_rotator: 'sortableListConverter'\n  }\n};\n;// ./packages/module-library/text-rotator/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmTextRotatorIcon', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/text-rotator': {\n      name: 'divi-supreme/text-rotator',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 8.6875 11.25 L 8.410156 10.914062 C 8.578125 10.773438 8.664062 10.632812 8.671875 10.472656 C 8.6875 10.15625 8.410156 9.863281 8.410156 9.859375 L 8.402344 9.839844 L 6.40625 7.390625 L 5.609375 8.039062 C 5.355469 8.246094 5.292969 8.503906 5.289062 8.683594 C 5.28125 8.808594 5.203125 8.917969 5.085938 8.957031 C 4.964844 8.996094 4.835938 8.964844 4.761719 8.859375 L 3.441406 7.242188 L 8.429688 3.183594 L 9.746094 4.800781 C 9.828125 4.898438 9.839844 5.03125 9.777344 5.144531 C 9.714844 5.253906 9.59375 5.3125 9.46875 5.289062 C 9.289062 5.261719 9.027344 5.265625 8.773438 5.472656 L 7.976562 6.121094 L 9.984375 8.585938 C 9.984375 8.585938 10.210938 8.917969 10.53125 8.964844 C 10.695312 8.984375 10.847656 8.933594 11.015625 8.796875 L 11.289062 9.136719 Z M 8.734375 9.558594 C 8.785156 9.617188 9.066406 9.9375 9.105469 10.34375 L 10.304688 9.371094 C 9.914062 9.25 9.65625 8.910156 9.609375 8.84375 L 7.339844 6.058594 L 8.480469 5.128906 C 8.726562 4.925781 8.980469 4.851562 9.199219 4.835938 L 8.355469 3.796875 L 4.050781 7.304688 L 4.890625 8.34375 C 4.957031 8.132812 5.074219 7.902344 5.320312 7.703125 L 6.460938 6.773438 Z M 8.734375 9.558594 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 2.390625 6.527344 C 1.957031 6.527344 1.601562 6.171875 1.601562 5.734375 C 1.601562 5.300781 1.957031 4.945312 2.390625 4.945312 C 2.828125 4.945312 3.183594 5.300781 3.183594 5.734375 C 3.183594 6.171875 2.828125 6.527344 2.390625 6.527344 Z M 2.390625 5.378906 C 2.195312 5.378906 2.035156 5.539062 2.035156 5.734375 C 2.035156 5.929688 2.195312 6.089844 2.390625 6.089844 C 2.585938 6.089844 2.746094 5.929688 2.746094 5.734375 C 2.742188 5.539062 2.582031 5.378906 2.390625 5.378906 Z M 2.390625 5.378906 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.53125 11.300781 C 12.097656 11.300781 11.742188 10.945312 11.742188 10.511719 C 11.742188 10.074219 12.097656 9.71875 12.53125 9.71875 C 12.96875 9.71875 13.324219 10.074219 13.324219 10.511719 C 13.324219 10.945312 12.96875 11.300781 12.53125 11.300781 Z M 12.53125 10.15625 C 12.335938 10.15625 12.175781 10.316406 12.175781 10.511719 C 12.175781 10.707031 12.335938 10.867188 12.53125 10.867188 C 12.726562 10.867188 12.886719 10.707031 12.886719 10.511719 C 12.886719 10.316406 12.726562 10.15625 12.53125 10.15625 Z M 12.53125 10.15625 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 10.996094 1.167969 L 10.0625 2.359375 C 9.992188 2.445312 9.988281 2.566406 10.050781 2.65625 L 10.933594 3.988281 C 11.007812 4.101562 11.167969 4.136719 11.28125 4.054688 C 11.398438 3.976562 11.433594 3.820312 11.351562 3.707031 L 10.699219 2.726562 C 11.464844 2.59375 12.257812 2.792969 12.871094 3.277344 C 14.082031 4.222656 14.296875 5.964844 13.351562 7.175781 C 13.265625 7.285156 13.285156 7.445312 13.398438 7.53125 C 13.507812 7.617188 13.667969 7.597656 13.753906 7.484375 C 14.28125 6.8125 14.523438 5.960938 14.429688 5.109375 C 14.234375 3.3125 12.625 2.007812 10.824219 2.199219 L 11.390625 1.46875 C 11.484375 1.367188 11.464844 1.207031 11.351562 1.121094 C 11.242188 1.035156 11.082031 1.050781 10.996094 1.167969 Z M 10.996094 1.167969 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 5.6875 14.277344 L 6.5 13 C 6.558594 12.90625 6.550781 12.789062 6.484375 12.703125 L 5.476562 11.460938 C 5.390625 11.355469 5.226562 11.335938 5.121094 11.429688 C 5.011719 11.515625 4.992188 11.675781 5.085938 11.785156 L 5.832031 12.703125 C 5.078125 12.902344 4.277344 12.78125 3.617188 12.363281 C 2.320312 11.539062 1.9375 9.824219 2.761719 8.527344 C 2.835938 8.40625 2.804688 8.253906 2.683594 8.179688 C 2.5625 8.101562 2.40625 8.136719 2.332031 8.257812 C 1.875 8.976562 1.714844 9.847656 1.886719 10.683594 C 2.253906 12.453125 3.984375 13.59375 5.761719 13.234375 L 5.269531 14.015625 C 5.195312 14.132812 5.226562 14.289062 5.347656 14.363281 C 5.46875 14.4375 5.613281 14.390625 5.6875 14.277344 Z M 5.6875 14.277344 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/text-rotator/index.js\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n\n\n\n\n\n\nconst text_rotator_defaultAttrs = text_rotator_module_default_render_attributes_namespaceObject;\nconst textRotatorModule = {\n  metadata: text_rotator_module_namespaceObject,\n  conversionOutline: text_rotator_conversion_outline_conversionOutline,\n  renderers: {\n    edit: text_rotator_edit,\n    styles: text_rotator_module_styles_ModuleStyles\n  },\n  defaultAttrs: text_rotator_defaultAttrs,\n  settings: {\n    content: text_rotator_settings_content,\n    design: text_rotator_settings_design,\n    advanced: text_rotator_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    ...text_rotator_module_default_render_attributes_namespaceObject\n  }\n};\n/* harmony default export */ const text_rotator = (textRotatorModule);\n;// ./packages/module-library/tilt-image/module.json\nconst tilt_image_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/tilt-image\",\"d4Shortcode\":\"dsm_tilt_image\",\"title\":\"Supreme Tilt Image\",\"titles\":\"Supreme Tilt Image\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/tilt-image\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}},\"default\":{\"advanced\":{\"text\":{\"text\":{\"desktop\":{\"value\":{\"color\":\"light\",\"orientation\":\"center\"}}}}}}},\"src\":{\"type\":\"object\",\"label\":\"Image\",\"selector\":\"{{selector}} .et_pb_image_wrap img\",\"elementType\":\"image\",\"supportsCustomAttributes\":true,\"childrenSanitizer\":\"et_core_esc_previously\"},\"alt\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"title_text\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"show_in_lightbox\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"url\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"url_new_window\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tilt_mobile\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tilt_perspective\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"1000px\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tilt_scale\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"1\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tilt_max\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"35\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tilt_speed\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"300\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_use_glare\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tilt_reverse\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tilt_glare\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"1\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_use_parallax\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tilt_parallax\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"30px\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_overlay\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"overlay_icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"icon\":{\"type\":\"object\",\"inlineEditor\":\"IconPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_overlay_title\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_tilt_overlay_title\",\"default\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"headingLevel\":\"h3\"}}}}}},\"attributes\":{\"class\":\"dsm_tilt_overlay_title et_pb_module_header\"},\"tagName\":\"h3\",\"inlineEditor\":\"plainText\",\"elementType\":\"headingLink\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm_tilt_overlay_title\",\"hover\":\"{{selector}}:hover .dsm_tilt_overlay_title\"}}}}},\"content\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_tilt_overlay_content\",\"inlineEditor\":\"RichTextContainer\",\"elementType\":\"content\",\"attributes\":{\"class\":\"dsm_tilt_overlay_content\"},\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm_tilt_overlay_content\",\"hover\":\"{{selector}}:hover .dsm_tilt_overlay_content\"}}}}},\"dsm_overlay_on_hover\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_overlay_content_orientation\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_overlay_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_icon_font_size\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"icon_font_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"align\":{\"type\":\"object\",\"inlineEditor\":\"buttonAlignmentControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"force_fullwidth\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/tilt-image/module-default-render-attributes.json\nconst tilt_image_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"module\":{\"decoration\":{},\"advanced\":{\"text\":{\"text\":{\"desktop\":{\"value\":{\"color\":\"light\",\"orientation\":\"center\"}}}}}},\"src\":{\"innerContent\":{\"desktop\":{\"value\":{\"src\":\"\"}}}},\"alt\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"title_text\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"show_in_lightbox\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"url\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"url_new_window\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"dsm_tilt_mobile\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"dsm_tilt_perspective\":{\"innerContent\":{\"desktop\":{\"value\":\"1000px\"}}},\"dsm_tilt_scale\":{\"innerContent\":{\"desktop\":{\"value\":\"1\"}}},\"dsm_tilt_max\":{\"innerContent\":{\"desktop\":{\"value\":\"35\"}}},\"dsm_tilt_speed\":{\"innerContent\":{\"desktop\":{\"value\":\"300\"}}},\"dsm_use_glare\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"dsm_tilt_glare\":{\"innerContent\":{\"desktop\":{\"value\":\"1\"}}},\"dsm_tilt_reverse\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"dsm_use_parallax\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"dsm_tilt_parallax\":{\"innerContent\":{\"desktop\":{\"value\":\"30px\"}}},\"use_overlay\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"icon\":{\"innerContent\":{\"desktop\":{\"value\":{\"type\":\"divi\",\"unicode\":\"&#xe08a;\",\"weight\":\"400\"}}}},\"dsm_overlay_title\":{\"innerContent\":{\"desktop\":{\"value\":{\"text\":\"\"}}},\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"headingLevel\":\"h3\"}}}}}},\"content\":{\"innerContent\":{\"desktop\":{\"value\":{\"text\":\"\"}}}},\"dsm_overlay_on_hover\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"dsm_overlay_content_orientation\":{\"innerContent\":{\"desktop\":{\"value\":\"center\"}}},\"dsm_overlay_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"overlay_icon_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"use_icon_font_size\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"icon_font_size\":{\"innerContent\":{\"desktop\":{\"value\":\"96px\"}}},\"align\":{\"innerContent\":{\"desktop\":{\"value\":\"left\"}}},\"force_fullwidth\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}}}');\n;// ./packages/module-library/tilt-image/tilt-image-vb-default-attrs.js\n/**\n * Visual Builder `defaultAttr` map from `module-default-render-attributes.json`\n * (scalar `innerContent` fields only — module root / decorations use full attr paths in `FieldContainer`).\n *\n * @package DiviSupreme\n */\n\n\nconst tilt_image_vb_default_attrs_skip = new Set(['module']);\nconst tiltImageFieldDefaultInnerContent = Object.fromEntries(Object.entries(tilt_image_module_default_render_attributes_namespaceObject).filter(([key, attr]) => !tilt_image_vb_default_attrs_skip.has(key) && attr && attr.innerContent).map(([key, attr]) => [key, attr.innerContent]));\n\n/** @type {typeof tiltImageFieldDefaultInnerContent} */\nconst tiltFd = tiltImageFieldDefaultInnerContent;\n\n/** Rich overlay body (`content` / `elementType: content`). */\nconst tiltContentRichTextVbDefaultAttr = {\n  desktop: {\n    value: {\n      text: ''\n    }\n  }\n};\n\n/** Must match `index.js` placeholder for `src`. */\nconst tiltImageUploadVbDefaultAttr = {\n  desktop: {\n    value: {\n      src: 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTA4MCIgaGVpZ2h0PSI1NDAiIHZpZXdCb3g9IjAgMCAxMDgwIDU0MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPHBhdGggZmlsbD0iI0VCRUJFQiIgZD0iTTAgMGgxMDgwdjU0MEgweiIvPgogICAgICAgIDxwYXRoIGQ9Ik00NDUuNjQ5IDU0MGgtOTguOTk1TDE0NC42NDkgMzM3Ljk5NSAwIDQ4Mi42NDR2LTk4Ljk5NWwxMTYuMzY1LTExNi4zNjVjMTUuNjItMTUuNjIgNDAuOTQ3LTE1LjYyIDU2LjU2OCAwTDQ0NS42NSA1NDB6IiBmaWxsLW9wYWNpdHk9Ii4xIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgICAgICA8Y2lyY2xlIGZpbGwtb3BhY2l0eT0iLjA1IiBmaWxsPSIjMDAwIiBjeD0iMzMxIiBjeT0iMTQ4IiByPSI3MCIvPgogICAgICAgIDxwYXRoIGQ9Ik0xMDgwIDM3OXYxMTMuMTM3TDcyOC4xNjIgMTQwLjMgMzI4LjQ2MiA1NDBIMjE1LjMyNEw2OTkuODc4IDU1LjQ0NmMxNS42Mi0xNS42MiA0MC45NDgtMTUuNjIgNTYuNTY4IDBMMTA4MCAzNzl6IiBmaWxsLW9wYWNpdHk9Ii4yIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgIDwvZz4KPC9zdmc+Cg=='\n    }\n  }\n};\n;// ./packages/module-library/tilt-image/settings-content.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\n\nfunction tilt_image_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  const useGlareAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_use_glare?.innerContent);\n  const use3dPopOutAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_use_parallax?.innerContent);\n  const useIconAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_overlay?.innerContent);\n  const showInLightbox = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_in_lightbox?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Upload your desired image, or type in the URL to the image you would like to display.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"src.innerContent\",\n    subName: \"src\",\n    defaultAttr: tiltImageUploadVbDefaultAttr,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"tilt_settings\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tilt Settings', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tilt_mobile.innerContent\",\n    defaultAttr: tiltFd.dsm_tilt_mobile,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Disable on Mobile', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('This will disable the Tilt effect On mobile devices.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tilt_perspective.innerContent\",\n    defaultAttr: tiltFd.dsm_tilt_perspective,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Perspective', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Transform perspective, the lower the more extreme the tilt gets.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 500,\n    max: 1500,\n    defaultUnit: \"px\",\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tilt_scale.innerContent\",\n    defaultAttr: tiltFd.dsm_tilt_scale,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Scale on Hover', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Scale on hover. 2 = 200%, 1.5 = 150%.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 2,\n    defaultUnit: '',\n    step: 0.1\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tilt_max.innerContent\",\n    defaultAttr: tiltFd.dsm_tilt_max,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Max Rotation', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('The Max Tilt Rotation. The lower the less rotation the tilt gets.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 10,\n    max: 50,\n    defaultUnit: ''\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tilt_speed.innerContent\",\n    defaultAttr: tiltFd.dsm_tilt_speed,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Speed', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('The Speed of the enter/exit transition.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 50,\n    max: 500,\n    defaultUnit: ''\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_use_glare.innerContent\",\n    defaultAttr: tiltFd.dsm_use_glare,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Glare', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If enabled, it will have a \"glare\" effect on hover.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tilt_reverse.innerContent\",\n    defaultAttr: tiltFd.dsm_tilt_reverse,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Reverse', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('This will reverse the tilt direction.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tilt_glare.innerContent\",\n    defaultAttr: tiltFd.dsm_tilt_glare,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Glare', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('The glare opacity.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useGlareAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0.1,\n    max: 1,\n    step: 0.1,\n    defaultUnit: '',\n    allowedUnits: ['']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_use_parallax.innerContent\",\n    defaultAttr: tiltFd.dsm_use_parallax,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use 3D Pop Out Effect', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tilt_parallax.innerContent\",\n    defaultAttr: tiltFd.dsm_tilt_parallax,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay 3D Pop out', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('The overlay pop out effect between the image and the overlay.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === use3dPopOutAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 20,\n    max: 100,\n    defaultUnit: \"px\",\n    allowedUnits: ['px']\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"overlay\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_overlay.innerContent\",\n    defaultAttr: tiltFd.use_overlay,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Icon', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"icon.innerContent\",\n    defaultAttr: tiltFd.icon,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useIconAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_overlay_title.innerContent\",\n    subName: \"text\",\n    defaultAttr: tiltFd.dsm_overlay_title,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay Title', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"content.innerContent\",\n    subName: \"text\",\n    defaultAttr: tiltContentRichTextVbDefaultAttr,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay Content', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RichTextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_overlay_on_hover.innerContent\",\n    defaultAttr: tiltFd.dsm_overlay_on_hover,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show on Hover', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"link\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Link', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"show_in_lightbox.innerContent\",\n    defaultAttr: tiltFd.show_in_lightbox,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Open in Lightbox', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"url.innerContent\",\n    defaultAttr: tiltFd.url,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Link URL', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'off' === showInLightbox\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"url_new_window.innerContent\",\n    defaultAttr: tiltFd.url_new_window,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Link URL', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'off' === showInLightbox\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      off: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The Same Window', 'dsm-supreme-modules-pro-for-divi')\n      },\n      on: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The New Tab', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const tilt_image_settings_content = (tilt_image_settings_content_SettingsContent);\n;// ./packages/module-library/tilt-image/settings-design.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\nfunction tilt_image_settings_design_SettingsDesign({\n  attrs\n}) {\n  const useIcon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_overlay?.innerContent);\n  const useIconFontSizeAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_icon_font_size?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"overlay\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_overlay_color.innerContent\",\n    defaultAttr: tiltFd.dsm_overlay_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"overlay_icon_color.innerContent\",\n    defaultAttr: tiltFd.overlay_icon_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay Icon Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useIcon\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_icon_font_size.innerContent\",\n    defaultAttr: tiltFd.use_icon_font_size,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Icon Font Size', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useIcon\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"icon_font_size.innerContent\",\n    defaultAttr: tiltFd.icon_font_size,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Font Size', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useIcon && 'on' === useIconFontSizeAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 120,\n    defaultunit: 'px'\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"alignment\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Alignment', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"align.innerContent\",\n    defaultAttr: tiltFd.align,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\",\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"overlay_text\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_overlay_content_orientation.innerContent\",\n    defaultAttr: tiltFd.dsm_overlay_content_orientation,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text Vertical Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', '')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      'flex-start': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'flex-end': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"dsm_overlay_title.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay Title', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: true\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"content.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay Content', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextGroup, {\n    grouped: false,\n    fields: {\n      orientation: {\n        render: true\n      },\n      textShadowGroup: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const tilt_image_settings_design = (tilt_image_settings_design_SettingsDesign);\n;// ./packages/module-library/tilt-image/settings-advanced.js\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\nfunction tilt_image_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_tilt_image\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const tilt_image_settings_advanced = (tilt_image_settings_advanced_SettingsAdvanced);\n// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js\nvar jsx_runtime = __webpack_require__(\"./node_modules/react/jsx-runtime.js\");\n;// ./node_modules/react-parallax-tilt/dist/modern/index.js\nconst modern_i=(t,e,i,n)=>{t.style.transition=`${e} ${i}ms ${n}`},modern_n=(t,e,i)=>Math.min(Math.max(t,e),i);class modern_s{constructor(t,e){this.glareAngle=0,this.glareOpacity=0,this.calculateGlareSize=t=>{const{width:e,height:i}=t,n=Math.sqrt(e**2+i**2);return{width:n,height:n}},this.setSize=t=>{const e=this.calculateGlareSize(t);this.glareEl.style.width=`${e.width}px`,this.glareEl.style.height=`${e.height}px`},this.update=(t,e,i,n)=>{this.updateAngle(t,e.glareReverse),this.updateOpacity(t,e,i,n)},this.updateAngle=(t,e)=>{const{xPercentage:i,yPercentage:n}=t,s=180/Math.PI,r=i?Math.atan2(n,-i)*s:0;this.glareAngle=r-(e?180:0)},this.updateOpacity=(t,e,i,s)=>{const{xPercentage:r,yPercentage:l}=t,{glarePosition:a,glareReverse:o,glareMaxOpacity:h}=e,p=i?-1:1,c=s?-1:1,g=o?-1:1;let d=0;switch(a){case\"top\":d=-r*p*g;break;case\"right\":d=l*c*g;break;case\"bottom\":case void 0:d=r*p*g;break;case\"left\":d=-l*c*g;break;case\"all\":d=Math.hypot(r,l)}const u=modern_n(d,0,100);this.glareOpacity=u*h/100},this.render=t=>{const{glareColor:e}=t;this.glareEl.style.transform=`rotate(${this.glareAngle}deg) translate(-50%, -50%)`,this.glareEl.style.opacity=this.glareOpacity.toString(),this.glareEl.style.background=`linear-gradient(0deg, rgba(255,255,255,0) 0%, ${e} 100%)`},this.glareWrapperEl=document.createElement(\"div\"),this.glareEl=document.createElement(\"div\"),this.glareWrapperEl.appendChild(this.glareEl),this.glareWrapperEl.className=\"glare-wrapper\",this.glareEl.className=\"glare\";const i={position:\"absolute\",top:\"0\",left:\"0\",width:\"100%\",height:\"100%\",overflow:\"hidden\",borderRadius:e,WebkitMaskImage:\"-webkit-radial-gradient(white, black)\",pointerEvents:\"none\"},s=this.calculateGlareSize(t),r={position:\"absolute\",top:\"50%\",left:\"50%\",transformOrigin:\"0% 0%\",pointerEvents:\"none\",width:`${s.width}px`,height:`${s.height}px`};Object.assign(this.glareWrapperEl.style,i),Object.assign(this.glareEl.style,r)}}class modern_r{constructor(){this.tiltAngleX=0,this.tiltAngleY=0,this.tiltAngleXPercentage=0,this.tiltAngleYPercentage=0,this.update=(t,e)=>{this.updateTilt(t,e),this.updateTiltManualInput(t,e),this.updateTiltReverse(e),this.updateTiltLimits(e)},this.updateTilt=(t,e)=>{const{xPercentage:i,yPercentage:n}=t,{tiltMaxAngleX:s,tiltMaxAngleY:r}=e;this.tiltAngleX=i*s/100,this.tiltAngleY=n*r/100*-1},this.updateTiltManualInput=(t,e)=>{const{tiltAngleXManual:i,tiltAngleYManual:n,tiltMaxAngleX:s,tiltMaxAngleY:r}=e;(null!==i||null!==n)&&(this.tiltAngleX=null!==i?i:0,this.tiltAngleY=null!==n?n:0,t.xPercentage=100*this.tiltAngleX/s,t.yPercentage=100*this.tiltAngleY/r)},this.updateTiltReverse=t=>{const e=t.tiltReverse?-1:1;this.tiltAngleX=e*this.tiltAngleX,this.tiltAngleY=e*this.tiltAngleY},this.updateTiltLimits=t=>{const{tiltAxis:e}=t;this.tiltAngleX=modern_n(this.tiltAngleX,-90,90),this.tiltAngleY=modern_n(this.tiltAngleY,-90,90);e&&(this.tiltAngleX=\"x\"===e?this.tiltAngleX:0,this.tiltAngleY=\"y\"===e?this.tiltAngleY:0)},this.updateTiltAnglesPercentage=t=>{const{tiltMaxAngleX:e,tiltMaxAngleY:i}=t;this.tiltAngleXPercentage=this.tiltAngleX/e*100,this.tiltAngleYPercentage=this.tiltAngleY/i*100},this.render=t=>{t.style.transform+=`rotateX(${this.tiltAngleX}deg) rotateY(${this.tiltAngleY}deg) `}}}const modern_l={scale:1,perspective:1e3,flipVertically:!1,flipHorizontally:!1,reset:!0,transitionEasing:\"cubic-bezier(.03,.98,.52,.99)\",transitionSpeed:400,trackOnWindow:!1,gyroscope:!1,...{tiltEnable:!0,tiltReverse:!1,tiltAngleXInitial:0,tiltAngleYInitial:0,tiltMaxAngleX:20,tiltMaxAngleY:20,tiltAxis:void 0,tiltAngleXManual:null,tiltAngleYManual:null},glareEnable:!1,glareMaxOpacity:.7,glareColor:\"#ffffff\",glarePosition:\"bottom\",glareReverse:!1,glareBorderRadius:\"0\"};class modern_a extends external_vendor_React_.PureComponent{constructor(){super(...arguments),this.wrapperEl={node:null,size:{width:0,height:0,left:0,top:0},clientPosition:{x:null,y:null,xPercentage:0,yPercentage:0},updateAnimationId:null,scale:1},this.tilt=null,this.glare=null,this.addDeviceOrientationEventListener=async()=>{if(!window.DeviceOrientationEvent)return;const t=DeviceOrientationEvent.requestPermission;if(\"function\"==typeof t){return void(\"granted\"===await t()&&window.addEventListener(\"deviceorientation\",this.onMove))}window.addEventListener(\"deviceorientation\",this.onMove)},this.setSize=()=>{this.setWrapperElSize(),this.glare&&this.glare.setSize(this.wrapperEl.size)},this.mainLoop=t=>{null!==this.wrapperEl.updateAnimationId&&cancelAnimationFrame(this.wrapperEl.updateAnimationId),this.processInput(t),this.update(t.type),this.wrapperEl.updateAnimationId=requestAnimationFrame(this.renderFrame)},this.onEnter=t=>{const{onEnter:e}=this.props;this.setSize(),this.wrapperEl.node.style.willChange=\"transform\",this.setTransitions(),e&&e({event:t})},this.onMove=t=>{this.mainLoop(t),this.emitOnMove(t)},this.onLeave=t=>{const{onLeave:e}=this.props;if(this.setTransitions(),e&&e({event:t}),this.props.reset){const t=new CustomEvent(\"autoreset\");this.onMove(t)}},this.processInput=t=>{const{scale:e}=this.props;switch(t.type){case\"mousemove\":this.wrapperEl.clientPosition.x=t.pageX,this.wrapperEl.clientPosition.y=t.pageY,this.wrapperEl.scale=e;break;case\"touchmove\":this.wrapperEl.clientPosition.x=t.touches[0].pageX,this.wrapperEl.clientPosition.y=t.touches[0].pageY,this.wrapperEl.scale=e;break;case\"deviceorientation\":this.processInputDeviceOrientation(t),this.wrapperEl.scale=e;break;case\"autoreset\":{const{tiltAngleXInitial:t,tiltAngleYInitial:e,tiltMaxAngleX:i,tiltMaxAngleY:s}=this.props,r=e/s*100;this.wrapperEl.clientPosition.xPercentage=modern_n(t/i*100,-100,100),this.wrapperEl.clientPosition.yPercentage=modern_n(r,-100,100),this.wrapperEl.scale=1;break}}},this.processInputDeviceOrientation=t=>{if(!t.gamma||!t.beta||!this.props.gyroscope)return;const{tiltMaxAngleX:e,tiltMaxAngleY:i}=this.props,s=t.gamma;this.wrapperEl.clientPosition.xPercentage=t.beta/e*100,this.wrapperEl.clientPosition.yPercentage=s/i*100,this.wrapperEl.clientPosition.xPercentage=modern_n(this.wrapperEl.clientPosition.xPercentage,-100,100),this.wrapperEl.clientPosition.yPercentage=modern_n(this.wrapperEl.clientPosition.yPercentage,-100,100)},this.update=t=>{const{tiltEnable:e,flipVertically:i,flipHorizontally:n}=this.props;\"autoreset\"!==t&&\"deviceorientation\"!==t&&\"propChange\"!==t&&this.updateClientInput(),e&&this.tilt.update(this.wrapperEl.clientPosition,this.props),this.updateFlip(),this.tilt.updateTiltAnglesPercentage(this.props),this.glare&&this.glare.update(this.wrapperEl.clientPosition,this.props,i,n)},this.updateClientInput=()=>{const{trackOnWindow:t}=this.props;let e,i;if(t){const{x:t,y:n}=this.wrapperEl.clientPosition;e=n/window.innerHeight*200-100,i=t/window.innerWidth*200-100}else{const{size:{width:t,height:n,left:s,top:r},clientPosition:{x:l,y:a}}=this.wrapperEl;e=(a-r)/n*200-100,i=(l-s)/t*200-100}this.wrapperEl.clientPosition.xPercentage=modern_n(e,-100,100),this.wrapperEl.clientPosition.yPercentage=modern_n(i,-100,100)},this.updateFlip=()=>{const{flipVertically:t,flipHorizontally:e}=this.props;t&&(this.tilt.tiltAngleX+=180,this.tilt.tiltAngleY*=-1),e&&(this.tilt.tiltAngleY+=180)},this.renderFrame=()=>{this.resetWrapperElTransform(),this.renderPerspective(),this.tilt.render(this.wrapperEl.node),this.renderScale(),this.glare&&this.glare.render(this.props)}}componentDidMount(){if(this.tilt=new modern_r,this.initGlare(),this.setSize(),this.addEventListeners(),\"undefined\"==typeof CustomEvent)return;const t=new CustomEvent(\"autoreset\");this.mainLoop(t);const e=new CustomEvent(\"initial\");this.emitOnMove(e)}componentWillUnmount(){null!==this.wrapperEl.updateAnimationId&&cancelAnimationFrame(this.wrapperEl.updateAnimationId),this.removeEventListeners()}componentDidUpdate(){const t=new CustomEvent(\"propChange\");this.mainLoop(t),this.emitOnMove(t)}addEventListeners(){const{trackOnWindow:t,gyroscope:e}=this.props;window.addEventListener(\"resize\",this.setSize),t&&(window.addEventListener(\"mouseenter\",this.onEnter),window.addEventListener(\"mousemove\",this.onMove),window.addEventListener(\"mouseout\",this.onLeave),window.addEventListener(\"touchstart\",this.onEnter),window.addEventListener(\"touchmove\",this.onMove),window.addEventListener(\"touchend\",this.onLeave)),e&&this.addDeviceOrientationEventListener()}removeEventListeners(){const{trackOnWindow:t,gyroscope:e}=this.props;window.removeEventListener(\"resize\",this.setSize),t&&(window.removeEventListener(\"mouseenter\",this.onEnter),window.removeEventListener(\"mousemove\",this.onMove),window.removeEventListener(\"mouseout\",this.onLeave),window.removeEventListener(\"touchstart\",this.onEnter),window.removeEventListener(\"touchmove\",this.onMove),window.removeEventListener(\"touchend\",this.onLeave)),e&&window.DeviceOrientationEvent&&window.removeEventListener(\"deviceorientation\",this.onMove)}setWrapperElSize(){const t=this.wrapperEl.node.getBoundingClientRect();this.wrapperEl.size.width=this.wrapperEl.node.offsetWidth,this.wrapperEl.size.height=this.wrapperEl.node.offsetHeight,this.wrapperEl.size.left=t.left+window.scrollX,this.wrapperEl.size.top=t.top+window.scrollY}initGlare(){const{glareEnable:t,glareBorderRadius:e}=this.props;t&&(this.glare=new modern_s(this.wrapperEl.size,e),this.wrapperEl.node.appendChild(this.glare.glareWrapperEl))}emitOnMove(t){const{onMove:e}=this.props;if(!e)return;let i=0,n=0;this.glare&&(i=this.glare.glareAngle,n=this.glare.glareOpacity),e({tiltAngleX:this.tilt.tiltAngleX,tiltAngleY:this.tilt.tiltAngleY,tiltAngleXPercentage:this.tilt.tiltAngleXPercentage,tiltAngleYPercentage:this.tilt.tiltAngleYPercentage,glareAngle:i,glareOpacity:n,event:t})}resetWrapperElTransform(){this.wrapperEl.node.style.transform=\"\"}renderPerspective(){const{perspective:t}=this.props;this.wrapperEl.node.style.transform+=`perspective(${t}px) `}renderScale(){const{scale:t}=this.wrapperEl;this.wrapperEl.node.style.transform+=`scale3d(${t},${t},${t})`}setTransitions(){const{transitionSpeed:t,transitionEasing:e}=this.props;modern_i(this.wrapperEl.node,\"all\",t,e),this.glare&&modern_i(this.glare.glareEl,\"opacity\",t,e)}render(){const{children:e,className:i,style:n}=this.props;return (0,jsx_runtime.jsx)(\"div\",{ref:t=>{this.wrapperEl.node=t},onMouseEnter:this.onEnter,onMouseMove:this.onMove,onMouseLeave:this.onLeave,onTouchStart:this.onEnter,onTouchMove:this.onMove,onTouchEnd:this.onLeave,className:i,style:n,children:e})}}modern_a.defaultProps=modern_l;\n\n;// ./packages/module-library/tilt-image/module-styles.js\n\n\n\n\n\nconst tilt_image_module_styles_iconFontCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'font-family': true\n    }\n  });\n  if (isDsmIcon(attrValue)) {\n    return '';\n  }\n  addNativeIconFontFamily(declarations, attrValue);\n  addNativeIconFontContent(declarations, attrValue);\n  return declarations.value;\n};\nconst popupoutStyleDeclaration = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      transform: true\n    }\n  });\n  declarations.add('transform', `translateZ(${attrValue})`);\n  return declarations.value;\n};\n\n/**\n * React function component for rendering module style.\n */\nconst tilt_image_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextStyle, {\n    selector: `${orderClass} .dsm-tilt-image-wrapper`,\n    attr: attrs?.module?.advanced?.text\n  }), elements.style({\n    attrName: 'dsm_overlay_title'\n  }), elements.style({\n    attrName: 'content'\n  }), elements.style({\n    attrName: 'icon'\n  }), elements.style({\n    attrName: 'overlay_icon_color'\n  }), elements.style({\n    attrName: 'icon_font_size'\n  }), elements.style({\n    attrName: 'dsm_overlay_color'\n  }), elements.style({\n    attrName: 'dsm_overlay_content_orientation'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}`,\n    attr: attrs?.align?.innerContent,\n    property: \"text-align\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et-pb-icon::after`,\n    attr: attrs?.icon?.innerContent,\n    declarationFunction: tilt_image_module_styles_iconFontCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et-pb-icon`,\n    attr: attrs?.overlay_icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et-pb-icon`,\n    attr: attrs?.icon_font_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et-pb-icon .dsm-webfont-icon-glyph`,\n    attr: attrs?.overlay_icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et-pb-icon .dsm-webfont-icon-glyph`,\n    attr: attrs?.icon_font_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_image_overlay`,\n    attr: attrs?.dsm_overlay_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_tilt_overlay`,\n    attr: attrs?.dsm_overlay_content_orientation?.innerContent,\n    property: \"align-items\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_tilt_overlay`,\n    attr: attrs?.dsm_tilt_parallax?.innerContent,\n    declarationFunction: popupoutStyleDeclaration\n  }));\n};\n;// ./packages/module-library/tilt-image/edit.js\n\n\n\n\n// Divi package dependencies.\n\n\n\n\n// Custom dependencies.\n\n\n\n\n/**\n * Normalize upload / image innerContent for DynamicValueResolver and img src.\n *\n * @param {*} raw From getAttrByMode( attrs.src.innerContent ).\n * @return {string}\n */\nfunction tilt_image_edit_getUploadValueForDynamicData(raw) {\n  if (raw == null || raw === '') {\n    return '';\n  }\n  if (typeof raw === 'string' || typeof raw === 'number') {\n    return String(raw);\n  }\n  if (typeof raw === 'object') {\n    if (typeof raw.src === 'string' && raw.src !== '') {\n      return raw.src;\n    }\n    if (typeof raw.url === 'string' && raw.url !== '') {\n      return raw.url;\n    }\n  }\n  return '';\n}\n\n/**\n * Plain or rich text from headingLink / content innerContent (avoids \"[object Object]\" in HTML).\n *\n * @param {*} raw From getAttrByMode( attrs.content.innerContent ).\n * @return {string}\n */\nfunction getInnerTextForHtml(raw) {\n  if (raw == null || raw === '') {\n    return '';\n  }\n  if (typeof raw === 'string' || typeof raw === 'number') {\n    return String(raw);\n  }\n  if (typeof raw === 'object' && typeof raw.text === 'string') {\n    return raw.text;\n  }\n  return '';\n}\n\n/**\n * React function component for registering module script data.\n */\nconst tilt_image_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction tilt_image_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  const {} = attrs;\n  const imageUrlAttr = tilt_image_edit_getUploadValueForDynamicData((0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.src?.innerContent));\n  const useIcon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_overlay?.innerContent);\n  const overlayIconAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.icon?.innerContent);\n  const overlayIconMarkup = 'on' === useIcon ? /*#__PURE__*/external_vendor_React_default().createElement(ModuleIconHost, {\n    icon: overlayIconAttr\n  }) : null;\n  const showOverlayOnHover = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_overlay_on_hover?.innerContent);\n  const useGlareAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_use_glare?.innerContent);\n  const useReverseAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_tilt_reverse?.innerContent);\n  const tiltSpeedAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_tilt_speed?.innerContent);\n  const tiltMaxAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_tilt_max?.innerContent);\n  const tiltScaleAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_tilt_scale?.innerContent);\n  const tiltPerspectiveRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_tilt_perspective?.innerContent);\n  // Range may store `1000px`; react-parallax-tilt expects a number (matches PHP floatval).\n  const tiltPerspectiveAttr = Number.parseFloat(String(tiltPerspectiveRaw !== null && tiltPerspectiveRaw !== void 0 ? tiltPerspectiveRaw : '')) || 1000;\n  const tiltGlareAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_tilt_glare?.innerContent);\n  const dsm_overlay_on_hover = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_overlay_on_hover?.innerContent);\n  const showInLightbox = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_in_lightbox?.innerContent);\n  const content = getInnerTextForHtml((0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.content?.innerContent));\n  const dsm_use_parallax = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_use_parallax?.innerContent);\n  const isOverlayTextHover = 'on' === dsm_overlay_on_hover ? 'dsm_overlay_on_hover' : '';\n  const useParallax = 'on' === dsm_use_parallax ? 'dsm_parallax_tilt' : '';\n  const markupWithLightbox = /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n    href: imageUrlAttr,\n    className: \"et_pb_lightbox_image\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm_image_overlay\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"et_pb_image_wrap\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: imageUrlAttr\n  }, resolvedImage => /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n    src: resolvedImage\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_tilt_overlay\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_tilt_overlay_wrapper\"\n  }, overlayIconMarkup, elements.render({\n    attrName: 'dsm_overlay_title'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: content\n  }, resolvedContent => /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_tilt_overlay_content\",\n    dangerouslySetInnerHTML: {\n      __html: resolvedContent\n    }\n  })))));\n  const markupWithoutLightbox = /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm_image_overlay\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"et_pb_image_wrap\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: imageUrlAttr\n  }, resolvedImage => /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n    src: resolvedImage\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_tilt_overlay\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_tilt_overlay_wrapper\"\n  }, overlayIconMarkup, elements.render({\n    attrName: 'dsm_overlay_title'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: content\n  }, resolvedContent => /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_tilt_overlay_content\",\n    dangerouslySetInnerHTML: {\n      __html: resolvedContent\n    }\n  })))));\n  const refreshKey = [useGlareAttr, useReverseAttr, tiltSpeedAttr, tiltMaxAttr, tiltScaleAttr, tiltPerspectiveAttr, tiltGlareAttr, dsm_use_parallax, useParallax];\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: tilt_image_edit_ModuleScriptData,\n    stylesComponent: tilt_image_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n      {\n        'on' === showOverlayOnHover && params.classnamesInstance.add('dsm_overlay_on_hover');\n      }\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(modern_a, {\n    key: refreshKey.join(','),\n    scale: tiltScaleAttr,\n    transitionSpeed: tiltSpeedAttr,\n    perspective: tiltPerspectiveAttr,\n    glareEnable: 'on' === useGlareAttr ? true : false,\n    glareMaxOpacity: 'on' === useGlareAttr ? tiltGlareAttr : '',\n    glareColor: 'on' === useGlareAttr ? '#f5f5f5' : '',\n    glarePosition: 'on' === useGlareAttr ? 'all' : '',\n    tiltMaxAngleX: tiltMaxAttr,\n    tiltMaxAngleY: tiltMaxAttr,\n    tiltReverse: 'on' === useReverseAttr ? true : false,\n    gyroscope: true,\n    className: `dsm-tilt-image-wrapper et_pb_bg_layout_dark ${isOverlayTextHover} ${useParallax}`\n  }, 'off' !== showInLightbox && markupWithLightbox, 'off' === showInLightbox && markupWithoutLightbox));\n}\n/* harmony default export */ const tilt_image_edit = (tilt_image_edit_Edit);\n;// ./packages/module-library/tilt-image/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmTiltImageIcon', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/tilt-image': {\n      name: 'divi-supreme/tilt-image',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 2.339844 4.269531 C 1.933594 4.269531 1.601562 3.9375 1.601562 3.53125 C 1.601562 3.121094 1.933594 2.789062 2.339844 2.789062 C 2.746094 2.789062 3.082031 3.121094 3.082031 3.53125 C 3.082031 3.9375 2.746094 4.269531 2.339844 4.269531 Z M 2.339844 3.199219 C 2.15625 3.199219 2.007812 3.347656 2.007812 3.53125 C 2.007812 3.710938 2.15625 3.859375 2.339844 3.859375 C 2.523438 3.859375 2.671875 3.707031 2.671875 3.523438 C 2.671875 3.34375 2.523438 3.199219 2.339844 3.199219 Z M 2.339844 3.199219 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 13.347656 10.882812 C 12.9375 10.882812 12.605469 10.550781 12.605469 10.144531 C 12.605469 9.734375 12.9375 9.402344 13.347656 9.402344 C 13.753906 9.402344 14.085938 9.734375 14.085938 10.144531 C 14.085938 10.550781 13.753906 10.882812 13.347656 10.882812 Z M 13.347656 9.8125 C 13.164062 9.8125 13.015625 9.960938 13.015625 10.144531 C 13.015625 10.328125 13.164062 10.476562 13.347656 10.476562 C 13.527344 10.476562 13.679688 10.328125 13.679688 10.144531 C 13.679688 9.960938 13.527344 9.8125 13.347656 9.8125 Z M 13.347656 9.8125 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 3.703125 3.386719 L 3.703125 5.1875 L 4.117188 5.148438 L 4.117188 3.761719 L 11.144531 3.117188 L 11.144531 12.601562 L 4.117188 11.957031 L 4.117188 9.828125 L 3.703125 9.789062 L 3.703125 12.332031 L 11.558594 13.050781 L 11.558594 2.667969 Z M 3.703125 3.386719 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 5.980469 10.203125 L 1.839844 9.820312 L 1.839844 5.148438 L 5.980469 4.769531 Z M 2.246094 9.445312 L 5.566406 9.753906 L 5.566406 5.21875 L 2.246094 5.527344 Z M 2.246094 9.445312 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/tilt-image/conversion-outline.js\n\nconst tilt_image_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    display_conditions: 'module.decoration.conditions',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    fonts: {\n      header: 'dsm_overlay_title.decoration.font',\n      content: 'content.decoration.font'\n    },\n    height: 'module.decoration.sizing',\n    link_options: 'module.advanced.link',\n    margin_padding: 'module.decoration.spacing',\n    max_width: 'module.decoration.sizing',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    text: 'module.advanced.text',\n    text_shadow: {\n      default: 'module.advanced.text.textShadow'\n    },\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex'\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    // Match divi/image: URL lives at innerContent.*.value.src (not .value as a bare string).\n    src: 'src.innerContent.*.src',\n    alt: 'alt.innerContent.*',\n    title_text: 'title_text.innerContent.*',\n    show_in_lightbox: 'show_in_lightbox.innerContent.*',\n    url: 'url.innerContent.*',\n    url_new_window: 'url_new_window.innerContent.*',\n    dsm_tilt_mobile: 'dsm_tilt_mobile.innerContent.*',\n    dsm_tilt_perspective: 'dsm_tilt_perspective.innerContent.*',\n    dsm_tilt_scale: 'dsm_tilt_scale.innerContent.*',\n    dsm_tilt_max: 'dsm_tilt_max.innerContent.*',\n    dsm_tilt_speed: 'dsm_tilt_speed.innerContent.*',\n    dsm_use_glare: 'dsm_use_glare.innerContent.*',\n    dsm_tilt_reverse: 'dsm_tilt_reverse.innerContent.*',\n    dsm_tilt_glare: 'dsm_tilt_glare.innerContent.*',\n    dsm_use_parallax: 'dsm_use_parallax.innerContent.*',\n    dsm_tilt_parallax: 'dsm_tilt_parallax.innerContent.*',\n    header_level: 'dsm_overlay_title.decoration.font.font.*.headingLevel',\n    dsm_overlay_title: 'dsm_overlay_title.innerContent.*.text',\n    content: 'content.innerContent.*.text',\n    use_overlay: 'use_overlay.innerContent.*',\n    overlay_icon_color: 'overlay_icon_color.innerContent.*',\n    icon: 'icon.innerContent.*',\n    dsm_overlay_on_hover: 'dsm_overlay_on_hover.innerContent.*',\n    dsm_overlay_content_orientation: 'dsm_overlay_content_orientation.innerContent.*',\n    dsm_overlay_color: 'dsm_overlay_color.innerContent.*',\n    use_icon_font_size: 'use_icon_font_size.innerContent.*',\n    icon_font_size: 'icon_font_size.innerContent.*',\n    align: 'align.innerContent.*',\n    force_fullwidth: 'force_fullwidth.innerContent.*',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    icon: external_divi_conversion_namespaceObject.convertFontIcon,\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/tilt-image/index.js\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\nconst tiltPlaceholderSrc = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTA4MCIgaGVpZ2h0PSI1NDAiIHZpZXdCb3g9IjAgMCAxMDgwIDU0MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPHBhdGggZmlsbD0iI0VCRUJFQiIgZD0iTTAgMGgxMDgwdjU0MEgweiIvPgogICAgICAgIDxwYXRoIGQ9Ik00NDUuNjQ5IDU0MGgtOTguOTk1TDE0NC42NDkgMzM3Ljk5NSAwIDQ4Mi42NDR2LTk4Ljk5NWwxMTYuMzY1LTExNi4zNjVjMTUuNjItMTUuNjIgNDAuOTQ3LTE1LjYyIDU2LjU2OCAwTDQ0NS42NSA1NDB6IiBmaWxsLW9wYWNpdHk9Ii4xIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgICAgICA8Y2lyY2xlIGZpbGwtb3BhY2l0eT0iLjA1IiBmaWxsPSIjMDAwIiBjeD0iMzMxIiBjeT0iMTQ4IiByPSI3MCIvPgogICAgICAgIDxwYXRoIGQ9Ik0xMDgwIDM3OXYxMTMuMTM3TDcyOC4xNjIgMTQwLjMgMzI4LjQ2MiA1NDBIMjE1LjMyNEw2OTkuODc4IDU1LjQ0NmMxNS42Mi0xNS42MiA0MC45NDgtMTUuNjIgNTYuNTY4IDBMMTA4MCAzNzl6IiBmaWxsLW9wYWNpdHk9Ii4yIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgIDwvZz4KPC9zdmc+Cg==';\nconst tilt_image_defaultAttrs = {\n  ...tilt_image_module_default_render_attributes_namespaceObject,\n  src: {\n    innerContent: {\n      desktop: {\n        value: {\n          src: tiltPlaceholderSrc\n        }\n      }\n    }\n  }\n};\nconst tiltImageModule = {\n  metadata: tilt_image_module_namespaceObject,\n  conversionOutline: tilt_image_conversion_outline_conversionOutline,\n  renderers: {\n    edit: tilt_image_edit,\n    styles: tilt_image_module_styles_ModuleStyles\n  },\n  defaultAttrs: tilt_image_defaultAttrs,\n  settings: {\n    content: tilt_image_settings_content,\n    design: tilt_image_settings_design,\n    advanced: tilt_image_settings_advanced\n  },\n  placeholderContent: {\n    ...tilt_image_defaultAttrs\n  }\n};\n/* harmony default export */ const tilt_image = (tiltImageModule);\n;// ./packages/module-library/typing-effect/module.json\nconst typing_effect_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/typing-effect\",\"d4Shortcode\":\"dsm_typing_effect\",\"title\":\"Supreme Typing\",\"titles\":\"Supreme Typing\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/typing-effect\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"styleProps\":{\"sizing\":{\"propertySelectors\":{\"desktop\":{\"value\":{\"margin-left\":\"{{selector}}.et_pb_module\",\"margin-right\":\"{{selector}}.et_pb_module\"}}},\"important\":{\"desktop\":{\"value\":{\"margin-left\":true,\"margin-right\":true}}}},\"spacing\":{\"important\":true}},\"settings\":{\"decoration\":{\"layout\":{},\"animation\":{},\"attributes\":{},\"background\":{},\"border\":{},\"boxShadow\":{},\"conditions\":{},\"disabledOn\":{},\"filters\":{},\"interactions\":{},\"overflow\":{},\"order\":{},\"position\":{},\"scroll\":{},\"sizing\":{},\"spacing\":{},\"sticky\":{},\"transform\":{},\"transition\":{},\"zIndex\":{}}}},\"header\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-typing-effect.et_pb_module_header\",\"tagName\":\"h1\",\"inlineEditor\":\"plainText\",\"elementType\":\"headingLink\",\"childrenSanitizer\":\"et_core_esc_previously\",\"default\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"headingLevel\":\"h1\"}}}}}},\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-typing-effect.et_pb_module_header\",\"hover\":\"{{selector}}:hover .dsm-typing-effect.et_pb_module_header\"}}}}},\"before_typing_effect\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"selector\":\"{{selector}} .dsm-before-typing-effect\",\"childrenSanitizer\":\"et_core_esc_previously\",\"settings\":{\"decoration\":{\"border\":{},\"boxShadow\":{}}}},\"typing_effect\":{\"type\":\"object\",\"inlineEditor\":\"SortableList\",\"selector\":\"{{selector}} .dsm-typing-wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\",\"settings\":{\"decoration\":{\"border\":{},\"boxShadow\":{}}}},\"before_new_line\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"after_typing_effect\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"selector\":\"{{selector}} .dsm-after-typing-effect\",\"childrenSanitizer\":\"et_core_esc_previously\",\"settings\":{\"decoration\":{\"border\":{},\"boxShadow\":{}}}},\"after_new_line\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"typing_loop\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"typing_remove_cursor\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"typing_speed\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"100ms\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"typing_backspeed\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"50ms\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"typing_backdelay\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"700ms\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"typing_fadeout\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"typing_shuffle\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"typing_cursor\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"|\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"typing_viewport\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"80%\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"typing_viewport_repeat\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"typing_cursor_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"typing_background_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"typing_padding\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"selector\":\"{{selector}} .dsm-typing-wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"before_typing_background_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"before_typing_padding\":{\"type\":\"object\",\"inlineEditor\":\"customPadding\",\"selector\":\"{{selector}} .dsm-before-typing-effect\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"after_typing_background_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"after_typing_padding\":{\"type\":\"object\",\"inlineEditor\":\"customPadding\",\"selector\":\"{{selector}} .dsm-after-typing-effect\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"before_display_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"typing_display_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"after_display_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/typing-effect/module-default-render-attributes.json\nconst typing_effect_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"module\":{\"decoration\":{},\"advanced\":{\"text\":{\"text\":{\"desktop\":{\"value\":{\"color\":\"light\"}}}}}},\"header\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"headingLevel\":\"h1\",\"size\":\"30px\",\"lineHeight\":\"1em\",\"letterSpacing\":\"0px\"}}}}}},\"before_typing_effect\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}},\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{}}}}}},\"typing_effect\":{\"innerContent\":{\"desktop\":{\"value\":[]}},\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{}}}}}},\"after_typing_effect\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}},\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{}}}}}},\"before_new_line\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"after_new_line\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"typing_loop\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"typing_remove_cursor\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"typing_speed\":{\"innerContent\":{\"desktop\":{\"value\":\"100ms\"}}},\"typing_backspeed\":{\"innerContent\":{\"desktop\":{\"value\":\"50ms\"}}},\"typing_backdelay\":{\"innerContent\":{\"desktop\":{\"value\":\"700ms\"}}},\"typing_fadeout\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"typing_shuffle\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"typing_cursor\":{\"innerContent\":{\"desktop\":{\"value\":\"|\"}}},\"typing_viewport\":{\"innerContent\":{\"desktop\":{\"value\":\"80%\"}}},\"typing_viewport_repeat\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"typing_cursor_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"typing_background_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"before_typing_background_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"after_typing_background_color\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"before_display_type\":{\"innerContent\":{\"desktop\":{\"value\":\"inline-block\"}}},\"typing_display_type\":{\"innerContent\":{\"desktop\":{\"value\":\"inline-block\"}}},\"after_display_type\":{\"innerContent\":{\"desktop\":{\"value\":\"inline-block\"}}}}');\n;// ./packages/module-library/typing-effect/typing-effect-placeholder-rows.js\n/**\n * Builder-only demo rows for Typing Effect sortable list (new modules / empty field).\n * Must not live in `defaultAttrs` — merged defaults leak onto the frontend when users save one row.\n *\n * @package DiviSupreme\n */\n\n/** @type {Array<{ value: string, dragID: string }>} */\nconst TYPING_EFFECT_PLACEHOLDER_ROWS = [{\n  value: 'Design Divi sites with',\n  dragID: '8fbd133e-8fed-4a09-88c5-d7aa83e447c9'\n}, {\n  value: 'Divi',\n  dragID: '63e8b210-3b85-46b6-8101-b6878fcf8dd8'\n}, {\n  value: 'Supreme',\n  dragID: '2ad44ecd-97f7-4218-9af8-87974750ee8c'\n}];\n\n/** `innerContent` slice for `placeholderContent` / SortableList `defaultAttr` base. */\nconst typingEffectPlaceholderInnerContent = {\n  desktop: {\n    value: TYPING_EFFECT_PLACEHOLDER_ROWS\n  },\n  tablet: {\n    value: TYPING_EFFECT_PLACEHOLDER_ROWS\n  },\n  phone: {\n    value: TYPING_EFFECT_PLACEHOLDER_ROWS\n  }\n};\n;// ./packages/module-library/typing-effect/typing-vb-default-attrs.js\n/**\n * Visual Builder `defaultAttr` map from `module-default-render-attributes.json`.\n *\n * @package DiviSupreme\n */\n\n\n\n/** @see `module-default-render-attributes.json` → `header.decoration.font` */\nconst typingHeaderFontGroupDefaultAttr = typing_effect_module_default_render_attributes_namespaceObject.header?.decoration?.font;\n\n/** @see `module-default-render-attributes.json` → `before_typing_effect.decoration.font` */\nconst typingBeforeFontGroupDefaultAttr = typing_effect_module_default_render_attributes_namespaceObject.before_typing_effect?.decoration?.font;\n\n/** @see `module-default-render-attributes.json` → `typing_effect.decoration.font` */\nconst typingEffectFontGroupDefaultAttr = typing_effect_module_default_render_attributes_namespaceObject.typing_effect?.decoration?.font;\n\n/** @see `module-default-render-attributes.json` → `after_typing_effect.decoration.font` */\nconst typingAfterFontGroupDefaultAttr = typing_effect_module_default_render_attributes_namespaceObject.after_typing_effect?.decoration?.font;\nconst typing_vb_default_attrs_skipInnerContentMapKeys = new Set(['module']);\n\n/** `innerContent` defaults per attribute key (for `FieldContainer` `defaultAttr`). */\nconst typingFieldDefaultInnerContent = Object.fromEntries(Object.entries(typing_effect_module_default_render_attributes_namespaceObject).filter(([key, attr]) => !typing_vb_default_attrs_skipInnerContentMapKeys.has(key) && attr && typeof attr === 'object' && Object.prototype.hasOwnProperty.call(attr, 'innerContent')).map(([key, attr]) => [key, attr.innerContent]));\n\n/** @type {typeof typingFieldDefaultInnerContent} */\nconst typingFd = typingFieldDefaultInnerContent;\n;// ./packages/module-library/typing-effect/typing-effect-sortable-rows.js\n/**\n * Normalize Typing Effect `typing_effect` for SortableList (`{ value, dragID }[]`).\n *\n * Handles pipe-separated strings, JSON-stringified arrays, plain strings, and partial row shapes.\n *\n * @package DiviSupreme\n */\n\n/**\n * @param {unknown} raw `innerContent` leaf value.\n * @return {boolean} True when store value must be coerced before SortableList mounts.\n */\nfunction dsmTypingEffectInnerContentNeedsNormalize(raw) {\n  if (null === raw || undefined === raw || '' === raw) {\n    return false;\n  }\n  if (Array.isArray(raw)) {\n    if (0 === raw.length) {\n      return false;\n    }\n    const first = raw[0];\n    return !(first && typeof first === 'object' && 'value' in first);\n  }\n  return true;\n}\n\n/**\n * @param {unknown} raw `innerContent` leaf value.\n * @return {Array<{ value: string, dragID: string }>}\n */\nfunction dsmNormalizeTypingEffectSortableRows(raw) {\n  if (Array.isArray(raw)) {\n    if (0 === raw.length) {\n      return [];\n    }\n    const first = raw[0];\n    if (first && typeof first === 'object' && 'value' in first) {\n      return raw.map(row => {\n        if (!row || typeof row !== 'object') {\n          return null;\n        }\n        const value = typeof row.value === 'string' ? row.value.trim() : '';\n        if ('' === value) {\n          return null;\n        }\n        const dragID = typeof row.dragID === 'string' && row.dragID !== '' ? row.dragID : dsmTypingEffectNewDragId();\n        return {\n          value,\n          dragID\n        };\n      }).filter(Boolean);\n    }\n    if (typeof first === 'string') {\n      return raw.map(part => typeof part === 'string' ? part.trim() : '').filter(Boolean).map(value => ({\n        value,\n        dragID: dsmTypingEffectNewDragId()\n      }));\n    }\n  }\n  if (raw && typeof raw === 'object') {\n    return dsmNormalizeTypingEffectSortableRows(Object.values(raw));\n  }\n  if (typeof raw === 'string') {\n    const trimmed = raw.trim();\n    if ('' === trimmed) {\n      return [];\n    }\n    if ('[' === trimmed.charAt(0) || '{' === trimmed.charAt(0)) {\n      const fromJson = dsmParseTypingEffectSortableJson(trimmed);\n      if (fromJson.length > 0) {\n        return fromJson;\n      }\n    }\n    if (trimmed.includes('|')) {\n      return trimmed.split('|').map(part => part.trim()).filter(Boolean).map(value => ({\n        value,\n        dragID: dsmTypingEffectNewDragId()\n      }));\n    }\n    return [{\n      value: trimmed,\n      dragID: dsmTypingEffectNewDragId()\n    }];\n  }\n  return [];\n}\n\n/**\n * @param {string} jsonString Encoded or plain JSON sortable list.\n * @return {Array<{ value: string, dragID: string }>}\n */\nfunction dsmParseTypingEffectSortableJson(jsonString) {\n  const candidates = [jsonString, jsonString.replace(/&#91;|&#93;|&quot;/g, entity => {\n    if ('&#91;' === entity) {\n      return '[';\n    }\n    if ('&#93;' === entity) {\n      return ']';\n    }\n    return '\"';\n  })];\n  for (const candidate of candidates) {\n    try {\n      const decoded = decodeURIComponent(candidate);\n      const parsed = JSON.parse(decoded);\n      const rows = dsmNormalizeTypingEffectSortableRows(parsed);\n      if (rows.length > 0) {\n        return rows;\n      }\n    } catch (e) {\n      // Try next candidate.\n    }\n    try {\n      const parsed = JSON.parse(candidate);\n      const rows = dsmNormalizeTypingEffectSortableRows(parsed);\n      if (rows.length > 0) {\n        return rows;\n      }\n    } catch (e) {\n      // Try next candidate.\n    }\n  }\n  return [];\n}\n\n/**\n * @param {Array<{ value: string, dragID: string }>} rows Normalized rows.\n * @return {Record<string, { value: Array<{ value: string, dragID: string }> }>}\n */\nfunction dsmBuildTypingEffectInnerContentFromRows(rows) {\n  return {\n    desktop: {\n      value: rows\n    },\n    tablet: {\n      value: rows\n    },\n    phone: {\n      value: rows\n    }\n  };\n}\n\n/**\n * Plain phrase strings for Typed.js (VB canvas).\n *\n * @param {unknown} raw `innerContent` leaf value.\n * @return {string[]}\n */\nfunction dsmTypingEffectSortableRowsToStrings(raw) {\n  return dsmNormalizeTypingEffectSortableRows(raw).map(row => row.value);\n}\n\n/**\n * @return {string}\n */\nfunction dsmTypingEffectNewDragId() {\n  if (typeof crypto !== 'undefined' && typeof crypto.randomUUID === 'function') {\n    return crypto.randomUUID();\n  }\n  return `dsm-te-${Date.now()}-${Math.random().toString(36).slice(2, 11)}`;\n}\n\n/**\n * `FieldContainer` `defaultAttr` for `typing_effect.innerContent`.\n *\n * @param {Record<string, unknown>|undefined} baseInnerContent From `typingFd.typing_effect`.\n * @param {unknown}                         currentRaw         Current attr leaf value.\n * @return {Record<string, { value: Array<{ value: string, dragID: string }> }>}\n */\nfunction dsmTypingEffectSortableDefaultAttr(baseInnerContent, currentRaw) {\n  const normalized = dsmNormalizeTypingEffectSortableRows(currentRaw);\n  const desktop = normalized.length > 0 ? normalized : dsmNormalizeTypingEffectSortableRows(baseInnerContent?.desktop?.value);\n  return dsmBuildTypingEffectInnerContentFromRows(desktop);\n}\n;// ./packages/module-library/typing-effect/typing-effect-sortable-list-field.js\n/**\n * Typing Effect SortableList — do not mount until value is a valid row array (import / migration).\n *\n * @package DiviSupreme\n */\n\n\n\n\n\n\n\n\n\n/**\n * @param {Object} props Settings panel props.\n * @return {React.ReactElement|null}\n */\nfunction TypingEffectSortableListField({\n  attrs\n}) {\n  const raw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.typing_effect?.innerContent);\n  if (dsmTypingEffectInnerContentNeedsNormalize(raw)) {\n    return null;\n  }\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"typing_effect.innerContent\",\n    defaultAttr: dsmTypingEffectSortableDefaultAttr(typingEffectPlaceholderInnerContent, raw),\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Typing Effect Text', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SortableList, null));\n}\n;// ./packages/module-library/typing-effect/settings-content.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\n\n\nfunction typing_effect_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  const typingLoopAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.typing_loop?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(TypingEffectSortableListField, {\n    attrs: attrs\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"before_typing_effect.innerContent\",\n    defaultAttr: typingFd.before_typing_effect,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Before Text', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"before_new_line.innerContent\",\n    defaultAttr: typingFd.before_new_line,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Typing Text On a New line', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"after_typing_effect.innerContent\",\n    defaultAttr: typingFd.after_typing_effect,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('After Text', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"after_new_line.innerContent\",\n    defaultAttr: typingFd.after_new_line,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('After Text On a New line', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"typing_option\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Typing Options', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"typing_loop.innerContent\",\n    defaultAttr: typingFd.typing_loop,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Loop', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"typing_remove_cursor.innerContent\",\n    defaultAttr: typingFd.typing_remove_cursor,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Remove Cursor After Completed', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'off' === typingLoopAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"typing_speed.innerContent\",\n    defaultAttr: typingFd.typing_speed,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Typing Speed (in ms)', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 10,\n    max: 3000,\n    defaultUnit: 'ms',\n    allowedUnits: ['ms']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"typing_backspeed.innerContent\",\n    defaultAttr: typingFd.typing_backspeed,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Typing Backspeed (in ms)', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 300,\n    defaultUnit: 'ms',\n    allowedUnits: ['ms']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"typing_backdelay.innerContent\",\n    defaultAttr: typingFd.typing_backdelay,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Back delay (in ms)', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 200,\n    max: 2000,\n    step: 100,\n    defaultUnit: 'ms',\n    allowedUnits: ['ms']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"typing_fadeout.innerContent\",\n    defaultAttr: typingFd.typing_fadeout,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Fade Out', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"typing_shuffle.innerContent\",\n    defaultAttr: typingFd.typing_shuffle,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Shuffle', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"typing_cursor.innerContent\",\n    defaultAttr: typingFd.typing_cursor,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Cursor Character', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"typing_viewport.innerContent\",\n    defaultAttr: typingFd.typing_viewport,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animate in Viewport', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: '%',\n    allowedUnits: ['%']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"typing_viewport_repeat.innerContent\",\n    defaultAttr: typingFd.typing_viewport_repeat,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Repeat Animation in Viewport', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const typing_effect_settings_content = (typing_effect_settings_content_SettingsContent);\n;// ./packages/module-library/typing-effect/settings-design.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\nfunction typing_effect_settings_design_SettingsDesign() {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"header.decoration.font\",\n    defaultAttr: typingHeaderFontGroupDefaultAttr,\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Main Text', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: true\n      }\n    },\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Main', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"before_text\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Before Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"before_typing_background_color.innerContent\",\n    defaultAttr: typingFd.before_typing_background_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"before_typing_padding.decoration.spacing\",\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"before_display_type.innerContent\",\n    defaultAttr: typingFd.before_display_type,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Display', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      'inline-block': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inline Block', 'dsm-supreme-modules-pro-for-divi')\n      },\n      block: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Block', 'dsm-supreme-modules-pro-for-divi')\n      },\n      inline: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inline', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'inline-flex': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inline Flex', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"before_typing_effect.decoration.font\",\n    defaultAttr: typingBeforeFontGroupDefaultAttr,\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Before', 'dsm-supreme-modules-pro-for-divi')\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"after_text\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('After Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"after_typing_background_color.innerContent\",\n    defaultAttr: typingFd.after_typing_background_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"after_typing_padding.decoration.spacing\",\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"after_display_type.innerContent\",\n    defaultAttr: typingFd.after_display_type,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Display', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      'inline-block': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inline Block', 'dsm-supreme-modules-pro-for-divi')\n      },\n      block: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Block', 'dsm-supreme-modules-pro-for-divi')\n      },\n      inline: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inline', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'inline-flex': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inline Flex', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"after_typing_effect.decoration.font\",\n    defaultAttr: typingAfterFontGroupDefaultAttr,\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('After', 'dsm-supreme-modules-pro-for-divi')\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"typing_styles\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Typing Styles', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"typing_cursor_color.innerContent\",\n    defaultAttr: typingFd.typing_cursor_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Cursor Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"typing_background_color.innerContent\",\n    defaultAttr: typingFd.typing_background_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"typing_padding.decoration.spacing\",\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"typing_display_type.innerContent\",\n    defaultAttr: typingFd.typing_display_type,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Display', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      'inline-block': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inline Block', 'dsm-supreme-modules-pro-for-divi')\n      },\n      block: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Block', 'dsm-supreme-modules-pro-for-divi')\n      },\n      inline: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inline', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'inline-flex': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inline Flex', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"typing_effect.decoration.font\",\n    defaultAttr: typingEffectFontGroupDefaultAttr,\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Typing', 'dsm-supreme-modules-pro-for-divi')\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const typing_effect_settings_design = (typing_effect_settings_design_SettingsDesign);\n;// ./packages/module-library/typing-effect/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction typing_effect_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_typing_effect\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const typing_effect_settings_advanced = (typing_effect_settings_advanced_SettingsAdvanced);\n// EXTERNAL MODULE: ./node_modules/react-typed/dist/react-typed.js\nvar react_typed = __webpack_require__(\"./node_modules/react-typed/dist/react-typed.js\");\nvar react_typed_default = /*#__PURE__*/__webpack_require__.n(react_typed);\n;// ./packages/module-library/typing-effect/module-styles.js\n\n\n\n/**\n * React function component for rendering module style.\n */\nconst typing_effect_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), elements.style({\n    attrName: 'header'\n  }), elements.style({\n    attrName: 'before_typing_effect'\n  }), elements.style({\n    attrName: 'typing_effect'\n  }), elements.style({\n    attrName: 'after_typing_effect'\n  }), elements.style({\n    attrName: 'before_typing_padding'\n  }), elements.style({\n    attrName: 'after_typing_padding'\n  }), elements.style({\n    attrName: 'typing_padding'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-before-typing-effect`,\n    attr: attrs?.before_typing_background_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-after-typing-effect`,\n    attr: attrs?.after_typing_background_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-before-typing-effect`,\n    attr: attrs?.before_display_type?.innerContent,\n    property: \"display\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-after-typing-effect`,\n    attr: attrs?.after_display_type?.innerContent,\n    property: \"display\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-typing-effect .typed-cursor`,\n    attr: attrs?.typing_cursor_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-typing-wrapper`,\n    attr: attrs?.typing_background_color?.innerContent,\n    property: \"background-color\"\n  }));\n};\n;// ./packages/module-library/typing-effect/typing-effect-typed-strings.js\n/**\n * Typed.js `contentType` + string prep for Typing Effect (VB + frontend).\n *\n * - Plain text (incl. `&`): use `text` so Typed.js does not treat `&` as an HTML entity.\n * - Markup (`<b>`, `<strong>`, `<br>`, etc.): use `html` and encode bare `&` as `&amp;`.\n *\n * @package DiviSupreme\n */\n\n/** @typedef {'text' | 'html'} TypingEffectContentType */\n\n/** Inline / line-break tags commonly used in Typing Effect phrases. */\nconst DSM_TYPED_HTML_TAG_PATTERN = /<\\s*\\/?\\s*(?:b|strong|br|i|em|u|span|a|p|div|small|sub|sup|mark)\\b[^>]*>/i;\n\n/**\n * @param {string} str Single phrase.\n * @return {boolean}\n */\nfunction dsmTypingEffectStringUsesHtml(str) {\n  return typeof str === 'string' && DSM_TYPED_HTML_TAG_PATTERN.test(str);\n}\n\n/**\n * @param {string[]} strings Typing phrases.\n * @return {TypingEffectContentType}\n */\nfunction dsmTypingEffectResolveContentType(strings) {\n  if (!Array.isArray(strings) || 0 === strings.length) {\n    return 'text';\n  }\n  return strings.some(phrase => dsmTypingEffectStringUsesHtml(phrase)) ? 'html' : 'text';\n}\n\n/**\n * Encode `&` that are not already valid HTML entities (Typed.js html mode stalls on bare `&`).\n *\n * @param {string} str Raw phrase.\n * @return {string}\n */\nfunction dsmEncodeTypedJsHtmlAmpersands(str) {\n  if (typeof str !== 'string' || '' === str) {\n    return '';\n  }\n  return str.replace(/&(?!(?:#\\d+|#x[0-9a-fA-F]+|[a-zA-Z][a-zA-Z0-9]*);)/g, '&amp;');\n}\n\n/**\n * Parse `data-dsm-typing-strings` (JSON array from D5 SSR, or legacy pipe-separated string).\n *\n * Use with `attr( 'data-dsm-typing-strings' )` — jQuery `.data()` can mangle `&` and HTML in attributes.\n *\n * @param {unknown} raw Attribute value.\n * @return {string[]}\n */\nfunction dsmParseTypingStringsFromDataAttribute(raw) {\n  if (Array.isArray(raw)) {\n    return raw.map(phrase => typeof phrase === 'string' ? phrase : '').filter(phrase => '' !== phrase.trim());\n  }\n  if ('string' !== typeof raw) {\n    return [];\n  }\n  const trimmed = raw.trim();\n  if ('' === trimmed) {\n    return [];\n  }\n  if ('[' === trimmed.charAt(0)) {\n    try {\n      const parsed = JSON.parse(trimmed);\n      if (Array.isArray(parsed)) {\n        return parsed.map(phrase => typeof phrase === 'string' ? phrase : '').filter(phrase => '' !== phrase.trim());\n      }\n    } catch (e) {\n      // Fall through to pipe split (legacy D4 / old D5).\n    }\n  }\n  return trimmed.split('|').map(part => part.trim()).filter(Boolean);\n}\n\n/**\n * @param {string[]} strings Raw phrases from module attrs or `data-dsm-typing-strings`.\n * @return {{ strings: string[], contentType: TypingEffectContentType }}\n */\nfunction dsmPrepareTypedJsStrings(strings) {\n  const list = Array.isArray(strings) ? strings.map(phrase => typeof phrase === 'string' ? phrase : '').filter(phrase => '' !== phrase.trim()) : [];\n  const contentType = dsmTypingEffectResolveContentType(list);\n  const prepared = 'html' === contentType ? list.map(dsmEncodeTypedJsHtmlAmpersands) : list;\n  return {\n    strings: prepared,\n    contentType\n  };\n}\n;// ./packages/module-library/typing-effect/edit.js\n\n\n\n\n// Divi package dependencies.\n\n\n\n\n// Custom dependencies.\n\n\n\n\n\n/**\n * React function component for registering module script data.\n */\nconst typing_effect_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction typing_effect_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  var _textLeaf$color;\n  const {} = attrs;\n  const HeaderLevel = attrs?.header?.decoration?.font?.font?.desktop?.value?.headingLevel || 'h1';\n  const beforeText = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.before_typing_effect?.innerContent);\n  const typingText = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.typing_effect?.innerContent);\n  const afterText = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.after_typing_effect?.innerContent);\n  const beforeNewLineText = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.before_new_line?.innerContent);\n  const afterNewLineText = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.after_new_line?.innerContent);\n  const typingSpeed = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.typing_speed?.innerContent);\n  const typingBackSpeed = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.typing_backspeed?.innerContent);\n  const typingBackdelay = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.typing_backdelay?.innerContent);\n  const typingCursorChar = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.typing_cursor?.innerContent);\n  const typingFadeOut = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.typing_fadeout?.innerContent);\n  const typingShuffle = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.typing_shuffle?.innerContent);\n  const loop = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.typing_loop?.innerContent);\n  const typingStringsRaw = dsmTypingEffectSortableRowsToStrings(typingText);\n  const {\n    strings: typingStrings,\n    contentType: typingContentType\n  } = dsmPrepareTypedJsStrings(typingStringsRaw);\n  const textLeaf = attrs?.module?.advanced?.text?.text?.desktop?.value;\n  const textColor = (_textLeaf$color = textLeaf?.color) !== null && _textLeaf$color !== void 0 ? _textLeaf$color : 'light';\n  const orientationRaw = textLeaf?.orientation;\n  const refreshKey = {\n    typingSpeed,\n    typingBackSpeed,\n    typingBackdelay,\n    typingCursorChar,\n    typingFadeOut,\n    typingShuffle,\n    loop,\n    typingStrings,\n    typingContentType,\n    beforeText,\n    afterText,\n    beforeNewLineText,\n    afterNewLineText,\n    typingText,\n    afterText\n  };\n  const Container = /*#__PURE__*/external_vendor_React_default().createElement(HeaderLevel, {\n    className: \"dsm-typing-effect et_pb_module_header\",\n    key: refreshKey\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm-before-typing-effect\"\n  }, elements.render({\n    attrName: 'before_typing_effect'\n  })), 'on' === beforeNewLineText ? /*#__PURE__*/external_vendor_React_default().createElement(\"br\", null) : ' ', /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm-typing-wrapper\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement((react_typed_default()), {\n    strings: typingStrings,\n    typeSpeed: parseFloat(typingSpeed),\n    backSpeed: parseFloat(typingBackSpeed),\n    backDelay: parseFloat(typingBackdelay),\n    cursorChar: typingCursorChar,\n    fadeOut: 'on' === typingFadeOut ? true : false,\n    shuffle: 'on' === typingShuffle ? true : false,\n    contentType: typingContentType,\n    className: \"dsm-typing\",\n    loop: 'on' === loop ? true : false\n  })), 'on' === afterNewLineText ? /*#__PURE__*/external_vendor_React_default().createElement(\"br\", null) : ' ', /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm-after-typing-effect\"\n  }, elements.render({\n    attrName: 'after_typing_effect'\n  })));\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: typing_effect_edit_ModuleScriptData,\n    stylesComponent: typing_effect_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n      // D4 parity: Text advanced → et_pb_bg_layout_* + et_pb_text_align_* (matches TypingEffect::module_classnames PHP).\n      params.classnamesInstance.add(`et_pb_bg_layout_${textColor}`);\n      if (orientationRaw && ['left', 'center', 'right', 'justify'].includes(orientationRaw)) {\n        const alignSlug = 'justify' === orientationRaw ? 'justified' : orientationRaw;\n        params.classnamesInstance.add(`et_pb_text_align_${alignSlug}`);\n      }\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), Container);\n}\n/* harmony default export */ const typing_effect_edit = (typing_effect_edit_Edit);\n;// ./packages/module-library/typing-effect/conversion-outline.js\n\nconst typing_effect_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border',\n      before: 'before_typing_effect.decoration.border',\n      typing: 'typing_effect.decoration.border',\n      after: 'after_typing_effect.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    display_conditions: 'module.decoration.conditions',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    fonts: {\n      header: 'header.decoration.font',\n      typing: 'typing_effect.decoration.font',\n      before: 'before_typing_effect.decoration.font',\n      after: 'after_typing_effect.decoration.font'\n    },\n    margin_padding: 'module.decoration.spacing',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    text: 'module.advanced.text',\n    text_shadow: {\n      default: 'module.advanced.text.textShadow'\n    },\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    height: 'module.decoration.sizing',\n    link_options: 'module.advanced.link',\n    max_width: 'module.decoration.sizing'\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    before_typing_effect: 'before_typing_effect.innerContent.*',\n    typing_effect: 'typing_effect.innerContent.*',\n    after_typing_effect: 'after_typing_effect.innerContent.*',\n    before_new_line: 'before_new_line.innerContent.*',\n    after_new_line: 'after_new_line.innerContent.*',\n    typing_loop: 'typing_loop.innerContent.*',\n    typing_remove_cursor: 'typing_remove_cursor.innerContent.*',\n    typing_speed: 'typing_speed.innerContent.*',\n    typing_backspeed: 'typing_backspeed.innerContent.*',\n    typing_backdelay: 'typing_backdelay.innerContent.*',\n    typing_fadeout: 'typing_fadeout.innerContent.*',\n    typing_shuffle: 'typing_shuffle.innerContent.*',\n    typing_cursor: 'typing_cursor.innerContent.*',\n    typing_viewport: 'typing_viewport.innerContent.*',\n    typing_viewport_repeat: 'typing_viewport_repeat.innerContent.*',\n    typing_cursor_color: 'typing_cursor_color.innerContent.*',\n    typing_background_color: 'typing_background_color.innerContent.*',\n    before_typing_background_color: 'before_typing_background_color.innerContent.*',\n    after_typing_background_color: 'after_typing_background_color.innerContent.*',\n    before_display_type: 'before_display_type.innerContent.*',\n    typing_display_type: 'typing_display_type.innerContent.*',\n    after_display_type: 'after_display_type.innerContent.*',\n    before_typing_padding: 'before_typing_padding.decoration.spacing.*.padding',\n    typing_padding: 'typing_padding.decoration.spacing.*.padding',\n    after_typing_padding: 'after_typing_padding.decoration.spacing.*.padding',\n    header_level: 'header.decoration.font.font.*.headingLevel',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    typing_padding: external_divi_module_namespaceObject.convertSpacing,\n    before_typing_padding: external_divi_module_namespaceObject.convertSpacing,\n    after_typing_padding: external_divi_module_namespaceObject.convertSpacing,\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n    // Do not use Divi `sortableListConverter` here: it expects JSON (see\n    // ValueExpansion::sortableListConverter). D4 `typing_effect` is a\n    // pipe-separated string — use ConversionAttrs::migrate_typing_effect_pipe_string_to_sortable_list in postConvertAttrs.\n  }\n};\n;// ./packages/module-library/typing-effect/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmTypingEffect', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/typing-effect': {\n      name: 'divi-supreme/typing-effect',\n      viewBox: '0 0 30 30',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 7.304688 12.039062 L 3.761719 12.039062 L 3.761719 11.570312 C 3.988281 11.570312 4.15625 11.511719 4.273438 11.382812 C 4.503906 11.132812 4.46875 10.707031 4.46875 10.703125 L 4.46875 7.335938 L 3.378906 7.335938 C 3.03125 7.335938 2.808594 7.503906 2.6875 7.652344 C 2.601562 7.75 2.460938 7.785156 2.339844 7.742188 C 2.210938 7.695312 2.132812 7.578125 2.132812 7.445312 L 2.132812 5.230469 L 8.953125 5.230469 L 8.953125 7.445312 C 8.953125 7.578125 8.875 7.695312 8.746094 7.742188 C 8.617188 7.789062 8.484375 7.753906 8.398438 7.652344 C 8.273438 7.503906 8.054688 7.335938 7.707031 7.335938 L 6.621094 7.335938 L 6.621094 10.707031 C 6.621094 10.714844 6.589844 11.140625 6.8125 11.390625 C 6.929688 11.515625 7.09375 11.578125 7.324219 11.578125 L 7.324219 12.039062 Z M 4.714844 11.578125 L 6.359375 11.578125 C 6.113281 11.214844 6.132812 10.761719 6.140625 10.683594 L 6.140625 6.878906 L 7.695312 6.878906 C 8.03125 6.878906 8.289062 6.980469 8.480469 7.117188 L 8.480469 5.699219 L 2.589844 5.699219 L 2.589844 7.117188 C 2.785156 6.980469 3.039062 6.878906 3.375 6.878906 L 4.929688 6.878906 L 4.929688 10.683594 C 4.933594 10.761719 4.953125 11.214844 4.714844 11.578125 Z M 4.714844 11.578125 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 3.234375 4.34375 C 2.773438 4.34375 2.394531 3.96875 2.394531 3.503906 C 2.394531 3.042969 2.773438 2.667969 3.234375 2.667969 C 3.695312 2.667969 4.074219 3.042969 4.074219 3.503906 C 4.074219 3.96875 3.695312 4.34375 3.234375 4.34375 Z M 3.234375 3.128906 C 3.027344 3.128906 2.859375 3.296875 2.859375 3.503906 C 2.859375 3.710938 3.027344 3.882812 3.234375 3.882812 C 3.441406 3.882812 3.613281 3.710938 3.613281 3.503906 C 3.613281 3.296875 3.441406 3.128906 3.234375 3.128906 Z M 3.234375 3.128906 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.558594 11.9375 C 12.097656 11.9375 11.722656 11.558594 11.722656 11.097656 C 11.722656 10.636719 12.097656 10.257812 12.558594 10.257812 C 13.023438 10.257812 13.398438 10.636719 13.398438 11.097656 C 13.398438 11.558594 13.023438 11.9375 12.558594 11.9375 Z M 12.558594 10.71875 C 12.351562 10.71875 12.183594 10.890625 12.183594 11.097656 C 12.183594 11.304688 12.351562 11.472656 12.558594 11.472656 C 12.765625 11.472656 12.9375 11.304688 12.9375 11.097656 C 12.9375 10.890625 12.765625 10.71875 12.558594 10.71875 Z M 12.558594 10.71875 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 9.746094 3.929688 L 10.214844 3.929688 L 10.214844 13.074219 L 9.746094 13.074219 Z M 9.746094 3.929688 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 7.617188 3.699219 L 12.273438 3.699219 L 12.273438 4.167969 L 7.617188 4.167969 Z M 7.617188 3.699219 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 7.617188 12.84375 L 12.273438 12.84375 L 12.273438 13.308594 L 7.617188 13.308594 Z M 7.617188 12.84375 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/typing-effect/index.js\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n\n\n\n\n\n\n\nconst typing_effect_defaultAttrs = typing_effect_module_default_render_attributes_namespaceObject;\nconst typingModule = {\n  metadata: typing_effect_module_namespaceObject,\n  conversionOutline: typing_effect_conversion_outline_conversionOutline,\n  renderers: {\n    edit: typing_effect_edit,\n    styles: typing_effect_module_styles_ModuleStyles\n  },\n  defaultAttrs: typing_effect_defaultAttrs,\n  settings: {\n    content: typing_effect_settings_content,\n    design: typing_effect_settings_design,\n    advanced: typing_effect_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    ...typing_effect_module_default_render_attributes_namespaceObject,\n    typing_effect: {\n      innerContent: typingEffectPlaceholderInnerContent\n    }\n  }\n};\n/* harmony default export */ const typing_effect = (typingModule);\n;// ./packages/module-library/svg-animation/module.json\nconst svg_animation_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/svg-animation\",\"d4Shortcode\":\"dsm_svg_animation\",\"title\":\"Supreme Svg Animation\",\"titles\":\"Supreme Svg Animation\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/svg-image\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"dsm_use_svg_code\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_upload_svg\":{\"type\":\"object\",\"inlineEditor\":\"UploadContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_svg_code\":{\"type\":\"object\",\"inlineEditor\":\"CodeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_animation_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_animation_function\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_loop\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_unlimited\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_count\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_use_trigger\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_trigger_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_visible_viewport\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_speed\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_delay\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_alignment\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_svg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"css\":{\"type\":\"object\",\"inlineEditor\":\"codemirror\",\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/svg-animation/module-default-render-attributes.json\nconst svg_animation_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"module\":{\"decoration\":{}},\"dsm_use_svg_code\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"dsm_upload_svg\":{\"innerContent\":{\"desktop\":{\"value\":{\"src\":\"\"}}}},\"dsm_svg_code\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"dsm_animation_type\":{\"innerContent\":{\"desktop\":{\"value\":\"oneByOne\"}}},\"dsm_animation_function\":{\"innerContent\":{\"desktop\":{\"value\":\"linear\"}}},\"dsm_loop\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"dsm_unlimited\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"dsm_count\":{\"innerContent\":{\"desktop\":{\"value\":\"2\"}}},\"dsm_use_trigger\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"dsm_trigger_type\":{\"innerContent\":{\"desktop\":{\"value\":\"dsm_viewport\"}}},\"dsm_visible_viewport\":{\"innerContent\":{\"desktop\":{\"value\":\"50%\"}}},\"dsm_speed\":{\"innerContent\":{\"desktop\":{\"value\":\"50\"}}},\"dsm_delay\":{\"innerContent\":{\"desktop\":{\"value\":\"0\"}}},\"dsm_alignment\":{\"innerContent\":{\"desktop\":{\"value\":\"center\"}}},\"dsm_svg_color\":{\"innerContent\":{\"desktop\":{\"value\":\"#000000\"}}},\"dsm_width\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}}}');\n;// ./packages/module-library/svg-animation/svg-animation-vb-default-attrs.js\n/**\n * Visual Builder `defaultAttr` slices derived from `module-default-render-attributes.json`.\n * Each value is the `innerContent` object (`{ desktop: { value } }`, …) for `FieldContainer` `attrName=\"*.innerContent\"`.\n *\n * @package DiviSupreme\n */\n\n\nconst svgAnimationFieldDefaultInnerContent = Object.fromEntries(Object.entries(svg_animation_module_default_render_attributes_namespaceObject).filter(([, attr]) => attr && attr.innerContent).map(([key, attr]) => [key, attr.innerContent]));\n;// ./packages/module-library/svg-animation/settings-content.js\n\n// Wordpress dependencies.\n\n// Divi package dependencies.\n\n\n\n\n\n\nfunction svg_animation_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  const useSvgCode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_use_svg_code?.innerContent);\n  const loop = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_loop?.innerContent);\n  const unLimited = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_unlimited?.innerContent);\n  const trigger = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_use_trigger?.innerContent);\n  const triggerTypeRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_trigger_type?.innerContent);\n  // D4 omits `dsm_trigger_type` when it matches default `dsm_viewport`; migrated blocks may have no value here.\n  const triggerType = String(triggerTypeRaw !== null && triggerTypeRaw !== void 0 ? triggerTypeRaw : '').trim() || 'dsm_viewport';\n  const isViewportTriggerType = triggerType === 'dsm_viewport';\n  const triggerOn = 'on' === trigger;\n  const showViewportTriggerOptions = triggerOn && isViewportTriggerType;\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('General', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_use_svg_code.innerContent\",\n    defaultAttr: svgAnimationFieldDefaultInnerContent.dsm_use_svg_code,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use SVG Code', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)(\"Enable this option If you'd like to use SVG Code Instead.\", 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_upload_svg.innerContent\",\n    subName: \"src\",\n    defaultAttr: svgAnimationFieldDefaultInnerContent.dsm_upload_svg,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('SVG File', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' !== useSvgCode,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can upload your SVG File.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, {\n    dataType: \"audio\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_svg_code.innerContent\",\n    defaultAttr: svgAnimationFieldDefaultInnerContent.dsm_svg_code,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Insert SVG Code', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useSvgCode,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can insert your SVG code.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.CodeContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"setting\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Setting', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_animation_type.innerContent\",\n    defaultAttr: svgAnimationFieldDefaultInnerContent.dsm_animation_type,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Type', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)(\"Here you choose the Type of SVG Animation, you've option to choose from below options\", 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      delayed: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Delayed', 'dsm-supreme-modules-pro-for-divi')\n      },\n      sync: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Sync', 'dsm-supreme-modules-pro-for-divi')\n      },\n      oneByOne: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('One By One', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_animation_function.innerContent\",\n    defaultAttr: svgAnimationFieldDefaultInnerContent.dsm_animation_function,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animation Timing Function', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose the Speed Curve for your Animation, you can choose whatever option works best for you.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      linear: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Linear', 'dsm-supreme-modules-pro-for-divi')\n      },\n      ease: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Ease', 'dsm-supreme-modules-pro-for-divi')\n      },\n      ease_in: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Ease In', 'dsm-supreme-modules-pro-for-divi')\n      },\n      ease_out: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Ease Out', 'dsm-supreme-modules-pro-for-divi')\n      },\n      ease_out_bounce: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Ease Out Bounce', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_loop.innerContent\",\n    defaultAttr: svgAnimationFieldDefaultInnerContent.dsm_loop,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Loop', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)(\"Enable this option If you'd like the SVG Animation to Loop\", 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_unlimited.innerContent\",\n    defaultAttr: svgAnimationFieldDefaultInnerContent.dsm_unlimited,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Unlimited', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === loop,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If enabled, the animation will Loop infinitely. You can disable to set a custom number times the animation will Loop', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_count.innerContent\",\n    defaultAttr: svgAnimationFieldDefaultInnerContent.dsm_count,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Number of Times', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === loop && 'off' === unLimited\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 10,\n    defaultUnit: ''\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_use_trigger.innerContent\",\n    defaultAttr: svgAnimationFieldDefaultInnerContent.dsm_use_trigger,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Trigger', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enable this option to choose a Trigger type for your SVG Animation', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_trigger_type.innerContent\",\n    defaultAttr: svgAnimationFieldDefaultInnerContent.dsm_trigger_type,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Trigger Type', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === trigger,\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose the Trigger Type, you can select Triggers from below options', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      dsm_viewport: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Start in Viewport', 'dsm-supreme-modules-pro-for-divi')\n      },\n      dsm_hover: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Start on Hover', 'dsm-supreme-modules-pro-for-divi')\n      },\n      dsm_click: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Start on Click', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_visible_viewport.innerContent\",\n    defaultAttr: svgAnimationFieldDefaultInnerContent.dsm_visible_viewport,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Visible viewport', 'dsm-supreme-modules-pro-for-divi'),\n    visible: showViewportTriggerOptions\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    defaultUnit: '%'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_speed.innerContent\",\n    defaultAttr: svgAnimationFieldDefaultInnerContent.dsm_speed,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Speed', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Change the Speed of your SVG Animation here, the lower the value the faster the animation will be.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 500,\n    defaultUnit: ''\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_delay.innerContent\",\n    defaultAttr: svgAnimationFieldDefaultInnerContent.dsm_delay,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Delay', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If you want to delay your animation, you can do so here.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 500,\n    defaultUnit: ''\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const svg_animation_settings_content = (svg_animation_settings_content_SettingsContent);\n;// ./packages/module-library/svg-animation/settings-design.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\nfunction svg_animation_settings_design_SettingsDesign() {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"alignment\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Alignment', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_alignment.innerContent\",\n    defaultAttr: svgAnimationFieldDefaultInnerContent.dsm_alignment,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"svg\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Svg', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_svg_color.innerContent\",\n    defaultAttr: svgAnimationFieldDefaultInnerContent.dsm_svg_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('You can change the Color of your Animation here.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_width.innerContent\",\n    defaultAttr: svgAnimationFieldDefaultInnerContent.dsm_width,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Width', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can adjust the Width of the Animation.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: '%'\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const svg_animation_settings_design = (svg_animation_settings_design_SettingsDesign);\n;// ./packages/module-library/svg-animation/settings-advanced.js\n// Divi package dependencies.\n\n\nfunction svg_animation_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_svg_animation\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const svg_animation_settings_advanced = (svg_animation_settings_advanced_SettingsAdvanced);\n// EXTERNAL MODULE: ./node_modules/vivus/dist/vivus.js\nvar vivus = __webpack_require__(\"./node_modules/vivus/dist/vivus.js\");\nvar vivus_default = /*#__PURE__*/__webpack_require__.n(vivus);\n;// ./packages/module-library/svg-animation/module-styles.js\n\n\n\n\n/**\n * React function component for rendering module style.\n */\nconst svg_animation_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-svg-animation-container svg *`,\n    attr: attrs?.dsm_svg_color?.innerContent,\n    property: \"stroke\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-svg-animation-container svg`,\n    attr: attrs?.dsm_width?.innerContent,\n    property: \"width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}`,\n    attr: attrs?.dsm_alignment?.innerContent,\n    property: \"text-align\"\n  }));\n};\n;// ./packages/module-library/svg-animation/edit.js\n\n\n\n\n\n// Divi package dependencies.\n\n\n// Custom dependencies.\n\n\n\n/**\n * @param {unknown} raw Upload innerContent leaf (string URL or `{ src }`).\n * @return {string}\n */\nconst getSvgUploadSrc = raw => {\n  if (raw == null || raw === '') {\n    return '';\n  }\n  if (typeof raw === 'string') {\n    return raw;\n  }\n  if (typeof raw === 'object' && raw !== null && 'src' in raw) {\n    const s = raw.src;\n    return typeof s === 'string' ? s : '';\n  }\n  return '';\n};\n\n/**\n * Attachment id from upload innerContent leaf, if any (string or number).\n *\n * @param {unknown} raw Upload innerContent leaf.\n * @return {number|null}\n */\nconst getSvgUploadAttachmentId = raw => {\n  if (raw == null || typeof raw !== 'object' || raw === null) {\n    return null;\n  }\n  if (!('id' in raw) || raw.id == null || raw.id === '') {\n    return null;\n  }\n  const n = Number(raw.id);\n  return Number.isFinite(n) && n > 0 ? n : null;\n};\n\n/**\n * React function component for registering module script data.\n */\nconst svg_animation_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction svg_animation_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  var _rawSvgCode$text;\n  const [data, setData] = (0,external_vendor_React_.useState)('');\n  const svgAnimationContainer = (0,external_vendor_React_.useRef)(null);\n  const svgAnimation = (0,external_vendor_React_.useRef)(null);\n  const dsmUseSvgCode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_use_svg_code?.innerContent);\n  const uploadRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_upload_svg?.innerContent);\n  const svgUploadUrl = getSvgUploadSrc(uploadRaw);\n  const rawSvgCode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_svg_code?.innerContent);\n  const dsmSvgCode = typeof rawSvgCode === 'object' && rawSvgCode !== null && 'text' in rawSvgCode ? String((_rawSvgCode$text = rawSvgCode.text) !== null && _rawSvgCode$text !== void 0 ? _rawSvgCode$text : '') : rawSvgCode !== null && rawSvgCode !== void 0 ? rawSvgCode : '';\n  const triggerTypeRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_trigger_type?.innerContent);\n  const triggerType = String(triggerTypeRaw !== null && triggerTypeRaw !== void 0 ? triggerTypeRaw : '').trim() || 'dsm_viewport';\n  const useTriggerOn = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_use_trigger?.innerContent) === 'on';\n  const isViewportTrigger = triggerType === 'dsm_viewport';\n  const animationType = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_animation_type?.innerContent);\n  const loop = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_loop?.innerContent);\n  const unlimited = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_unlimited?.innerContent);\n  const count = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_count?.innerContent);\n  const speed = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_speed?.innerContent);\n  const delayNo = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_delay?.innerContent);\n  const animationTimingFunc = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_animation_function?.innerContent);\n  const visibleViewport = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_visible_viewport?.innerContent);\n  const useSvgCodeOn = dsmUseSvgCode === 'on';\n  const svgDataFromUploadField = !useSvgCodeOn ? /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    dangerouslySetInnerHTML: {\n      __html: data\n    }\n  }) : null;\n  const svgDataFromTextField = useSvgCodeOn ? /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    dangerouslySetInnerHTML: {\n      __html: dsmSvgCode\n    }\n  }) : null;\n  const handleAnimation = (element, speed, delay, animationType, loop, timingFunction, count = 1, currentCount = 1) => {\n    setTimeout(() => {\n      if (svgAnimation.current) {\n        svgAnimation.current.destroy();\n      }\n      svgAnimation.current = new (vivus_default())(element, {\n        type: animationType,\n        duration: speed,\n        animTimingFunction: (vivus_default())[timingFunction],\n        start: 'manual'\n      });\n      let animation = svgAnimation.current;\n      animation.play(() => {\n        if (loop) {\n          animation.destroy();\n          handleAnimation(element, speed, delay, animationType, loop, timingFunction, count, currentCount + 1);\n        } else if (count > 1 && currentCount < count) {\n          animation.destroy();\n          handleAnimation(element, speed, delay, animationType, loop, timingFunction, count, currentCount + 1);\n        }\n      });\n    }, delay);\n  };\n  const animateSvg = () => {\n    const isLoop = loop === 'on' && unlimited === 'on';\n    const countNo = loop === 'on' && unlimited === 'off' ? Number(count) : 1;\n    const timingRaw = animationTimingFunc != null && animationTimingFunc !== '' ? String(animationTimingFunc) : 'linear';\n    const timingFunc = timingRaw.toUpperCase();\n    let svg = svgAnimationContainer.current.querySelector('svg');\n    if (!svg) {\n      return;\n    }\n    handleAnimation(svg, Number(speed), Number(delayNo), animationType || 'oneByOne', isLoop, timingFunc, countNo);\n  };\n  const animateSvgRef = (0,external_vendor_React_.useRef)(animateSvg);\n  animateSvgRef.current = animateSvg;\n  /**\n   * Load SVG markup via same-origin REST proxy (avoids CORS on cross-origin file URLs; matches PHP render).\n   *\n   * @param {unknown} uploadLeaf `innerContent` desktop/tablet/phone value for `dsm_upload_svg`.\n   */\n  const fetchSvgMarkupForCanvas = async uploadLeaf => {\n    const src = getSvgUploadSrc(uploadLeaf);\n    const attachmentId = getSvgUploadAttachmentId(uploadLeaf);\n    if (!src && attachmentId == null) {\n      setData('');\n      return;\n    }\n    try {\n      const params = new URLSearchParams();\n      if (attachmentId != null) {\n        params.set('attachment_id', String(attachmentId));\n      }\n      if (src) {\n        params.set('src', src);\n      }\n      const res = await external_window_wp_apiFetch_default()({\n        path: `/dsm/v1/svg-animation-source?${params.toString()}`\n      });\n      if (res && typeof res.markup === 'string') {\n        setData(res.markup);\n      } else {\n        setData('');\n      }\n    } catch (err) {\n      console.error(err);\n      setData('');\n    }\n  };\n  (0,external_vendor_React_.useEffect)(() => {\n    if (useSvgCodeOn) {\n      setData('');\n    } else {\n      void fetchSvgMarkupForCanvas(uploadRaw);\n    }\n  }, [useSvgCodeOn, uploadRaw]);\n  (0,external_vendor_React_.useEffect)(() => {\n    if (!useTriggerOn || !isViewportTrigger) {\n      return;\n    }\n    const el = svgAnimationContainer.current;\n    if (!el) {\n      return;\n    }\n    const vp = typeof visibleViewport === 'string' && visibleViewport.length > 0 ? visibleViewport : '50%';\n    const visibleViewportRatio = Number(vp.endsWith('%') ? vp.slice(0, -1) : vp) || 50;\n    const options = {\n      root: document.querySelector('#scrollArea'),\n      rootMargin: '0px',\n      threshold: [0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.45, 0.5, 0.55, 0.6, 0.65, 0.7, 0.75, 0.8, 0.85, 0.9, 0.95, 1]\n    };\n    const observer = new IntersectionObserver((entries, o) => {\n      entries.forEach(entry => {\n        const svg = entry.target.querySelector('svg');\n        if (!svg) {\n          return;\n        }\n        const ratioOk = Math.round(entry.intersectionRatio * 100) >= visibleViewportRatio;\n        if (ratioOk) {\n          animateSvgRef.current();\n          svg.classList.add('dsm-svg-visible');\n          o.disconnect();\n        }\n      });\n    }, options);\n    observer.observe(el);\n    const initial = observer.takeRecords();\n    if (initial.length) {\n      initial.forEach(entry => {\n        const svg = entry.target.querySelector('svg');\n        if (!svg) {\n          return;\n        }\n        const ratioOk = Math.round(entry.intersectionRatio * 100) >= visibleViewportRatio;\n        if (ratioOk) {\n          animateSvgRef.current();\n          svg.classList.add('dsm-svg-visible');\n          observer.disconnect();\n        }\n      });\n    }\n    return () => observer.disconnect();\n  }, [useTriggerOn, isViewportTrigger, visibleViewport, useSvgCodeOn, data, dsmSvgCode]);\n  (0,external_vendor_React_.useEffect)(() => {\n    const svg = svgAnimationContainer.current?.querySelector('svg');\n    if (!svg) {\n      return;\n    }\n    if (useTriggerOn && (isViewportTrigger || triggerType === 'dsm_click' || triggerType === 'dsm_hover')) {\n      return;\n    }\n    animateSvg();\n  }, [data, dsmSvgCode, speed, loop, animationTimingFunc, delayNo, unlimited, count, useTriggerOn, isViewportTrigger, triggerType]);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: svg_animation_edit_ModuleScriptData,\n    stylesComponent: svg_animation_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    ref: svgAnimationContainer,\n    className: \"dsm-svg-animation-container\",\n    \"data-use_trigger\": useTriggerOn ? 'on' : 'off',\n    \"data-trigger_type\": triggerType,\n    onClick: () => useTriggerOn && triggerType === 'dsm_click' && animateSvg(),\n    onMouseEnter: () => useTriggerOn && triggerType === 'dsm_hover' && animateSvg()\n  }, !(0,lodash.isEmpty)(data) && svgDataFromUploadField, svgDataFromTextField));\n}\n/* harmony default export */ const svg_animation_edit = (svg_animation_edit_Edit);\n;// ./packages/module-library/svg-animation/conversion-outline.js\nconst svg_animation_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    display_conditions: 'module.decoration.conditions',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    module: 'module.advanced.htmlAttributes',\n    margin_padding: 'module.decoration.spacing',\n    link_options: 'module.advanced.link',\n    height: 'module.decoration.sizing',\n    max_width: 'module.decoration.sizing',\n    text: 'module.advanced.text',\n    text_shadow: {\n      default: 'module.advanced.text.textShadow'\n    },\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex'\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    dsm_use_svg_code: 'dsm_use_svg_code.innerContent.*',\n    dsm_upload_svg: 'dsm_upload_svg.innerContent.*.src',\n    dsm_svg_code: 'dsm_svg_code.innerContent.*',\n    dsm_animation_type: 'dsm_animation_type.innerContent.*',\n    dsm_animation_function: 'dsm_animation_function.innerContent.*',\n    dsm_loop: 'dsm_loop.innerContent.*',\n    dsm_unlimited: 'dsm_unlimited.innerContent.*',\n    dsm_count: 'dsm_count.innerContent.*',\n    dsm_use_trigger: 'dsm_use_trigger.innerContent.*',\n    dsm_trigger_type: 'dsm_trigger_type.innerContent.*',\n    dsm_visible_viewport: 'dsm_visible_viewport.innerContent.*',\n    dsm_speed: 'dsm_speed.innerContent.*',\n    dsm_delay: 'dsm_delay.innerContent.*',\n    dsm_alignment: 'dsm_alignment.innerContent.*',\n    dsm_svg_color: 'dsm_svg_color.innerContent.*',\n    dsm_width: 'dsm_width.innerContent.*',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/svg-animation/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmSvgImage', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/svg-image': {\n      name: 'divi-supreme/svg-image',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.800781 2.667969 L 3.199219 2.667969 C 2.90625 2.667969 2.667969 2.90625 2.667969 3.199219 L 2.667969 11.023438 C 2.667969 11.316406 2.90625 11.554688 3.199219 11.554688 L 6.289062 11.554688 L 5.933594 12.265625 L 5.332031 12.265625 C 5.039062 12.265625 4.800781 12.503906 4.800781 12.800781 C 4.800781 13.09375 5.039062 13.332031 5.332031 13.332031 L 10.667969 13.332031 C 10.960938 13.332031 11.199219 13.09375 11.199219 12.800781 C 11.199219 12.503906 10.960938 12.265625 10.667969 12.265625 L 10.066406 12.265625 L 9.710938 11.554688 L 12.800781 11.554688 C 13.09375 11.554688 13.332031 11.316406 13.332031 11.023438 L 13.332031 3.199219 C 13.332031 2.90625 13.09375 2.667969 12.800781 2.667969 Z M 3.199219 3.023438 L 12.800781 3.023438 C 12.898438 3.023438 12.976562 3.101562 12.976562 3.199219 L 12.976562 10.132812 L 3.023438 10.132812 L 3.023438 3.199219 C 3.023438 3.101562 3.101562 3.023438 3.199219 3.023438 Z M 10.84375 12.800781 C 10.84375 12.898438 10.765625 12.976562 10.667969 12.976562 L 5.332031 12.976562 C 5.234375 12.976562 5.15625 12.898438 5.15625 12.800781 C 5.15625 12.703125 5.234375 12.621094 5.332031 12.621094 L 10.667969 12.621094 C 10.765625 12.621094 10.84375 12.703125 10.84375 12.800781 Z M 9.667969 12.265625 L 6.332031 12.265625 L 6.6875 11.554688 L 9.3125 11.554688 Z M 12.800781 11.199219 L 3.199219 11.199219 C 3.101562 11.199219 3.023438 11.121094 3.023438 11.023438 L 3.023438 10.488281 L 12.976562 10.488281 L 12.976562 11.023438 C 12.976562 11.121094 12.898438 11.199219 12.800781 11.199219 Z M 12.800781 11.199219 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 7.367188 6.53125 C 7.515625 6.605469 7.695312 6.589844 7.832031 6.488281 L 8.875 5.71875 C 8.996094 5.625 9.066406 5.484375 9.066406 5.332031 C 9.066406 5.183594 8.996094 5.039062 8.875 4.949219 L 7.832031 4.179688 C 7.695312 4.078125 7.515625 4.0625 7.367188 4.136719 C 7.207031 4.21875 7.109375 4.382812 7.109375 4.5625 L 7.109375 6.105469 C 7.109375 6.285156 7.207031 6.449219 7.367188 6.53125 Z M 7.464844 4.5625 C 7.464844 4.515625 7.488281 4.476562 7.527344 4.453125 C 7.539062 4.449219 7.554688 4.445312 7.566406 4.445312 C 7.585938 4.445312 7.605469 4.453125 7.621094 4.464844 L 8.664062 5.234375 C 8.695312 5.257812 8.710938 5.296875 8.710938 5.332031 C 8.710938 5.371094 8.695312 5.40625 8.664062 5.429688 L 7.621094 6.203125 C 7.59375 6.226562 7.554688 6.230469 7.527344 6.214844 C 7.488281 6.191406 7.464844 6.152344 7.464844 6.105469 Z M 7.464844 4.5625 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 3.542969 9.601562 L 3.554688 9.601562 C 3.648438 9.601562 3.726562 9.527344 3.734375 9.433594 C 3.734375 9.417969 3.871094 7.644531 5.066406 7.644531 C 6.257812 7.644531 6.398438 9.417969 6.398438 9.433594 C 6.40625 9.527344 6.484375 9.601562 6.578125 9.601562 C 6.671875 9.601562 6.75 9.527344 6.753906 9.433594 C 6.757812 9.417969 6.894531 7.644531 8.089844 7.644531 C 9.28125 7.644531 9.421875 9.417969 9.421875 9.433594 C 9.429688 9.527344 9.503906 9.597656 9.59375 9.601562 L 9.601562 9.601562 C 9.691406 9.601562 9.765625 9.53125 9.777344 9.441406 C 9.777344 9.425781 9.980469 7.796875 11.050781 7.65625 C 11.144531 8 11.484375 8.21875 11.835938 8.167969 C 12.1875 8.113281 12.449219 7.808594 12.441406 7.453125 C 12.4375 7.097656 12.167969 6.800781 11.8125 6.757812 C 11.457031 6.71875 11.128906 6.949219 11.042969 7.296875 C 10.238281 7.375 9.824219 8.050781 9.617188 8.621094 C 9.398438 7.960938 8.9375 7.289062 8.089844 7.289062 C 7.261719 7.289062 6.804688 7.929688 6.578125 8.570312 C 6.351562 7.929688 5.894531 7.289062 5.066406 7.289062 C 3.847656 7.289062 3.429688 8.675781 3.378906 9.410156 C 3.375 9.457031 3.390625 9.503906 3.421875 9.539062 C 3.453125 9.574219 3.496094 9.597656 3.542969 9.601562 Z M 11.734375 7.109375 C 11.929688 7.109375 12.089844 7.269531 12.089844 7.464844 C 12.089844 7.664062 11.929688 7.820312 11.734375 7.820312 C 11.535156 7.820312 11.378906 7.664062 11.378906 7.464844 C 11.378906 7.269531 11.535156 7.109375 11.734375 7.109375 Z M 11.734375 7.109375 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 14.933594 1.601562 C 14.640625 1.601562 14.398438 1.359375 14.398438 1.066406 C 14.398438 0.773438 14.640625 0.535156 14.933594 0.535156 C 15.226562 0.535156 15.464844 0.773438 15.464844 1.066406 C 15.464844 1.359375 15.226562 1.601562 14.933594 1.601562 Z M 14.933594 0.828125 C 14.800781 0.828125 14.695312 0.933594 14.695312 1.066406 C 14.695312 1.199219 14.800781 1.304688 14.933594 1.304688 C 15.066406 1.304688 15.171875 1.199219 15.171875 1.066406 C 15.171875 0.933594 15.066406 0.828125 14.933594 0.828125 Z M 14.933594 0.828125 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 1.601562 14.933594 C 1.304688 14.933594 1.066406 14.695312 1.066406 14.398438 C 1.066406 14.105469 1.304688 13.867188 1.601562 13.867188 C 1.894531 13.867188 2.132812 14.105469 2.132812 14.398438 C 2.132812 14.695312 1.894531 14.933594 1.601562 14.933594 Z M 1.601562 14.160156 C 1.46875 14.160156 1.359375 14.269531 1.359375 14.398438 C 1.359375 14.53125 1.46875 14.640625 1.601562 14.640625 C 1.730469 14.640625 1.839844 14.53125 1.839844 14.398438 C 1.839844 14.269531 1.730469 14.160156 1.601562 14.160156 Z M 1.601562 14.160156 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/svg-animation/index.js\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\nconst svgAnimationModule = {\n  metadata: svg_animation_module_namespaceObject,\n  conversionOutline: svg_animation_conversion_outline_conversionOutline,\n  renderers: {\n    edit: svg_animation_edit,\n    styles: svg_animation_module_styles_ModuleStyles\n  },\n  defaultAttrs: {\n    ...svg_animation_module_default_render_attributes_namespaceObject\n  },\n  settings: {\n    content: svg_animation_settings_content,\n    design: svg_animation_settings_design,\n    advanced: svg_animation_settings_advanced\n  },\n  placeholderContent: {\n    ...svg_animation_module_default_render_attributes_namespaceObject\n  }\n};\n/* harmony default export */ const svg_animation = (svgAnimationModule);\n;// ./packages/module-library/table-of-contents/module.json\nconst table_of_contents_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/table-of-contents\",\"title\":\"Supreme Table Of Contents\",\"titles\":\"Supreme Table Of Contents\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/table-of-contents\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"default\":{\"advanced\":{\"text\":{\"text\":{\"desktop\":{\"value\":{\"color\":\"light\"}}}}}},\"settings\":{\"decoration\":{\"animation\":{},\"attributes\":{},\"background\":{},\"border\":{},\"boxShadow\":{},\"conditions\":{},\"filters\":{},\"interactions\":{},\"sizing\":{},\"spacing\":{},\"transform\":{}}}},\"dsm_content_selector\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_heading_levels\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_ignore_selector\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}}},\"dsm_exclude_empty\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_smooth_scroll\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_scroll_offset\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_ordered_list\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_collapse_inactive\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_list_max_height\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}}},\"dsm_mobile_collapsible\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_mobile_toggle_label\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_mobile_toggle_icon\":{\"type\":\"object\",\"inlineEditor\":\"IconPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_mobile_toggle_icon_placement\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_mobile_toggle_icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_mobile_toggle_icon_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_empty_message\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"toc_list\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-toc-link\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-toc-link\",\"hover\":\"{{selector}} .dsm-toc-link:hover\"}}},\"spacing\":{\"selector\":\"{{selector}} .dsm-toc-link\"},\"background\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-toc-link\",\"hover\":\"{{selector}} .dsm-toc-link:hover\"}}}},\"settings\":{\"decoration\":{\"font\":{},\"spacing\":{},\"background\":{}}}},\"toc_list_active\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-toc-link.is-active-link\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-toc-link.is-active-link\"}}}},\"settings\":{\"decoration\":{\"font\":{},\"background\":{}}}},\"toc_mobile_toggle_bg\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-toc-mobile-toggle\",\"childrenSanitizer\":\"et_core_esc_previously\",\"default\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"color\":\"inherit\"}}}},\"spacing\":{\"desktop\":{\"value\":{\"margin\":{\"top\":\"0px\",\"right\":\"0px\",\"bottom\":\"12px\",\"left\":\"0px\"},\"padding\":{\"top\":\"10px\",\"right\":\"12px\",\"bottom\":\"10px\",\"left\":\"12px\"}}}},\"border\":{\"desktop\":{\"value\":{\"radius\":{\"sync\":\"on\",\"topLeft\":\"4px\",\"topRight\":\"4px\",\"bottomLeft\":\"4px\",\"bottomRight\":\"4px\"},\"styles\":{\"all\":{\"width\":\"1px\",\"style\":\"solid\",\"color\":\"currentcolor\"}}}}},\"background\":{},\"boxShadow\":{}}},\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-toc-mobile-toggle\",\"hover\":\"{{selector}} .dsm-toc-mobile-toggle:hover\"}}},\"spacing\":{\"selector\":\"{{selector}} .dsm-toc-mobile-toggle\"},\"background\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-toc-mobile-toggle\",\"hover\":\"{{selector}} .dsm-toc-mobile-toggle:hover\"}}},\"border\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-toc-mobile-toggle\",\"hover\":\"{{selector}} .dsm-toc-mobile-toggle:hover\"}}},\"boxShadow\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-toc-mobile-toggle\",\"hover\":\"{{selector}} .dsm-toc-mobile-toggle:hover\"}},\"useOverlay\":true}},\"settings\":{\"decoration\":{\"font\":{},\"spacing\":{},\"background\":{},\"border\":{},\"boxShadow\":{}}}}}}');\n;// ./packages/module-library/table-of-contents/module-default-render-attributes.json\nconst table_of_contents_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"dsm_content_selector\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"dsm_heading_levels\":{\"innerContent\":{\"desktop\":{\"value\":\"h2, h3, h4\"}}},\"dsm_ignore_selector\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"dsm_exclude_empty\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"dsm_smooth_scroll\":{\"innerContent\":{\"desktop\":{\"value\":\"on\"}}},\"dsm_scroll_offset\":{\"innerContent\":{\"desktop\":{\"value\":\"0px\"}}},\"dsm_ordered_list\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"dsm_collapse_inactive\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"dsm_list_max_height\":{\"innerContent\":{\"desktop\":{\"value\":\"\"}}},\"dsm_mobile_collapsible\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"dsm_mobile_toggle_label\":{\"innerContent\":{\"desktop\":{\"value\":\"Contents\"}}},\"dsm_mobile_toggle_icon\":{\"innerContent\":{\"desktop\":{\"value\":{\"type\":\"divi\",\"unicode\":\"&#x33;\",\"weight\":\"400\"}}}},\"dsm_mobile_toggle_icon_placement\":{\"innerContent\":{\"desktop\":{\"value\":\"left\"}}},\"dsm_mobile_toggle_icon_size\":{\"innerContent\":{\"desktop\":{\"value\":\"14px\"}}},\"dsm_empty_message\":{\"innerContent\":{\"desktop\":{\"value\":\"No headings were found in the selected content area.\"}}},\"toc_mobile_toggle_bg\":{\"decoration\":{\"font\":{\"font\":{\"desktop\":{\"value\":{\"color\":\"inherit\"}}}},\"spacing\":{\"desktop\":{\"value\":{\"margin\":{\"top\":\"0px\",\"right\":\"0px\",\"bottom\":\"12px\",\"left\":\"0px\"},\"padding\":{\"top\":\"10px\",\"right\":\"12px\",\"bottom\":\"10px\",\"left\":\"12px\"}}}},\"border\":{\"desktop\":{\"value\":{\"radius\":{\"sync\":\"on\",\"topLeft\":\"4px\",\"topRight\":\"4px\",\"bottomLeft\":\"4px\",\"bottomRight\":\"4px\"},\"styles\":{\"all\":{\"width\":\"1px\",\"style\":\"solid\",\"color\":\"currentcolor\"}}}}},\"background\":{},\"boxShadow\":{}}}}');\n;// ./packages/module-library/table-of-contents/table-of-contents-vb-default-attrs.js\nvar table_of_contents_vb_default_attrs_defaultRenderAttribu, _mobileDec$font, _mobileDec$spacing, _mobileDec$background, _mobileDec$border;\n/**\n * Visual Builder `defaultAttr` slices for TOC mobile toggle (`toc_mobile_toggle_bg`).\n *\n * Must match `module-default-render-attributes.json` and `module.json` → `toc_mobile_toggle_bg.default`.\n *\n * @package DiviSupreme\n */\n\n\n\n/**\n * Default icon innerContent — Divi Caret Down (similar to legacy chevron SVG).\n *\n * Matches `dsm_mobile_toggle_icon` in JSON defaults.\n */\nconst tocMobileToggleIconInnerContentDefaultAttr = table_of_contents_module_default_render_attributes_namespaceObject.dsm_mobile_toggle_icon.innerContent;\n\n/** Placement innerContent (`left`|`right`). */\nconst tocMobileToggleIconPlacementInnerContentDefaultAttr = table_of_contents_module_default_render_attributes_namespaceObject.dsm_mobile_toggle_icon_placement.innerContent;\n\n/** List max height: empty VB input means no fixed max (see `allowEmpty` on `RangeContainer`). */\nconst tocListMaxHeightInnerContentDefaultAttr = {\n  desktop: {\n    value: ''\n  }\n};\n\n/** Icon font-size innerContent (`14px` matches legacy 14×14 SVG). */\nconst tocMobileToggleIconSizeInnerContentDefaultAttr = table_of_contents_module_default_render_attributes_namespaceObject.dsm_mobile_toggle_icon_size.innerContent;\nconst mobileDec = (table_of_contents_vb_default_attrs_defaultRenderAttribu = table_of_contents_module_default_render_attributes_namespaceObject.toc_mobile_toggle_bg?.decoration) !== null && table_of_contents_vb_default_attrs_defaultRenderAttribu !== void 0 ? table_of_contents_vb_default_attrs_defaultRenderAttribu : {};\nconst tocMobileToggleFontGroupDefaultAttr = (_mobileDec$font = mobileDec.font) !== null && _mobileDec$font !== void 0 ? _mobileDec$font : {\n  font: {\n    desktop: {\n      value: {\n        color: 'inherit'\n      }\n    }\n  }\n};\nconst tocMobileToggleSpacingDefaultAttr = (_mobileDec$spacing = mobileDec.spacing) !== null && _mobileDec$spacing !== void 0 ? _mobileDec$spacing : {\n  desktop: {\n    value: {}\n  }\n};\nconst tocMobileToggleBackgroundDefaultAttr = (_mobileDec$background = mobileDec.background) !== null && _mobileDec$background !== void 0 ? _mobileDec$background : {};\nconst tocMobileToggleBorderDefaultAttr = (_mobileDec$border = mobileDec.border) !== null && _mobileDec$border !== void 0 ? _mobileDec$border : {\n  desktop: {\n    value: {}\n  }\n};\n;// ./packages/module-library/table-of-contents/settings-content.js\n\n\n\n\n\n\n\n\nfunction table_of_contents_settings_content_SettingsContent({\n  attrs\n}) {\n  var _getAttrByMode;\n  const mobileCollapsible = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_mobile_collapsible?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'off';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"dsm_toc_sources\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Sources', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content_selector.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content wrapper CSS selector', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Leave empty to auto-detect the main post/article area (.et-db regions, article, main, #main-content).', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: table_of_contents_module_default_render_attributes_namespaceObject.dsm_content_selector.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_heading_levels.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Heading selectors', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Comma-separated list, e.g. h2, h3, h4 (case-insensitive).', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: table_of_contents_module_default_render_attributes_namespaceObject.dsm_heading_levels.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_ignore_selector.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Ignore selector', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Optional comma-separated CSS selectors for regions whose headings should be skipped. Leave blank if you do not need this.', 'dsm-supreme-modules-pro-for-divi'),\n    placeholder: (0,external_window_vendor_wp_i18n_namespaceObject.__)('.dsm-toc-ignore', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: table_of_contents_module_default_render_attributes_namespaceObject.dsm_ignore_selector.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_exclude_empty.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Skip empty headings', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: table_of_contents_module_default_render_attributes_namespaceObject.dsm_exclude_empty.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_empty_message.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Message when no headings found', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: table_of_contents_module_default_render_attributes_namespaceObject.dsm_empty_message.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"dsm_toc_behavior\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Behavior', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_smooth_scroll.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Smooth scroll on click', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: table_of_contents_module_default_render_attributes_namespaceObject.dsm_smooth_scroll.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_scroll_offset.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Scroll offset', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Distance from the top of the viewport when scrolling to a heading (fixed headers).', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: table_of_contents_module_default_render_attributes_namespaceObject.dsm_scroll_offset.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 1000,\n    step: 1,\n    defaultUnit: \"px\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_ordered_list.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Numbered list', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: table_of_contents_module_default_render_attributes_namespaceObject.dsm_ordered_list.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_collapse_inactive.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Collapse inactive', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Only expand the branch that contains the section currently in view.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: table_of_contents_module_default_render_attributes_namespaceObject.dsm_collapse_inactive.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_list_max_height.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('List max height', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: tocListMaxHeightInnerContentDefaultAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    allowEmpty: true,\n    min: 0,\n    max: 2000,\n    step: 1,\n    defaultUnit: \"px\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_mobile_collapsible.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Collapsible on mobile', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('On small screens, shows a control to expand or collapse the heading list.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: table_of_contents_module_default_render_attributes_namespaceObject.dsm_mobile_collapsible.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_mobile_toggle_label.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Mobile toggle label', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text shown on the expand/collapse button on small screens.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === mobileCollapsible,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      }\n    },\n    defaultAttr: table_of_contents_module_default_render_attributes_namespaceObject.dsm_mobile_toggle_label.innerContent\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_mobile_toggle_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Mobile toggle icon', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon shown next to the label on the mobile expand/collapse control.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === mobileCollapsible,\n    defaultAttr: tocMobileToggleIconInnerContentDefaultAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_mobile_toggle_icon_placement.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Mobile toggle icon placement', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === mobileCollapsible,\n    defaultAttr: tocMobileToggleIconPlacementInnerContentDefaultAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, null));\n}\n/* harmony default export */ const table_of_contents_settings_content = (table_of_contents_settings_content_SettingsContent);\n\n;// ./packages/module-library/table-of-contents/settings-design.js\n\n\n\n\n\n\n\n\n\n/**\n * Settings → Design panel.\n *\n * @param {Object} [props] Panel props.\n * @param {Object} [props.attrs] Stored module attrs (VB).\n * @param {Object} [props.defaultSettingsAttrs] Registered module defaults (VB).\n */\nfunction table_of_contents_settings_design_SettingsDesign({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  var _getAttrByMode, _defaultSettingsAttrs, _regMobileDec$font, _regMobileDec$spacing, _regMobileDec$backgro, _regMobileDec$border;\n  const fontNoHeadingLevel = {\n    headingLevel: {\n      render: false\n    }\n  };\n  const mobileCollapsible = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_mobile_collapsible?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'off';\n  const regMobileDec = (_defaultSettingsAttrs = defaultSettingsAttrs?.toc_mobile_toggle_bg?.decoration) !== null && _defaultSettingsAttrs !== void 0 ? _defaultSettingsAttrs : {};\n  const toggleFontDefaultAttr = (0,lodash.merge)({}, tocMobileToggleFontGroupDefaultAttr, (_regMobileDec$font = regMobileDec.font) !== null && _regMobileDec$font !== void 0 ? _regMobileDec$font : {});\n  const toggleSpacingDefaultAttr = (0,lodash.merge)({}, tocMobileToggleSpacingDefaultAttr, (_regMobileDec$spacing = regMobileDec.spacing) !== null && _regMobileDec$spacing !== void 0 ? _regMobileDec$spacing : {});\n  const toggleBackgroundDefaultAttr = (0,lodash.merge)({}, tocMobileToggleBackgroundDefaultAttr, (_regMobileDec$backgro = regMobileDec.background) !== null && _regMobileDec$backgro !== void 0 ? _regMobileDec$backgro : {});\n  const toggleBorderDefaultAttr = (0,lodash.merge)({}, tocMobileToggleBorderDefaultAttr, (_regMobileDec$border = regMobileDec.border) !== null && _regMobileDec$border !== void 0 ? _regMobileDec$border : {});\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"dsm_toc_list\",\n    preset: \"design\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Lists', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"dsm_toc_list_normal\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Normal', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"toc_list.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Font', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Font', 'dsm-supreme-modules-pro-for-divi'),\n    fields: fontNoHeadingLevel\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"toc_list.decoration.spacing\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, {\n    attrName: \"toc_list.decoration.background\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"dsm_toc_list_is_active\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Is active', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"toc_list_active.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Font', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Font', 'dsm-supreme-modules-pro-for-divi'),\n    fields: fontNoHeadingLevel\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, {\n    attrName: \"toc_list_active.decoration.background\"\n  }))), 'on' === mobileCollapsible && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"dsm_toc_toggle\",\n    preset: \"design\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Mobile toggle button', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"dsm_toc_toggle_font\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fonts', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"toc_mobile_toggle_bg.decoration.font\",\n    defaultAttr: toggleFontDefaultAttr,\n    grouped: false,\n    fields: fontNoHeadingLevel\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"dsm_toc_toggle_icon_design\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Mobile toggle icon', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_mobile_toggle_icon_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Leave unchanged to inherit the button text color.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_mobile_toggle_icon_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon size', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: tocMobileToggleIconSizeInnerContentDefaultAttr\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 120,\n    step: 1,\n    defaultUnit: \"px\"\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"dsm_toc_toggle_spacing\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Spacing', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"toc_mobile_toggle_bg.decoration.spacing\",\n    defaultAttr: toggleSpacingDefaultAttr,\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Mobile toggle button', 'dsm-supreme-modules-pro-for-divi')\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"dsm_toc_toggle_background\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, {\n    attrName: \"toc_mobile_toggle_bg.decoration.background\",\n    defaultAttr: toggleBackgroundDefaultAttr,\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Mobile toggle button', 'dsm-supreme-modules-pro-for-divi')\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"dsm_toc_toggle_border\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Border', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"toc_mobile_toggle_bg.decoration.border\",\n    defaultAttr: toggleBorderDefaultAttr,\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Mobile toggle button', 'dsm-supreme-modules-pro-for-divi')\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"dsm_toc_toggle_box_shadow\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Box Shadow', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"toc_mobile_toggle_bg.decoration.boxShadow\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Mobile toggle button', 'dsm-supreme-modules-pro-for-divi')\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const table_of_contents_settings_design = (table_of_contents_settings_design_SettingsDesign);\n;// ./packages/module-library/table-of-contents/settings-advanced.js\n\nfunction table_of_contents_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm-toc-shell\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const table_of_contents_settings_advanced = (table_of_contents_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/table-of-contents/module-styles.js\n\n\n\n\n/**\n * Glyph + font stack for `.dsm-toc-toggle-icon::before` (parity with FAQ toggle icons).\n *\n * @param {{ attrValue?: Record<string, unknown> }} attr\n * @return {string}\n */\nconst mobileToggleIconGlyphCss = buildLegacyPseudoIconFontCss;\n\n/**\n * Prints styles for Supreme Table Of Contents (`dsm/table-of-contents`).\n *\n * @param {object} props Module style props.\n */\nconst table_of_contents_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  const iconBase = `${orderClass} .dsm-toc-mobile-toggle .dsm-toc-toggle-icon`;\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextStyle, {\n    selector: orderClass,\n    attr: attrs?.module?.advanced?.text\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'toc_list'\n  }), elements.style({\n    attrName: 'toc_list_active'\n  }), elements.style({\n    attrName: 'toc_mobile_toggle_bg'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${iconBase}::before`,\n    attr: attrs?.dsm_mobile_toggle_icon?.innerContent,\n    declarationFunction: mobileToggleIconGlyphCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: iconBase,\n    attr: attrs?.dsm_mobile_toggle_icon_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: iconBase,\n    attr: attrs?.dsm_mobile_toggle_icon_color?.innerContent,\n    property: \"color\"\n  }));\n};\n;// ./packages/module-library/table-of-contents/edit.js\n\n\n\n\n\n\n\n/** @returns {number} Best-effort CSS length to integer px (RangeContainer value). */\nfunction parsePxDigits(raw) {\n  if (raw === undefined || raw === null) {\n    return 0;\n  }\n  if (typeof raw === 'object' && raw !== null && Object.prototype.hasOwnProperty.call(raw, 'value')) {\n    const v = raw.value;\n    if (v === '' || v === undefined || v === null) {\n      return 0;\n    }\n    const n = parseFloat(String(v).replace(/,/g, '').replace(/[^\\d.-]/g, ''));\n    return Number.isFinite(n) ? Math.round(n) : 0;\n  }\n  const n = parseFloat(String(raw).replace(/,/g, '').replace(/[^\\d.-]/g, ''));\n  return Number.isFinite(n) ? Math.round(n) : 0;\n}\nconst table_of_contents_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\nfunction table_of_contents_edit_Edit({\n  attrs,\n  elements,\n  id,\n  name\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _getAttrByMode4, _getAttrByMode5, _getAttrByMode6, _getAttrByMode7, _getAttrByMode8, _getAttrByMode9, _getAttrByMode0, _getAttrByMode1;\n  const mobileCollapsible = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_mobile_collapsible?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'off';\n  const contentSelectorRaw = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_content_selector?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : '';\n  const headingLevelsRaw = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_heading_levels?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'h2, h3, h4';\n  const ignoreRaw = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_ignore_selector?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : '';\n  const emptyMessageRaw = (_getAttrByMode5 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_empty_message?.innerContent)) !== null && _getAttrByMode5 !== void 0 ? _getAttrByMode5 : '';\n  const mobileToggleLabelRaw = (_getAttrByMode6 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_mobile_toggle_label?.innerContent)) !== null && _getAttrByMode6 !== void 0 ? _getAttrByMode6 : '';\n  const mobileToggleIcon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_mobile_toggle_icon?.innerContent);\n  const iconPlacementRaw = (_getAttrByMode7 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_mobile_toggle_icon_placement?.innerContent)) !== null && _getAttrByMode7 !== void 0 ? _getAttrByMode7 : 'left';\n  const collapseInactive = (_getAttrByMode8 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_collapse_inactive?.innerContent)) !== null && _getAttrByMode8 !== void 0 ? _getAttrByMode8 : 'off';\n  const orderedList = (_getAttrByMode9 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_ordered_list?.innerContent)) !== null && _getAttrByMode9 !== void 0 ? _getAttrByMode9 : 'off';\n  const smoothScroll = (_getAttrByMode0 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_smooth_scroll?.innerContent)) !== null && _getAttrByMode0 !== void 0 ? _getAttrByMode0 : 'on';\n  const excludeEmpty = (_getAttrByMode1 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_exclude_empty?.innerContent)) !== null && _getAttrByMode1 !== void 0 ? _getAttrByMode1 : 'on';\n  const scrollPx = parsePxDigits((0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_scroll_offset?.innerContent));\n  const maxHeightPx = parsePxDigits((0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_list_max_height?.innerContent));\n  const mobileToggleLabelDisplay = String(mobileToggleLabelRaw).trim() || (0,external_window_vendor_wp_i18n_namespaceObject.__)('Contents', 'dsm-supreme-modules-pro-for-divi');\n  const iconPlacement = 'right' === String(iconPlacementRaw).trim().toLowerCase() ? 'right' : 'left';\n  const toggleButtonClasses = ['dsm-toc-mobile-toggle', 'right' === iconPlacement ? 'dsm-toc-mobile-toggle--icon-right' : ''].filter(Boolean);\n  const regionId = `dsm-toc-region-${String(id).replace(/[^\\w\\-]/g, '')}`;\n  const rootClassNames = ['dsm-toc-shell', 'dsm-toc-shell--expanded', 'on' === mobileCollapsible ? 'dsm-toc--mobile-toggle' : ''].filter(Boolean);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: table_of_contents_edit_ModuleScriptData,\n    stylesComponent: table_of_contents_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"nav\", {\n    className: \"dsm-toc-root\",\n    \"data-dsm-instance\": String(id),\n    \"data-dsm-content-selector\": String(contentSelectorRaw),\n    \"data-dsm-heading-levels\": String(headingLevelsRaw),\n    \"data-dsm-ignore-selector\": String(ignoreRaw),\n    \"data-dsm-exclude-empty\": 'off' === excludeEmpty ? 'off' : 'on',\n    \"data-dsm-smooth\": 'off' === smoothScroll ? 'off' : 'on',\n    \"data-dsm-ordered\": 'on' === orderedList ? 'on' : 'off',\n    \"data-dsm-collapse\": 'on' === collapseInactive ? 'on' : 'off',\n    \"data-dsm-scroll-offset\": String(scrollPx),\n    \"data-dsm-max-height-px\": String(maxHeightPx),\n    \"data-dsm-mobile-collapsible\": 'on' === mobileCollapsible ? 'on' : 'off',\n    \"data-dsm-empty-message\": String(emptyMessageRaw || (0,external_window_vendor_wp_i18n_namespaceObject.__)('No headings were found in the selected content area.', 'dsm-supreme-modules-pro-for-divi')),\n    \"aria-label\": (0,external_window_vendor_wp_i18n_namespaceObject.__)('Table of contents', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: rootClassNames.join(' ')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"button\", {\n    type: \"button\",\n    className: toggleButtonClasses.join(' '),\n    \"aria-expanded\": \"true\",\n    \"aria-controls\": regionId\n  }, /*#__PURE__*/external_vendor_React_default().createElement(ModuleIconHost, {\n    icon: mobileToggleIcon,\n    className: \"dsm-toc-toggle-icon\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm-toc-mobile-toggle-label\"\n  }, mobileToggleLabelDisplay)), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    id: regionId,\n    className: \"dsm-toc-scroll-area\",\n    style: maxHeightPx > 0 ? {\n      maxHeight: `${maxHeightPx}px`,\n      overflowY: 'auto'\n    } : undefined\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"p\", {\n    className: \"dsm-toc-empty\",\n    \"aria-hidden\": \"true\"\n  }, (0,external_window_vendor_wp_i18n_namespaceObject.__)('Headings populate on the live page from your selected content wrapper.', 'dsm-supreme-modules-pro-for-divi')), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-toc-vb-sample\",\n    \"aria-hidden\": \"true\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"ul\", {\n    className: \"dsm-toc-list dsm-toc-list--unordered\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"li\", {\n    className: \"dsm-toc-item is-active-li\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm-toc-link is-active-link\"\n  }, (0,external_window_vendor_wp_i18n_namespaceObject.__)('Sample heading', 'dsm-supreme-modules-pro-for-divi'))), /*#__PURE__*/external_vendor_React_default().createElement(\"li\", {\n    className: \"dsm-toc-item\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"ul\", {\n    className: \"dsm-toc-list dsm-toc-list--nested dsm-toc-list--unordered\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"li\", {\n    className: \"dsm-toc-item\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm-toc-link\"\n  }, (0,external_window_vendor_wp_i18n_namespaceObject.__)('Nested preview', 'dsm-supreme-modules-pro-for-divi'))))))), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-toc-list-host\"\n  })))));\n}\n/* harmony default export */ const table_of_contents_edit = (table_of_contents_edit_Edit);\n;// ./packages/module-library/table-of-contents/icon.js\n\n\n\n/**\n * 0–16 user space matches Divi’s module-picker `IconSvg` (hardcoded viewBox `\"0 0 16 16\"`).\n * Same gradients + layout as `assets/static/modules/table-of-contents.svg`; useId() avoids duplicate defs ids.\n */\nfunction DsmTableOfContentsIcon() {\n  const safeId = (0,external_vendor_React_.useId)().replace(/[^a-zA-Z0-9_-]/g, '');\n  const spine = `dsm-toc-spine-${safeId}`;\n  const lineA = `dsm-toc-la-${safeId}`;\n  const lineB = `dsm-toc-lb-${safeId}`;\n  const lineC = `dsm-toc-lc-${safeId}`;\n  const dot = `dsm-toc-dot-${safeId}`;\n  const sparkA = `dsm-toc-sa-${safeId}`;\n  const sparkB = `dsm-toc-sb-${safeId}`;\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"linearGradient\", {\n    id: spine,\n    x1: \"3.842\",\n    y1: \"12\",\n    x2: \"3.842\",\n    y2: \"4\",\n    gradientUnits: \"userSpaceOnUse\"\n  }, /*#__PURE__*/React.createElement(\"stop\", {\n    stopColor: \"#A93AFF\"\n  }), /*#__PURE__*/React.createElement(\"stop\", {\n    offset: \"1\",\n    stopColor: \"#FF81FF\"\n  })), /*#__PURE__*/React.createElement(\"linearGradient\", {\n    id: lineA,\n    x1: \"9.158\",\n    y1: \"5.305\",\n    x2: \"9.158\",\n    y2: \"4.316\",\n    gradientUnits: \"userSpaceOnUse\"\n  }, /*#__PURE__*/React.createElement(\"stop\", {\n    stopColor: \"#A93AFF\"\n  }), /*#__PURE__*/React.createElement(\"stop\", {\n    offset: \"1\",\n    stopColor: \"#FF81FF\"\n  })), /*#__PURE__*/React.createElement(\"linearGradient\", {\n    id: lineB,\n    x1: \"8.105\",\n    y1: \"7.832\",\n    x2: \"8.105\",\n    y2: \"6.842\",\n    gradientUnits: \"userSpaceOnUse\"\n  }, /*#__PURE__*/React.createElement(\"stop\", {\n    stopColor: \"#A93AFF\"\n  }), /*#__PURE__*/React.createElement(\"stop\", {\n    offset: \"1\",\n    stopColor: \"#FF81FF\"\n  })), /*#__PURE__*/React.createElement(\"linearGradient\", {\n    id: lineC,\n    x1: \"8.632\",\n    y1: \"10.358\",\n    x2: \"8.632\",\n    y2: \"9.368\",\n    gradientUnits: \"userSpaceOnUse\"\n  }, /*#__PURE__*/React.createElement(\"stop\", {\n    stopColor: \"#A93AFF\"\n  }), /*#__PURE__*/React.createElement(\"stop\", {\n    offset: \"1\",\n    stopColor: \"#FF81FF\"\n  })), /*#__PURE__*/React.createElement(\"linearGradient\", {\n    id: dot,\n    x1: \"11.895\",\n    y1: \"8.316\",\n    x2: \"11.895\",\n    y2: \"6.337\",\n    gradientUnits: \"userSpaceOnUse\"\n  }, /*#__PURE__*/React.createElement(\"stop\", {\n    stopColor: \"#A93AFF\"\n  }), /*#__PURE__*/React.createElement(\"stop\", {\n    offset: \"1\",\n    stopColor: \"#FF81FF\"\n  })), /*#__PURE__*/React.createElement(\"linearGradient\", {\n    id: sparkA,\n    x1: \"12.716\",\n    y1: \"5.242\",\n    x2: \"12.716\",\n    y2: \"4.274\",\n    gradientUnits: \"userSpaceOnUse\"\n  }, /*#__PURE__*/React.createElement(\"stop\", {\n    stopColor: \"#A93AFF\"\n  }), /*#__PURE__*/React.createElement(\"stop\", {\n    offset: \"1\",\n    stopColor: \"#FF81FF\"\n  })), /*#__PURE__*/React.createElement(\"linearGradient\", {\n    id: sparkB,\n    x1: \"4.042\",\n    y1: \"11.874\",\n    x2: \"4.042\",\n    y2: \"11.032\",\n    gradientUnits: \"userSpaceOnUse\"\n  }, /*#__PURE__*/React.createElement(\"stop\", {\n    stopColor: \"#A93AFF\"\n  }), /*#__PURE__*/React.createElement(\"stop\", {\n    offset: \"1\",\n    stopColor: \"#FF81FF\"\n  }))), /*#__PURE__*/React.createElement(\"rect\", {\n    width: \"16\",\n    height: \"16\",\n    fill: \"transparent\",\n    \"aria-hidden\": \"true\"\n  }), /*#__PURE__*/React.createElement(\"rect\", {\n    x: \"1.895\",\n    y: \"2.737\",\n    width: \"1.368\",\n    height: \"8\",\n    rx: \"0.684\",\n    fill: `url(#${spine})`\n  }), /*#__PURE__*/React.createElement(\"rect\", {\n    x: \"2.063\",\n    y: \"3.032\",\n    width: \"1.032\",\n    height: \"7.411\",\n    rx: \"0.463\",\n    fill: \"#ffffff\",\n    fillOpacity: \"0.35\"\n  }), /*#__PURE__*/React.createElement(\"rect\", {\n    x: \"4.211\",\n    y: \"3.053\",\n    width: \"7.368\",\n    height: \"0.989\",\n    rx: \"0.495\",\n    fill: `url(#${lineA})`\n  }), /*#__PURE__*/React.createElement(\"rect\", {\n    x: \"4.211\",\n    y: \"5.579\",\n    width: \"5.263\",\n    height: \"0.989\",\n    rx: \"0.495\",\n    fill: `url(#${lineB})`\n  }), /*#__PURE__*/React.createElement(\"rect\", {\n    x: \"4.211\",\n    y: \"8.105\",\n    width: \"6.316\",\n    height: \"0.989\",\n    rx: \"0.495\",\n    fill: `url(#${lineC})`\n  }), /*#__PURE__*/React.createElement(\"circle\", {\n    cx: \"11.895\",\n    cy: \"7.326\",\n    r: \"0.989\",\n    fill: `url(#${dot})`\n  }), /*#__PURE__*/React.createElement(\"circle\", {\n    cx: \"11.895\",\n    cy: \"7.326\",\n    r: \"0.484\",\n    fill: \"#ffffff\",\n    fillOpacity: \"0.9\"\n  }), /*#__PURE__*/React.createElement(\"circle\", {\n    cx: \"12.716\",\n    cy: \"4.758\",\n    r: \"0.484\",\n    fill: `url(#${sparkA})`\n  }), /*#__PURE__*/React.createElement(\"circle\", {\n    cx: \"4.042\",\n    cy: \"11.453\",\n    r: \"0.421\",\n    fill: `url(#${sparkB})`\n  }));\n}\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmTableOfContents', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/table-of-contents': {\n      name: 'divi-supreme/table-of-contents',\n      viewBox: '0 0 16 16',\n      component: DsmTableOfContentsIcon\n    }\n  };\n});\n;// ./packages/module-library/table-of-contents/index.js\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n\n\n\n\n\nconst tableOfContentsModule = {\n  metadata: table_of_contents_module_namespaceObject,\n  renderers: {\n    edit: table_of_contents_edit,\n    styles: table_of_contents_module_styles_ModuleStyles\n  },\n  defaultAttrs: {\n    ...table_of_contents_module_default_render_attributes_namespaceObject\n  },\n  settings: {\n    content: table_of_contents_settings_content,\n    design: table_of_contents_settings_design,\n    advanced: table_of_contents_settings_advanced\n  },\n  placeholderContent: {\n    ...table_of_contents_module_default_render_attributes_namespaceObject,\n    module: {\n      decoration: {}\n    }\n  }\n};\n/* harmony default export */ const table_of_contents = (tableOfContentsModule);\n;// ./packages/module-library/image-hover-reveal/module.json\nconst image_hover_reveal_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/image-hover-reveal\",\"d4Shortcode\":\"dsm_image_hover_reveal\",\"title\":\"Supreme Image Hover Reveal\",\"titles\":\"Supreme Image Hover Reveal\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/image-hover-reveal\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"src\":{\"type\":\"object\",\"label\":\"Image\",\"selector\":\"{{selector}} .dsm-image-wrapper\",\"elementType\":\"image\",\"supportsCustomAttributes\":true,\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_reveal_animation\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_reveal_height\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"image_wrap_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-image-wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\",\"settings\":{\"decoration\":{\"border\":{},\"boxShadow\":{}}},\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-image-wrapper\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-image-wrapper\",\"useOverlay\":true}}}}}');\n;// ./packages/module-library/image-hover-reveal/module-default-render-attributes.json\nconst image_hover_reveal_module_default_render_attributes_namespaceObject = /*#__PURE__*/JSON.parse('{\"module\":{\"decoration\":{}},\"src\":{\"innerContent\":{\"desktop\":{\"value\":{\"src\":\"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTA4MCIgaGVpZ2h0PSI1NDAiIHZpZXdCb3g9IjAgMCAxMDgwIDU0MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPHBhdGggZmlsbD0iI0VCRUJFQiIgZD0iTTAgMGgxMDgwdjU0MEgweiIvPgogICAgICAgIDxwYXRoIGQ9Ik00NDUuNjQ5IDU0MGgtOTguOTk1TDE0NC42NDkgMzM3Ljk5NSAwIDQ4Mi42NDR2LTk4Ljk5NWwxMTYuMzY1LTExNi4zNjVjMTUuNjItMTUuNjIgNDAuOTQ3LTE1LjYyIDU2LjU2OCAwTDQ0NS42NSA1NDB6IiBmaWxsLW9wYWNpdHk9Ii4xIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgICAgICA8Y2lyY2xlIGZpbGwtb3BhY2l0eT0iLjA1IiBmaWxsPSIjMDAwIiBjeD0iMzMxIiBjeT0iMTQ4IiByPSI3MCIvPgogICAgICAgIDxwYXRoIGQ9Ik0xMDgwIDM3OXYxMTMuMTM3TDcyOC4xNjIgMTQwLjMgMzI4LjQ2MiA1NDBIMjE1LjMyNEw2OTkuODc4IDU1LjQ0NmMxNS42Mi0xNS42MiA0MC45NDgtMTUuNjIgNTYuNTY4IDBMMTA4MCAzNzl6IiBmaWxsLW9wYWNpdHk9Ii4yIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgIDwvZz4KPC9zdmc+Cg==\"}}}},\"image_reveal_animation\":{\"innerContent\":{\"desktop\":{\"value\":\"vert-slide-down\"}}},\"image_reveal_height\":{\"innerContent\":{\"desktop\":{\"value\":\"260px\"}}},\"image_wrap_style\":{\"decoration\":{}}}');\n;// ./packages/module-library/image-hover-reveal/image-hover-reveal-defaults-for-settings.js\n/**\n * D4-aligned defaults for Image Hover Reveal — imported only by settings-content / settings-design\n * for `defaultAttr` on FieldContainers (VB parity after save/reload).\n *\n * @see module-default-render-attributes.json\n */\n\nconst PLACEHOLDER_SRC = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTA4MCIgaGVpZ2h0PSI1NDAiIHZpZXdCb3g9IjAgMCAxMDgwIDU0MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPHBhdGggZmlsbD0iI0VCRUJFQiIgZD0iTTAgMGgxMDgwdjU0MEgweiIvPgogICAgICAgIDxwYXRoIGQ9Ik00NDUuNjQ5IDU0MGgtOTguOTk1TDE0NC42NDkgMzM3Ljk5NSAwIDQ4Mi42NDR2LTk4Ljk5NWwxMTYuMzY1LTExNi4zNjVjMTUuNjItMTUuNjIgNDAuOTQ3LTE1LjYyIDU2LjU2OCAwTDQ0NS42NSA1NDB6IiBmaWxsLW9wYWNpdHk9Ii4xIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgICAgICA8Y2lyY2xlIGZpbGwtb3BhY2l0eT0iLjA1IiBmaWxsPSIjMDAwIiBjeD0iMzMxIiBjeT0iMTQ4IiByPSI3MCIvPgogICAgICAgIDxwYXRoIGQ9Ik0xMDgwIDM3OXYxMTMuMTM3TDcyOC4xNjIgMTQwLjMgMzI4LjQ2MiA1NDBIMjE1LjMyNEw2OTkuODc4IDU1LjQ0NmMxNS42Mi0xNS42MiA0MC45NDgtMTUuNjIgNTYuNTY4IDBMMTA4MCAzNzl6IiBmaWxsLW9wYWNpdHk9Ii4yIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgIDwvZz4KPC9zdmc+Cg==';\nconst ihrImageUploadVbDefaultAttr = {\n  desktop: {\n    value: {\n      src: PLACEHOLDER_SRC\n    }\n  }\n};\nconst ihrFd = {\n  src: ihrImageUploadVbDefaultAttr,\n  image_reveal_animation: {\n    desktop: {\n      value: 'vert-slide-down'\n    }\n  },\n  image_reveal_height: {\n    desktop: {\n      value: '260px'\n    }\n  }\n};\n;// ./packages/module-library/image-hover-reveal/settings-content.js\n\n\n\n\n\n\nfunction image_hover_reveal_settings_content_SettingsContent() {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    preset: \"content\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"src.innerContent\",\n    subName: \"src\",\n    defaultAttr: ihrImageUploadVbDefaultAttr,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Upload your image. SVG files work best with display fixes applied automatically.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_reveal_height.innerContent\",\n    defaultAttr: ihrFd.image_reveal_height,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Height', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 1200,\n    step: 1,\n    defaultUnit: \"px\"\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"revealMotion\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Settings', 'dsm-supreme-modules-pro-for-divi'),\n    preset: \"default\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"image_reveal_animation.innerContent\",\n    defaultAttr: ihrFd.image_reveal_animation,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Reveal Animation', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide direction for the hover reveal effect.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      'vert-slide-down': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Vertical Slide Down', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'vert-slide-up': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Vertical Slide Up', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'horiz-slide-right': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Horizontal Slide Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'horiz-slide-left': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Horizontal Slide Left', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, null));\n}\n/* harmony default export */ const image_hover_reveal_settings_content = (image_hover_reveal_settings_content_SettingsContent);\n;// ./packages/module-library/image-hover-reveal/settings-design.js\n\n\n\n\nfunction image_hover_reveal_settings_design_SettingsDesign() {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"image\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    preset: \"design\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"image_wrap_style.decoration.border\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"image_wrap_style.decoration.boxShadow\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const image_hover_reveal_settings_design = (image_hover_reveal_settings_design_SettingsDesign);\n;// ./packages/module-library/image-hover-reveal/settings-advanced.js\n\nfunction image_hover_reveal_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_image_hover_reveal\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const image_hover_reveal_settings_advanced = (image_hover_reveal_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/image-hover-reveal/image-hover-reveal-utils.js\n/**\n * Shared helpers for Image Hover Reveal (Splitting grid).\n *\n * @package DiviSupreme\n */\n\n/**\n * Normalize upload innerContent for `useDynamicData` / background URLs (matches blob / tilt-image).\n *\n * @param {*} raw From `getAttrByMode( attrs.src.innerContent )`.\n * @return {string}\n */\nfunction image_hover_reveal_utils_getUploadValueForDynamicData(raw) {\n  if (raw == null || raw === '') {\n    return '';\n  }\n  if (typeof raw === 'string' || typeof raw === 'number') {\n    return String(raw);\n  }\n  if (typeof raw === 'object') {\n    if (typeof raw.src === 'string' && raw.src !== '') {\n      return raw.src;\n    }\n    if (typeof raw.url === 'string' && raw.url !== '') {\n      return raw.url;\n    }\n  }\n  return '';\n}\n\n/**\n * Value for `DynamicValueResolver` on image upload attrs — must match `dsm/social-share-buttons-child`:\n * pass the **`src` string** (including `$variable(...)$`), not the whole `{ src, id }` object, or\n * Divi may not resolve dynamic image content in the builder.\n *\n * @param {*} raw `getAttrByMode( attrs.src.innerContent )` or a breakpoint `*.value`.\n * @return {*}\n */\nfunction getSrcValueForDynamicResolver(raw) {\n  if (raw == null || raw === '') {\n    return raw;\n  }\n  if (typeof raw === 'object' && raw !== null && typeof raw.src === 'string') {\n    return raw.src;\n  }\n  return raw;\n}\n\n/**\n * URL for canvas / `background-image` after resolution; strips unresolved dynamic tokens.\n *\n * @param {*} resolvedOutput Resolver callback argument (`finalValue` from dynamic-wrapper).\n * @param {*}                srcLeafFallback `getAttrByMode( attrs.src.innerContent )` for fallback.\n * @return {string}\n */\nfunction resolveDynamicImageUrlForCanvas(resolvedOutput, srcLeafFallback) {\n  const pick = v => {\n    if (v == null || v === '') {\n      return '';\n    }\n    const s = typeof v === 'string' ? v.trim() : image_hover_reveal_utils_getUploadValueForDynamicData(v);\n    if (!s || s.includes('$variable(')) {\n      return '';\n    }\n    return s;\n  };\n  const primary = pick(resolvedOutput);\n  if (primary) {\n    return primary;\n  }\n  return pick(srcLeafFallback);\n}\nconst PRESET_SPLIT_COUNT = 5;\n\n/**\n * Clamp split count to Splitting-friendly bounds (presets use a fixed count).\n *\n * @param {unknown} raw InnerContent value or number string.\n * @return {number} Integer 2–20.\n */\nfunction getSplitCountFromAttrs(raw) {\n  let n = PRESET_SPLIT_COUNT;\n  if (typeof raw === 'string' || typeof raw === 'number') {\n    n = Number.parseInt(String(raw), 10);\n  }\n  if (!Number.isFinite(n)) {\n    n = PRESET_SPLIT_COUNT;\n  }\n  return Math.min(20, Math.max(2, n));\n}\n\n/**\n * Rows/columns for Splitting `cells` (horizontal = N×1 strips, vertical = 1×N).\n *\n * @param {string} directionClass Slide direction class slug.\n * @param {unknown} splitRaw      Split count source (innerContent value or number); presets use 5.\n * @return {{ rows: number, columns: number }}\n */\nfunction getSplittingRowsCols(directionClass, splitRaw) {\n  const n = getSplitCountFromAttrs(splitRaw !== null && splitRaw !== void 0 ? splitRaw : PRESET_SPLIT_COUNT);\n  const horiz = directionClass === 'horiz-slide-left' || directionClass === 'horiz-slide-right';\n  const vert = directionClass === 'vert-slide-down' || directionClass === 'vert-slide-up';\n  if (horiz) {\n    return {\n      rows: n,\n      columns: 1\n    };\n  }\n  if (vert) {\n    return {\n      rows: 1,\n      columns: n\n    };\n  }\n  return {\n    rows: 1,\n    columns: n\n  };\n}\n;// ./packages/module-library/image-hover-reveal/module-styles.js\n\n\n\n\n\n\n\n/**\n * Whether URL points at an SVG asset (path extension), for display fixes.\n *\n * @param {string} url Image URL.\n * @return {boolean}\n */\nfunction isSvgUrl(url) {\n  if (!url || typeof url !== 'string') {\n    return false;\n  }\n  try {\n    const path = new URL(url, 'https://example.invalid').pathname;\n    return path.toLowerCase().endsWith('.svg');\n  } catch {\n    return url.toLowerCase().includes('.svg');\n  }\n}\n\n/**\n * Background-image declaration for reveal layers (matches PHP `reveal_background_declaration_from_attrs`).\n *\n * @param {string} src Resolved image URL.\n * @return {Object|string} StyleDeclarations instance when there is a URL, empty string otherwise.\n */\nfunction revealBackgroundStyleDeclarations(src) {\n  if (!src) {\n    return '';\n  }\n  const safe = src.startsWith('data:') ? src : src;\n  const styleDeclarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'background-image': true\n    }\n  });\n  const escaped = safe.replace(/\\\\/g, '\\\\\\\\').replace(/'/g, \"\\\\'\");\n  styleDeclarations.add('background-image', `url('${escaped}')`);\n  return styleDeclarations;\n}\n\n/**\n * React function component for rendering module style.\n * `useDynamicData` at top level only (no render-prop wrapper) — avoids useSelect static/mapping errors.\n */\nconst image_hover_reveal_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  var _attrs$src$innerConte;\n  const srcLeaf = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.src?.innerContent);\n  const rawForResolver = srcLeaf !== undefined && srcLeaf !== null ? srcLeaf : (_attrs$src$innerConte = attrs?.src?.innerContent?.desktop?.value) !== null && _attrs$src$innerConte !== void 0 ? _attrs$src$innerConte : '';\n  const valueForDynamicResolver = getSrcValueForDynamicResolver(rawForResolver);\n  const {\n    resolvedValue,\n    isDynamic\n  } = (0,external_divi_dynamicData_namespaceObject.useDynamicData)(valueForDynamicResolver);\n  const srcUrl = resolveDynamicImageUrlForCanvas(isDynamic ? resolvedValue : valueForDynamicResolver, srcLeaf);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextStyle, {\n    selector: orderClass,\n    attr: attrs?.module?.advanced?.text\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'image_wrap_style'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-image-reveal-back, ${orderClass} .splitting`,\n    attr: attrs?.src?.innerContent,\n    declarationFunction: () => revealBackgroundStyleDeclarations(srcUrl)\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-image-reveal .splitting`,\n    attr: attrs?.image_reveal_height?.innerContent,\n    property: \"height\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-image-reveal .et_pb_image_wrap`,\n    attr: attrs?.image_reveal_height?.innerContent,\n    property: \"height\"\n  }), isSvgUrl(srcUrl) && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .et_pb_image_wrap`,\n    attr: {\n      desktop: {\n        value: 'block'\n      }\n    },\n    property: \"display\"\n  }));\n};\n;// ./packages/module-library/image-hover-reveal/edit.js\n\n\n\n\n\n\n\nconst ALLOWED_DIRECTIONS = new Set(['vert-slide-down', 'vert-slide-up', 'horiz-slide-right', 'horiz-slide-left']);\n\n/**\n * Read Advanced → HTML attributes (id / class) for the inner reveal root (D4 `module_id()` parity).\n *\n * @param {Object} attrs Module attrs.\n * @return {{ id: string, className: string }}\n */\nfunction rootIdClassFromDecoration(attrs) {\n  let id = '';\n  let extraClass = '';\n  const rows = attrs?.module?.decoration?.attributes?.desktop?.value;\n  if (Array.isArray(rows)) {\n    for (const row of rows) {\n      if (!row || typeof row !== 'object') {\n        continue;\n      }\n      const name = row.name;\n      const value = row.value;\n      if (!value) {\n        continue;\n      }\n      if (name === 'id') {\n        id = String(value);\n      }\n      if (name === 'class') {\n        extraClass = `${extraClass} ${value}`.trim();\n      }\n    }\n  }\n  return {\n    id,\n    className: extraClass\n  };\n}\nfunction normalizeDirectionClass(raw) {\n  if (typeof raw !== 'string' || raw === '' || raw === 'custom') {\n    return 'vert-slide-down';\n  }\n  return ALLOWED_DIRECTIONS.has(raw) ? raw : 'vert-slide-down';\n}\nconst image_hover_reveal_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}), elements.scriptData({\n  attrName: 'src'\n}), elements.scriptData({\n  attrName: 'image_reveal_animation'\n}), elements.scriptData({\n  attrName: 'image_reveal_height'\n}));\n\n/**\n * Single component, hooks only at top level (`before-after-slider` pattern).\n * Avoids `DynamicValueResolver` render-prop + nested canvas component → WP useSelect errors.\n */\nfunction image_hover_reveal_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  var _attrs$src$innerConte, _getAttrByMode;\n  const srcLeaf = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.src?.innerContent);\n  const rawForResolver = srcLeaf !== undefined && srcLeaf !== null ? srcLeaf : (_attrs$src$innerConte = attrs?.src?.innerContent?.desktop?.value) !== null && _attrs$src$innerConte !== void 0 ? _attrs$src$innerConte : '';\n  const valueForDynamicResolver = getSrcValueForDynamicResolver(rawForResolver);\n  const {\n    resolvedValue,\n    isDynamic\n  } = (0,external_divi_dynamicData_namespaceObject.useDynamicData)(valueForDynamicResolver);\n  const imageSrc = resolveDynamicImageUrlForCanvas(isDynamic ? resolvedValue : valueForDynamicResolver, srcLeaf);\n  const animationMode = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.image_reveal_animation?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'vert-slide-down';\n  const directionClass = normalizeDirectionClass(animationMode);\n  const containerRef = (0,external_vendor_React_.useRef)(null);\n  const splitCount = 5;\n  const {\n    rows,\n    columns\n  } = (0,external_vendor_React_.useMemo)(() => getSplittingRowsCols(directionClass, splitCount), [directionClass, splitCount]);\n  const {\n    id: rootId,\n    className: rootExtraClass\n  } = rootIdClassFromDecoration(attrs);\n  const revealClassName = ['dsm-image-reveal', rootExtraClass].filter(Boolean).join(' ');\n  const revealLayerStyle = imageSrc ? {\n    backgroundImage: `url(${JSON.stringify(imageSrc)})`,\n    backgroundSize: 'cover',\n    backgroundPosition: 'center center',\n    backgroundRepeat: 'no-repeat'\n  } : undefined;\n  const revealCanvasKey = `ihr-${directionClass}-${imageSrc || 'none'}-${splitCount}`;\n  (0,external_vendor_React_.useEffect)(() => {\n    const root = containerRef.current;\n    if (!root) {\n      return;\n    }\n    const nodes = root.querySelectorAll('.et_pb_image_wrap');\n    if (!nodes.length) {\n      return;\n    }\n    splitting_default()({\n      target: Array.from(nodes),\n      by: 'cells',\n      image: true\n    });\n  }, [directionClass, imageSrc, splitCount]);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: image_hover_reveal_edit_ModuleScriptData,\n    stylesComponent: image_hover_reveal_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"et_pb_module_inner\",\n    ref: containerRef\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    key: revealCanvasKey,\n    className: revealClassName,\n    id: rootId || undefined\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-image-wrapper\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: `et_pb_image_wrap ${directionClass}`,\n    style: revealLayerStyle,\n    \"data-rows\": rows,\n    \"data-columns\": columns\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n    className: \"dsm-image-reveal-back\",\n    style: revealLayerStyle\n  }))))));\n}\n/* harmony default export */ const image_hover_reveal_edit = (image_hover_reveal_edit_Edit);\n;// ./packages/module-library/image-hover-reveal/conversion-outline.js\nconst image_hover_reveal_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      default: 'module.decoration.border'\n    },\n    box_shadow: {\n      default: 'image_wrap_style.decoration.boxShadow'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    display_conditions: 'module.decoration.conditions',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    text: 'module.advanced.text',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    height: 'module.decoration.sizing',\n    link_options: 'module.advanced.link',\n    margin_padding: 'module.decoration.spacing',\n    max_width: 'module.decoration.sizing',\n    module: 'module.advanced.htmlAttributes'\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    src: 'src.innerContent.*.src',\n    image_reveal_animation: 'image_reveal_animation.innerContent.*',\n    image_reveal_height: 'image_reveal_height.innerContent.*',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/image-hover-reveal/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmImageHoverReveal', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/image-hover-reveal': {\n      name: 'divi-supreme/image-hover-reveal',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        d: \"M23.9585 23.444C23.3176 23.444 22.7852 22.9214 22.7852 22.2706C22.7852 21.6199 23.3077 21.0973 23.9585 21.0973C24.5994 21.0973 25.1318 21.6199 25.1318 22.2706C25.1318 22.9214 24.6093 23.444 23.9585 23.444ZM23.9585 21.7579C23.6726 21.7579 23.4359 21.9946 23.4359 22.2805C23.4359 22.5664 23.6726 22.8031 23.9585 22.8031C24.2444 22.8031 24.4811 22.5664 24.4811 22.2805C24.4811 21.9946 24.2444 21.7579 23.9585 21.7579Z\",\n        fill: \"#5C1DB0\"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        d: \"M6.02455 6.34668C5.2921 6.34668 4.68359 5.8241 4.68359 5.17334C4.68359 4.52258 5.28083 4 6.02455 4C6.76828 4 7.36551 4.52258 7.36551 5.17334C7.36551 5.8241 6.76828 6.34668 6.02455 6.34668V6.34668ZM6.02455 4.66062C5.69777 4.66062 5.42732 4.89726 5.42732 5.1832C5.42732 5.46914 5.69777 5.70578 6.02455 5.70578C6.35134 5.70578 6.62179 5.46914 6.62179 5.1832C6.62179 4.89726 6.36261 4.66062 6.02455 4.66062Z\",\n        fill: \"#5C1DB0\"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        d: \"M20.0956 21.0972H4.35406C3.05421 21.0972 2 20.0401 2 18.7368V9.37745C2 8.07412 3.05421 7.01709 4.35406 7.01709H20.0956C21.3954 7.01709 22.4496 8.07412 22.4496 9.37745V18.7368C22.4496 20.0401 21.3954 21.0972 20.0956 21.0972ZM4.35406 7.69441C3.42267 7.69441 2.67551 8.45383 2.67551 9.37745V18.7368C2.67551 19.6707 3.43291 20.4199 4.35406 20.4199H20.0956C21.027 20.4199 21.7741 19.6604 21.7741 18.7368V9.37745C21.7741 8.44357 21.0167 7.69441 20.0956 7.69441H4.35406Z\",\n        fill: \"#5C1DB0\"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        d: \"M17.7364 18.7505H6.71658C5.60104 18.7505 4.68359 17.8686 4.68359 16.7738V11.3405C4.68359 10.2558 5.59062 9.36377 6.71658 9.36377H17.7364C18.5288 9.36377 19.2481 9.80979 19.5817 10.5092C19.7068 10.7627 19.7694 11.0566 19.7694 11.3405V16.7738C19.7694 17.8686 18.8519 18.7505 17.7364 18.7505ZM6.71658 10.0328C5.97636 10.0328 5.37168 10.6207 5.37168 11.3405V16.7738C5.37168 17.4935 5.97636 18.0815 6.71658 18.0815H17.7364C18.4766 18.0815 19.0813 17.4935 19.0813 16.7738V11.3405C19.0813 11.1479 19.0396 10.9654 18.9562 10.7931C18.7373 10.3268 18.2577 10.0328 17.7364 10.0328H6.71658Z\",\n        fill: \"#5C1DB0\"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        d: \"M11.3408 13.5951C10.6767 13.5951 10.125 13.0536 10.125 12.3793C10.125 11.7152 10.6665 11.1635 11.3408 11.1635C12.0049 11.1635 12.5566 11.7049 12.5566 12.3793C12.5464 13.0536 12.0049 13.5951 11.3408 13.5951ZM11.3408 11.848C11.0445 11.848 10.7993 12.0932 10.7993 12.3895C10.7993 12.6858 11.0445 12.931 11.3408 12.931C11.6371 12.931 11.8823 12.6858 11.8823 12.3895C11.8823 12.0932 11.6371 11.848 11.3408 11.848Z\",\n        fill: \"#5C1DB0\"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/image-hover-reveal/index.js\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n\n\n\n\n\n\n\nconst image_hover_reveal_defaultAttrs = image_hover_reveal_module_default_render_attributes_namespaceObject;\nconst imageHoverRevealModule = {\n  metadata: image_hover_reveal_module_namespaceObject,\n  conversionOutline: image_hover_reveal_conversion_outline_conversionOutline,\n  renderers: {\n    edit: image_hover_reveal_edit,\n    styles: image_hover_reveal_module_styles_ModuleStyles\n  },\n  defaultAttrs: image_hover_reveal_defaultAttrs,\n  settings: {\n    content: image_hover_reveal_settings_content,\n    design: image_hover_reveal_settings_design,\n    advanced: image_hover_reveal_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    ...image_hover_reveal_defaultAttrs\n  }\n};\n/* harmony default export */ const image_hover_reveal = (imageHoverRevealModule);\n;// ./packages/module-library/image-hotspots/module.json\nconst image_hotspots_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/image-hotspots\",\"d4Shortcode\":\"dsm_image_hotspots\",\"title\":\"Supreme Image Hotspots\",\"titles\":\"Supreme Image Hotspots\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/image-hotspots\",\"childrenName\":[\"dsm/image-hotspots-child\"],\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}.et_pb_module\",\"settings\":{\"decoration\":{\"attributes\":{}}}},\"src\":{\"type\":\"object\",\"elementType\":\"image\",\"inlineEditor\":\"CustomPadding\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"header\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_image_tooltip_content h1, {{selector}} .dsm_image_tooltip_content h2, {{selector}} .dsm_image_tooltip_content h3, {{selector}} .dsm_image_tooltip_content h4, {{selector}} .dsm_image_tooltip_content h5, {{selector}} .dsm_image_tooltip_content h6\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"body\":{\"type\":\"object\",\"selector\":\"{{selector}} .tippy-box.dsm_image_hotspot_tooltip_wrapper .dsm_image_tooltip_content, {{selector}} .react-tooltip.tippy-tooltip .dsm_image_tooltip_content\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"hotspot_text\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_image_hotspots_wrapper .dsm_image_hotspots_text\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"alt\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"title_text\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"align\":{\"type\":\"object\",\"inlineEditor\":\"ButtonContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"force_fullwidth\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"hotspot_event\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"hotspot_padding\":{\"type\":\"object\",\"inlineEditor\":\"CustomPadding\",\"selector\":\"{{selector}} .dsm_image_hotspots_wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"icon_font_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"tooltip_animation\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"tooltip_background_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"tooltip_padding\":{\"type\":\"object\",\"inlineEditor\":\"CustomPadding\",\"selector\":\"{{selector}} .tippy-content, {{selector}} .tippy-tooltip\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"tooltip_max_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"tooltip_delay\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"tooltip_delay_hide\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"tooltip_show_all\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"tooltip_close_all\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"hotspotStyle\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm_image_hotspots_child\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm_image_hotspots_child\",\"important\":true}}},\"tooltipStyle\":{\"type\":\"object\",\"selector\":\"{{selector}} .tippy-box.dsm_image_hotspot_tooltip_wrapper, {{selector}} .dsm_image_hotspots_child .react-tooltip\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .tippy-box.dsm_image_hotspot_tooltip_wrapper, {{selector}} .dsm_image_hotspots_child .react-tooltip\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .tippy-box.dsm_image_hotspot_tooltip_wrapper, {{selector}} .dsm_image_hotspots_child .react-tooltip\",\"useOverlay\":true}}}}}');\n;// ./packages/module-library/image-hotspots/conversion-outline.js\n\nconst image_hotspots_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    disabled_on: 'module.decoration.disabledOn',\n    borders: {\n      default: 'module.decoration.border',\n      hotspot: 'hotspotStyle.decoration.border',\n      tooltip: 'tooltipStyle.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow',\n      tooltip: 'tooltipStyle.decoration.boxShadow'\n    },\n    module: 'module.advanced.htmlAttributes',\n    disabled_on: 'module.decoration.disabledOn',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    margin_padding: 'module.decoration.spacing',\n    text: 'module.advanced.text',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    fonts: {\n      header: 'header.decoration.font',\n      body: 'body.decoration.bodyFont.body',\n      text: 'hotspot_text.decoration.font',\n      tooltip_content: 'body.decoration.bodyFont.body'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    src: 'src.innerContent.*',\n    align: 'align.innerContent.*',\n    force_fullwidth: 'force_fullwidth.innerContent.*',\n    hotspot_event: 'hotspot_event.innerContent.*',\n    icon_color: 'icon_color.innerContent.*',\n    icon_font_size: 'icon_font_size.innerContent.*',\n    tooltip_animation: 'tooltip_animation.innerContent.*',\n    tooltip_background_color: 'tooltip_background_color.innerContent.*',\n    tooltip_max_width: 'tooltip_max_width.innerContent.*',\n    tooltip_delay: 'tooltip_delay.innerContent.*',\n    tooltip_delay_hide: 'tooltip_delay_hide.innerContent.*',\n    hotspot_padding: 'hotspot_padding.decoration.spacing.*.padding',\n    tooltip_padding: 'tooltip_padding.decoration.spacing.*.padding',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    hotspot_padding: 'convertSpacing',\n    tooltip_padding: 'convertSpacing',\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/image-hotspots/settings-content.js\n\n// Wordpress dependencies.\n\n\n// Divi package dependencies.\n\n\n\n\n\n\nfunction image_hotspots_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(ChildDraggableModuleList, {\n    childModuleName: \"dsm/image-hotspots-child\",\n    addTitle: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Add New Item', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"image\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    visible: true\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"src.innerContent\",\n    subName: \"src\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Upload your desired image, or type in the URL to the image you would like to display.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const image_hotspots_settings_content = (image_hotspots_settings_content_SettingsContent);\n;// ./packages/module-library/image-hotspots/settings-design.js\n\n// Wordpress dependencies.\n\n// Divi package dependencies.\n\n\n\nfunction image_hotspots_settings_design_SettingsDesign({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"hotspot_text.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hotspot Text', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hotspot Text', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"hotspot_settings\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hotspot Settings', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"hotspot_event.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Trigger Event', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose whether to show the tooltip by hovering or clicking.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    },\n    defaultAttr: {\n      desktop: {\n        value: 'hover'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      hover: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hover', 'dsm-supreme-modules-pro-for-divi')\n      },\n      click: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Click', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"hotspot_padding.decoration.spacing\",\n    fields: {\n      margin: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"hotspotStyle.decoration.border\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"hotspot_icon\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hotspot Icon', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"icon_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom color for your icon.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: '#ffffff'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"icon_font_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Font Size', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Control the size of the icon by increasing or decreasing the font size.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: '14px'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 120,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"tooltip_settings\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tooltip Settings', 'dsm-supreme-modules-pro-for-divi'),\n    preset: \"content\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"tooltip_background_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom background color for your tooltip.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'rgba(34,34,34,0.9)'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"tooltip_animation.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tooltip Animation', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Choose the animation used when the tooltip is shown.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'fade'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      fade: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade', 'dsm-supreme-modules-pro-for-divi')\n      },\n      scale: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Scale', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'shift-away': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shift Away', 'dsm-supreme-modules-pro-for-divi')\n      },\n      'shift-toward': {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shift Toward', 'dsm-supreme-modules-pro-for-divi')\n      },\n      perspective: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Perspective', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"tooltip_padding.decoration.spacing\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tooltip Padding', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"tooltip_max_width.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tooltip Max Width', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Adjust the width of the tooltip.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: '180px'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 320,\n    defaultUnit: 'px',\n    allowedUnits: ['px']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"tooltip_delay.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tooltip Delay Show', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Adjust the delay of the tooltip showing.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: '50'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 1000,\n    defaultUnit: '',\n    allowedUnits: ['']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"tooltip_delay_hide.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tooltip Delay Hide', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Adjust the delay of the tooltip hiding.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: '50'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 1000,\n    defaultUnit: '',\n    allowedUnits: ['']\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"tooltipStyle.decoration.border\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tooltip', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"tooltipStyle.decoration.boxShadow\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tooltip', 'dsm-supreme-modules-pro-for-divi')\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"header.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tooltip Heading Text', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tooltip Heading Text', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: true\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"tooltip_body\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tooltip Body', 'dsm-supreme-modules-pro-for-divi'),\n    preset: \"content\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontBodyGroup, {\n    attrName: \"body.decoration.bodyFont\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tooltip Body', 'dsm-supreme-modules-pro-for-divi'),\n    preset: \"content\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const image_hotspots_settings_design = (image_hotspots_settings_design_SettingsDesign);\n;// ./packages/module-library/image-hotspots/settings-advanced.js\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\nfunction image_hotspots_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_image_hotspots\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const image_hotspots_settings_advanced = (image_hotspots_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/image-hotspots/module-styles.js\n\n\n\n\n/**\n * React function component for rendering module style.\n */\nconst image_hotspots_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  var _attrs$body$decoratio;\n  const description_line_height = (_attrs$body$decoratio = attrs?.body?.decoration?.bodyFont?.body?.font?.desktop?.value?.lineHeight) !== null && _attrs$body$decoratio !== void 0 ? _attrs$body$decoratio : '1.7';\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'hotspotStyle'\n  }), elements.style({\n    attrName: 'hotspot_padding'\n  }), elements.style({\n    attrName: 'tooltip_padding'\n  }), elements.style({\n    attrName: 'header'\n  }), elements.style({\n    attrName: 'body'\n  }), elements.style({\n    attrName: 'hotspot_text'\n  }), elements.style({\n    attrName: 'tooltipStyle'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_image_hotspots_wrapper .dsm_image_hotspots_icon::before`,\n    attr: attrs?.icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_image_hotspots_wrapper .dsm_image_hotspots_icon::before`,\n    attr: attrs?.icon_font_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .tippy-tooltip`,\n    attr: attrs?.tooltip_background_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .tippy-tooltip`,\n    attr: attrs?.tooltip_max_width?.innerContent,\n    property: \"max-width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .react-tooltip.tippy-tooltip .dsm_image_tooltip_content`,\n    attr: attrs?.tooltip_max_width?.innerContent,\n    declarationFunction: attrValue => {\n      const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n        returnType: 'string',\n        important: true\n      });\n      declarations.add('line-height', description_line_height);\n      return declarations.value;\n    }\n  }));\n};\n;// ./packages/module-library/image-hotspots/placeholder-src.js\n/**\n * Default grey SVG used when no image is set (matches PHP `ImageHotspots::PLACEHOLDER_IMAGE_SRC`).\n *\n * @package DiviSupreme\n */\n\nconst IMAGE_HOTSPOTS_PLACEHOLDER_SRC = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTA4MCIgaGVpZ2h0PSI1NDAiIHZpZXdCb3g9IjAgMCAxMDgwIDU0MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPHBhdGggZmlsbD0iI0VCRUJFQiIgZD0iTTAgMGgxMDgwdjU0MEgweiIvPgogICAgICAgIDxwYXRoIGQ9Ik00NDUuNjQ5IDU0MGgtOTguOTk1TDE0NC42NDkgMzM3Ljk5NSAwIDQ4Mi42NDR2LTk4Ljk5NWwxMTYuMzY1LTExNi4zNjVjMTUuNjItMTUuNjIgNDAuOTQ3LTE1LjYyIDU2LjU2OCAwTDQ0NS42NSA1NDB6IiBmaWxsLW9wYWNpdHk9Ii4xIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgICAgICA8Y2lyY2xlIGZpbGwtb3BhY2l0eT0iLjA1IiBmaWxsPSIjMDAwIiBjeD0iMzMxIiBjeT0iMTQ4IiByPSI3MCIvPgogICAgICAgIDxwYXRoIGQ9Ik0xMDgwIDM3OXYxMTMuMTM3TDcyOC4xNjIgMTQwLjMgMzI4LjQ2MiA1NDBIMjE1LjMyNEw2OTkuODc4IDU1LjQ0NmMxNS42Mi0xNS42MiA0MC45NDgtMTUuNjIgNTYuNTY4IDBMMTA4MCAzNzl6IiBmaWxsLW9wYWNpdHk9Ii4yIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgIDwvZz4KPC9zdmc+Cg==';\n;// ./packages/module-library/image-hotspots/edit.js\n\n\n\n// Divi package dependencies.\n\n\n// Custom dependencies.\n\n\n\n\n\n\n/**\n * Normalize upload innerContent for `DynamicValueResolver` / `<img src>` (object `{ src }` or string).\n *\n * @param {*} raw From `getAttrByMode( attrs.src.innerContent )`.\n * @return {string}\n */\nfunction image_hotspots_edit_getUploadValueForDynamicData(raw) {\n  if (raw == null || raw === '') {\n    return '';\n  }\n  if (typeof raw === 'string' || typeof raw === 'number') {\n    return String(raw);\n  }\n  if (typeof raw === 'object') {\n    if (typeof raw.src === 'string' && raw.src !== '') {\n      return raw.src;\n    }\n    if (typeof raw.url === 'string' && raw.url !== '') {\n      return raw.url;\n    }\n  }\n  return '';\n}\n\n/**\n * React function component for registering module script data.\n */\nconst image_hotspots_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}), elements.scriptData({\n  attrName: 'src'\n}));\nfunction image_hotspots_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements,\n  childrenIds\n}) {\n  const imageUrlAttr = image_hotspots_edit_getUploadValueForDynamicData((0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.src?.innerContent)) || IMAGE_HOTSPOTS_PLACEHOLDER_SRC;\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: image_hotspots_edit_ModuleScriptData,\n    stylesComponent: image_hotspots_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_image_hotspots_wrap\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_image_hotspots_img_wrap\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: imageUrlAttr\n  }, resolvedImage => /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n    src: resolvedImage,\n    className: \"dsm_image_hotspots_img\",\n    alt: \"\"\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ChildModulesContainer, {\n    ids: childrenIds\n  }))));\n}\n/* harmony default export */ const image_hotspots_edit = (image_hotspots_edit_Edit);\n;// ./packages/module-library/image-hotspots/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmImageHotspot', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/image-hotspots': {\n      name: 'divi-supreme/image-hotspots',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 12.308594 11.8125 L 3.921875 11.8125 C 3.226562 11.8125 2.667969 11.25 2.667969 10.558594 L 2.667969 5.578125 C 2.667969 4.886719 3.226562 4.324219 3.921875 4.324219 L 12.308594 4.324219 C 13 4.324219 13.5625 4.886719 13.5625 5.578125 L 13.5625 10.550781 C 13.5625 11.246094 13 11.8125 12.308594 11.8125 Z M 3.921875 4.683594 C 3.425781 4.683594 3.023438 5.085938 3.023438 5.582031 L 3.023438 10.558594 C 3.023438 11.054688 3.425781 11.457031 3.921875 11.457031 L 12.308594 11.457031 C 12.804688 11.457031 13.207031 11.054688 13.207031 10.558594 L 13.207031 5.578125 C 13.207031 5.082031 12.804688 4.679688 12.308594 4.679688 L 3.921875 4.679688 Z M 3.921875 4.683594 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 10.996094 10.589844 L 5.230469 10.589844 C 4.644531 10.589844 4.167969 10.113281 4.167969 9.527344 L 4.167969 6.605469 C 4.167969 6.023438 4.644531 5.542969 5.230469 5.542969 L 10.996094 5.542969 C 11.410156 5.542969 11.789062 5.789062 11.960938 6.164062 C 12.027344 6.304688 12.058594 6.457031 12.058594 6.613281 L 12.058594 9.53125 C 12.058594 10.113281 11.582031 10.589844 10.996094 10.589844 Z M 5.230469 5.902344 C 4.84375 5.902344 4.527344 6.214844 4.527344 6.601562 L 4.527344 9.523438 C 4.527344 9.910156 4.84375 10.230469 5.230469 10.230469 L 10.996094 10.230469 C 11.386719 10.230469 11.703125 9.910156 11.703125 9.523438 L 11.703125 6.601562 C 11.703125 6.5 11.679688 6.398438 11.636719 6.308594 C 11.519531 6.058594 11.273438 5.902344 10.996094 5.902344 Z M 5.230469 5.902344 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 5.828125 7.777344 C 5.472656 7.777344 5.179688 7.488281 5.179688 7.132812 C 5.179688 6.777344 5.472656 6.484375 5.828125 6.484375 C 6.183594 6.484375 6.472656 6.777344 6.472656 7.132812 C 6.472656 7.488281 6.183594 7.777344 5.828125 7.777344 Z M 5.828125 6.847656 C 5.667969 6.847656 5.535156 6.976562 5.535156 7.136719 C 5.535156 7.296875 5.667969 7.425781 5.828125 7.425781 C 5.984375 7.425781 6.117188 7.296875 6.117188 7.136719 C 6.117188 6.972656 5.984375 6.847656 5.828125 6.847656 Z M 5.828125 6.847656 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 10.613281 9.914062 C 10.257812 9.914062 9.96875 9.625 9.96875 9.269531 C 9.96875 8.914062 10.257812 8.625 10.613281 8.625 C 10.96875 8.625 11.261719 8.914062 11.261719 9.269531 C 11.261719 9.625 10.96875 9.914062 10.613281 9.914062 Z M 10.613281 8.984375 C 10.457031 8.984375 10.324219 9.117188 10.324219 9.273438 C 10.324219 9.433594 10.457031 9.566406 10.613281 9.566406 C 10.773438 9.566406 10.90625 9.433594 10.90625 9.273438 C 10.898438 9.109375 10.769531 8.984375 10.613281 8.984375 Z M 10.613281 8.984375 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 9.675781 3.957031 C 9.320312 3.957031 9.03125 3.667969 9.03125 3.3125 C 9.03125 2.957031 9.320312 2.667969 9.675781 2.667969 C 10.03125 2.667969 10.324219 2.957031 10.324219 3.3125 C 10.324219 3.667969 10.03125 3.957031 9.675781 3.957031 Z M 9.675781 3.023438 C 9.519531 3.023438 9.386719 3.152344 9.386719 3.3125 C 9.386719 3.472656 9.519531 3.601562 9.675781 3.601562 C 9.835938 3.601562 9.96875 3.472656 9.96875 3.3125 C 9.96875 3.152344 9.835938 3.023438 9.675781 3.023438 Z M 9.675781 3.023438 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 4.347656 13.65625 C 3.988281 13.65625 3.699219 13.363281 3.699219 13.007812 C 3.699219 12.652344 3.988281 12.363281 4.347656 12.363281 C 4.703125 12.363281 4.992188 12.652344 4.992188 13.007812 C 4.992188 13.363281 4.703125 13.65625 4.347656 13.65625 Z M 4.347656 12.71875 C 4.1875 12.71875 4.054688 12.851562 4.054688 13.007812 C 4.054688 13.167969 4.1875 13.300781 4.347656 13.300781 C 4.503906 13.300781 4.636719 13.167969 4.636719 13.007812 C 4.636719 12.851562 4.503906 12.71875 4.347656 12.71875 Z M 4.347656 12.71875 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/image-hotspots/index.js\n// External library dependencies.\n\n// Wordpress dependencies.\n\n\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\n\n\n\nconst IMAGE_HOTSPOTS_CHILD = 'dsm/image-hotspots-child';\n\n/** D4 default first pin: 40% / 40%; spread 2nd and 3rd so inserts are usable without stacking. */\nconst imageHotspotsDefaultChildTemplate = buildParentDefaultChildTemplate(IMAGE_HOTSPOTS_CHILD, 3, [{\n  hotspot_text: {\n    innerContent: {\n      desktop: {\n        value: 'Hotspot 1'\n      }\n    }\n  },\n  left_position: {\n    innerContent: {\n      desktop: {\n        value: '40%'\n      }\n    }\n  },\n  top_position: {\n    innerContent: {\n      desktop: {\n        value: '40%'\n      }\n    }\n  }\n}, {\n  hotspot_text: {\n    innerContent: {\n      desktop: {\n        value: 'Hotspot 2'\n      }\n    }\n  },\n  left_position: {\n    innerContent: {\n      desktop: {\n        value: '65%'\n      }\n    }\n  },\n  top_position: {\n    innerContent: {\n      desktop: {\n        value: '35%'\n      }\n    }\n  }\n}, {\n  hotspot_text: {\n    innerContent: {\n      desktop: {\n        value: 'Hotspot 3'\n      }\n    }\n  },\n  left_position: {\n    innerContent: {\n      desktop: {\n        value: '35%'\n      }\n    }\n  },\n  top_position: {\n    innerContent: {\n      desktop: {\n        value: '65%'\n      }\n    }\n  }\n}]);\nconst image_hotspots_defaultAttrs = {\n  src: {\n    innerContent: {\n      desktop: {\n        value: {\n          src: IMAGE_HOTSPOTS_PLACEHOLDER_SRC\n        }\n      }\n    }\n  },\n  tooltip_animation: {\n    innerContent: {\n      desktop: {\n        value: 'fade'\n      }\n    }\n  }\n};\nconst imageHotSpotModule = {\n  metadata: image_hotspots_module_namespaceObject,\n  conversionOutline: image_hotspots_conversion_outline_conversionOutline,\n  renderers: {\n    edit: image_hotspots_edit,\n    styles: image_hotspots_module_styles_ModuleStyles\n  },\n  defaultAttrs: image_hotspots_defaultAttrs,\n  childrenName: [IMAGE_HOTSPOTS_CHILD],\n  template: imageHotspotsDefaultChildTemplate,\n  callbacks: buildChildDraggableListCallbacks([IMAGE_HOTSPOTS_CHILD]),\n  settings: {\n    content: image_hotspots_settings_content,\n    design: image_hotspots_settings_design,\n    advanced: image_hotspots_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    ...image_hotspots_defaultAttrs,\n    align: {\n      innerContent: {\n        desktop: {\n          value: 'left'\n        }\n      }\n    },\n    force_fullwidth: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    tooltip_show_all: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    tooltip_close_all: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    tooltip_background_color: {\n      innerContent: {\n        desktop: {\n          value: 'rgba(34,34,34,0.9)'\n        }\n      }\n    },\n    tooltip_max_width: {\n      innerContent: {\n        desktop: {\n          value: '180px'\n        }\n      }\n    },\n    tooltip_delay: {\n      innerContent: {\n        desktop: {\n          value: '50'\n        }\n      }\n    },\n    tooltip_delay_hide: {\n      innerContent: {\n        desktop: {\n          value: '50'\n        }\n      }\n    },\n    hotspot_event: {\n      innerContent: {\n        desktop: {\n          value: 'hover'\n        }\n      }\n    }\n  }\n};\n/* harmony default export */ const image_hotspots = (imageHotSpotModule);\n;// ./packages/module-library/image-hotspots-child/module.json\nconst image_hotspots_child_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/image-hotspots-child\",\"d4Shortcode\":\"dsm_image_hotspots_child\",\"title\":\"Supreme Hotspot Item\",\"titles\":\"Supreme Hotspot Items\",\"category\":\"child-module\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"default\":{\"meta\":{\"adminLabel\":{\"desktop\":{\"value\":\"\"}}}},\"settings\":{\"decoration\":{\"attributes\":{}}}},\"hotspot_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"font_icon\":{\"type\":\"object\",\"inlineEditor\":\"SelectIconContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"icon_font_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"hotspot_img\":{\"type\":\"object\",\"inlineEditor\":\"UploadContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"hotspot_alt\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"hotspot_title_text\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"hotspot_image_max_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"hotspot_text\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"selector\":\"{{selector}} .dsm_image_hotspots_wrapper .dsm_image_hotspots_text\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"use_tooltip\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"content\":{\"type\":\"object\",\"inlineEditor\":\"RichTextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"left_position\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"top_position\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"hotspot_padding\":{\"type\":\"object\",\"inlineEditor\":\"CustomPadding\",\"selector\":\".dsm_image_hotspots {{selector}} .dsm_image_hotspots_wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"tooltip_background_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"tooltip_padding\":{\"type\":\"object\",\"inlineEditor\":\"CustomPadding\",\"selector\":\"{{selector}}.react-tooltip.tippy-tooltip, {{selector}}.tippy-box .tippy-content\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"tooltip_placement\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"tooltip_max_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"pulse_animation\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"pulse_background_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"hotspotStyle\":{\"type\":\"object\",\"selector\":\".dsm_image_hotspots {{selector}}:not(.tippy-box)\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\".dsm_image_hotspots {{selector}}:not(.tippy-box), .dsm_image_hotspots {{selector}} .dsm_image_hotspots_child\",\"important\":true},\"boxShadow\":{\"selector\":\".dsm_image_hotspots {{selector}}:not(.tippy-box), .dsm_image_hotspots {{selector}} .dsm_image_hotspots_child\",\"important\":true}}},\"imageStyle\":{\"type\":\"object\",\"selector\":\".dsm_image_hotspots {{selector}}.et_pb_module .dsm_image_hotspots_wrapper .dsm_image_hotspot_img\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\".dsm_image_hotspots {{selector}}.et_pb_module .dsm_image_hotspots_wrapper .dsm_image_hotspot_img\",\"important\":true},\"boxShadow\":{\"selector\":\".dsm_image_hotspots {{selector}}.et_pb_module .dsm_image_hotspots_wrapper .dsm_image_hotspot_img\",\"important\":true}}},\"pulseStyle\":{\"type\":\"object\",\"selector\":\"{{selector}}.dsm_image_hotspots_child .dsm_image_hotspot_pulse:before\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}}.dsm_image_hotspots_child .dsm_image_hotspot_pulse:before\",\"important\":true}}},\"tooltipStyle\":{\"type\":\"object\",\"selector\":\"{{selector}}.tippy-box.dsm_image_hotspot_tooltip_wrapper, {{selector}}.react-tooltip\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}}.tippy-box.dsm_image_hotspot_tooltip_wrapper, {{selector}}.react-tooltip\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}}.tippy-box.dsm_image_hotspot_tooltip_wrapper, {{selector}}.react-tooltip\",\"useOverlay\":true}}},\"tooltip_header\":{\"type\":\"object\",\"selector\":\"{{selector}}.dsm_image_hotspot_tooltip_wrapper .dsm_image_tooltip_content h1, {{selector}}.dsm_image_hotspot_tooltip_wrapper .dsm_image_tooltip_content h2, {{selector}}.dsm_image_hotspot_tooltip_wrapper .dsm_image_tooltip_content h3, {{selector}}.dsm_image_hotspot_tooltip_wrapper .dsm_image_tooltip_content h4, {{selector}}.dsm_image_hotspot_tooltip_wrapper .dsm_image_tooltip_content h5, {{selector}}.dsm_image_hotspot_tooltip_wrapper .dsm_image_tooltip_content h6\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"tooltip_body\":{\"type\":\"object\",\"selector\":\"{{selector}}.dsm_image_hotspot_tooltip_wrapper .dsm_image_tooltip_content\",\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/image-hotspots-child/settings-content.js\n\n// Wordpress dependencies.\n\n// Divi package dependencies.\n\n\n\n\nfunction image_hotspots_child_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  var _getAttrByMode, _getAttrByMode2;\n  const hotspotType = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.hotspot_type?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'icon';\n  const useTooltip = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_tooltip?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'on';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"mainContent\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hotspot', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"hotspot_type.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Type', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose whether to use an Icon or Text.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'icon'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      icon: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi')\n      },\n      image: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi')\n      },\n      text: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"font_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Choose an icon to display as your hotspot.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'icon' === hotspotType,\n    defaultAttr: {\n      desktop: {\n        value: {\n          type: 'divi',\n          unicode: '&#x4c;',\n          weight: '400'\n        }\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"hotspot_img.innerContent\",\n    subName: \"src\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hotspot Image', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Upload your desired image, or type in the URL to the image you would like to display.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'image' === hotspotType,\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"hotspot_text.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hotspot Text', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'text' === hotspotType,\n    defaultAttr: {\n      desktop: {\n        value: 'text'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"tooltip\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tooltip', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"use_tooltip.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Tooltip', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose whether hotspot should have tooltip.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'on'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"content.innerContent\",\n    subName: \"text\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Input the main text content for your tooltip here.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'off' !== useTooltip,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    },\n    defaultAttr: {\n      desktop: {\n        value: {\n          text: 'Your tooltip content goes here'\n        }\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RichTextContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const image_hotspots_child_settings_content = (image_hotspots_child_settings_content_SettingsContent);\n;// ./packages/module-library/image-hotspots-child/settings-design.js\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\nfunction image_hotspots_child_settings_design_SettingsDesign({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3;\n  const pulseAnimation = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.pulse_animation?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'off';\n  const useTooltip = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_tooltip?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'on';\n  const hotspotType = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.hotspot_type?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'icon';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"hotspot_text.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hotspot Text', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hotspot Text', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    },\n    visible: 'text' === hotspotType\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"hotspot_setting\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hotspot Settings', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"left_position.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left Position', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Adjust the Left position.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: '%'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"top_position.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top Position', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Adjust the Top position.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: '%'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"hotspot_padding.decoration.spacing\",\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"hotspotStyle.decoration.border\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hotspot Icon', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'icon' === hotspotType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"icon_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom color for your icon.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: '#ffffff'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"icon_font_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Font Size', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Control the size of the icon by increasing or decreasing the font size.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: '14px'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 120,\n    defaultUnit: 'px'\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"hotspot_image\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hotspot Image', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'image' === hotspotType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"hotspot_image_max_width.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hotspot Image Width', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Adjust the width of the hotspot image.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    defaultUnit: '%'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"imageStyle.decoration.border\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hotspot Image', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"imageStyle.decoration.boxShadow\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hotspot Image', 'dsm-supreme-modules-pro-for-divi')\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"tooltip_settings\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tooltip Settings', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === useTooltip\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"tooltip_background_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom background color for your tooltip.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'rgba(34,34,34,0.9)'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"tooltip_padding.decoration.spacing\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tooltip', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"tooltip_placement.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Placement', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose the placement of the tooltip.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'top'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      top: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top', 'dsm-supreme-modules-pro-for-divi')\n      },\n      right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom', 'dsm-supreme-modules-pro-for-divi')\n      },\n      left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"tooltip_max_width.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tooltip Max Width', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Adjust the width of the tooltip.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: '180px'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 320,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"tooltipStyle.decoration.border\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tooltip', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"tooltipStyle.decoration.boxShadow\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tooltip', 'dsm-supreme-modules-pro-for-divi')\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"tooltip_header.decoration.font\",\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tooltip Heading Text', 'dsm-supreme-modules-pro-for-divi'),\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hotspot', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: true\n      }\n    },\n    visible: 'on' === useTooltip\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontBodyGroup, {\n    attrName: \"tooltip_body.decoration.bodyFont\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tooltip Body', 'dsm-supreme-modules-pro-for-divi'),\n    preset: \"content\",\n    visible: 'on' === useTooltip\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"animation\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animation', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"pulse_animation.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Pulse Animation', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Adjust the width of the tooltip.', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: {\n      desktop: {\n        value: 'off'\n      }\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"pulse_background_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Adjust the width of the tooltip.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === pulseAnimation\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"pulseStyle.decoration.border\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pulse Animation', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    visible: 'on' === pulseAnimation\n  })));\n}\n/* harmony default export */ const image_hotspots_child_settings_design = (image_hotspots_child_settings_design_SettingsDesign);\n;// ./packages/module-library/image-hotspots-child/settings-advanced.js\n// Wordpress dependencies.\n\n// Divi package dependencies.\n\nfunction image_hotspots_child_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_image_hotspots_child\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const image_hotspots_child_settings_advanced = (image_hotspots_child_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/image-hotspots-child/module-styles.js\n\n\n\n\nconst image_hotspots_child_module_styles_iconFontCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'font-family': true\n    }\n  });\n  addNativeIconFontFamily(declarations, attrValue);\n  addNativeIconFontContent(declarations, attrValue);\n  return declarations.value;\n};\nconst image_hotspots_child_module_styles_webfontGlyphSelector = orderClass => `${orderClass} .dsm_image_hotspots_icon.et-pb-icon .dsm-webfont-icon-glyph`;\n\n/**\n * React function component for rendering module style.\n */\nconst image_hotspots_child_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'hotspot_padding'\n  }), elements.style({\n    attrName: 'hotspotStyle'\n  }), elements.style({\n    attrName: 'imageStyle'\n  }), elements.style({\n    attrName: 'hotspot_text'\n  }), elements.style({\n    attrName: 'tooltip_padding'\n  }), elements.style({\n    attrName: 'tooltipStyle'\n  }), elements.style({\n    attrName: 'pulseStyle'\n  }), elements.style({\n    attrName: 'tooltip_header'\n  }), elements.style({\n    attrName: 'tooltip_body'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_image_hotspots_icon::before`,\n    attr: attrs?.font_icon?.innerContent,\n    declarationFunction: image_hotspots_child_module_styles_iconFontCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_image_hotspots_wrapper .dsm_image_hotspots_icon::before`,\n    attr: attrs?.icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_image_hotspots_wrapper .dsm_image_hotspots_icon::before`,\n    attr: attrs?.icon_font_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: image_hotspots_child_module_styles_webfontGlyphSelector(orderClass),\n    attr: attrs?.icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: image_hotspots_child_module_styles_webfontGlyphSelector(orderClass),\n    attr: attrs?.icon_font_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}`,\n    attr: attrs?.hotspot_image_max_width?.innerContent,\n    property: \"max-width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}`,\n    attr: attrs?.left_position?.innerContent,\n    property: \"left\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}`,\n    attr: attrs?.top_position?.innerContent,\n    property: \"top\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_image_hotspots_icon.et-pb-icon`,\n    attr: attrs?.icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_image_hotspots_icon.et-pb-icon`,\n    attr: attrs?.icon_font_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_image_hotspot_pulse:before`,\n    attr: attrs?.pulse_background_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm_image_hotspot_pulse:before`,\n    attr: attrs?.pulse_background_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.react-tooltip.tippy-tooltip `,\n    attr: attrs?.tooltip_background_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.react-tooltip.tippy-tooltip `,\n    attr: attrs?.tooltip_max_width?.innerContent,\n    property: \"max-width\"\n  }));\n};\n;// ./packages/module-library/image-hotspots-child/edit.js\n\n\n\n\n// Divi package dependencies.\n\n\n\n// Custom dependencies.\n\n\n\n\n\n\n/**\n * Normalize upload innerContent for `DynamicValueResolver` / `<img src>` (object `{ src }` or string).\n *\n * @param {*} raw From `getAttrByMode( attrs.hotspot_img.innerContent )`.\n * @return {string}\n */\nfunction image_hotspots_child_edit_getUploadValueForDynamicData(raw) {\n  if (raw == null || raw === '') {\n    return '';\n  }\n  if (typeof raw === 'string' || typeof raw === 'number') {\n    return String(raw);\n  }\n  if (typeof raw === 'object') {\n    if (typeof raw.src === 'string' && raw.src !== '') {\n      return raw.src;\n    }\n    if (typeof raw.url === 'string' && raw.url !== '') {\n      return raw.url;\n    }\n  }\n  return '';\n}\n\n/**\n * Rich text leaf for `DynamicValueResolver` / `useDynamicData` (matches `card-carousel-child` / `card`).\n * Migrator may leave a bare string at `value` or `{ text }` after normalize.\n *\n * @param {unknown} innerContent Attribute `content.innerContent` subtree.\n * @return {string}\n */\nfunction getTooltipContentAttrForDynamic(innerContent) {\n  if (innerContent == null || typeof innerContent !== 'object') {\n    return '';\n  }\n  try {\n    const raw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(innerContent);\n    if (typeof raw === 'string') {\n      return raw;\n    }\n    if (raw && typeof raw === 'object' && typeof raw.text === 'string') {\n      return raw.text;\n    }\n  } catch {\n    return '';\n  }\n  return '';\n}\n\n/**\n * True when rich HTML has visible text (ignores empty tags / &nbsp;).\n * Same as `card-carousel-child` — used to choose `html` vs `elements.render` fallback.\n *\n * @param {string} html HTML string.\n * @return {boolean} Whether body text is present.\n */\nfunction image_hotspots_child_edit_richTextHasContent(html) {\n  if ('string' !== typeof html || '' === html.trim()) {\n    return false;\n  }\n  if ('undefined' !== typeof document) {\n    const tmp = document.createElement('div');\n    tmp.innerHTML = html;\n    return (tmp.textContent || '').trim() !== '';\n  }\n  return html.replace(/<[^>]*>/g, '').replace(/&nbsp;/gi, ' ').trim() !== '';\n}\n\n/**\n * React function component for registering module script data.\n */\n\nconst image_hotspots_child_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}), elements.scriptData({\n  attrName: 'hotspot_img'\n}), elements.scriptData({\n  attrName: 'content'\n}));\nfunction image_hotspots_child_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements,\n  parentAttrs\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _getAttrByMode4, _getAttrByMode5, _getAttrByMode6;\n  const hotspot_type = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.hotspot_type?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'icon';\n  const hotspotImageUrl = image_hotspots_child_edit_getUploadValueForDynamicData((0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.hotspot_img?.innerContent)) || IMAGE_HOTSPOTS_PLACEHOLDER_SRC;\n  const tooltipContentAttrForDynamic = getTooltipContentAttrForDynamic(attrs?.content?.innerContent);\n  const pulse_animation = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.pulse_animation?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'off';\n  const tooltip_placement = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.tooltip_placement?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'top';\n  const use_tooltip = (_getAttrByMode4 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.use_tooltip?.innerContent)) !== null && _getAttrByMode4 !== void 0 ? _getAttrByMode4 : 'on';\n  const triggerEvent = (_getAttrByMode5 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(parentAttrs?.hotspot_event?.innerContent)) !== null && _getAttrByMode5 !== void 0 ? _getAttrByMode5 : 'hover';\n  const hotspot_text = (_getAttrByMode6 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.hotspot_text?.innerContent)) !== null && _getAttrByMode6 !== void 0 ? _getAttrByMode6 : 'text';\n  const fontIconAttr = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.font_icon?.innerContent);\n  const image = /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: hotspotImageUrl\n  }, resolvedImage => /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n    src: resolvedImage,\n    className: \"dsm_image_hotspot_img\",\n    alt: \"\"\n  }));\n  const iconMarkup = /*#__PURE__*/external_vendor_React_default().createElement(ModuleIconHost, {\n    icon: fontIconAttr,\n    className: \"dsm_image_hotspots_icon\"\n  });\n  const pulseAnimation = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_image_hotspot_pulse\"\n  });\n  const isUseTooltip = 'on' === use_tooltip ? true : false;\n  const orderClass = getChildModuleOrderClass(id, 'dsm_image_hotspots_child', 0);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: image_hotspots_child_edit_ModuleScriptData,\n    stylesComponent: image_hotspots_child_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), 'on' === pulse_animation && pulseAnimation, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_image_hotspots_wrapper\"\n  }, 'text' === hotspot_type && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm_image_hotspots_text\"\n  }, hotspot_text), 'image' === hotspot_type && image, 'icon' === hotspot_type && iconMarkup), isUseTooltip && /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: tooltipContentAttrForDynamic\n  }, resolvedTooltipHtml => {\n    const html = typeof resolvedTooltipHtml === 'string' ? resolvedTooltipHtml : '';\n    const showHtml = image_hotspots_child_edit_richTextHasContent(html);\n    // Match PHP `ImageHotspotsChild::render_callback`: tooltip body is always\n    // wrapped in `.dsm_image_tooltip_content` so parent `header` / `body`\n    // selectors and `module-styles` apply in the VB (react-tooltip `html`\n    // path previously injected raw HTML without this wrapper).\n    const htmlForTooltip = showHtml ? `<div class=\"dsm_image_tooltip_content\">${html}</div>` : undefined;\n    return /*#__PURE__*/external_vendor_React_default().createElement(M, {\n      className: `${orderClass} dsm_image_hotspot_tooltip_wrapper tippy-tooltip`,\n      place: tooltip_placement,\n      openOnClick: 'click' === triggerEvent ? true : false,\n      anchorSelect: `.${orderClass} .dsm_image_hotspots_wrapper`,\n      html: htmlForTooltip\n    }, showHtml ? null : /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"dsm_image_tooltip_content\"\n    }, elements.render({\n      attrName: 'content',\n      attrSubName: 'text'\n    })));\n  }));\n}\n/* harmony default export */ const image_hotspots_child_edit = (image_hotspots_child_edit_Edit);\n;// ./packages/module-library/image-hotspots-child/conversion-outline.js\n\n\nconst image_hotspots_child_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    borders: {\n      pulse: 'pulseStyle.decoration.border',\n      hotspot: 'hotspotStyle.decoration.border',\n      image: 'imageStyle.decoration.border',\n      tooltip: 'tooltipStyle.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow',\n      hotspot: 'hotspotStyle.decoration.boxShadow',\n      image: 'imageStyle.decoration.boxShadow',\n      tooltip: 'tooltipStyle.decoration.boxShadow'\n    },\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    text_shadow: {\n      default: 'module.advanced.text.textShadow'\n    },\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    fonts: {\n      text: 'hotspot_text.decoration.font',\n      header: 'tooltip_header.decoration.font',\n      body: 'tooltip_body.decoration.bodyFont.body',\n      tooltip_content: 'tooltip_body.decoration.bodyFont.body'\n    },\n    margin_padding: 'module.decoration.spacing',\n    link_options: 'module.advanced.link'\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    admin_title: 'admin_title.innerContent.*',\n    hotspot_type: 'hotspot_type.innerContent.*',\n    icon_color: 'icon_color.innerContent.*',\n    font_icon: 'font_icon.innerContent.*',\n    icon_font_size: 'icon_font_size.innerContent.*',\n    hotspot_img: 'hotspot_img.innerContent.*',\n    hotspot_alt: 'hotspot_alt.innerContent.*',\n    hotspot_title_text: 'hotspot_title_text.innerContent.*',\n    hotspot_image_max_width: 'hotspot_image_max_width.innerContent.*',\n    hotspot_text: 'hotspot_text.innerContent.*',\n    use_tooltip: 'use_tooltip.innerContent.*',\n    content: 'content.innerContent.*',\n    left_position: 'left_position.innerContent.*',\n    top_position: 'top_position.innerContent.*',\n    tooltip_background_color: 'tooltip_background_color.innerContent.*',\n    tooltip_placement: 'tooltip_placement.innerContent.*',\n    tooltip_max_width: 'tooltip_max_width.innerContent.*',\n    pulse_animation: 'pulse_animation.innerContent.*',\n    pulse_background_color: 'pulse_background_color.innerContent.*',\n    hotspot_padding: 'hotspot_padding.decoration.spacing.*.padding',\n    tooltip_padding: 'tooltip_padding.decoration.spacing.*.padding',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    font_icon: external_divi_conversion_namespaceObject.convertFontIcon,\n    hotspot_padding: external_divi_module_namespaceObject.convertSpacing,\n    tooltip_padding: external_divi_module_namespaceObject.convertSpacing,\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/image-hotspots-child/index.js\n// External library dependencies.\n\n\n// Wordpress dependencies.\n\n\n\n// Module metadata that is used in both Frontend and Visual Builder.\n\n\n//  Custom dependencies.\n\n\n\n\n\n\n\n\nconst image_hotspots_child_defaultAttrs = {\n  hotspot_img: {\n    innerContent: {\n      desktop: {\n        value: {\n          src: IMAGE_HOTSPOTS_PLACEHOLDER_SRC\n        }\n      }\n    }\n  }\n};\nconst imageHotSpotChildModule = {\n  metadata: image_hotspots_child_module_namespaceObject,\n  conversionOutline: image_hotspots_child_conversion_outline_conversionOutline,\n  renderers: {\n    edit: image_hotspots_child_edit,\n    styles: image_hotspots_child_module_styles_ModuleStyles\n  },\n  defaultAttrs: image_hotspots_child_defaultAttrs,\n  parentsName: ['dsm/image-hotspots'],\n  settings: {\n    content: image_hotspots_child_settings_content,\n    design: image_hotspots_child_settings_design,\n    advanced: image_hotspots_child_settings_advanced\n  },\n  placeholderContent: {\n    ...image_hotspots_child_defaultAttrs,\n    hotspot_type: {\n      innerContent: {\n        desktop: {\n          value: 'icon'\n        }\n      }\n    },\n    font_icon: {\n      innerContent: {\n        desktop: {\n          value: {\n            type: 'divi',\n            unicode: '&#x4c;',\n            weight: '400'\n          }\n        }\n      }\n    },\n    hotspot_text: {\n      innerContent: {\n        desktop: {\n          value: 'text'\n        }\n      }\n    },\n    use_tooltip: {\n      innerContent: {\n        desktop: {\n          value: 'on'\n        }\n      }\n    },\n    content: {\n      innerContent: {\n        desktop: {\n          value: {\n            text: 'Your tooltip content goes here'\n          }\n        }\n      }\n    },\n    tooltip_placement: {\n      innerContent: {\n        desktop: {\n          value: 'top'\n        }\n      }\n    },\n    pulse_animation: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    }\n  }\n};\n/* harmony default export */ const image_hotspots_child = (imageHotSpotChildModule);\n;// ./packages/module-library/image-reveal/module.json\nconst image_reveal_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/image-text-reveal\",\"d4Shortcode\":\"dsm_image_reveal\",\"title\":\"Supreme Image Text Reveal\",\"titles\":\"Supreme Image Text Reveal\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/image-reveal\",\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"reveal_text\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"selector\":\"{{selector}} .dsm-image-reveal-text\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"src\":{\"type\":\"object\",\"label\":\"Image\",\"selector\":\"{{selector}} .et_pb_image_wrap img\",\"elementType\":\"image\",\"supportsCustomAttributes\":true,\"childrenSanitizer\":\"et_core_esc_previously\"},\"reveal_overlay_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"reveal_overlay_direction\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"lr\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"reveal_trigger\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"hover\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"show_in_lightbox\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"url\":{\"type\":\"object\",\"inlineEditor\":\"plainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"url_new_window\":{\"type\":\"object\",\"inlineEditor\":\"SelectControl\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"force_fullwidth\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"always_center_on_mobile\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"align\":{\"type\":\"object\",\"inlineEditor\":\"ButtonAlignmentControl\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"reveal_text_animation\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_duration_reveal_text\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_delay_reveal_text\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"title_text\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"alt\":{\"type\":\"object\",\"inlineEditor\":\"PlainText\",\"childrenSanitizer\":\"et_core_esc_previously\"}}}');\n;// ./packages/module-library/image-reveal/reveal-text-animation-select-options.js\n/**\n * Animate.css preset keys for reveal text (Image Text Reveal module).\n *\n * @param {Function} __ WordPress i18n\n * @return {Record<string, { label: string }>}\n */\nfunction getRevealTextAnimationSelectOptions(__) {\n  const td = 'dsm-supreme-modules-pro-for-divi';\n  const keys = ['fadeIn', 'bounce', 'flash', 'pulse', 'rubberBand', 'shake', 'swing', 'tada', 'wobble', 'jello', 'bounceIn', 'bounceInDown', 'bounceInLeft', 'bounceInRight', 'bounceInUp', 'fadeInDown', 'fadeInDownBig', 'fadeInLeft', 'fadeInLeftBig', 'fadeInRight', 'fadeInRightBig', 'fadeInUp', 'fadeInUpBig', 'slideInUp', 'slideInDown', 'slideInLeft', 'slideInRight', 'flip', 'flipInX', 'flipInY', 'rotateIn', 'rotateInDownLeft', 'rotateInDownRight', 'rotateInUpLeft', 'rotateInUpRight', 'zoomIn', 'zoomInDown', 'zoomInLeft', 'zoomInRight', 'zoomInUp', 'lightSpeedIn', 'rollIn', 'hinge'];\n  return keys.reduce((acc, key) => {\n    acc[key] = {\n      label: __(key, td)\n    };\n    return acc;\n  }, {});\n}\n;// ./packages/module-library/image-reveal/settings-content.js\n\n\n\n\n\n\n\n/** D5 upload default — matches `index.js` placeholder `src` for new modules. */\nconst irDefaultSrcInner = {\n  desktop: {\n    value: {\n      src: 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTA4MCIgaGVpZ2h0PSI1NDAiIHZpZXdCb3g9IjAgMCAxMDgwIDU0MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPHBhdGggZmlsbD0iI0VCRUJFQiIgZD0iTTAgMGgxMDgwdjU0MEgweiIvPgogICAgICAgIDxwYXRoIGQ9Ik00NDUuNjQ5IDU0MGgtOTguOTk1TDE0NC42NDkgMzM3Ljk5NSAwIDQ4Mi42NDR2LTk4Ljk5NWwxMTYuMzY1LTExNi4zNjVjMTUuNjItMTUuNjIgNDAuOTQ3LTE1LjYyIDU2LjU2OCAwTDQ0NS42NSA1NDB6IiBmaWxsLW9wYWNpdHk9Ii4xIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgICAgICA8Y2lyY2xlIGZpbGwtb3BhY2l0eT0iLjA1IiBmaWxsPSIjMDAwIiBjeD0iMzMxIiBjeD0iMTQ4IiByPSI3MCIvPgogICAgICAgIDxwYXRoIGQ9Ik0xMDgwIDM3OXYxMTMuMTM3TDcyOC4xNjIgMTQwLjMgMzI4LjQ2MiA1NDBIMjE1LjMyNEw2OTkuODc4IDU1LjQ0NmMxNS42Mi0xNS42MiA0MC45NDgtMTUuNjIgNTYuNTY4IDBMMTA4MCAzNzl6IiBmaWxsLW9wYWNpdHk9Ii4yIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgIDwvZz4KPC9zdmc+Cg=='\n    }\n  }\n};\n\n/** D4 `reveal_text` default is empty; VB needs a stable shape. */\nconst irDefaultRevealTextInner = {\n  desktop: {\n    value: {\n      text: ''\n    }\n  }\n};\nconst irDefaultRevealTrigger = {\n  desktop: {\n    value: 'hover'\n  }\n};\nconst irDefaultRevealAnimation = {\n  desktop: {\n    value: 'fadeIn'\n  }\n};\nconst irDefaultDuration = {\n  desktop: {\n    value: '0.5s'\n  }\n};\nconst irDefaultDelay = {\n  desktop: {\n    value: '0'\n  }\n};\nconst irDefaultShowLightbox = {\n  desktop: {\n    value: 'off'\n  }\n};\nfunction image_reveal_settings_content_SettingsContent({\n  defaultSettingsAttrs\n}) {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"image\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"reveal_text.innerContent\",\n    subName: \"text\",\n    defaultAttr: irDefaultRevealTextInner,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Reveal Text', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"src.innerContent\",\n    subName: \"src\",\n    defaultAttr: irDefaultSrcInner,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Upload your desired image, or type in the URL to the image you would like to display.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"settings\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Settings', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('How the reveal runs and how the text animates (Animate.css). Click / tap disables image lightbox on the preview; use Module Link for a custom URL.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"reveal_trigger.innerContent\",\n    defaultAttr: irDefaultRevealTrigger,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Reveal trigger', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hover: pointer enter/leave. Click: tap to toggle (best for touch). In view once: plays when the module scrolls into view (stays revealed). Click disables image lightbox so the tap can toggle the reveal.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      hover: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hover', 'dsm-supreme-modules-pro-for-divi')\n      },\n      click: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Click / tap (toggle)', 'dsm-supreme-modules-pro-for-divi')\n      },\n      scroll: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In view once', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"reveal_text_animation.innerContent\",\n    defaultAttr: irDefaultRevealAnimation,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animation', 'dsm-supreme-modules-pro-for-divi'),\n    description: \"\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: getRevealTextAnimationSelectOptions(external_window_vendor_wp_i18n_namespaceObject.__)\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_duration_reveal_text.innerContent\",\n    defaultAttr: irDefaultDuration,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Reveal Duration Text', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Duration for each character reveal animation.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 10,\n    step: 0.1,\n    defaultUnit: 's'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_delay_reveal_text.innerContent\",\n    defaultAttr: irDefaultDelay,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Reveal Delay Text', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Base delay before staggered character animation.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 10,\n    step: 0.1,\n    defaultUnit: 's'\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"lightbox\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Lightbox', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Opens the image in a lightbox on the front end. In the Visual Builder, Magnific Popup is initialized on the preview link when this is enabled.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"show_in_lightbox.innerContent\",\n    defaultAttr: irDefaultShowLightbox,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Open image in lightbox', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.LinkGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const image_reveal_settings_content = (image_reveal_settings_content_SettingsContent);\n;// ./packages/module-library/image-reveal/settings-design.js\n\n// Wordpress dependencies.\n\n\n// Divi package dependencies.\n\n\n\n\n\n/** D4 Advanced → Text: `background_layout` default dark, `text_orientation` default center. */\nconst irTextGroupDefaultAttr = {\n  text: {\n    desktop: {\n      value: {\n        color: 'dark',\n        orientation: 'center'\n      }\n    }\n  }\n};\n\n/** D4 `fonts.reveal_text` defaults (size, line-height, letter-spacing, heading). */\nconst irRevealFontDefaultAttr = {\n  font: {\n    desktop: {\n      value: {\n        headingLevel: 'h3',\n        size: '22px',\n        lineHeight: '1em',\n        spacing: '0px'\n      }\n    }\n  }\n};\nconst irDefaultOverlayColor = {\n  desktop: {\n    value: '#1fe0ba'\n  }\n};\nconst irDefaultOverlayDirection = {\n  desktop: {\n    value: 'lr'\n  }\n};\nconst irDefaultAlign = {\n  desktop: {\n    value: 'left'\n  }\n};\nconst irDefaultAlwaysCenterMobile = {\n  desktop: {\n    value: 'on'\n  }\n};\nconst irDefaultForceFullwidth = {\n  desktop: {\n    value: 'off'\n  }\n};\nfunction image_reveal_settings_design_SettingsDesign() {\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TextGroup, {\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Text', 'dsm-supreme-modules-pro-for-divi'),\n    defaultAttr: irTextGroupDefaultAttr\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"overlay\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"reveal_overlay_color.innerContent\",\n    defaultAttr: irDefaultOverlayColor,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Reveal Overlay Color', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can define a custom color for the overlay', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"reveal_overlay_direction.innerContent\",\n    defaultAttr: irDefaultOverlayDirection,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Overlay Wipe Direction', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('How the colored overlay moves before the reveal text animates.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      lr: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left → Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rl: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right → Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      tb: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top → Bottom', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bt: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom → Top', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom From Center', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"alignment\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Alignment', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"align.innerContent\",\n    defaultAttr: irDefaultAlign,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Here you can choose the image alignment.', 'dsm-supreme-modules-pro-for-divi'),\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"always_center_on_mobile.innerContent\",\n    defaultAttr: irDefaultAlwaysCenterMobile,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Always Center Image On Mobile', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      preset: 'content'\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"revealText\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Reveal Text', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"reveal_text.decoration.font\",\n    defaultAttr: irRevealFontDefaultAttr,\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Reveal', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: true\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"sizing\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Sizing', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"force_fullwidth.innerContent\",\n    defaultAttr: irDefaultForceFullwidth,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Force Fullwidth', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, {\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FiltersGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.TransformGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"animation\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Animation', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, {\n    grouped: false\n  })));\n}\n/* harmony default export */ const image_reveal_settings_design = (image_reveal_settings_design_SettingsDesign);\n;// ./packages/module-library/image-reveal/settings-advanced.js\n\n\n\nconst irDefaultAltInner = {\n  desktop: {\n    value: {\n      text: ''\n    }\n  }\n};\nconst irDefaultTitleInner = {\n  desktop: {\n    value: {\n      text: ''\n    }\n  }\n};\nfunction image_reveal_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_image_text_reveal\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.GroupContainer, {\n    id: \"attributes\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Attributes', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"alt.innerContent\",\n    subName: \"text\",\n    defaultAttr: irDefaultAltInner,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Alternative Text', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/React.createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"title_text.innerContent\",\n    subName: \"text\",\n    defaultAttr: irDefaultTitleInner,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Title Text', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/React.createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null))), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const image_reveal_settings_advanced = (image_reveal_settings_advanced_SettingsAdvanced);\n;// ./node_modules/splitting/dist/splitting-cells.css\n// extracted by mini-css-extract-plugin\n\n;// ./packages/module-library/image-reveal/module-styles.js\n\n\n\n\n\n/**\n * React function component for rendering module style.\n */\n\nconst revealTextAnimationDecaralation = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      animation: true\n    }\n  });\n  declarations.add('animation', `${attrValue} 0.2s both; animation-delay: calc(30ms * var(--char-index))`);\n  return declarations.value;\n};\nconst image_reveal_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  const dsm_delay_reveal_text = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_delay_reveal_text?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'reveal_text'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-image-reveal-overlay`,\n    attr: attrs?.reveal_overlay_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-image-wrapper`,\n    attr: attrs?.align?.innerContent,\n    property: \"text-align\"\n  }));\n};\n;// ./packages/module-library/image-reveal/reveal-timing.js\n/**\n * Parse Divi Range / CSS time values for Image Text Reveal (VB + frontend parity).\n *\n * @param {*} raw Value from `getAttrByMode` or a `data-*-animation` attribute string.\n * @return {number} Length in seconds (for overlay timers and stagger math).\n */\nfunction rangeOrCssToSeconds(raw) {\n  if (raw == null || raw === '') {\n    return 0;\n  }\n  if (typeof raw === 'number' && Number.isFinite(raw)) {\n    return raw;\n  }\n  if (typeof raw === 'object' && raw !== null && 'value' in raw) {\n    var _raw$unit;\n    const v = parseFloat(String(raw.value));\n    if (!Number.isFinite(v)) {\n      return 0;\n    }\n    const u = String((_raw$unit = raw.unit) !== null && _raw$unit !== void 0 ? _raw$unit : '').toLowerCase();\n    return u === 'ms' ? v / 1000 : v;\n  }\n  const s = String(raw).trim().replace(/\\s+/g, '');\n  if (/^[\\d.]+ms$/i.test(s)) {\n    const n = parseFloat(s);\n    return Number.isFinite(n) ? n / 1000 : 0;\n  }\n  if (/^[\\d.]+s$/i.test(s)) {\n    const n = parseFloat(s);\n    return Number.isFinite(n) ? n : 0;\n  }\n  const n = parseFloat(s);\n  return Number.isFinite(n) ? n : 0;\n}\n\n/**\n * Valid CSS time for `animation-duration` / `data-*-animation` (always includes a unit).\n *\n * @param {*}             raw        Same as {@see rangeOrCssToSeconds}.\n * @param {number|null}   fallbackSec When `raw` is empty, use this many seconds (null = `0s`).\n * @return {string} e.g. `0.5s`, `250ms`.\n */\nfunction rangeOrCssToCssTimeString(raw, fallbackSec = null) {\n  if (raw == null || raw === '') {\n    if (fallbackSec !== null && Number.isFinite(fallbackSec)) {\n      return `${fallbackSec}s`;\n    }\n    return '0s';\n  }\n  if (typeof raw === 'object' && raw !== null && 'value' in raw) {\n    var _raw$unit2;\n    const v = parseFloat(String(raw.value));\n    if (!Number.isFinite(v)) {\n      return fallbackSec !== null && Number.isFinite(fallbackSec) ? `${fallbackSec}s` : '0s';\n    }\n    const u = String((_raw$unit2 = raw.unit) !== null && _raw$unit2 !== void 0 ? _raw$unit2 : 's').toLowerCase();\n    return u === 'ms' ? `${v}ms` : `${v}s`;\n  }\n  const s = String(raw).trim().replace(/\\s+/g, '');\n  if (/^[\\d.]+ms$/i.test(s)) {\n    return s.toLowerCase();\n  }\n  if (/^[\\d.]+s$/i.test(s)) {\n    return s;\n  }\n  if (/^[\\d.]+$/.test(s)) {\n    return `${s}s`;\n  }\n  const n = parseFloat(s);\n  if (Number.isFinite(n)) {\n    return `${n}s`;\n  }\n  return fallbackSec !== null && Number.isFinite(fallbackSec) ? `${fallbackSec}s` : '0s';\n}\n;// ./packages/module-library/image-reveal/overlay-wipe.js\n/**\n * GSAP overlay wipe presets — keep `image-text-reveal.js` in sync when changing plans.\n *\n * @param {string|undefined} direction Raw attr value.\n * @return {object} Plan for initial set, show tween, and hide tween.\n */\nfunction getOverlayWipePlan(direction) {\n  const d = direction != null && String(direction).trim() !== '' ? String(direction).trim() : 'lr';\n  switch (d) {\n    case 'rl':\n      return {\n        initialSet: {\n          scaleX: 0,\n          scaleY: 1,\n          visibility: 'hidden',\n          transformOrigin: 'right top'\n        },\n        showFrom: {\n          scaleX: 0,\n          scaleY: 1,\n          transformOrigin: 'right top',\n          visibility: 'visible'\n        },\n        showTo: {\n          scaleX: 1\n        },\n        onShowCompleteSetOrigin: 'left top',\n        hideTo: {\n          scaleX: 0,\n          transformOrigin: 'left top'\n        }\n      };\n    case 'tb':\n      return {\n        initialSet: {\n          scaleX: 1,\n          scaleY: 0,\n          visibility: 'hidden',\n          transformOrigin: 'left top'\n        },\n        showFrom: {\n          scaleX: 1,\n          scaleY: 0,\n          transformOrigin: 'left top',\n          visibility: 'visible'\n        },\n        showTo: {\n          scaleY: 1\n        },\n        onShowCompleteSetOrigin: 'left bottom',\n        hideTo: {\n          scaleY: 0,\n          transformOrigin: 'left bottom'\n        }\n      };\n    case 'bt':\n      return {\n        initialSet: {\n          scaleX: 1,\n          scaleY: 0,\n          visibility: 'hidden',\n          transformOrigin: 'left bottom'\n        },\n        showFrom: {\n          scaleX: 1,\n          scaleY: 0,\n          transformOrigin: 'left bottom',\n          visibility: 'visible'\n        },\n        showTo: {\n          scaleY: 1\n        },\n        onShowCompleteSetOrigin: 'left top',\n        hideTo: {\n          scaleY: 0,\n          transformOrigin: 'left top'\n        }\n      };\n    case 'center':\n      return {\n        initialSet: {\n          scaleX: 0,\n          scaleY: 0,\n          visibility: 'hidden',\n          transformOrigin: 'center center'\n        },\n        showFrom: {\n          scaleX: 0,\n          scaleY: 0,\n          transformOrigin: 'center center',\n          visibility: 'visible'\n        },\n        showTo: {\n          scaleX: 1,\n          scaleY: 1\n        },\n        onShowCompleteSetOrigin: 'center center',\n        hideTo: {\n          scaleX: 0,\n          scaleY: 0,\n          transformOrigin: 'center center'\n        }\n      };\n    case 'lr':\n    default:\n      return {\n        initialSet: {\n          scaleX: 0,\n          scaleY: 1,\n          visibility: 'hidden',\n          transformOrigin: 'left top'\n        },\n        showFrom: {\n          scaleX: 0,\n          scaleY: 1,\n          transformOrigin: 'left top',\n          visibility: 'visible'\n        },\n        showTo: {\n          scaleX: 1\n        },\n        onShowCompleteSetOrigin: 'right top',\n        hideTo: {\n          scaleX: 0,\n          transformOrigin: 'right top'\n        }\n      };\n  }\n}\n\n/**\n * @param {string|undefined} raw From attrs / `getAttrByMode`.\n * @return {'lr'|'rl'|'tb'|'bt'|'center'}\n */\nfunction normalizeOverlayDirection(raw) {\n  const allowed = new Set(['lr', 'rl', 'tb', 'bt', 'center']);\n  const s = raw != null && String(raw).trim() !== '' ? String(raw).trim() : 'lr';\n  return allowed.has(s) ? s : 'lr';\n}\n\n/**\n * @param {string|undefined} raw Trigger slug.\n * @return {'hover'|'click'|'scroll'}\n */\nfunction normalizeRevealTrigger(raw) {\n  const allowed = new Set(['hover', 'click', 'scroll']);\n  const s = raw != null && String(raw).trim() !== '' ? String(raw).trim() : 'hover';\n  return allowed.has(s) ? s : 'hover';\n}\n;// ./packages/module-library/image-reveal/edit.js\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ngsapWithCSS.registerPlugin(ScrollTrigger_ScrollTrigger);\n\n/**\n * Visual Builder: bind Magnific Popup on the image link (Divi core lightbox is not wired for every canvas node).\n *\n * @param {Object}   root0\n * @param {*}        root0.children      Module preview subtree.\n * @param {boolean}  root0.enabled       When false, skip init.\n * @param {string}   root0.resolvedImage Image URL used for href (must be non-empty).\n */\nfunction ImageRevealVbLightboxMount({\n  children,\n  enabled,\n  resolvedImage\n}) {\n  const shellRef = (0,external_vendor_React_.useRef)(null);\n  (0,external_vendor_React_.useEffect)(() => {\n    if (!enabled || !resolvedImage || typeof window === 'undefined' || typeof window.jQuery === 'undefined') {\n      return undefined;\n    }\n    let canceled = false;\n    const init = () => {\n      if (canceled) {\n        return;\n      }\n      const root = shellRef.current;\n      if (!root) {\n        return;\n      }\n      const $ = window.jQuery;\n      const $a = $(root).find('a.dsm-image-reveal-lightbox-vb').first();\n      if (!$a.length) {\n        return;\n      }\n      if ($a.data('magnificPopup')) {\n        $a.magnificPopup('destroy');\n      }\n      $a.magnificPopup({\n        type: 'image',\n        removalDelay: 300,\n        mainClass: 'mfp-fade',\n        zoom: {\n          enabled: true,\n          duration: 400,\n          opener(element) {\n            return element.find('img');\n          }\n        }\n      });\n    };\n    const rafId = window.requestAnimationFrame(() => {\n      window.requestAnimationFrame(init);\n    });\n    return () => {\n      canceled = true;\n      window.cancelAnimationFrame(rafId);\n      const root = shellRef.current;\n      if (root && typeof window.jQuery !== 'undefined') {\n        const $a = window.jQuery(root).find('a.dsm-image-reveal-lightbox-vb').first();\n        if ($a.length && $a.data('magnificPopup')) {\n          $a.magnificPopup('destroy');\n        }\n      }\n    };\n  }, [enabled, resolvedImage]);\n  return /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    ref: shellRef,\n    className: \"dsm-image-reveal-vb-lb-root\"\n  }, children);\n}\n\n/**\n * @param {Object|undefined} attrs Module attrs.\n * @return {unknown}\n */\nfunction getRevealTextDynamicSource(attrs) {\n  let raw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.reveal_text?.innerContent);\n  if ((raw == null || raw === '') && attrs?.reveal_text?.innerContent?.desktop?.value != null) {\n    const v = attrs.reveal_text.innerContent.desktop.value;\n    if (typeof v === 'object' && v !== null && 'text' in v) {\n      raw = v.text;\n    } else if (typeof v === 'string') {\n      raw = v;\n    }\n  }\n  if (raw == null) {\n    return '';\n  }\n  if (typeof raw === 'object' && raw !== null && 'text' in raw) {\n    return raw.text;\n  }\n  return raw;\n}\n\n/**\n * Desktop-first overlay direction (matches `ImageReveal::overlay_direction_from_attrs()`).\n *\n * @param {Object|undefined} attrs Module attrs.\n * @return {'lr'|'rl'|'tb'|'bt'|'center'}\n */\nfunction getOverlayDirectionFromAttrs(attrs) {\n  const inner = attrs?.reveal_overlay_direction?.innerContent;\n  let raw = inner?.desktop?.value;\n  if (raw == null || raw === '') {\n    raw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(inner);\n  }\n  if (typeof raw === 'number') {\n    raw = String(raw);\n  }\n  if (typeof raw === 'object' && raw !== null && 'value' in raw) {\n    const v = raw.value;\n    raw = typeof v === 'string' || typeof v === 'number' ? String(v) : '';\n  }\n  return normalizeOverlayDirection(raw);\n}\n\n/**\n * @param {Object|undefined} attrs Module attrs.\n * @return {'hover'|'click'|'scroll'}\n */\nfunction getRevealTriggerFromAttrs(attrs) {\n  const inner = attrs?.reveal_trigger?.innerContent;\n  let raw = inner?.desktop?.value;\n  if (raw == null || raw === '') {\n    raw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(inner);\n  }\n  if (typeof raw === 'number') {\n    raw = String(raw);\n  }\n  if (typeof raw === 'object' && raw !== null && 'value' in raw) {\n    const v = raw.value;\n    raw = typeof v === 'string' || typeof v === 'number' ? String(v) : '';\n  }\n  return normalizeRevealTrigger(raw);\n}\n\n/**\n * @param {Object|undefined} attrs Module attrs.\n * @return {{ url: string, newTab: boolean }}\n */\nfunction getModuleLinkFromAttrs(attrs) {\n  var _ref, _link$innerContent$de;\n  const link = attrs?.module?.advanced?.link;\n  const bucket = (_ref = (_link$innerContent$de = link?.innerContent?.desktop?.value) !== null && _link$innerContent$de !== void 0 ? _link$innerContent$de : link?.desktop?.value) !== null && _ref !== void 0 ? _ref : null;\n  let url = '';\n  let newTab = false;\n  if (bucket && typeof bucket === 'object') {\n    var _ref2, _bucket$target;\n    if (typeof bucket.url === 'string') {\n      url = bucket.url.trim();\n    }\n    const t = (_ref2 = (_bucket$target = bucket.target) !== null && _bucket$target !== void 0 ? _bucket$target : bucket.linkTarget) !== null && _ref2 !== void 0 ? _ref2 : '';\n    newTab = t === 'on' || t === true || t === 1 || t === 'yes' || t === '_blank';\n  }\n  return {\n    url,\n    newTab\n  };\n}\n\n/**\n * Image link URL field (plainText).\n *\n * @param {Object|undefined} attrs Module attrs.\n * @return {string}\n */\nfunction getImageUrlFieldFromAttrs(attrs) {\n  const raw = attrs?.url?.innerContent?.desktop?.value;\n  if (typeof raw === 'string') {\n    return raw.trim();\n  }\n  if (typeof raw === 'object' && raw !== null && 'text' in raw) {\n    return typeof raw.text === 'string' ? raw.text.trim() : '';\n  }\n  return '';\n}\n\n/**\n * @param {*} value Resolved or static value.\n * @return {string}\n */\nfunction toPlainRevealCanvasText(value) {\n  if (value == null) {\n    return '';\n  }\n  if (typeof value === 'number') {\n    return String(value);\n  }\n  if (typeof value !== 'string') {\n    return '';\n  }\n  if (/<[^>]+>/.test(value)) {\n    var _doc$body$textContent;\n    if (typeof DOMParser === 'undefined') {\n      return value.replace(/<[^>]*>/g, '');\n    }\n    const doc = new DOMParser().parseFromString(value, 'text/html');\n    return (_doc$body$textContent = doc.body?.textContent) !== null && _doc$body$textContent !== void 0 ? _doc$body$textContent : '';\n  }\n  return value;\n}\nconst image_reveal_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}), elements.scriptData({\n  attrName: 'reveal_text'\n}));\n\n/**\n * @param {*} raw From getAttrByMode( attrs.src.innerContent ).\n * @return {string}\n */\nfunction image_reveal_edit_getUploadValueForDynamicData(raw) {\n  if (raw == null || raw === '') {\n    return '';\n  }\n  if (typeof raw === 'string' || typeof raw === 'number') {\n    return String(raw);\n  }\n  if (typeof raw === 'object') {\n    if (typeof raw.src === 'string' && raw.src !== '') {\n      return raw.src;\n    }\n    if (typeof raw.url === 'string' && raw.url !== '') {\n      return raw.url;\n    }\n  }\n  return '';\n}\nfunction image_reveal_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements\n}) {\n  var _attrs$alt$innerConte, _getAttrByMode, _attrs$reveal_text$de, _attrs$module$advance, _getAttrByMode2;\n  const container = (0,external_vendor_React_.useRef)(null);\n  const pendingRevealTimeoutRef = (0,external_vendor_React_.useRef)(null);\n  const hoverRuntimeRef = (0,external_vendor_React_.useRef)({});\n  const clickRevealedRef = (0,external_vendor_React_.useRef)(false);\n  const scrollPlayedRef = (0,external_vendor_React_.useRef)(false);\n  const imageUrlAttr = image_reveal_edit_getUploadValueForDynamicData((0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.src?.innerContent));\n  const revealTextSource = getRevealTextDynamicSource(attrs);\n  const {\n    resolvedValue: revealTextResolved,\n    isDynamic: revealTextIsDynamic\n  } = (0,external_divi_dynamicData_namespaceObject.useDynamicData)(revealTextSource !== null && revealTextSource !== void 0 ? revealTextSource : '');\n  const revealTextPlain = toPlainRevealCanvasText(revealTextIsDynamic ? revealTextResolved : revealTextSource);\n  const applySplitting = (0,external_vendor_React_.useCallback)(() => {\n    const root = container.current;\n    if (!root || (0,lodash.isEmpty)(revealTextPlain)) {\n      return;\n    }\n    const splitTarget = root.querySelector('[data-splitting]');\n    if (!splitTarget) {\n      return;\n    }\n    splitTarget.textContent = revealTextPlain;\n    splitting_default()({\n      target: splitTarget,\n      force: true\n    });\n  }, [revealTextPlain]);\n  const revealAnimationRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.reveal_text_animation?.innerContent);\n  let revealAnimationName = 'fadeIn';\n  if (typeof revealAnimationRaw === 'string' && revealAnimationRaw.trim() !== '') {\n    revealAnimationName = revealAnimationRaw.trim();\n  } else if (typeof revealAnimationRaw === 'object' && revealAnimationRaw !== null && 'value' in revealAnimationRaw && typeof revealAnimationRaw.value === 'string' && revealAnimationRaw.value.trim() !== '') {\n    revealAnimationName = revealAnimationRaw.value.trim();\n  }\n  const revealDurationRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_duration_reveal_text?.innerContent);\n  const revealDelayRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_delay_reveal_text?.innerContent);\n  const durationForChars = rangeOrCssToCssTimeString(revealDurationRaw, 0.5);\n  const delaySeconds = rangeOrCssToSeconds(revealDelayRaw);\n  const delayAttrCss = rangeOrCssToCssTimeString(revealDelayRaw, 0);\n  const overlayDirection = getOverlayDirectionFromAttrs(attrs);\n  const revealTrigger = getRevealTriggerFromAttrs(attrs);\n  const showInLightbox = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.show_in_lightbox?.innerContent) === 'on';\n  const imageLinkUrl = getImageUrlFieldFromAttrs(attrs);\n  const urlNewWindow = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.url_new_window?.innerContent) === 'on';\n  const {\n    url: moduleLinkUrl,\n    newTab: moduleLinkNewTab\n  } = getModuleLinkFromAttrs(attrs);\n  const alt = (_attrs$alt$innerConte = attrs?.alt?.innerContent?.desktop?.value?.text) !== null && _attrs$alt$innerConte !== void 0 ? _attrs$alt$innerConte : '';\n  const titleRaw = attrs?.title_text?.innerContent?.desktop?.value;\n  const title_text = typeof titleRaw === 'object' && titleRaw?.text ? titleRaw.text : (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.title_text?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : '';\n  const headingLevel = (_attrs$reveal_text$de = attrs?.reveal_text?.decoration?.font?.font?.desktop?.value?.headingLevel) !== null && _attrs$reveal_text$de !== void 0 ? _attrs$reveal_text$de : 'h3';\n  const Tag = ['h1', 'h2', 'h3', 'h4', 'h5', 'h6'].includes(String(headingLevel).toLowerCase()) ? String(headingLevel).toLowerCase() : 'h3';\n  const textOrientation = (_attrs$module$advance = attrs?.module?.advanced?.text?.text?.desktop?.value?.orientation) !== null && _attrs$module$advance !== void 0 ? _attrs$module$advance : 'center';\n  const alwaysCenter = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.always_center_on_mobile?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'on';\n  const textAdvanced = attrs?.module?.advanced?.text;\n  let moduleTextClasses = '';\n  if (textAdvanced && typeof textAdvanced === 'object') {\n    moduleTextClasses = (0,external_divi_module_namespaceObject.textOptionsClassnames)(textAdvanced).trim();\n  }\n  if ('' === moduleTextClasses) {\n    moduleTextClasses = 'et_pb_bg_layout_dark';\n  } else if (!moduleTextClasses.includes('et_pb_bg_layout_')) {\n    var _textAdvanced$text$de;\n    const color = (_textAdvanced$text$de = textAdvanced?.text?.desktop?.value?.color) !== null && _textAdvanced$text$de !== void 0 ? _textAdvanced$text$de : 'dark';\n    const safe = 'dark' === color || 'light' === color ? color : 'dark';\n    moduleTextClasses = `${moduleTextClasses} et_pb_bg_layout_${safe}`.trim();\n  }\n  const revealTextMountKey = `${id}-${Tag}-${revealTextPlain}`;\n  const revealTextMarkup = !(0,lodash.isEmpty)(revealTextPlain) && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    key: revealTextMountKey,\n    className: \"dsm-image-reveal-text-wrapper\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(Tag, {\n    className: `dsm-image-reveal-text et_pb_module_header et_pb_text_align_${textOrientation}`,\n    \"data-splitting\": true\n  }));\n  hoverRuntimeRef.current = {\n    applySplitting,\n    revealTextPlain,\n    delaySeconds,\n    durationForChars,\n    revealAnimationName,\n    overlayDirection,\n    revealTrigger\n  };\n  (0,external_vendor_React_.useLayoutEffect)(() => {\n    applySplitting();\n    const rafSplit = requestAnimationFrame(() => {\n      applySplitting();\n    });\n    return () => window.cancelAnimationFrame(rafSplit);\n  }, [applySplitting, revealTextMountKey]);\n  (0,external_vendor_React_.useLayoutEffect)(() => {\n    const revealElement = container.current;\n    if (!revealElement) {\n      return;\n    }\n    const $overlaySetup = revealElement.querySelector('.dsm-image-reveal-overlay');\n    if ($overlaySetup) {\n      gsapWithCSS.killTweensOf($overlaySetup);\n      gsapWithCSS.set($overlaySetup, {\n        clearProps: 'transform,transformOrigin'\n      });\n      const idlePlan = getOverlayWipePlan(overlayDirection);\n      gsapWithCSS.set($overlaySetup, idlePlan.initialSet);\n    }\n    revealElement.classList.remove('dsm-image-revealed', 'dsm-image-reveal-hover');\n    clickRevealedRef.current = false;\n    scrollPlayedRef.current = false;\n    if (pendingRevealTimeoutRef.current !== null) {\n      window.clearTimeout(pendingRevealTimeoutRef.current);\n      pendingRevealTimeoutRef.current = null;\n    }\n    function playRevealIn() {\n      const {\n        revealTextPlain: textPlain,\n        applySplitting: split,\n        delaySeconds: dSec,\n        durationForChars: durChars,\n        revealAnimationName: animName,\n        overlayDirection: dirRaw\n      } = hoverRuntimeRef.current;\n      if ((0,lodash.isEmpty)(textPlain)) {\n        return;\n      }\n      const $overlay = revealElement.querySelector('.dsm-image-reveal-overlay');\n      if (!$overlay) {\n        return;\n      }\n      const plan = getOverlayWipePlan(normalizeOverlayDirection(dirRaw));\n      split();\n      if (pendingRevealTimeoutRef.current !== null) {\n        window.clearTimeout(pendingRevealTimeoutRef.current);\n        pendingRevealTimeoutRef.current = null;\n      }\n      gsapWithCSS.killTweensOf($overlay);\n      gsapWithCSS.set($overlay, {\n        clearProps: 'transform,transformOrigin'\n      });\n      revealElement.classList.remove('dsm-image-revealed', 'dsm-image-reveal-hover');\n      gsapWithCSS.set($overlay, plan.initialSet);\n      const delayAfterOverlayMs = dSec * 1000;\n\n      /**\n       * Match frontend `image-text-reveal.js`: query `.char` from the module root\n       * after Splitting runs so the VB canvas always picks up live nodes (avoids stale\n       * splitRoot closures when React re-commits or Splitting runs in a rAF).\n       */\n      const animateCharsIn = () => {\n        split();\n        const run = () => {\n          const $chars = revealElement.querySelectorAll('.char');\n          const stagger = dSec;\n          $chars.forEach((char, i) => {\n            char.classList.remove('animated', animName);\n            void char.offsetWidth;\n            char.style.animationName = animName;\n            char.style.webkitAnimationName = animName;\n            char.style.animationDuration = durChars;\n            char.style.webkitAnimationDuration = durChars;\n            char.style.animationDelay = `${stagger + i * 0.05}s`;\n            char.style.webkitAnimationDelay = `${stagger + i * 0.05}s`;\n            char.style.animationFillMode = 'both';\n            char.style.webkitAnimationFillMode = 'both';\n            char.classList.add('animated');\n          });\n        };\n        run();\n        if (!revealElement.querySelectorAll('.char').length) {\n          window.requestAnimationFrame(() => {\n            split();\n            run();\n          });\n        }\n      };\n      gsapWithCSS.fromTo($overlay, plan.showFrom, {\n        ...plan.showTo,\n        ease: 'expo.inOut',\n        duration: 0.4,\n        delay: 0.1,\n        onStart: () => revealElement.classList.add('dsm-image-reveal-hover'),\n        onComplete: () => {\n          if (plan.onShowCompleteSetOrigin) {\n            gsapWithCSS.set($overlay, {\n              transformOrigin: plan.onShowCompleteSetOrigin\n            });\n          }\n          if (pendingRevealTimeoutRef.current !== null) {\n            window.clearTimeout(pendingRevealTimeoutRef.current);\n          }\n          pendingRevealTimeoutRef.current = window.setTimeout(() => {\n            pendingRevealTimeoutRef.current = null;\n            revealElement.classList.add('dsm-image-revealed');\n            window.requestAnimationFrame(() => {\n              window.requestAnimationFrame(() => {\n                animateCharsIn();\n              });\n            });\n          }, delayAfterOverlayMs);\n        }\n      });\n    }\n    function playRevealOut() {\n      const {\n        durationForChars: durChars,\n        revealAnimationName: animName,\n        overlayDirection: dirRaw\n      } = hoverRuntimeRef.current;\n      const $overlay = revealElement.querySelector('.dsm-image-reveal-overlay');\n      if (!$overlay) {\n        return;\n      }\n      const plan = getOverlayWipePlan(normalizeOverlayDirection(dirRaw));\n      const {\n        transformOrigin: hideOrigin,\n        ...hideTween\n      } = plan.hideTo;\n      const $chars = revealElement.querySelectorAll('.char');\n      $chars.forEach((char, i) => {\n        char.classList.remove('animated', animName);\n        void char.offsetWidth;\n        char.style.animationName = 'fadeOut';\n        char.style.webkitAnimationName = 'fadeOut';\n        char.style.animationDuration = durChars;\n        char.style.webkitAnimationDuration = durChars;\n        char.style.animationDelay = `${i * 0.05}s`;\n        char.style.webkitAnimationDelay = `${i * 0.05}s`;\n        char.style.animationFillMode = 'both';\n        char.style.webkitAnimationFillMode = 'both';\n        char.classList.add('animated');\n      });\n      if (pendingRevealTimeoutRef.current !== null) {\n        window.clearTimeout(pendingRevealTimeoutRef.current);\n        pendingRevealTimeoutRef.current = null;\n      }\n      gsapWithCSS.set($overlay, {\n        transformOrigin: hideOrigin\n      });\n      gsapWithCSS.to($overlay, {\n        ...hideTween,\n        ease: 'expo.inOut',\n        duration: 0.4,\n        onComplete: () => {\n          revealElement.classList.remove('dsm-image-revealed');\n          revealElement.classList.remove('dsm-image-reveal-hover');\n        }\n      });\n    }\n    const triggerMode = normalizeRevealTrigger(hoverRuntimeRef.current.revealTrigger);\n    let stInstance = null;\n    if ('hover' === triggerMode) {\n      const onPointerEnter = () => playRevealIn();\n      const onPointerLeave = () => playRevealOut();\n      revealElement.addEventListener('pointerenter', onPointerEnter);\n      revealElement.addEventListener('pointerleave', onPointerLeave);\n      return () => {\n        revealElement.removeEventListener('pointerenter', onPointerEnter);\n        revealElement.removeEventListener('pointerleave', onPointerLeave);\n        const ov = revealElement.querySelector('.dsm-image-reveal-overlay');\n        if (ov) {\n          gsapWithCSS.killTweensOf(ov);\n        }\n        if (pendingRevealTimeoutRef.current !== null) {\n          window.clearTimeout(pendingRevealTimeoutRef.current);\n          pendingRevealTimeoutRef.current = null;\n        }\n      };\n    }\n    if ('click' === triggerMode) {\n      const onClickToggle = ev => {\n        if (ev.target.closest('a.dsm-image-reveal-link')) {\n          return;\n        }\n        const {\n          revealTextPlain: textPlain\n        } = hoverRuntimeRef.current;\n        if ((0,lodash.isEmpty)(textPlain)) {\n          return;\n        }\n        ev.preventDefault();\n        if (clickRevealedRef.current) {\n          clickRevealedRef.current = false;\n          playRevealOut();\n        } else {\n          clickRevealedRef.current = true;\n          playRevealIn();\n        }\n      };\n      revealElement.addEventListener('click', onClickToggle);\n      return () => {\n        revealElement.removeEventListener('click', onClickToggle);\n        const ov = revealElement.querySelector('.dsm-image-reveal-overlay');\n        if (ov) {\n          gsapWithCSS.killTweensOf(ov);\n        }\n        if (pendingRevealTimeoutRef.current !== null) {\n          window.clearTimeout(pendingRevealTimeoutRef.current);\n          pendingRevealTimeoutRef.current = null;\n        }\n      };\n    }\n    if ('scroll' === triggerMode) {\n      stInstance = ScrollTrigger_ScrollTrigger.create({\n        trigger: revealElement,\n        start: 'top 85%',\n        once: true,\n        onEnter: () => {\n          if (scrollPlayedRef.current) {\n            return;\n          }\n          scrollPlayedRef.current = true;\n          playRevealIn();\n        }\n      });\n      window.requestAnimationFrame(() => {\n        ScrollTrigger_ScrollTrigger.refresh();\n      });\n      return () => {\n        if (stInstance) {\n          stInstance.kill();\n        }\n        const ov = revealElement.querySelector('.dsm-image-reveal-overlay');\n        if (ov) {\n          gsapWithCSS.killTweensOf(ov);\n        }\n        if (pendingRevealTimeoutRef.current !== null) {\n          window.clearTimeout(pendingRevealTimeoutRef.current);\n          pendingRevealTimeoutRef.current = null;\n        }\n      };\n    }\n    return () => {\n      const ov = revealElement.querySelector('.dsm-image-reveal-overlay');\n      if (ov) {\n        gsapWithCSS.killTweensOf(ov);\n      }\n      if (pendingRevealTimeoutRef.current !== null) {\n        window.clearTimeout(pendingRevealTimeoutRef.current);\n        pendingRevealTimeoutRef.current = null;\n      }\n    };\n  }, [id, overlayDirection, revealTrigger]);\n  const mobileCenterClass = 'on' === alwaysCenter ? 'et_always_center_on_mobile' : '';\n  const wrapInner = resolvedImage => {\n    const inner = /*#__PURE__*/external_vendor_React_default().createElement(\"span\", {\n      className: \"et_pb_image_wrap\"\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      className: \"dsm-image-reveal-overlay\"\n    }), /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n      src: resolvedImage,\n      alt: alt,\n      title: title_text\n    }), revealTextMarkup);\n    if ('click' === revealTrigger) {\n      return inner;\n    }\n    if (showInLightbox && resolvedImage) {\n      return /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n        href: resolvedImage,\n        className: \"et_pb_lightbox_image dsm-image-reveal-link dsm-image-reveal-lightbox-vb\",\n        title: alt || undefined\n      }, inner);\n    }\n    if (imageLinkUrl) {\n      return /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n        href: imageLinkUrl,\n        className: \"dsm-image-reveal-link\",\n        target: urlNewWindow ? '_blank' : undefined,\n        rel: urlNewWindow ? 'noopener noreferrer' : undefined\n      }, inner);\n    }\n    if (moduleLinkUrl) {\n      return /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n        href: moduleLinkUrl,\n        className: \"dsm-image-reveal-link\",\n        target: moduleLinkNewTab ? '_blank' : undefined,\n        rel: moduleLinkNewTab ? 'noopener noreferrer' : undefined\n      }, inner);\n    }\n    return inner;\n  };\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: image_reveal_edit_ModuleScriptData,\n    stylesComponent: image_reveal_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n      moduleTextClasses.split(/\\s+/).filter(Boolean).forEach(cls => {\n        params.classnamesInstance.add(cls);\n      });\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    ref: container,\n    className: `dsm_image_text_reveal ${mobileCenterClass}`.trim(),\n    \"data-dsm-vb-canvas\": \"1\",\n    onPointerDownCapture: applySplitting\n  }, /*#__PURE__*/external_vendor_React_default().createElement(dynamic_wrapper, {\n    value: imageUrlAttr\n  }, resolvedImage => {\n    const resolvedSrc = typeof resolvedImage === 'string' ? resolvedImage : '';\n    const vbLightboxOn = showInLightbox && revealTrigger !== 'click' && resolvedSrc !== '';\n    return /*#__PURE__*/external_vendor_React_default().createElement(ImageRevealVbLightboxMount, {\n      enabled: vbLightboxOn,\n      resolvedImage: resolvedSrc\n    }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n      key: `${id}-wipe-${overlayDirection}-${revealTrigger}`,\n      className: \"dsm-image-wrapper\",\n      \"data-reveal-animation\": revealAnimationName,\n      \"data-duration-animation\": durationForChars,\n      \"data-delay-animation\": delayAttrCss,\n      \"data-overlay-direction\": overlayDirection,\n      \"data-reveal-trigger\": revealTrigger\n    }, wrapInner(resolvedImage)));\n  })));\n}\n/* harmony default export */ const image_reveal_edit = (image_reveal_edit_Edit);\n;// ./packages/module-library/image-reveal/conversion-outline.js\n\nconst image_reveal_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    disabled_on: 'module.decoration.disabledOn',\n    display_conditions: 'module.decoration.conditions',\n    borders: {\n      default: 'module.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow'\n    },\n    module: 'module.advanced.htmlAttributes',\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    text: 'module.advanced.text',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    text_shadow: {\n      default: 'module.advanced.text.textShadow'\n    },\n    margin_padding: 'module.decoration.spacing',\n    max_width: 'module.decoration.sizing',\n    height: 'module.decoration.sizing',\n    link_options: 'module.advanced.link',\n    fonts: {\n      reveal_text: 'reveal_text.decoration.font'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    reveal_text: 'reveal_text.innerContent.*.text',\n    reveal_text_level: 'reveal_text.decoration.font.font.*.headingLevel',\n    src: 'src.innerContent.*.src',\n    reveal_overlay_color: 'reveal_overlay_color.innerContent.*',\n    reveal_overlay_direction: 'reveal_overlay_direction.innerContent.*',\n    reveal_trigger: 'reveal_trigger.innerContent.*',\n    show_in_lightbox: 'show_in_lightbox.innerContent.*',\n    url: 'url.innerContent.*.text',\n    url_new_window: 'url_new_window.innerContent.*',\n    force_fullwidth: 'force_fullwidth.innerContent.*',\n    always_center_on_mobile: 'always_center_on_mobile.innerContent.*',\n    align: 'align.innerContent.*',\n    reveal_text_animation: 'reveal_text_animation.innerContent.*',\n    dsm_duration_reveal_text: 'dsm_duration_reveal_text.innerContent.*',\n    dsm_delay_reveal_text: 'dsm_delay_reveal_text.innerContent.*',\n    title_text: 'title_text.innerContent.*.text',\n    alt: 'alt.innerContent.*.text',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes',\n    margin_padding: external_divi_module_namespaceObject.convertSpacing\n  }\n};\n;// ./packages/module-library/image-reveal/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmImageRevealText', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/image-reveal': {\n      name: 'divi-supreme/image-reveal',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 2.746094 11.730469 C 2.410156 11.730469 2.132812 11.457031 2.132812 11.121094 C 2.132812 10.785156 2.410156 10.507812 2.746094 10.507812 C 3.082031 10.507812 3.355469 10.785156 3.355469 11.121094 C 3.355469 11.457031 3.082031 11.730469 2.746094 11.730469 Z M 2.746094 10.84375 C 2.597656 10.84375 2.472656 10.964844 2.472656 11.117188 C 2.472656 11.265625 2.597656 11.386719 2.746094 11.386719 C 2.894531 11.386719 3.015625 11.265625 3.015625 11.117188 C 3.015625 10.964844 2.894531 10.84375 2.746094 10.84375 Z M 2.746094 10.84375 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 10.929688 4.957031 C 10.59375 4.957031 10.320312 4.683594 10.320312 4.34375 C 10.320312 4.007812 10.59375 3.734375 10.929688 3.734375 C 11.265625 3.734375 11.542969 4.007812 11.542969 4.34375 C 11.542969 4.683594 11.265625 4.957031 10.929688 4.957031 Z M 10.929688 4.074219 C 10.78125 4.074219 10.660156 4.195312 10.660156 4.34375 C 10.660156 4.496094 10.78125 4.617188 10.929688 4.617188 C 11.082031 4.617188 11.203125 4.496094 11.203125 4.34375 C 11.203125 4.195312 11.082031 4.074219 10.929688 4.074219 Z M 10.929688 4.074219 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 13 12.441406 L 5.058594 12.441406 C 4.402344 12.441406 3.871094 11.910156 3.871094 11.253906 L 3.871094 6.542969 C 3.871094 5.886719 4.402344 5.355469 5.058594 5.355469 L 13 5.355469 C 13.652344 5.355469 14.1875 5.886719 14.1875 6.542969 L 14.1875 11.25 C 14.1875 11.910156 13.652344 12.441406 13 12.441406 Z M 5.058594 5.691406 C 4.589844 5.691406 4.207031 6.074219 4.207031 6.542969 L 4.207031 11.25 C 4.207031 11.71875 4.589844 12.101562 5.058594 12.101562 L 13 12.101562 C 13.46875 12.101562 13.851562 11.71875 13.851562 11.25 L 13.851562 6.542969 C 13.851562 6.074219 13.46875 5.691406 13 5.691406 Z M 5.058594 5.691406 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.757812 11.289062 L 6.296875 11.289062 C 5.738281 11.289062 5.292969 10.835938 5.292969 10.277344 L 5.292969 7.511719 C 5.292969 6.957031 5.746094 6.507812 6.296875 6.507812 L 11.757812 6.507812 C 12.148438 6.507812 12.511719 6.738281 12.671875 7.09375 C 12.734375 7.222656 12.765625 7.367188 12.765625 7.519531 L 12.765625 10.285156 C 12.765625 10.835938 12.3125 11.289062 11.757812 11.289062 Z M 6.296875 6.84375 C 5.925781 6.84375 5.628906 7.144531 5.628906 7.511719 L 5.628906 10.277344 C 5.628906 10.648438 5.925781 10.945312 6.296875 10.945312 L 11.757812 10.945312 C 12.125 10.945312 12.425781 10.648438 12.425781 10.277344 L 12.425781 7.511719 C 12.425781 7.414062 12.402344 7.320312 12.363281 7.234375 C 12.257812 7 12.019531 6.84375 11.757812 6.84375 Z M 6.296875 6.84375 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.753906 11.289062 L 6.292969 11.289062 C 5.738281 11.289062 5.289062 10.835938 5.289062 10.277344 L 5.289062 9.984375 L 7.429688 8.441406 L 8.355469 9.460938 L 12.59375 6.914062 L 12.671875 7.082031 C 12.730469 7.214844 12.765625 7.363281 12.765625 7.507812 L 12.765625 10.273438 C 12.765625 10.835938 12.3125 11.289062 11.753906 11.289062 Z M 5.628906 10.160156 L 5.628906 10.277344 C 5.628906 10.648438 5.929688 10.945312 6.296875 10.945312 L 11.753906 10.945312 C 12.125 10.945312 12.425781 10.648438 12.425781 10.277344 L 12.425781 7.511719 C 12.425781 7.480469 12.425781 7.449219 12.417969 7.417969 L 8.292969 9.898438 L 7.386719 8.902344 Z M 5.628906 10.160156 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 8.582031 8.625 C 8.246094 8.625 7.972656 8.347656 7.972656 8.011719 C 7.972656 7.675781 8.246094 7.402344 8.582031 7.402344 C 8.917969 7.402344 9.195312 7.675781 9.195312 8.011719 C 9.195312 8.347656 8.917969 8.625 8.582031 8.625 Z M 8.582031 7.742188 C 8.433594 7.742188 8.3125 7.863281 8.3125 8.011719 C 8.3125 8.164062 8.433594 8.285156 8.582031 8.285156 C 8.730469 8.285156 8.855469 8.164062 8.855469 8.011719 C 8.855469 7.863281 8.730469 7.742188 8.582031 7.742188 Z M 8.582031 7.742188 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/image-reveal/index.js\n// Wordpress dependencies.\n\n\n// Module metadata that is used in both Frontend and Visual Builder.\n\n//  Custom dependencies.\n\n\n\n\n\n\n\nconst imageTextRevealModule = {\n  metadata: image_reveal_module_namespaceObject,\n  conversionOutline: image_reveal_conversion_outline_conversionOutline,\n  renderers: {\n    edit: image_reveal_edit,\n    styles: image_reveal_module_styles_ModuleStyles\n  },\n  settings: {\n    content: image_reveal_settings_content,\n    design: image_reveal_settings_design,\n    advanced: image_reveal_settings_advanced\n  },\n  placeholderContent: {\n    reveal_text: {\n      innerContent: {\n        desktop: {\n          value: {\n            text: 'Reveal Text'\n          }\n        }\n      }\n    },\n    src: {\n      innerContent: {\n        desktop: {\n          value: 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTA4MCIgaGVpZ2h0PSI1NDAiIHZpZXdCb3g9IjAgMCAxMDgwIDU0MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPHBhdGggZmlsbD0iI0VCRUJFQiIgZD0iTTAgMGgxMDgwdjU0MEgweiIvPgogICAgICAgIDxwYXRoIGQ9Ik00NDUuNjQ5IDU0MGgtOTguOTk1TDE0NC42NDkgMzM3Ljk5NSAwIDQ4Mi42NDR2LTk4Ljk5NWwxMTYuMzY1LTExNi4zNjVjMTUuNjItMTUuNjIgNDAuOTQ3LTE1LjYyIDU2LjU2OCAwTDQ0NS42NSA1NDB6IiBmaWxsLW9wYWNpdHk9Ii4xIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgICAgICA8Y2lyY2xlIGZpbGwtb3BhY2l0eT0iLjA1IiBmaWxsPSIjMDAwIiBjeD0iMzMxIiBjeT0iMTQ4IiByPSI3MCIvPgogICAgICAgIDxwYXRoIGQ9Ik0xMDgwIDM3OXYxMTMuMTM3TDcyOC4xNjIgMTQwLjMgMzI4LjQ2MiA1NDBIMjE1LjMyNEw2OTkuODc4IDU1LjQ0NmMxNS42Mi0xNS42MiA0MC45NDgtMTUuNjIgNTYuNTY4IDBMMTA4MCAzNzl6IiBmaWxsLW9wYWNpdHk9Ii4yIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz4KICAgIDwvZz4KPC9zdmc+Cg=='\n        }\n      }\n    },\n    reveal_text_animation: {\n      innerContent: {\n        desktop: {\n          value: 'fadeIn'\n        }\n      }\n    },\n    always_center_on_mobile: {\n      innerContent: {\n        desktop: {\n          value: 'on'\n        }\n      }\n    },\n    dsm_duration_reveal_text: {\n      innerContent: {\n        desktop: {\n          value: '0.5s'\n        }\n      }\n    },\n    dsm_delay_reveal_text: {\n      innerContent: {\n        desktop: {\n          value: '0'\n        }\n      }\n    },\n    reveal_overlay_direction: {\n      innerContent: {\n        desktop: {\n          value: 'lr'\n        }\n      }\n    },\n    reveal_trigger: {\n      innerContent: {\n        desktop: {\n          value: 'hover'\n        }\n      }\n    },\n    show_in_lightbox: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    url_new_window: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    }\n  }\n};\n/* harmony default export */ const image_reveal = (imageTextRevealModule);\n;// ./packages/module-library/advanced-tabs/module.json\nconst advanced_tabs_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/advanced-tabs\",\"d4Shortcode\":\"dsm_advanced_tabs\",\"title\":\"Supreme Advanced Tabs\",\"titles\":\"Supreme Advanced Tabs\",\"category\":\"module\",\"moduleIcon\":\"divi-supreme/advanced-tabs\",\"childrenName\":[\"dsm/advanced-tabs-child\"],\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{}}}},\"tab_title\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-tab .dsm-title, {{selector}} .dsm-tab .dsm-title a\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-tab .dsm-title, {{selector}} .dsm-tab .dsm-title a\",\"hover\":\"{{selector}} .dsm-tab:hover .dsm-title, {{selector}} .dsm-tab:hover .dsm-title a\"}}}}},\"tab_subtitle\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-tab .dsm-tab-subtitle, {{selector}} .dsm-tab .dsm-tab-subtitle a\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"font\":{\"selectors\":{\"desktop\":{\"value\":\"{{selector}} .dsm-tab .dsm-tab-subtitle, {{selector}} .dsm-tab .dsm-tab-subtitle a\",\"hover\":\"{{selector}} .dsm-tab:hover .dsm-tab-subtitle, {{selector}} .dsm-tab:hover .dsm-tab-subtitle a\"}}}}},\"content_title\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-inner-content .dsm-title\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"tab_content_text\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-advanced-tabs-content-wrapper .dsm-content-wrapper .dsm-content\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_aria_label\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tabs_layout\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"horizontal\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tabs_horizontal_position\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"top\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tabs_vertical_position\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"left\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tabs_mobile_tablet_vertical_pos\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"top\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tabs_column_position\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"left\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tabs_mobile_tablet_column_pos\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"top\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_equal_height\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tabs_trigger\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"click\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_show_arrow\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_animation\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"none\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_inner_content_animation\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"none\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tabs_horizontal_alignment\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"left\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tabs_image_icon_placement\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"top\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_deep_link\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_anchor_scroll\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_lightbox_image\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tabs_sticky\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_stick_tabs_offset\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"88px\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_auto_scroll_mobile\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tabs_vertical_alignment\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"top\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_design_tab_tabs\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"inactive\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_design_tab_image_icon\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"inactive\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_design_content_font\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"title\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tabs_gap\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tabs_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tabs_active_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tabs_text_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tabs_active_text_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tabs_subtitle_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tabs_active_subtitle_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tabs_image_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tabs_icon_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tabs_icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tabs_active_icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tabs_wrapper_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tabs_wrapper_bg_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tabs_wrapper_alignment\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_image_icon_alignment\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_icon_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_image_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-advanced-tabs-content-wrapper .dsm-content-wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-advanced-tabs-content-wrapper .dsm-content-wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_image_icon_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup \",\"selector\":\"{{selector}} .dsm-content-wrapper .dsm-icon, {{selector}} .dsm-content-wrapper .dsm-image img\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_image_icon_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-content-wrapper .dsm-icon, {{selector}} .dsm-content-wrapper .dsm-image img\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tabs_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-advanced-tabs-wrapper .dsm-tab\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tabs_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-advanced-tabs-wrapper .dsm-tab\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tabs_image_icon_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-advanced-tabs-wrapper .dsm-tab .dsm_icon, {{selector}} .dsm-advanced-tabs-wrapper .dsm-tab .dsm-image\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tabs_image_icon_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-advanced-tabs-wrapper .dsm-tab .dsm_icon, {{selector}} .dsm-advanced-tabs-wrapper .dsm-tab .dsm-image\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tabs_wrapper_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-advanced-tabs-wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tabs_wrapper_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\"{{selector}} .dsm-advanced-tabs-wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"tabs_wrapper_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-advanced-tabs-wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-advanced-tabs-wrapper\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-advanced-tabs-wrapper\",\"useOverlay\":true}}},\"image_icon_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-advanced-tabs-wrapper .dsm-tab .dsm_icon, {{selector}} .dsm-advanced-tabs-wrapper .dsm-tab .dsm-image\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-advanced-tabs-wrapper .dsm-tab .dsm_icon, {{selector}} .dsm-advanced-tabs-wrapper .dsm-tab .dsm-image\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-advanced-tabs-wrapper .dsm-tab .dsm_icon, {{selector}} .dsm-advanced-tabs-wrapper .dsm-tab .dsm-image\",\"useOverlay\":true}}},\"content_image_icon_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-content-wrapper .dsm-icon, {{selector}} .dsm-content-wrapper .dsm-image img\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-content-wrapper .dsm-icon, {{selector}} .dsm-content-wrapper .dsm-image img\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-content-wrapper .dsm-icon, {{selector}} .dsm-content-wrapper .dsm-image img\",\"useOverlay\":true}}},\"tab_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-tab\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-tab\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-tab\",\"useOverlay\":true}}},\"active_tab_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-tab.dsm-active, {{selector}} .dsm-advanced-tabs-container .dsm-advanced-tabs-wrapper .dsm-tab:focus\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-tab.dsm-active, {{selector}} .dsm-advanced-tabs-container .dsm-advanced-tabs-wrapper .dsm-tab:focus\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-tab.dsm-active, {{selector}} .dsm-advanced-tabs-container .dsm-advanced-tabs-wrapper .dsm-tab:focus\",\"useOverlay\":true}}},\"content_style\":{\"type\":\"object\",\"selector\":\"{{selector}} .dsm-advanced-tabs-content-wrapper .dsm-content-wrapper\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\"{{selector}} .dsm-advanced-tabs-content-wrapper .dsm-content-wrapper\",\"important\":true},\"boxShadow\":{\"selector\":\"{{selector}} .dsm-advanced-tabs-content-wrapper .dsm-content-wrapper\",\"useOverlay\":true}}},\"button\":{\"type\":\"object\",\"selector\":\"{{selector}} .et_pb_button_module_wrapper .et_pb_button\",\"default\":{\"decoration\":{\"button\":{\"desktop\":{\"value\":{\"enable\":\"off\",\"icon\":{\"enable\":\"on\",\"onHover\":\"on\"}}}}}},\"elementType\":\"button\",\"styleProps\":{\"font\":{\"important\":{\"font\":{\"desktop\":{\"value\":{\"color\":true,\"font-size\":true,\"letter-spacing\":true}}}}},\"button\":{\"propertySelectors\":{\"desktop\":{\"value\":{\"text-align\":\"{{selector}} .et_pb_button_wrapper\"}}}},\"spacing\":{\"important\":true}}}}}');\n;// ./packages/module-library/advanced-tabs/conversion-outline.js\nconst advanced_tabs_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    // Keys must match D4 `get_advanced_fields_config()` border / box_shadow identifiers (e.g. `dsm_tabs_border`, `tabs_shadow`).\n    borders: {\n      default: 'module.decoration.border',\n      dsm_tabs_wrapper_border: 'tabs_wrapper_style.decoration.border',\n      dsm_image_icon_border: 'image_icon_style.decoration.border',\n      dsm_content_image_icon_border: 'content_image_icon_style.decoration.border',\n      dsm_tabs_border: 'tab_style.decoration.border',\n      dsm_active_tabs_border: 'active_tab_style.decoration.border',\n      dsm_content_border: 'content_style.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow',\n      tabs_wrapper_shadow: 'tabs_wrapper_style.decoration.boxShadow',\n      tabs_image_icon: 'image_icon_style.decoration.boxShadow',\n      content_image_icon: 'content_image_icon_style.decoration.boxShadow',\n      tabs_shadow: 'tab_style.decoration.boxShadow',\n      tab_active_shadow: 'active_tab_style.decoration.boxShadow',\n      content_shadow: 'content_style.decoration.boxShadow'\n    },\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    display_conditions: 'module.decoration.conditions',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    text_shadow: {\n      default: 'module.advanced.text.textShadow'\n    },\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    text: 'module.advanced.text',\n    fonts: {\n      tab_title: 'tab_title.decoration.font',\n      tab_subtitle: 'tab_subtitle.decoration.font',\n      content_title: 'content_title.decoration.font',\n      tab_content_text: 'tab_content_text.decoration.font'\n    },\n    margin_padding: 'module.decoration.spacing',\n    link_options: 'module.advanced.link',\n    button: {\n      button: 'button'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    content_title_level: 'content_title.decoration.font.font.*.headingLevel',\n    dsm_aria_label: 'dsm_aria_label.innerContent.*',\n    dsm_tabs_layout: 'dsm_tabs_layout.innerContent.*',\n    dsm_tabs_horizontal_position: 'dsm_tabs_horizontal_position.innerContent.*',\n    dsm_tabs_vertical_position: 'dsm_tabs_vertical_position.innerContent.*',\n    dsm_tabs_mobile_tablet_vertical_pos: 'dsm_tabs_mobile_tablet_vertical_pos.innerContent.*',\n    dsm_tabs_column_position: 'dsm_tabs_column_position.innerContent.*',\n    dsm_tabs_mobile_tablet_column_pos: 'dsm_tabs_mobile_tablet_column_pos.innerContent.*',\n    dsm_equal_height: 'dsm_equal_height.innerContent.*',\n    dsm_tabs_trigger: 'dsm_tabs_trigger.innerContent.*',\n    dsm_show_arrow: 'dsm_show_arrow.innerContent.*',\n    dsm_content_animation: 'dsm_content_animation.innerContent.*',\n    dsm_inner_content_animation: 'dsm_inner_content_animation.innerContent.*',\n    dsm_tabs_horizontal_alignment: 'dsm_tabs_horizontal_alignment.innerContent.*',\n    dsm_tabs_image_icon_placement: 'dsm_tabs_image_icon_placement.innerContent.*',\n    dsm_deep_link: 'dsm_deep_link.innerContent.*',\n    dsm_anchor_scroll: 'dsm_anchor_scroll.innerContent.*',\n    dsm_lightbox_image: 'dsm_lightbox_image.innerContent.*',\n    dsm_tabs_sticky: 'dsm_tabs_sticky.innerContent.*',\n    dsm_stick_tabs_offset: 'dsm_stick_tabs_offset.innerContent.*',\n    dsm_auto_scroll_mobile: 'dsm_auto_scroll_mobile.innerContent.*',\n    dsm_tabs_vertical_alignment: 'dsm_tabs_vertical_alignment.innerContent.*',\n    dsm_design_tab_tabs: 'dsm_design_tab_tabs.innerContent.*',\n    dsm_design_tab_image_icon: 'dsm_design_tab_image_icon.innerContent.*',\n    dsm_design_content_font: 'dsm_design_content_font.innerContent.*',\n    dsm_tabs_gap: 'dsm_tabs_gap.innerContent.*',\n    dsm_tabs_bg_color: 'dsm_tabs_bg_color.innerContent.*',\n    dsm_tabs_active_bg_color: 'dsm_tabs_active_bg_color.innerContent.*',\n    dsm_tabs_text_color: 'dsm_tabs_text_color.innerContent.*',\n    dsm_tabs_active_text_color: 'dsm_tabs_active_text_color.innerContent.*',\n    dsm_tabs_subtitle_color: 'dsm_tabs_subtitle_color.innerContent.*',\n    dsm_tabs_active_subtitle_color: 'dsm_tabs_active_subtitle_color.innerContent.*',\n    dsm_tabs_image_width: 'dsm_tabs_image_width.innerContent.*',\n    dsm_tabs_icon_size: 'dsm_tabs_icon_size.innerContent.*',\n    dsm_tabs_icon_color: 'dsm_tabs_icon_color.innerContent.*',\n    dsm_tabs_active_icon_color: 'dsm_tabs_active_icon_color.innerContent.*',\n    dsm_content_bg_color: 'dsm_content_bg_color.innerContent.*',\n    dsm_tabs_wrapper_width: 'dsm_tabs_wrapper_width.innerContent.*',\n    dsm_tabs_wrapper_bg_color: 'dsm_tabs_wrapper_bg_color.innerContent.*',\n    dsm_tabs_wrapper_alignment: 'dsm_tabs_wrapper_alignment.innerContent.*',\n    dsm_content_image_icon_alignment: 'dsm_content_image_icon_alignment.innerContent.*',\n    dsm_content_icon_size: 'dsm_content_icon_size.innerContent.*',\n    dsm_content_image_width: 'dsm_content_image_width.innerContent.*',\n    dsm_content_icon_color: 'dsm_content_icon_color.innerContent.*',\n    // D4 nested `image_icon` → `image_icon` margin_padding (label \"Tabs\"); ET uses prefix `image_icon_`.\n    image_icon_custom_margin: 'dsm_tabs_margin.decoration.spacing.*.margin',\n    image_icon_custom_padding: 'dsm_tabs_padding.decoration.spacing.*.padding',\n    dsm_tabs_margin: 'dsm_tabs_margin.decoration.spacing.*.margin',\n    dsm_tabs_padding: 'dsm_tabs_padding.decoration.spacing.*.padding',\n    dsm_tabs_wrapper_margin: 'dsm_tabs_wrapper_margin.decoration.spacing.*.margin',\n    dsm_tabs_wrapper_padding: 'dsm_tabs_wrapper_padding.decoration.spacing.*.padding',\n    dsm_tabs_image_icon_margin: 'dsm_tabs_image_icon_margin.decoration.spacing.*.margin',\n    dsm_tabs_image_icon_padding: 'dsm_tabs_image_icon_padding.decoration.spacing.*.padding',\n    dsm_content_margin: 'dsm_content_margin.decoration.spacing.*.margin',\n    dsm_content_padding: 'dsm_content_padding.decoration.spacing.*.padding',\n    dsm_content_image_icon_margin: 'dsm_content_image_icon_margin.decoration.spacing.*.margin',\n    dsm_content_image_icon_padding: 'dsm_content_image_icon_padding.decoration.spacing.*.padding',\n    button_alignment: 'button_alignment.innerContent.*',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    image_icon_custom_margin: 'convertSpacing',\n    image_icon_custom_padding: 'convertSpacing',\n    dsm_tabs_margin: 'convertSpacing',\n    dsm_tabs_padding: 'convertSpacing',\n    dsm_tabs_wrapper_margin: 'convertSpacing',\n    dsm_tabs_wrapper_padding: 'convertSpacing',\n    dsm_tabs_image_icon_margin: 'convertSpacing',\n    dsm_tabs_image_icon_padding: 'convertSpacing',\n    dsm_content_margin: 'convertSpacing',\n    dsm_content_padding: 'convertSpacing',\n    dsm_content_image_icon_margin: 'convertSpacing',\n    dsm_content_image_icon_padding: 'convertSpacing',\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/advanced-tabs/advanced-tabs-defaults-for-settings.js\n/**\n * D4-aligned innerContent defaults for Advanced Tabs — used only by\n * `settings-content.js` and `settings-design.js` (`defaultAttr` on `FieldContainer`).\n *\n * @package DiviSupreme\n */\n\n\nconst atTabsFd = {\n  dsm_aria_label: {\n    desktop: {\n      value: ''\n    }\n  },\n  dsm_tabs_layout: {\n    desktop: {\n      value: 'horizontal'\n    }\n  },\n  dsm_tabs_horizontal_position: {\n    desktop: {\n      value: 'top'\n    }\n  },\n  dsm_tabs_vertical_position: {\n    desktop: {\n      value: 'left'\n    }\n  },\n  dsm_tabs_column_position: {\n    desktop: {\n      value: 'left'\n    }\n  },\n  dsm_tabs_mobile_tablet_vertical_pos: {\n    desktop: {\n      value: 'top'\n    }\n  },\n  dsm_tabs_mobile_tablet_column_pos: {\n    desktop: {\n      value: 'top'\n    }\n  },\n  dsm_equal_height: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  dsm_tabs_trigger: {\n    desktop: {\n      value: 'click'\n    }\n  },\n  dsm_show_arrow: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  dsm_content_animation: {\n    desktop: {\n      value: 'none'\n    }\n  },\n  dsm_inner_content_animation: {\n    desktop: {\n      value: 'none'\n    }\n  },\n  dsm_tabs_horizontal_alignment: {\n    desktop: {\n      value: 'left'\n    }\n  },\n  dsm_tabs_image_icon_placement: {\n    desktop: {\n      value: 'top'\n    }\n  },\n  dsm_deep_link: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  dsm_anchor_scroll: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  dsm_lightbox_image: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  dsm_tabs_sticky: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  dsm_stick_tabs_offset: {\n    desktop: {\n      value: '88px'\n    }\n  },\n  dsm_auto_scroll_mobile: {\n    desktop: {\n      value: 'off'\n    }\n  },\n  dsm_tabs_vertical_alignment: {\n    desktop: {\n      value: 'top'\n    }\n  },\n  dsm_design_tab_tabs: {\n    desktop: {\n      value: 'inactive'\n    }\n  },\n  dsm_design_tab_image_icon: {\n    desktop: {\n      value: 'inactive'\n    }\n  },\n  /** Design → Content: Title vs body typography panel (VB only). */\n  dsm_design_content_font: {\n    desktop: {\n      value: 'title'\n    }\n  },\n  /** D4 inline gap examples use 5px; range has no single default in PHP. */\n  dsm_tabs_gap: {\n    desktop: {\n      value: '5px'\n    }\n  },\n  dsm_tabs_bg_color: {\n    desktop: {\n      value: '#f4f4f4'\n    }\n  },\n  dsm_tabs_active_bg_color: {\n    desktop: {\n      value: '#ffffff'\n    }\n  },\n  dsm_tabs_text_color: {\n    desktop: {\n      value: ''\n    }\n  },\n  dsm_tabs_active_text_color: {\n    desktop: {\n      value: ''\n    }\n  },\n  dsm_tabs_subtitle_color: {\n    desktop: {\n      value: ''\n    }\n  },\n  dsm_tabs_active_subtitle_color: {\n    desktop: {\n      value: ''\n    }\n  },\n  dsm_tabs_image_width: {\n    desktop: {\n      value: '40px'\n    }\n  },\n  dsm_tabs_icon_size: {\n    desktop: {\n      value: '32px'\n    }\n  },\n  dsm_tabs_icon_color: {\n    desktop: {\n      value: '#000000'\n    }\n  },\n  dsm_tabs_active_icon_color: {\n    desktop: {\n      value: '#444444'\n    }\n  },\n  dsm_content_bg_color: {\n    desktop: {\n      value: '#ffffff'\n    }\n  },\n  dsm_tabs_wrapper_width: {\n    desktop: {\n      value: ''\n    }\n  },\n  dsm_tabs_wrapper_bg_color: {\n    desktop: {\n      value: ''\n    }\n  },\n  dsm_tabs_wrapper_alignment: {\n    desktop: {\n      value: 'left'\n    }\n  },\n  dsm_content_image_icon_alignment: {\n    desktop: {\n      value: 'left'\n    }\n  },\n  dsm_content_icon_size: {\n    desktop: {\n      value: '32px'\n    }\n  },\n  dsm_content_image_width: {\n    desktop: {\n      value: ''\n    }\n  },\n  dsm_content_icon_color: {\n    desktop: {\n      value: '#000000'\n    }\n  },\n  button_alignment: {\n    desktop: {\n      value: 'left'\n    }\n  }\n};\n\n/**\n * Layout for settings visibility. Call once per settings panel render (uses hooks via `getAttrByMode`).\n *\n * @param {Object|null|undefined} attrs Module attrs from the settings panel.\n * @return {string} `horizontal` | `vertical` | `column`\n */\nfunction getAdvancedTabsLayoutForUi(attrs) {\n  const inner = attrs?.dsm_tabs_layout?.innerContent;\n  if (inner == null || typeof inner !== 'object') {\n    return atTabsFd.dsm_tabs_layout.desktop.value;\n  }\n  try {\n    const byMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(inner);\n    if (typeof byMode === 'string' && byMode !== '') {\n      return byMode;\n    }\n  } catch {\n    // Transient invalid innerContent during layout toggle.\n  }\n  const desktop = inner.desktop?.value;\n  if (typeof desktop === 'string' && desktop !== '') {\n    return desktop;\n  }\n  return atTabsFd.dsm_tabs_layout.desktop.value;\n}\n;// ./packages/module-library/advanced-tabs/settings-content.js\n\n// Wordpress dependencies.\n\n\n// Divi package dependencies.\n\n\n\n\n\n\n\nfunction advanced_tabs_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  const tabsLayout = getAdvancedTabsLayoutForUi(attrs);\n  const horizontalPosition = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_tabs_horizontal_position?.innerContent);\n  const tabsSticky = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_tabs_sticky?.innerContent);\n  const dsmDeepLink = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_deep_link?.innerContent);\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(ChildDraggableModuleList, {\n    childModuleName: \"dsm/advanced-tabs-child\",\n    addTitle: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Add New Item', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"general\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Settings', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_aria_label.innerContent\",\n    defaultAttr: atTabsFd.dsm_aria_label,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Aria Label', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Accessible name for the tab list, announced by screen readers. Use when the default label is not clear enough.', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tabs_layout.innerContent\",\n    defaultAttr: atTabsFd.dsm_tabs_layout,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Layout', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      horizontal: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Horizontal', 'dsm-supreme-modules-pro-for-divi')\n      },\n      vertical: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Vertical', 'dsm-supreme-modules-pro-for-divi')\n      },\n      column: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Column', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tabs_horizontal_position.innerContent\",\n    defaultAttr: atTabsFd.dsm_tabs_horizontal_position,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Position', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'horizontal' === tabsLayout\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      top: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tabs_vertical_position.innerContent\",\n    defaultAttr: atTabsFd.dsm_tabs_vertical_position,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Position', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'vertical' === tabsLayout\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tabs_column_position.innerContent\",\n    defaultAttr: atTabsFd.dsm_tabs_column_position,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Position', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'column' === tabsLayout\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tabs_mobile_tablet_vertical_pos.innerContent\",\n    defaultAttr: atTabsFd.dsm_tabs_mobile_tablet_vertical_pos,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Mobile/Tablet Position', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'vertical' === tabsLayout\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      top: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tabs_mobile_tablet_column_pos.innerContent\",\n    defaultAttr: atTabsFd.dsm_tabs_mobile_tablet_column_pos,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Mobile/Tablet Position', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'column' === tabsLayout\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      top: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_equal_height.innerContent\",\n    defaultAttr: atTabsFd.dsm_equal_height,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Equal Height', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'vertical' === tabsLayout\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tabs_trigger.innerContent\",\n    defaultAttr: atTabsFd.dsm_tabs_trigger,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Trigger', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      click: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Click', 'dsm-supreme-modules-pro-for-divi')\n      },\n      hover: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hover', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_show_arrow.innerContent\",\n    defaultAttr: atTabsFd.dsm_show_arrow,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Show Arrow For Active Tab', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content_animation.innerContent\",\n    defaultAttr: atTabsFd.dsm_content_animation,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content Animation', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      none: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('None', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeIn: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeInDown: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Down', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeInDownBig: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Down Big', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeInLeft: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeInLeftBig: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Left Big', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeInRight: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeInRightBig: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Right Big', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeInDown: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Down', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeInDownBig: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Down Big', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeInUp: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Up', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeInUpBig: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Up Big', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bounce: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bounce', 'dsm-supreme-modules-pro-for-divi')\n      },\n      flash: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Flash', 'dsm-supreme-modules-pro-for-divi')\n      },\n      pulse: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pulse', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rubberBand: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rubber Band', 'dsm-supreme-modules-pro-for-divi')\n      },\n      shake: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shake', 'dsm-supreme-modules-pro-for-divi')\n      },\n      swing: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Swing', 'dsm-supreme-modules-pro-for-divi')\n      },\n      tada: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tada', 'dsm-supreme-modules-pro-for-divi')\n      },\n      wobble: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Wobble', 'dsm-supreme-modules-pro-for-divi')\n      },\n      jello: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Jello', 'dsm-supreme-modules-pro-for-divi')\n      },\n      lightSpeedIn: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Light Speed In', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rollIn: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Roll In', 'dsm-supreme-modules-pro-for-divi')\n      },\n      hinge: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hinge', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bounceIn: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('bounceIn', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bounceInDown: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('bounceInDown', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bounceInLeft: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('bounceInLeft', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bounceInRight: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('bounceInRight', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bounceInUp: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('bounceInUp', 'dsm-supreme-modules-pro-for-divi')\n      },\n      slideInUp: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide In Up', 'dsm-supreme-modules-pro-for-divi')\n      },\n      slideInDown: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide In Down', 'dsm-supreme-modules-pro-for-divi')\n      },\n      slideInLeft: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide In Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      slideInRight: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide In Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      flip: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Flip', 'dsm-supreme-modules-pro-for-divi')\n      },\n      flipInX: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Flip In X', 'dsm-supreme-modules-pro-for-divi')\n      },\n      flipInY: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Flip In Y', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rotateIn: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rotate In', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rotateInDownLeft: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rotate In Down Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rotateInDownRight: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rotate In Down Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rotateInUpLeft: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rotate In Up Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rotateInUpRight: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rotate In Up Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zoomIn: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom In', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zoomInDown: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom In Down', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zoomInLeft: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom In Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zoomInRight: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom In Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zoomInUp: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zoomInDown: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom In Up', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_inner_content_animation.innerContent\",\n    defaultAttr: atTabsFd.dsm_inner_content_animation,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inner Content Animation', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      none: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('None', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeIn: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeInDown: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Down', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeInDownBig: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Down Big', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeInLeft: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeInLeftBig: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Left Big', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeInRight: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeInRightBig: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Right Big', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeInDown: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Down', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeInDownBig: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Down Big', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeInUp: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Up', 'dsm-supreme-modules-pro-for-divi')\n      },\n      fadeInUpBig: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Fade In Up Big', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bounce: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bounce', 'dsm-supreme-modules-pro-for-divi')\n      },\n      flash: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Flash', 'dsm-supreme-modules-pro-for-divi')\n      },\n      pulse: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Pulse', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rubberBand: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rubber Band', 'dsm-supreme-modules-pro-for-divi')\n      },\n      shake: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shake', 'dsm-supreme-modules-pro-for-divi')\n      },\n      swing: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Swing', 'dsm-supreme-modules-pro-for-divi')\n      },\n      tada: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tada', 'dsm-supreme-modules-pro-for-divi')\n      },\n      wobble: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Wobble', 'dsm-supreme-modules-pro-for-divi')\n      },\n      jello: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Jello', 'dsm-supreme-modules-pro-for-divi')\n      },\n      lightSpeedIn: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Light Speed In', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rollIn: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Roll In', 'dsm-supreme-modules-pro-for-divi')\n      },\n      hinge: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Hinge', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bounceIn: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('bounceIn', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bounceInDown: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('bounceInDown', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bounceInLeft: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('bounceInLeft', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bounceInRight: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('bounceInRight', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bounceInUp: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('bounceInUp', 'dsm-supreme-modules-pro-for-divi')\n      },\n      slideInUp: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide In Up', 'dsm-supreme-modules-pro-for-divi')\n      },\n      slideInDown: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide In Down', 'dsm-supreme-modules-pro-for-divi')\n      },\n      slideInLeft: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide In Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      slideInRight: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Slide In Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      flip: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Flip', 'dsm-supreme-modules-pro-for-divi')\n      },\n      flipInX: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Flip In X', 'dsm-supreme-modules-pro-for-divi')\n      },\n      flipInY: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Flip In Y', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rotateIn: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rotate In', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rotateInDownLeft: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rotate In Down Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rotateInDownRight: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rotate In Down Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rotateInUpLeft: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rotate In Up Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      rotateInUpRight: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Rotate In Up Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zoomIn: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom In', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zoomInDown: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom In Down', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zoomInLeft: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom In Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zoomInRight: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom In Right', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zoomInUp: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom', 'dsm-supreme-modules-pro-for-divi')\n      },\n      zoomInDown: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Zoom In Up', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tabs_horizontal_alignment.innerContent\",\n    defaultAttr: atTabsFd.dsm_tabs_horizontal_alignment,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tabs Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'horizontal' === tabsLayout\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tabs_image_icon_placement.innerContent\",\n    defaultAttr: atTabsFd.dsm_tabs_image_icon_placement,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tabs Image/Icon Placement', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      top: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top', 'dsm-supreme-modules-pro-for-divi')\n      },\n      left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left', 'dsm-supreme-modules-pro-for-divi')\n      },\n      right: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Right', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_deep_link.innerContent\",\n    defaultAttr: atTabsFd.dsm_deep_link,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enable Deep Link', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_anchor_scroll.innerContent\",\n    defaultAttr: atTabsFd.dsm_anchor_scroll,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enable Anchor Scroll', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('If enabled, you can create an anchor scroll to open the tab.', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmDeepLink\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_lightbox_image.innerContent\",\n    defaultAttr: atTabsFd.dsm_lightbox_image,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Enable Image Lightbox', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tabs_sticky.innerContent\",\n    defaultAttr: atTabsFd.dsm_tabs_sticky,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Make Stick Tabs On Top', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'horizontal' === tabsLayout && 'top' === horizontalPosition || null === tabsLayout && null === horizontalPosition\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_stick_tabs_offset.innerContent\",\n    defaultAttr: atTabsFd.dsm_stick_tabs_offset,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Stick Tabs Offset', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'horizontal' === tabsLayout && 'top' === horizontalPosition && 'on' === tabsSticky\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 1000,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_auto_scroll_mobile.innerContent\",\n    defaultAttr: atTabsFd.dsm_auto_scroll_mobile,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Auto Scroll On Mobile', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tabs_vertical_alignment.innerContent\",\n    defaultAttr: atTabsFd.dsm_tabs_vertical_alignment,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tabs Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'vertical' === tabsLayout\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      top: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top', 'dsm-supreme-modules-pro-for-divi')\n      },\n      center: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Center', 'dsm-supreme-modules-pro-for-divi')\n      },\n      bottom: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Bottom', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: defaultSettingsAttrs?.adminLabel\n  }));\n}\n/* harmony default export */ const advanced_tabs_settings_content = (advanced_tabs_settings_content_SettingsContent);\n;// ./packages/module-library/advanced-tabs/settings-design.js\n\n// Wordpress dependencies.\n\n// Divi package dependencies.\n\n\n\n\n\nconst inactiveActiveTabOptions = {\n  inactive: {\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inactive', 'dsm-supreme-modules-pro-for-divi')\n  },\n  active: {\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Active', 'dsm-supreme-modules-pro-for-divi')\n  }\n};\nconst contentFontPanelOptions = {\n  title: {\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi')\n  },\n  content: {\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi')\n  }\n};\nfunction advanced_tabs_settings_design_SettingsDesign({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  var _getAttrByMode, _getAttrByMode2, _getAttrByMode3, _defaultSettingsAttrs;\n  const dsmTabsLayout = getAdvancedTabsLayoutForUi(attrs);\n  const tabsStyleTab = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_design_tab_tabs?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'inactive';\n  const imageIconStyleTab = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_design_tab_image_icon?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : 'inactive';\n  const contentFontPanel = (_getAttrByMode3 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_design_content_font?.innerContent)) !== null && _getAttrByMode3 !== void 0 ? _getAttrByMode3 : 'title';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"tabs_wrapper\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tabs Wrapper', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tabs_wrapper_width.innerContent\",\n    defaultAttr: atTabsFd.dsm_tabs_wrapper_width,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Width', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'column' !== dsmTabsLayout\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    step: 1,\n    defaultUnit: '%'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_tabs_wrapper_margin.decoration.spacing\",\n    fields: {\n      padding: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_tabs_wrapper_padding.decoration.spacing\",\n    fields: {\n      margin: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tabs_wrapper_bg_color.innerContent\",\n    defaultAttr: atTabsFd.dsm_tabs_wrapper_bg_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    key: `dsm-tabs-wrapper-alignment-${dsmTabsLayout}`,\n    attrName: \"dsm_tabs_wrapper_alignment.innerContent\",\n    defaultAttr: atTabsFd.dsm_tabs_wrapper_alignment,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tabs Wrapper Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'horizontal' === dsmTabsLayout,\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"tabs_wrapper_style.decoration.border\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tabs Wrapper', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"tabs_wrapper_style.decoration.boxShadow\",\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"tab_row\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tab labels', 'dsm-supreme-modules-pro-for-divi'),\n    defaultOpened: true\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"tab_row_title_appearance\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title & appearance', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tabs_gap.innerContent\",\n    defaultAttr: atTabsFd.dsm_tabs_gap,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Gap', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    step: 1,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_design_tab_tabs.innerContent\",\n    defaultAttr: atTabsFd.dsm_design_tab_tabs,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tab appearance', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: inactiveActiveTabOptions,\n    tabUi: true,\n    showLabel: true\n  })), 'inactive' === tabsStyleTab && /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tabs_bg_color.innerContent\",\n    defaultAttr: atTabsFd.dsm_tabs_bg_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tabs_text_color.innerContent\",\n    defaultAttr: atTabsFd.dsm_tabs_text_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title Color', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tabs_subtitle_color.innerContent\",\n    defaultAttr: atTabsFd.dsm_tabs_subtitle_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Subtitle Color', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"tab_style.decoration.border\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tabs', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"tab_style.decoration.boxShadow\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tabs', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  })), 'active' === tabsStyleTab && /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tabs_active_bg_color.innerContent\",\n    defaultAttr: atTabsFd.dsm_tabs_active_bg_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tabs_active_text_color.innerContent\",\n    defaultAttr: atTabsFd.dsm_tabs_active_text_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title Color', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tabs_active_subtitle_color.innerContent\",\n    defaultAttr: atTabsFd.dsm_tabs_active_subtitle_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Subtitle Color', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"active_tab_style.decoration.border\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Active Tabs', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"active_tab_style.decoration.boxShadow\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Active Tabs', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"tab_title.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tab title', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_tabs_margin.decoration.spacing\",\n    fields: {\n      padding: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_tabs_padding.decoration.spacing\",\n    fields: {\n      margin: {\n        render: false\n      }\n    },\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"tab_row_subtitle\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Subtitle', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"tab_subtitle.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Subtitle', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"tab_row_image_icon\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tab image & icon', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tabs_image_width.innerContent\",\n    defaultAttr: atTabsFd.dsm_tabs_image_width,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Width', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 120,\n    step: 1,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tabs_icon_size.innerContent\",\n    defaultAttr: atTabsFd.dsm_tabs_icon_size,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Font Size', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    step: 1,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_design_tab_image_icon.innerContent\",\n    defaultAttr: atTabsFd.dsm_design_tab_image_icon,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon colors', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: inactiveActiveTabOptions,\n    tabUi: true,\n    showLabel: true\n  })), 'inactive' === imageIconStyleTab && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tabs_icon_color.innerContent\",\n    defaultAttr: atTabsFd.dsm_tabs_icon_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Color', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), 'active' === imageIconStyleTab && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tabs_active_icon_color.innerContent\",\n    defaultAttr: atTabsFd.dsm_tabs_active_icon_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Active Icon Color', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_tabs_image_icon_margin.decoration.spacing\",\n    fields: {\n      padding: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_tabs_image_icon_padding.decoration.spacing\",\n    fields: {\n      margin: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"image_icon_style.decoration.border\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image/Icon', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"image_icon_style.decoration.boxShadow\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image/Icon', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"content_image_icon\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content area image & icon', 'dsm-supreme-modules-pro-for-divi'),\n    defaultOpened: true\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"content_image_layout\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Layout & sizing', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content_image_icon_alignment.innerContent\",\n    defaultAttr: atTabsFd.dsm_content_image_icon_alignment,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Align the image or icon inside the content area.', 'dsm-supreme-modules-pro-for-divi'),\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content_image_width.innerContent\",\n    defaultAttr: atTabsFd.dsm_content_image_width,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image width', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    step: 1,\n    defaultUnit: '%'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content_icon_size.innerContent\",\n    defaultAttr: atTabsFd.dsm_content_icon_size,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon size', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    step: 1,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content_icon_color.innerContent\",\n    defaultAttr: atTabsFd.dsm_content_icon_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon color', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"content_image_spacing\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Spacing', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_content_image_icon_margin.decoration.spacing\",\n    fields: {\n      padding: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_content_image_icon_padding.decoration.spacing\",\n    fields: {\n      margin: {\n        render: false\n      }\n    },\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"content_image_border_shadow\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Border & shadow', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"content_image_icon_style.decoration.border\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image / icon', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"content_image_icon_style.decoration.boxShadow\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image / icon', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi'),\n    defaultOpened: true\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"content_panel\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content panel', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content_bg_color.innerContent\",\n    defaultAttr: atTabsFd.dsm_content_bg_color,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Background', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_content_margin.decoration.spacing\",\n    fields: {\n      padding: {\n        render: false\n      }\n    },\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_content_padding.decoration.spacing\",\n    fields: {\n      margin: {\n        render: false\n      }\n    },\n    grouped: false\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"content_typography\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Typography', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_design_content_font.innerContent\",\n    defaultAttr: atTabsFd.dsm_design_content_font,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Style', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Choose whether to edit the content title or body text.', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: contentFontPanelOptions,\n    tabUi: true,\n    showLabel: true\n  })), 'title' === contentFontPanel && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"content_title.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: true\n      }\n    }\n  }), 'content' === contentFontPanel && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"tab_content_text.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Body text', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"content_border_shadow\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Border & shadow', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"content_style.decoration.border\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content panel', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"content_style.decoration.boxShadow\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content panel', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"button\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ButtonGroupContainer, {\n    attrName: \"button\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi'),\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi'),\n    defaultGroupAttr: (_defaultSettingsAttrs = defaultSettingsAttrs?.button?.decoration?.asMutable({\n      deep: true\n    })) !== null && _defaultSettingsAttrs !== void 0 ? _defaultSettingsAttrs : {},\n    grouped: false,\n    fields: {\n      alignment: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_alignment.innerContent\",\n    defaultAttr: atTabsFd.button_alignment,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SizingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AnimationGroup, null));\n}\n/* harmony default export */ const advanced_tabs_settings_design = (advanced_tabs_settings_design_SettingsDesign);\n;// ./packages/module-library/advanced-tabs/settings-advanced.js\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\nfunction advanced_tabs_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_advanced_tabs\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const advanced_tabs_settings_advanced = (advanced_tabs_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/advanced-tabs/module-styles.js\n\n\n\n\n/**\n * Read `innerContent` scalar without hooks (safe inside CommonStyle `declarationFunction`).\n *\n * @param {Object|null|undefined} innerContent Attribute innerContent tree.\n * @param {string|undefined}        breakpoint   Style pass breakpoint (`desktop`, `tablet`, …).\n * @param {string}                  fallback     When unset.\n * @return {string}\n */\nfunction readInnerContentScalar(innerContent, breakpoint, fallback = '') {\n  if (innerContent == null || typeof innerContent !== 'object') {\n    return fallback;\n  }\n  const bp = typeof breakpoint === 'string' && breakpoint !== '' ? breakpoint : 'desktop';\n  const fromBp = innerContent[bp]?.value;\n  if (fromBp !== undefined && fromBp !== null && fromBp !== '') {\n    if (typeof fromBp === 'string') {\n      return fromBp;\n    }\n    if (typeof fromBp === 'number') {\n      return String(fromBp);\n    }\n  }\n  const desktop = innerContent.desktop?.value;\n  if (desktop !== undefined && desktop !== null && desktop !== '') {\n    if (typeof desktop === 'string') {\n      return desktop;\n    }\n    if (typeof desktop === 'number') {\n      return String(desktop);\n    }\n  }\n  return fallback;\n}\n\n/**\n * Resolve layout for style callbacks (breakpoint leaf + desktop fallback).\n *\n * @param {Object|null|undefined} attrs      Module attrs.\n * @param {string|undefined}        breakpoint Style pass breakpoint.\n * @return {string}\n */\nfunction resolveTabsLayout(attrs, breakpoint) {\n  return readInnerContentScalar(attrs?.dsm_tabs_layout?.innerContent, breakpoint, 'horizontal');\n}\n\n/**\n * Desktop-only `dsm_tabs_layout` value for Mobile/Tablet stack `order` rules.\n * Do not use {@link getAttrByMode} here: during tablet/phone style passes it can disagree\n * with the layout control visibility (desktop vertical/column) or trigger edge-case errors.\n *\n * @param {Object|null|undefined} attrs Module attrs.\n * @return {string}\n */\nfunction resolveTabsLayoutForMobileStack(attrs) {\n  const v = attrs?.dsm_tabs_layout?.innerContent?.desktop?.value;\n  return typeof v === 'string' && v !== '' ? v : 'horizontal';\n}\n\n/**\n * @param {Object|null|undefined} attrs      Module attrs.\n * @param {string|undefined}        breakpoint Style pass breakpoint.\n * @return {string}\n */\nfunction resolveTabsWrapperAlignment(attrs, breakpoint) {\n  return readInnerContentScalar(attrs?.dsm_tabs_wrapper_alignment?.innerContent, breakpoint, 'left');\n}\n\n/**\n * RangeContainer / innerContent value → CSS width string for `flex: 0 0 …`.\n *\n * @param {*} raw Raw `attrValue` or `innerContent.*.value`.\n * @return {string} Empty when not usable.\n */\nfunction normalizeTabsWrapperWidthValue(raw) {\n  if (null == raw || '' === raw) {\n    return '';\n  }\n  if ('string' === typeof raw || 'number' === typeof raw) {\n    return String(raw).trim();\n  }\n  if ('object' === typeof raw && raw !== null && Object.prototype.hasOwnProperty.call(raw, 'value')) {\n    const v = raw.value;\n    if (null == v || '' === v) {\n      return '';\n    }\n    return String(v).trim();\n  }\n  return '';\n}\n\n/**\n * React function component for rendering module style.\n */\n\n/**\n * Horizontal layout only: align the tab strip (`.dsm-advanced-tabs-wrapper`) on the cross axis of the\n * column flex parent (`.dsm-advanced-tabs-container.dsm-tabs-horizontal`). Margins alone are not enough\n * when the wrapper is `align-items: stretch` (full width); use `align-self` for left/center/right.\n *\n * @param {Object} attrs Module attrs.\n * @return {(attr: { attrValue?: string }) => string} Declaration callback for CommonStyle.\n */\nconst buildTabWrapperAlignCss = attrs => attr => {\n  const layout = resolveTabsLayout(attrs, attr?.breakpoint);\n  if ('horizontal' !== layout) {\n    return '';\n  }\n  const align = resolveTabsWrapperAlignment(attrs, attr?.breakpoint);\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'align-self': true,\n      'margin-left': true,\n      'margin-right': true\n    }\n  });\n  if ('left' === align) {\n    declarations.add('align-self', 'flex-start');\n    declarations.add('margin-left', '0');\n    declarations.add('margin-right', 'auto');\n    return declarations.value;\n  }\n  if ('center' === align) {\n    declarations.add('align-self', 'center');\n    declarations.add('margin-left', 'auto');\n    declarations.add('margin-right', 'auto');\n    return declarations.value;\n  }\n  if ('right' === align) {\n    declarations.add('align-self', 'flex-end');\n    declarations.add('margin-left', 'auto');\n    return declarations.value;\n  }\n  return declarations.value;\n};\nconst tabHorizontalPositionCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      order: true\n    }\n  });\n  if ('bottom' === attrValue) {\n    declarations.add('order', '-1');\n  }\n  return declarations.value;\n};\n\n/**\n * Horizontal tab row alignment (justify-content). Scoped to horizontal layout only.\n *\n * @param {Object} attrs Module attrs.\n * @return {(attr: { attrValue?: string, breakpoint?: string }) => string} Declaration callback for CommonStyle.\n */\nconst buildTabsHorizontalAlignmentCss = attrs => attr => {\n  const layout = resolveTabsLayout(attrs, attr?.breakpoint);\n  if ('horizontal' !== layout) {\n    return '';\n  }\n  const align = (typeof attr?.attrValue === 'string' && attr.attrValue !== '' ? attr.attrValue : readInnerContentScalar(attrs?.dsm_tabs_horizontal_alignment?.innerContent, attr?.breakpoint, 'left')) || 'left';\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'justify-content': true\n    }\n  });\n  if ('left' === align) {\n    declarations.add('justify-content', 'flex-start');\n  } else if ('center' === align) {\n    declarations.add('justify-content', 'center');\n  } else if ('right' === align) {\n    declarations.add('justify-content', 'flex-end');\n  }\n  return declarations.value;\n};\n\n/**\n * Vertical layout: tab column width (`flex: 0 0 <width>`). Matches PHP `tabs_vertical_width_declaration`.\n * Avoids `getAttrByMode` (can throw during responsive/drag updates). Range values may be `{ value }` objects.\n *\n * @param {Object} attrs Module attrs.\n * @return {(attr: { attrValue?: * }) => string} Declaration callback for CommonStyle.\n */\nconst buildTabsVerticalWidthCss = attrs => attr => {\n  var _ref, _ref2, _attr$attrValue;\n  if ('vertical' !== resolveTabsLayoutForMobileStack(attrs)) {\n    return '';\n  }\n  const innerW = attrs?.dsm_tabs_wrapper_width?.innerContent;\n  const bp = attr?.breakpoint;\n  const fromBreakpoint = bp && innerW && typeof innerW === 'object' && innerW[bp]?.value !== undefined && innerW[bp]?.value !== null ? innerW[bp].value : undefined;\n  const raw = (_ref = (_ref2 = (_attr$attrValue = attr?.attrValue) !== null && _attr$attrValue !== void 0 ? _attr$attrValue : fromBreakpoint) !== null && _ref2 !== void 0 ? _ref2 : innerW?.desktop?.value) !== null && _ref !== void 0 ? _ref : '';\n  const width = normalizeTabsWrapperWidthValue(raw);\n  if (!width) {\n    return '';\n  }\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      flex: true\n    }\n  });\n  declarations.add('flex', `0 0 ${width}`);\n  return declarations.value;\n};\n\n/**\n * Vertical layout: top / center / bottom tab stack via `justify-content` on the column flex container.\n * Matches PHP `tabs_vertical_alignment_declaration`: always emits `justify-content` with a safe default.\n * Avoids `getAttrByMode` on layout (can throw or mis-resolve during responsive style passes).\n *\n * @param {Object} attrs Module attrs.\n * @return {(attr: { attrValue?: string }) => string} Declaration callback for CommonStyle.\n */\nconst buildTabsVerticalAlignmentCss = attrs => attr => {\n  var _ref3, _ref4, _attr$attrValue2;\n  if ('vertical' !== resolveTabsLayoutForMobileStack(attrs)) {\n    return '';\n  }\n  const innerAlign = attrs?.dsm_tabs_vertical_alignment?.innerContent;\n  const bp = attr?.breakpoint;\n  const fromBreakpoint = bp && innerAlign && typeof innerAlign === 'object' && innerAlign[bp]?.value !== undefined && innerAlign[bp]?.value !== null ? innerAlign[bp].value : undefined;\n  const raw = (_ref3 = (_ref4 = (_attr$attrValue2 = attr?.attrValue) !== null && _attr$attrValue2 !== void 0 ? _attr$attrValue2 : fromBreakpoint) !== null && _ref4 !== void 0 ? _ref4 : innerAlign?.desktop?.value) !== null && _ref3 !== void 0 ? _ref3 : 'top';\n  const align = typeof raw === 'string' && raw !== '' ? raw : typeof raw === 'number' ? String(raw) : 'top';\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'justify-content': true\n    }\n  });\n  let justify = 'flex-start';\n  if ('center' === align) {\n    justify = 'center';\n  } else if ('bottom' === align) {\n    justify = 'flex-end';\n  }\n  // `top`, legacy `left`, or unknown → flex-start (matches PHP default case).\n\n  declarations.add('justify-content', justify);\n  return declarations.value;\n};\nconst advanced_tabs_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'tab_title'\n  }), elements.style({\n    attrName: 'dsm_tabs_margin'\n  }), elements.style({\n    attrName: 'dsm_tabs_padding'\n  }), elements.style({\n    attrName: 'tab_style'\n  }), elements.style({\n    attrName: 'active_tab_style'\n  }), elements.style({\n    attrName: 'content_style'\n  }), elements.style({\n    attrName: 'dsm_content_margin'\n  }), elements.style({\n    attrName: 'dsm_content_padding'\n  }), elements.style({\n    attrName: 'content_title'\n  }), elements.style({\n    attrName: 'tab_content_text'\n  }), elements.style({\n    attrName: 'tab_subtitle'\n  }), elements.style({\n    attrName: 'dsm_tabs_image_icon_margin'\n  }), elements.style({\n    attrName: 'dsm_tabs_image_icon_padding'\n  }), elements.style({\n    attrName: 'image_icon_style'\n  }), elements.style({\n    attrName: 'dsm_content_image_icon_margin'\n  }), elements.style({\n    attrName: 'dsm_content_image_icon_padding'\n  }), elements.style({\n    attrName: 'button'\n  }), elements.style({\n    attrName: 'content_image_icon_style'\n  }), elements.style({\n    attrName: 'tabs_wrapper_style'\n  }), elements.style({\n    attrName: 'dsm_tabs_wrapper_margin'\n  }), elements.style({\n    attrName: 'dsm_tabs_wrapper_padding'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-tab`,\n    attr: attrs?.dsm_tabs_bg_color?.innerContent,\n    property: \"background\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-tab:hover`,\n    attr: attrs?.tabs_background_color_hover?.innerContent,\n    property: \"background\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-tab.dsm-active`,\n    attr: attrs?.dsm_tabs_active_bg_color?.innerContent,\n    property: \"background\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-tab.dsm-active:hover`,\n    attr: attrs?.tabs_active_background_color_hover?.innerContent,\n    property: \"background\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-tab .dsm-title, ${orderClass} .dsm-tab .dsm-title a`,\n    attr: attrs?.dsm_tabs_text_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm-tab .dsm-tab-subtitle, ${orderClass} .dsm-tab .dsm-tab-subtitle a`,\n    attr: attrs?.dsm_tabs_subtitle_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm-tab.dsm-active .dsm-tab-subtitle, ${orderClass} .dsm-tab.dsm-active .dsm-tab-subtitle a`,\n    attr: attrs?.dsm_tabs_active_subtitle_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-tab.dsm-active .dsm-title, ${orderClass} .dsm-tab.dsm-active .dsm-title a, ${orderClass} .dsm-tab.dsm-active .dsm-tab-subtitle, ${orderClass} .dsm-tab.dsm-active .dsm-tab-subtitle a`,\n    attr: attrs?.dsm_tabs_active_text_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-advanced-tabs-wrapper`,\n    attr: attrs?.dsm_tabs_gap?.innerContent,\n    property: \"gap\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-content-wrapper`,\n    attr: attrs?.dsm_content_bg_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-tab .dsm-image img`,\n    attr: attrs?.dsm_content_bg_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-advanced-tabs-wrapper`,\n    attr: attrs?.dsm_tabs_wrapper_bg_color?.innerContent,\n    property: \"background-color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-advanced-tabs-container.dsm-tabs-horizontal .dsm-advanced-tabs-wrapper, ${orderClass} .dsm-advanced-tabs-container.dsm-tabs-column .dsm-advanced-tabs-wrapper`,\n    attr: attrs?.dsm_tabs_wrapper_width?.innerContent,\n    property: \"width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-advanced-tabs-wrapper .dsm-icon-wrapper .dsm_icon, ${orderClass} .dsm-advanced-tabs-wrapper .dsm-active-icon-wrapper .dsm-active-icon`,\n    attr: attrs?.dsm_tabs_icon_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-advanced-tabs-wrapper .dsm-icon-wrapper .dsm_icon`,\n    attr: attrs?.dsm_tabs_icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-advanced-tabs-wrapper .dsm-tab.dsm-active .dsm-active-icon-wrapper .dsm-active-icon, ${orderClass} .dsm-advanced-tabs-wrapper .dsm-tab.dsm-active .dsm-active-icon-wrapper .dsm-active-icon::before, ${orderClass} .dsm-advanced-tabs-wrapper .dsm-tab.dsm-active .dsm-icon-wrapper .dsm_icon, ${orderClass} .dsm-advanced-tabs-wrapper .dsm-tab.dsm-active .dsm-icon-wrapper .dsm_icon::before`,\n    attr: attrs?.dsm_tabs_active_icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-advanced-tabs-container.dsm-tabs-horizontal .dsm-advanced-tabs-wrapper`,\n    attr: attrs?.dsm_tabs_wrapper_alignment?.innerContent,\n    declarationFunction: buildTabWrapperAlignCss(attrs)\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-advanced-tabs-container.dsm-tabs-horizontal .dsm-advanced-tabs-content-wrapper`,\n    attr: attrs?.dsm_tabs_horizontal_position?.innerContent,\n    declarationFunction: tabHorizontalPositionCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-advanced-tabs-container.dsm-tabs-horizontal .dsm-advanced-tabs-wrapper`,\n    attr: attrs?.dsm_tabs_horizontal_alignment?.innerContent,\n    declarationFunction: buildTabsHorizontalAlignmentCss(attrs)\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-advanced-tabs-container.dsm-tabs-vertical .dsm-advanced-tabs-wrapper`,\n    attr: attrs?.dsm_tabs_wrapper_width?.innerContent,\n    declarationFunction: buildTabsVerticalWidthCss(attrs)\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-advanced-tabs-container.dsm-tabs-vertical .dsm-advanced-tabs-wrapper`,\n    attr: attrs?.dsm_tabs_vertical_alignment?.innerContent,\n    declarationFunction: buildTabsVerticalAlignmentCss(attrs)\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-advanced-tabs-wrapper .dsm-image`,\n    attr: attrs?.dsm_tabs_image_width?.innerContent,\n    property: \"width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-content-wrapper .dsm-icon`,\n    attr: attrs?.dsm_content_icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-content-wrapper .dsm-icon`,\n    attr: attrs?.dsm_content_icon_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-advanced-tabs-content-wrapper .dsm-image img`,\n    attr: attrs?.dsm_content_image_width?.innerContent,\n    property: \"width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-advanced-tabs-content-wrapper .dsm-image, ${orderClass} .dsm-content-wrapper .dsm-icon`,\n    attr: attrs?.dsm_content_image_icon_alignment?.innerContent,\n    property: \"text-align\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-tab`,\n    attr: attrs?.dsm_tabs_image_icon_placement?.innerContent,\n    declarationFunction: attr => {\n      const {\n        attrValue\n      } = attr;\n      const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n        returnType: 'string',\n        important: {\n          display: true\n        }\n      });\n      if ('top' !== attrValue) {\n        declarations.add('display', `flex`);\n        declarations.add('align-items', `center`);\n      }\n      return declarations.value;\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-tab .dsm-icon-wrapper, ${orderClass} .dsm-tab .dsm-image`,\n    attr: attrs?.dsm_tabs_image_icon_placement?.innerContent,\n    declarationFunction: attr => {\n      const {\n        attrValue\n      } = attr;\n      const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n        returnType: 'string',\n        important: true\n      });\n      if ('right' === attrValue) {\n        declarations.add('order', `1`);\n      }\n      return declarations.value;\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm-tabs-wrapper-sticky .dsm-advanced-tabs-container .dsm-advanced-tabs-wrapper`,\n    attr: attrs?.dsm_stick_tabs_offset?.innerContent,\n    declarationFunction: attr => {\n      const {\n        attrValue\n      } = attr;\n      const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n        returnType: 'string',\n        important: true\n      });\n      declarations.add('position', `sticky`);\n      declarations.add('top', `${attrValue}`);\n      return declarations.value;\n    }\n  }));\n};\n;// ./packages/module-library/advanced-tabs/get-advanced-tabs-child-order-class.js\n\n\n/**\n * Order class for parent-rendered Advanced Tabs child tab/content markup.\n *\n * @param {Object} childModule    Child from `getModule`.\n * @param {number} fallbackIndex Loop index if id / order class unavailable.\n * @return {string}\n */\nfunction getAdvancedTabsChildOrderClass(childModule, fallbackIndex) {\n  return getChildModuleOrderClass(childModule, 'dsm_advanced_tabs_child', fallbackIndex);\n}\n;// ./packages/module-library/advanced-tabs/components/advanced-tabs-button.js\n\n\n\n\n\n\n\n/**\n * Upload `innerContent.desktop.value` for img src (string URL or `{ src, id }` in D5).\n *\n * @param {*} raw Injected prop from `WithDynamicValues` (matches PHP `normalize_upload_inner_value_to_src`).\n * @return {string}\n */\nfunction advanced_tabs_button_getUploadSrcString(raw) {\n  if (raw == null || raw === '') {\n    return '';\n  }\n  if (typeof raw === 'object' && raw !== null && 'src' in raw) {\n    const s = raw.src;\n    return typeof s === 'string' ? s : '';\n  }\n  if (typeof raw === 'string' || typeof raw === 'number') {\n    return String(raw);\n  }\n  return '';\n}\n\n/**\n * TextContainer desktop value: plain string (legacy / migration) or `{ text }` (D5).\n *\n * @param {*} raw Raw `innerContent.desktop.value`.\n * @return {string|undefined} `undefined` when absent so `defaultValue` can apply.\n */\nfunction getDesktopTextFieldValue(raw) {\n  if (raw == null) {\n    return undefined;\n  }\n  if (typeof raw === 'string' || typeof raw === 'number') {\n    return String(raw);\n  }\n  if (typeof raw === 'object' && raw !== null && 'text' in raw && typeof raw.text === 'string') {\n    return raw.text;\n  }\n  return undefined;\n}\nconst DYNAMIC_BUTTON_PROPS = [{\n  propName: 'title',\n  getValue: props => getDesktopTextFieldValue(props?.childModule?.props?.attrs?.dsm_title?.innerContent?.desktop?.value),\n  defaultValue: 'Tab Title'\n}, {\n  propName: 'subTitle',\n  getValue: props => getDesktopTextFieldValue(props?.childModule?.props?.attrs?.dsm_subtitle?.innerContent?.desktop?.value),\n  defaultValue: ''\n}, {\n  propName: 'image',\n  sourcePath: 'childModule.props.attrs.dsm_image.innerContent.desktop.value'\n}, {\n  propName: 'imageActive',\n  sourcePath: 'childModule.props.attrs.dsm_image_active.innerContent.desktop.value'\n}, {\n  propName: 'titleUrl',\n  sourcePath: 'childModule.props.attrs.dsm_title_url.innerContent.desktop.value'\n}, {\n  propName: 'subtitleUrl',\n  sourcePath: 'childModule.props.attrs.dsm_subtitle_url.innerContent.desktop.value'\n}];\n\n/**\n * Renders a single Advanced Tabs button.\n * Dynamic values are injected by `WithDynamicValues` based on `DYNAMIC_BUTTON_PROPS`.\n */\nfunction AdvancedTabsButton({\n  childModule,\n  index,\n  activeIndex,\n  dsmTabsTrigger,\n  onActivate,\n  title,\n  subTitle,\n  image,\n  imageActive,\n  titleUrl,\n  subtitleUrl\n}) {\n  var _getAttrByMode, _getAttrByMode2;\n  const childAttrs = childModule?.props?.attrs;\n  const childrenId = childModule?.id;\n  const childOrderClass = getAdvancedTabsChildOrderClass(childModule, index);\n  const childClass = childAttrs?.module?.advanced?.htmlAttributes?.desktop?.value?.class;\n  const useIcon = childAttrs?.dsm_use_icon?.innerContent?.desktop?.value;\n  const useIconImage = childAttrs?.dsm_use_icon_image?.innerContent?.desktop?.value;\n  const useIconImageActive = childAttrs?.dsm_use_icon_image_active?.innerContent?.desktop?.value;\n  const useIconActive = childAttrs?.dsm_use_icon_active?.innerContent?.desktop?.value;\n  const tabFontIcon = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(childAttrs?.font_icon?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : {};\n  const tabActiveFontIcon = (_getAttrByMode2 = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(childAttrs?.font_icon_active?.innerContent)) !== null && _getAttrByMode2 !== void 0 ? _getAttrByMode2 : {};\n  const imageSrc = advanced_tabs_button_getUploadSrcString(image);\n  const imageActiveSrc = advanced_tabs_button_getUploadSrcString(imageActive);\n  const tabTitle = !(0,lodash.isEmpty)(title) && (0,lodash.isEmpty)(titleUrl) && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-title\"\n  }, title);\n  const tabTitleWithLink = !(0,lodash.isEmpty)(title) && !(0,lodash.isEmpty)(titleUrl) && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-title\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n    href: \"#\"\n  }, title));\n  const tabSubTitle = !(0,lodash.isEmpty)(subTitle) && (0,lodash.isEmpty)(subtitleUrl) && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-tab-subtitle\"\n  }, subTitle);\n  const tabSubTitleWithLink = !(0,lodash.isEmpty)(subTitle) && !(0,lodash.isEmpty)(subtitleUrl) && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-tab-subtitle\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n    href: \"\"\n  }, subTitle));\n  const tabImageMarkup = 'off' !== useIconImage && 'on' !== useIcon && '' !== imageSrc && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-image\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n    src: imageSrc,\n    alt: \"\"\n  }));\n  const tabActiveImageMarkup = 'on' === useIconImageActive && 'on' !== useIconActive && '' !== imageActiveSrc && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-image dsm-image-active\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n    src: imageActiveSrc,\n    alt: \"\"\n  }));\n  const tabIconInactiveMarkup = 'on' === useIconImage && 'on' === useIcon && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-icon-wrapper\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(ModuleIconHost, {\n    icon: tabFontIcon,\n    className: \"dsm_icon\"\n  }));\n  const tabIconActiveMarkup = 'on' === useIconImageActive && 'on' === useIconActive && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-active-icon-wrapper\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(ModuleIconHost, {\n    icon: tabActiveFontIcon,\n    className: \"dsm-active-icon\"\n  }));\n  const activateTab = () => {\n    if ('function' === typeof onActivate) {\n      onActivate(index);\n    }\n  };\n  const tabA11yId = `dsm-tab-${childrenId}`;\n  const panelA11yId = `dsm-panel-${childrenId}`;\n  return /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    id: tabA11yId,\n    role: \"tab\",\n    \"aria-selected\": index === activeIndex,\n    \"aria-controls\": panelA11yId,\n    tabIndex: index === activeIndex ? 0 : -1,\n    className: `${childOrderClass} ${childClass} dsm-tab ${index === activeIndex ? 'dsm-active' : ''}`,\n    onClick: () => 'click' === dsmTabsTrigger ? activateTab() : null,\n    onMouseEnter: () => 'hover' === dsmTabsTrigger ? activateTab() : null\n  }, tabImageMarkup, tabActiveImageMarkup, tabIconInactiveMarkup, tabIconActiveMarkup, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-title-wrapper\"\n  }, tabTitle, tabTitleWithLink, tabSubTitle, tabSubTitleWithLink));\n}\n/* harmony default export */ const advanced_tabs_button = (with_dynamic_values(AdvancedTabsButton, DYNAMIC_BUTTON_PROPS));\n;// ./packages/module-library/advanced-tabs/components/advanced-tabs-content.js\n\n\n\n\n\n\n\n\n\n\n/**\n * Upload `innerContent.desktop.value` for img src (string URL or `{ src, id }` in D5).\n *\n * @param {*} raw Injected prop from `WithDynamicValues`.\n * @return {string}\n */\nfunction advanced_tabs_content_getUploadSrcString(raw) {\n  if (raw == null || raw === '') {\n    return '';\n  }\n  if (typeof raw === 'object' && raw !== null && 'src' in raw) {\n    const s = raw.src;\n    return typeof s === 'string' ? s : '';\n  }\n  if (typeof raw === 'string' || typeof raw === 'number') {\n    return String(raw);\n  }\n  return '';\n}\n\n/**\n * Text / RichText desktop value: string or `{ text }` (matches PHP `get_child_desktop_inner_text`).\n *\n * @param {*} raw Raw `innerContent.desktop.value`.\n * @return {string|undefined}\n */\nfunction advanced_tabs_content_getDesktopTextFieldValue(raw) {\n  if (raw == null) {\n    return undefined;\n  }\n  if (typeof raw === 'string' || typeof raw === 'number') {\n    return String(raw);\n  }\n  if (typeof raw === 'object' && raw !== null && 'text' in raw && typeof raw.text === 'string') {\n    return raw.text;\n  }\n  return undefined;\n}\nconst DYNAMIC_CONTENT_PROPS = [{\n  propName: 'title',\n  getValue: props => advanced_tabs_content_getDesktopTextFieldValue(props?.childModule?.props?.attrs?.dsm_content_title?.innerContent?.desktop?.value),\n  defaultValue: ''\n}, {\n  propName: 'content',\n  getValue: props => advanced_tabs_content_getDesktopTextFieldValue(props?.childModule?.props?.attrs?.dsm_content?.innerContent?.desktop?.value),\n  defaultValue: 'Your description goes here. Edit or remove this text inline or in the description settings'\n}, {\n  propName: 'contentImage',\n  sourcePath: 'childModule.props.attrs.dsm_content_image.innerContent.desktop.value'\n}, {\n  propName: 'buttonText',\n  sourcePath: 'childModule.props.attrs.button_text.innerContent.desktop.value',\n  defaultValue: ''\n}, {\n  propName: 'libraryLayoutId',\n  getValue: props => props?.childModule?.props?.attrs?.dsm_content_library_layout?.innerContent?.desktop?.value,\n  defaultValue: ''\n}, {\n  propName: 'shortcodeContent',\n  getValue: props => advanced_tabs_content_getDesktopTextFieldValue(props?.childModule?.props?.attrs?.shortcode_content?.innerContent?.desktop?.value),\n  defaultValue: ''\n}];\n\n/**\n * Renders a single Advanced Tabs content panel.\n * Dynamic values are injected by `WithDynamicValues` based on `DYNAMIC_CONTENT_PROPS`.\n */\nfunction AdvancedTabsContent({\n  childModule,\n  index,\n  activeIndex,\n  dsmContentAnimation,\n  dsmInnerContentAnimation,\n  dsmLightboxImage,\n  canvasId,\n  isLooped,\n  loopIndex,\n  title,\n  content,\n  contentImage,\n  buttonText,\n  libraryLayoutId,\n  shortcodeContent\n}) {\n  var _ref, _childModule$props$ch, _childAttrs$dsm_conte, _getAttrByMode;\n  const childAttrs = childModule?.props?.attrs;\n  const childrenId = childModule?.id;\n  const nestedModuleIds = (_ref = (_childModule$props$ch = childModule?.props?.childrenIds) !== null && _childModule$props$ch !== void 0 ? _childModule$props$ch : childModule?.childrenIds) !== null && _ref !== void 0 ? _ref : [];\n  const hasNestedModules = Array.isArray(nestedModuleIds) && nestedModuleIds.length > 0;\n  const childOrderClass = getAdvancedTabsChildOrderClass(childModule, index);\n  const childClass = childAttrs?.module?.advanced?.htmlAttributes?.desktop?.value?.class;\n  const contentType = (_childAttrs$dsm_conte = childAttrs?.dsm_content_type?.innerContent?.desktop?.value) !== null && _childAttrs$dsm_conte !== void 0 ? _childAttrs$dsm_conte : 'content';\n  const contentUseIconImage = childAttrs?.dsm_content_use_icon_image?.innerContent?.desktop?.value;\n  const contentUseIcon = childAttrs?.dsm_content_use_icon?.innerContent?.desktop?.value;\n  const contentFontIcon = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(childAttrs?.dsm_content_font_icon?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : {};\n  const contentImageSrc = advanced_tabs_content_getUploadSrcString(contentImage);\n  const useContentLightbox = 'on' === dsmLightboxImage && 'content' === contentType && 'on' === contentUseIconImage && 'on' !== contentUseIcon && '' !== contentImageSrc;\n  const customContentTitle = !(0,lodash.isEmpty)(title) && /*#__PURE__*/external_vendor_React_default().createElement(\"h2\", {\n    className: \"dsm-title\"\n  }, title);\n  const customContentdescription = !(0,lodash.isEmpty)(content) && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-content\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_window_vendor_wp_element_namespaceObject.RawHTML, null, content));\n  const customImage = '' !== contentImageSrc && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-image\"\n  }, useContentLightbox ? /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n    className: \"et_pb_lightbox_image dsm-image-lightbox\",\n    href: contentImageSrc\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n    src: contentImageSrc,\n    alt: \"\"\n  })) : /*#__PURE__*/external_vendor_React_default().createElement(\"img\", {\n    src: contentImageSrc,\n    alt: \"\",\n    decoding: \"async\"\n  }));\n  const customIcon = /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-icon\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(ModuleIconHost, {\n    icon: contentFontIcon,\n    className: \"dsm_content_icon\"\n  }));\n  const ButtonMarkup = !(0,lodash.isEmpty)(buttonText) && /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"et_pb_button_module_wrapper\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"a\", {\n    className: \"et_pb_button\"\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"span\", null, buttonText)));\n  const panelId = `dsm-panel-${childrenId}`;\n  const tabLabelId = `dsm-tab-${childrenId}`;\n  return /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    id: panelId,\n    role: \"tabpanel\",\n    \"aria-labelledby\": tabLabelId,\n    \"aria-hidden\": index !== activeIndex,\n    className: `dsm-content-wrapper ${childOrderClass} ${childClass} ${index === activeIndex ? `dsm-active animated ${dsmContentAnimation}` : ''}`\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: `dsm-inner-content-wrapper animated ${index === activeIndex ? dsmInnerContentAnimation : ''}`\n  }, 'content' === contentType && 'on' === contentUseIconImage && 'on' !== contentUseIcon && customImage, 'content' === contentType && 'on' === contentUseIconImage && 'on' === contentUseIcon && customIcon, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-inner-content\"\n  }, 'content' === contentType && customContentTitle, 'content' === contentType && !hasNestedModules && customContentdescription, 'shortcode' === contentType && /*#__PURE__*/external_vendor_React_default().createElement(divi_shortcode_content_renderer, {\n    shortcode: shortcodeContent,\n    previewKey: `dsm-advanced-tabs-shortcode-${childrenId}`\n  }), 'library' === contentType && /*#__PURE__*/external_vendor_React_default().createElement(library_layout_renderer, {\n    id: libraryLayoutId\n  }), 'content' === contentType && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ChildModulesContainer, {\n    ids: [childrenId],\n    isLooped: isLooped,\n    loopIndex: loopIndex,\n    canvasId: canvasId\n  }), 'content' === contentType && ButtonMarkup)));\n}\n/* harmony default export */ const advanced_tabs_content = (with_dynamic_values(AdvancedTabsContent, DYNAMIC_CONTENT_PROPS));\n;// ./packages/module-library/advanced-tabs/edit.js\n\n\n// Divi package dependencies.\n\n\n\n\n\n// Custom dependencies.\n\n\n\n\n\n/**\n * Registers module script data consumed by Divi runtime.\n */\nconst advanced_tabs_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\n\n/**\n * Advanced Tabs module editor renderer.\n *\n * Responsibilities:\n * 1. Resolve parent-level module settings (layout, trigger, animation, etc.).\n * 2. Fetch child modules from Divi store.\n * 3. Render each child button and content panel through dedicated components.\n */\nfunction advanced_tabs_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements,\n  childrenIds,\n  canvasId,\n  isLooped,\n  loopIndex\n}) {\n  var _attrs$dsm_tabs_verti, _attrs$dsm_tabs_colum, _attrs$dsm_tabs_layou, _attrs$dsm_tabs_mobil, _attrs$dsm_tabs_mobil2;\n  const [activeIndex, setActiveIndex] = (0,external_vendor_React_.useState)(0);\n  const dsm_tabs_sticky = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_tabs_sticky?.innerContent);\n\n  // Tabs left/right (vertical) and column left/right must fall back to desktop when the\n  // active breakpoint has no explicit value — otherwise classnames become `...-undefined`\n  // and layout CSS does not apply.\n  const verticalPositionRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_tabs_vertical_position?.innerContent);\n  const dsm_tabs_vertical_position = typeof verticalPositionRaw === 'string' && verticalPositionRaw !== '' ? verticalPositionRaw : (_attrs$dsm_tabs_verti = attrs?.dsm_tabs_vertical_position?.innerContent?.desktop?.value) !== null && _attrs$dsm_tabs_verti !== void 0 ? _attrs$dsm_tabs_verti : 'left';\n  const columnPositionRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_tabs_column_position?.innerContent);\n  const dsm_tabs_column_position = typeof columnPositionRaw === 'string' && columnPositionRaw !== '' ? columnPositionRaw : (_attrs$dsm_tabs_colum = attrs?.dsm_tabs_column_position?.innerContent?.desktop?.value) !== null && _attrs$dsm_tabs_colum !== void 0 ? _attrs$dsm_tabs_colum : 'left';\n  const dsm_tabs_trigger = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_tabs_trigger?.innerContent);\n  const dsm_content_animation = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_content_animation?.innerContent);\n  const dsm_inner_content_animation = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_inner_content_animation?.innerContent);\n  const dsm_show_arrow = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_show_arrow?.innerContent);\n  const dsm_lightbox_image = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_lightbox_image?.innerContent);\n  const dsmAriaLabelRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_aria_label?.innerContent);\n  const dsmAriaLabel = typeof dsmAriaLabelRaw === 'string' ? dsmAriaLabelRaw.trim() : '';\n  const layoutRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_tabs_layout?.innerContent);\n  const dsm_tabs_layout = typeof layoutRaw === 'string' && layoutRaw !== '' ? layoutRaw : (_attrs$dsm_tabs_layou = attrs?.dsm_tabs_layout?.innerContent?.desktop?.value) !== null && _attrs$dsm_tabs_layou !== void 0 ? _attrs$dsm_tabs_layou : 'horizontal';\n  const dsm_tabs_horizontal_position = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_tabs_horizontal_position?.innerContent);\n\n  // Mobile/Tablet Position (stack order): class + SCSS — VB often passes mode `frontend` to styles,\n  // so CommonStyle tablet/phone passes never run; mirror FE with these classnames.\n  const mobileTabletVerticalPosRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_tabs_mobile_tablet_vertical_pos?.innerContent);\n  const mobileTabletVerticalPos = typeof mobileTabletVerticalPosRaw === 'string' && mobileTabletVerticalPosRaw !== '' ? mobileTabletVerticalPosRaw : (_attrs$dsm_tabs_mobil = attrs?.dsm_tabs_mobile_tablet_vertical_pos?.innerContent?.desktop?.value) !== null && _attrs$dsm_tabs_mobil !== void 0 ? _attrs$dsm_tabs_mobil : 'top';\n  const mobileTabletColumnPosRaw = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_tabs_mobile_tablet_column_pos?.innerContent);\n  const mobileTabletColumnPos = typeof mobileTabletColumnPosRaw === 'string' && mobileTabletColumnPosRaw !== '' ? mobileTabletColumnPosRaw : (_attrs$dsm_tabs_mobil2 = attrs?.dsm_tabs_mobile_tablet_column_pos?.innerContent?.desktop?.value) !== null && _attrs$dsm_tabs_mobil2 !== void 0 ? _attrs$dsm_tabs_mobil2 : 'top';\n  const childModules = (0,external_divi_data_namespaceObject.useSelect)(select => {\n    return childrenIds.map(moduleId => select('divi/edit-post').getModule(moduleId));\n  }, [childrenIds]);\n  const tabButtonMarkup = childModules.map((childModule, index) => /*#__PURE__*/external_vendor_React_default().createElement(advanced_tabs_button, {\n    key: index,\n    childModule: childModule,\n    index: index,\n    activeIndex: activeIndex,\n    dsmTabsTrigger: dsm_tabs_trigger,\n    onActivate: setActiveIndex\n  }));\n  const tabContentMarkup = childModules.map((childModule, index) => /*#__PURE__*/external_vendor_React_default().createElement(advanced_tabs_content, {\n    key: index,\n    childModule: childModule,\n    index: index,\n    activeIndex: activeIndex,\n    dsmContentAnimation: dsm_content_animation,\n    dsmInnerContentAnimation: dsm_inner_content_animation,\n    dsmLightboxImage: dsm_lightbox_image,\n    canvasId: canvasId,\n    isLooped: isLooped,\n    loopIndex: loopIndex\n  }));\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    scriptDataComponent: advanced_tabs_edit_ModuleScriptData,\n    stylesComponent: advanced_tabs_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n      if ('on' === dsm_tabs_sticky) {\n        params.classnamesInstance.add('dsm-tabs-wrapper-sticky');\n      }\n      if ('on' === dsm_show_arrow && 'horizontal' === dsm_tabs_layout && 'top' === dsm_tabs_horizontal_position) {\n        params.classnamesInstance.add('dsm-show-arrow-active-top');\n      }\n      if ('on' === dsm_show_arrow && 'horizontal' === dsm_tabs_layout && 'bottom' === dsm_tabs_horizontal_position) {\n        params.classnamesInstance.add('dsm-show-arrow-active-bottom');\n      }\n      if ('on' === dsm_show_arrow && 'vertical' === dsm_tabs_layout && 'left' === dsm_tabs_vertical_position) {\n        params.classnamesInstance.add('dsm-show-arrow-active-left');\n      }\n      if ('on' === dsm_show_arrow && 'vertical' === dsm_tabs_layout && 'right' === dsm_tabs_vertical_position) {\n        params.classnamesInstance.add('dsm-show-arrow-active-right');\n      }\n      if ('vertical' === dsm_tabs_layout) {\n        params.classnamesInstance.add(`dsm-vertical-tabs-position-${dsm_tabs_vertical_position}`);\n      }\n      if ('column' === dsm_tabs_layout) {\n        params.classnamesInstance.add(`dsm-column-tabs-position-${dsm_tabs_column_position}`);\n      }\n      if ('vertical' === dsm_tabs_layout) {\n        params.classnamesInstance.add(`dsm-mobile-tablet-vertical-pos-${'bottom' === mobileTabletVerticalPos ? 'bottom' : 'top'}`);\n      }\n      if ('column' === dsm_tabs_layout) {\n        params.classnamesInstance.add(`dsm-mobile-tablet-column-pos-${'bottom' === mobileTabletColumnPos ? 'bottom' : 'top'}`);\n      }\n      if ('on' === dsm_show_arrow && 'vertical' === dsm_tabs_layout || 'on' === dsm_show_arrow && 'column' === dsm_tabs_layout) {\n        params.classnamesInstance.add(`dsm-show-arrow`);\n      }\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: `dsm-advanced-tabs-container dsm-tabs-${dsm_tabs_layout}`\n  }, /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-advanced-tabs-wrapper\",\n    role: \"tablist\",\n    \"aria-label\": dsmAriaLabel !== '' ? dsmAriaLabel : (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tabs', 'dsm-supreme-modules-pro-for-divi'),\n    \"aria-orientation\": 'vertical' === dsm_tabs_layout || 'column' === dsm_tabs_layout ? 'vertical' : 'horizontal'\n  }, tabButtonMarkup), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: \"dsm-advanced-tabs-content-wrapper\"\n  }, tabContentMarkup)));\n}\n/* harmony default export */ const advanced_tabs_edit = (advanced_tabs_edit_Edit);\n;// ./packages/module-library/advanced-tabs/icon.js\n\n(0,external_window_vendor_wp_hooks_namespaceObject.addFilter)('divi.iconLibrary.icon.map', 'dsmAdvancedTabs', iconMap => {\n  return {\n    ...iconMap,\n    'divi-supreme/advanced-tabs': {\n      name: 'divi-supreme/advanced-tabs',\n      viewBox: '0 0 30 30',\n      component: () => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 10.933594 3.734375 C 10.492188 3.734375 10.132812 3.375 10.132812 2.933594 C 10.132812 2.492188 10.492188 2.132812 10.933594 2.132812 C 11.375 2.132812 11.734375 2.492188 11.734375 2.933594 C 11.734375 3.375 11.375 3.734375 10.933594 3.734375 Z M 10.933594 2.574219 C 10.734375 2.574219 10.574219 2.734375 10.574219 2.933594 C 10.574219 3.128906 10.734375 3.292969 10.933594 3.292969 C 11.128906 3.292969 11.292969 3.128906 11.292969 2.933594 C 11.292969 2.734375 11.128906 2.574219 10.933594 2.574219 Z M 10.933594 2.574219 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 5.601562 14.398438 C 5.160156 14.398438 4.800781 14.039062 4.800781 13.601562 C 4.800781 13.160156 5.160156 12.800781 5.601562 12.800781 C 6.039062 12.800781 6.398438 13.160156 6.398438 13.601562 C 6.398438 14.039062 6.039062 14.398438 5.601562 14.398438 Z M 5.601562 13.242188 C 5.402344 13.242188 5.242188 13.402344 5.242188 13.601562 C 5.242188 13.796875 5.402344 13.960938 5.601562 13.960938 C 5.796875 13.960938 5.960938 13.796875 5.960938 13.601562 C 5.960938 13.402344 5.796875 13.242188 5.601562 13.242188 Z M 5.601562 13.242188 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 9.566406 11.636719 L 5.109375 11.636719 C 4.644531 11.636719 4.265625 11.257812 4.265625 10.792969 L 4.265625 7.261719 C 4.265625 6.792969 4.644531 6.414062 5.109375 6.414062 L 9.566406 6.414062 C 10.03125 6.414062 10.410156 6.792969 10.410156 7.261719 L 10.410156 10.792969 C 10.410156 11.257812 10.03125 11.636719 9.566406 11.636719 Z M 5.109375 6.875 C 4.898438 6.875 4.726562 7.046875 4.726562 7.261719 L 4.726562 10.792969 C 4.726562 11.003906 4.898438 11.175781 5.109375 11.175781 L 9.566406 11.175781 C 9.777344 11.175781 9.949219 11.003906 9.949219 10.792969 L 9.949219 7.261719 C 9.949219 7.046875 9.777344 6.875 9.566406 6.875 Z M 5.109375 6.875 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 10.179688 7.949219 L 4.496094 7.949219 C 4.371094 7.949219 4.265625 7.847656 4.265625 7.722656 C 4.265625 7.59375 4.371094 7.492188 4.496094 7.492188 L 10.179688 7.492188 C 10.304688 7.492188 10.410156 7.59375 10.410156 7.722656 C 10.410156 7.847656 10.304688 7.949219 10.179688 7.949219 Z M 10.179688 7.949219 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.402344 9.488281 C 11.277344 9.488281 11.171875 9.382812 11.171875 9.257812 L 11.171875 5.109375 C 11.171875 4.898438 11 4.726562 10.789062 4.726562 L 6.335938 4.726562 C 6.125 4.726562 5.953125 4.898438 5.953125 5.109375 L 5.953125 5.570312 C 5.953125 5.699219 5.847656 5.800781 5.722656 5.800781 C 5.59375 5.800781 5.492188 5.699219 5.492188 5.570312 L 5.492188 5.109375 C 5.492188 4.644531 5.871094 4.265625 6.335938 4.265625 L 10.789062 4.265625 C 11.253906 4.265625 11.632812 4.644531 11.632812 5.109375 L 11.632812 9.257812 C 11.632812 9.382812 11.53125 9.488281 11.402344 9.488281 Z M 11.402344 9.488281 \"\n      }), /*#__PURE__*/React.createElement(\"path\", {\n        fill: \"#5C1DB0\",\n        d: \"M 11.402344 5.800781 L 5.722656 5.800781 C 5.59375 5.800781 5.492188 5.699219 5.492188 5.570312 C 5.492188 5.445312 5.59375 5.339844 5.722656 5.339844 L 11.402344 5.339844 C 11.53125 5.339844 11.632812 5.445312 11.632812 5.570312 C 11.632812 5.699219 11.53125 5.800781 11.402344 5.800781 Z M 11.402344 5.800781 \"\n      }))\n    }\n  };\n});\n;// ./packages/module-library/advanced-tabs/index.js\n// External library dependencies.\n\n\n\n\n\n\n\n\n\n\n\nconst ADVANCED_TABS_CHILD = 'dsm/advanced-tabs-child';\nconst advancedTabsDefaultChildTemplate = buildParentDefaultChildTemplate(ADVANCED_TABS_CHILD, 3, [{\n  dsm_title: {\n    innerContent: {\n      desktop: {\n        value: {\n          text: 'Tab 1'\n        }\n      }\n    }\n  }\n}, {\n  dsm_title: {\n    innerContent: {\n      desktop: {\n        value: {\n          text: 'Tab 2'\n        }\n      }\n    }\n  }\n}, {\n  dsm_title: {\n    innerContent: {\n      desktop: {\n        value: {\n          text: 'Tab 3'\n        }\n      }\n    }\n  }\n}]);\nconst advancedTabsModule = {\n  metadata: advanced_tabs_module_namespaceObject,\n  conversionOutline: advanced_tabs_conversion_outline_conversionOutline,\n  renderers: {\n    edit: advanced_tabs_edit,\n    styles: advanced_tabs_module_styles_ModuleStyles\n  },\n  childrenName: [ADVANCED_TABS_CHILD],\n  template: advancedTabsDefaultChildTemplate,\n  callbacks: buildChildDraggableListCallbacks([ADVANCED_TABS_CHILD]),\n  settings: {\n    content: advanced_tabs_settings_content,\n    design: advanced_tabs_settings_design,\n    advanced: advanced_tabs_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    content_title: {\n      decoration: {\n        font: {\n          font: {\n            desktop: {\n              value: {\n                headingLevel: 'h2'\n              }\n            }\n          }\n        }\n      }\n    },\n    dsm_tabs_layout: {\n      innerContent: {\n        desktop: {\n          value: 'horizontal'\n        }\n      }\n    },\n    dsm_tabs_horizontal_position: {\n      innerContent: {\n        desktop: {\n          value: 'top'\n        }\n      }\n    },\n    dsm_tabs_vertical_position: {\n      innerContent: {\n        desktop: {\n          value: 'left'\n        }\n      }\n    },\n    dsm_tabs_mobile_tablet_vertical_pos: {\n      innerContent: {\n        desktop: {\n          value: 'top'\n        }\n      }\n    },\n    dsm_tabs_column_position: {\n      innerContent: {\n        desktop: {\n          value: 'left'\n        }\n      }\n    },\n    dsm_tabs_mobile_tablet_column_pos: {\n      innerContent: {\n        desktop: {\n          value: 'top'\n        }\n      }\n    },\n    dsm_equal_height: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    dsm_tabs_trigger: {\n      innerContent: {\n        desktop: {\n          value: 'click'\n        }\n      }\n    },\n    dsm_show_arrow: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    dsm_content_animation: {\n      innerContent: {\n        desktop: {\n          value: 'none'\n        }\n      }\n    },\n    dsm_inner_content_animation: {\n      innerContent: {\n        desktop: {\n          value: 'none'\n        }\n      }\n    },\n    dsm_tabs_horizontal_alignment: {\n      innerContent: {\n        desktop: {\n          value: 'left'\n        }\n      }\n    },\n    dsm_tabs_image_icon_placement: {\n      innerContent: {\n        desktop: {\n          value: 'top'\n        }\n      }\n    },\n    dsm_deep_link: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    dsm_anchor_scroll: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    dsm_lightbox_image: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    dsm_tabs_sticky: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    dsm_stick_tabs_offset: {\n      innerContent: {\n        desktop: {\n          value: '88px'\n        }\n      }\n    },\n    dsm_auto_scroll_mobile: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    dsm_tabs_vertical_alignment: {\n      innerContent: {\n        desktop: {\n          value: 'top'\n        }\n      }\n    },\n    dsm_design_tab_tabs: {\n      innerContent: {\n        desktop: {\n          value: 'inactive'\n        }\n      }\n    },\n    dsm_design_tab_image_icon: {\n      innerContent: {\n        desktop: {\n          value: 'inactive'\n        }\n      }\n    },\n    dsm_design_content_font: {\n      innerContent: {\n        desktop: {\n          value: 'title'\n        }\n      }\n    }\n  }\n};\n/* harmony default export */ const advanced_tabs = (advancedTabsModule);\n;// ./packages/module-library/advanced-tabs-child/module.json\nconst advanced_tabs_child_module_namespaceObject = /*#__PURE__*/JSON.parse('{\"name\":\"dsm/advanced-tabs-child\",\"d4Shortcode\":\"dsm_advanced_tabs_child\",\"title\":\"Supreme Advanced Tabs Child\",\"titles\":\"Supreme Advanced Tabs Child\",\"category\":\"child-module\",\"childrenName\":[],\"allowAllElements\":true,\"attributes\":{\"module\":{\"type\":\"object\",\"selector\":\"{{selector}}\",\"default\":{\"meta\":{\"adminLabel\":{\"desktop\":{\"value\":\"Tab Title\"}}}},\"settings\":{\"decoration\":{\"attributes\":{},\"conditions\":{},\"interactions\":{},\"layout\":{}},\"advanced\":{\"link\":{},\"elements\":{\"groupType\":\"group-item\",\"item\":{\"groupSlug\":\"contentElements\",\"priority\":5,\"render\":true,\"component\":{\"type\":\"group\",\"name\":\"divi/elements\",\"props\":{\"grouped\":false}}}}}},\"styleProps\":{\"layout\":{\"selector\":\"{{selector}} .dsm-tabs-nestable\"}}},\"tab_title\":{\"type\":\"object\",\"selector\":\".dsm-advanced-tabs-container {{selector}}.dsm-tab .dsm-title, .dsm-advanced-tabs-container {{selector}}.dsm-tab .dsm-title a\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"tab_subtitle\":{\"type\":\"object\",\"selector\":\".dsm-advanced-tabs-container {{selector}}.dsm-tab .dsm-tab-subtitle, .dsm-advanced-tabs-container {{selector}}.dsm-tab .dsm-tab-subtitle a\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"content_title\":{\"type\":\"object\",\"selector\":\".dsm-advanced-tabs-container .dsm-advanced-tabs-content-wrapper {{selector}} .dsm-inner-content .dsm-title\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"tab_content_text\":{\"type\":\"object\",\"selector\":\".dsm-advanced-tabs-container .dsm-advanced-tabs-content-wrapper {{selector}} .dsm-inner-content .dsm-content\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_title\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":{\"text\":\"Tab Title\"}}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_subtitle\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":{\"text\":\"\"}}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_child_tab_icon_image_state\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"inactive\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_use_icon_image\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_image\":{\"type\":\"object\",\"inlineEditor\":\"UploadContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_use_icon\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"font_icon\":{\"type\":\"object\",\"inlineEditor\":\"IconPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_use_icon_image_active\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_image_active\":{\"type\":\"object\",\"inlineEditor\":\"UploadContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_use_icon_active\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"font_icon_active\":{\"type\":\"object\",\"inlineEditor\":\"IconPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_type\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"content\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"shortcode_content\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_title\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":{\"text\":\"\"}}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content\":{\"type\":\"object\",\"inlineEditor\":\"RichTextContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":{\"text\":\"\"}}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_use_icon_image\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_image\":{\"type\":\"object\",\"inlineEditor\":\"UploadContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDgwIiBoZWlnaHQ9IjU0MCIgdmlld0JveD0iMCAwIDEwODAgNTQwIj48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGZpbGw9IiNFQkVCRUIiIGQ9Ik0wIDBoMTA4MHY1NDBIMHoiLz48cGF0aCBkPSJNNDQ1LjY0OSA1NDBoLTk4Ljk5NUwxNDQuNjQ5IDMzNy45OTUgMCA0ODIuNjQ0di05OC45OTVsMTE2LjM2NS0xMTYuMzY1YzE1LjYyLTE1LjYyIDQwLjk0Ny0xNS42MiA1Ni41NjggMEw0NDUuNjUgNTQweiIgZmlsbC1vcGFjaXR5PSIuMSIgZmlsbD0iIzAwMCIgZmlsbC1ydWxlPSJub256ZXJvIi8+PGNpcmNsZSBmaWxsLW9wYWNpdHk9Ii4wNSIgZmlsbD0iIzAwMCIgY3g9IjMzMSIgY3k9IjE0OCIgcj0iNzAiLz48cGF0aCBkPSJNMTA4MCAzNzl2MTEzLjEzN0w3MjguMTYyIDE0MC4zIDMyOC40NjIgNTQwSDIxNS4zMjRMNjk5Ljg3OCA1NS40NDZjMTUuNjItMTUuNjIgNDAuOTQ4LTE1LjYyIDU2LjU2OCAwTDEwODAgMzc5eiIgZmlsbC1vcGFjaXR5PSIuMiIgZmlsbD0iIzAwMCIgZmlsbC1ydWxlPSJub256ZXJvIi8+PC9nPjwvc3ZnPg==\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_use_icon\":{\"type\":\"object\",\"inlineEditor\":\"Toggle\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_font_icon\":{\"type\":\"object\",\"inlineEditor\":\"IconPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_image_icon_placement\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"top\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"button_text\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\",\"tagName\":\"span\"},\"button_url\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"url_new_window\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_image_icon_alignment\":{\"type\":\"object\",\"inlineEditor\":\"ButtonOptionsContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_image_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_icon_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tabs_image_width\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tabs_icon_size\":{\"type\":\"object\",\"inlineEditor\":\"RangeContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tabs_icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tabs_active_icon_color\":{\"type\":\"object\",\"inlineEditor\":\"ColorPickerContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_title_url\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_title_url_new_window\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_subtitle_url\":{\"type\":\"object\",\"inlineEditor\":\"TextContainer\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_subtitle_url_new_window\":{\"type\":\"object\",\"inlineEditor\":\"SelectContainer\",\"default\":{\"innerContent\":{\"desktop\":{\"value\":\"off\"}}},\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_library_layout\":{\"type\":\"object\",\"inlineEditor\":\"\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"__library_layout\":{\"type\":\"object\",\"inlineEditor\":\"\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_image_alt\":{\"type\":\"object\",\"inlineEditor\":\"\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_image_title_text\":{\"type\":\"object\",\"inlineEditor\":\"\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"admin_title\":{\"type\":\"object\",\"inlineEditor\":\"\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"module_id\":{\"type\":\"object\",\"inlineEditor\":\"\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"module_class\":{\"type\":\"object\",\"inlineEditor\":\"\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_title_subtitle_notice\":{\"type\":\"object\",\"inlineEditor\":\"\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tab_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\".dsm_advanced_tabs .dsm-advanced-tabs-wrapper {{selector}}.dsm-tab .dsm_icon, .dsm_advanced_tabs {{selector}}.dsm-tab .dsm-image\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_tab_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\".dsm_advanced_tabs .dsm-advanced-tabs-wrapper {{selector}}.dsm-tab .dsm_icon, .dsm_advanced_tabs {{selector}}.dsm-tab .dsm-image\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_margin\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\".dsm_advanced_tabs {{selector}}.dsm-content-wrapper .dsm-icon, .dsm_advanced_tabs {{selector}}.dsm-content-wrapper .dsm-image img\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"dsm_content_padding\":{\"type\":\"object\",\"inlineEditor\":\"SpacingGroup\",\"selector\":\".dsm_advanced_tabs {{selector}}.dsm-content-wrapper .dsm-icon, .dsm_advanced_tabs {{selector}}.dsm-content-wrapper .dsm-image img\",\"childrenSanitizer\":\"et_core_esc_previously\"},\"tab_image_icon_style\":{\"type\":\"object\",\"selector\":\".dsm-advanced-tabs-container .dsm-advanced-tabs-wrapper {{selector}}.dsm-tab .dsm_icon, .dsm-advanced-tabs-container .dsm-advanced-tabs-wrapper {{selector}}.dsm-tab .dsm-image\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\".dsm-advanced-tabs-container .dsm-advanced-tabs-wrapper {{selector}}.dsm-tab .dsm_icon, .dsm-advanced-tabs-container .dsm-advanced-tabs-wrapper {{selector}}.dsm-tab .dsm-image\",\"important\":true},\"boxShadow\":{\"selector\":\".dsm-advanced-tabs-container .dsm-advanced-tabs-wrapper {{selector}}.dsm-tab .dsm_icon, .dsm-advanced-tabs-container .dsm-advanced-tabs-wrapper {{selector}}.dsm-tab .dsm-image\",\"useOverlay\":true}}},\"content_image_icon_style\":{\"type\":\"object\",\"selector\":\".dsm-advanced-tabs-container .dsm-advanced-tabs-content-wrapper {{selector}}.dsm-content-wrapper .dsm-icon, .dsm-advanced-tabs-container .dsm-advanced-tabs-content-wrapper {{selector}} .dsm-image img\",\"childrenSanitizer\":\"et_core_esc_previously\",\"styleProps\":{\"border\":{\"selector\":\".dsm_advanced_tabs {{selector}}.dsm-content-wrapper .dsm-icon, .dsm_advanced_tabs {{selector}} .dsm-image img\",\"important\":true},\"boxShadow\":{\"selector\":\".dsm_advanced_tabs {{selector}}.dsm-content-wrapper .dsm-icon, .dsm_advanced_tabs {{selector}} .dsm-image img\",\"useOverlay\":true}}},\"button\":{\"type\":\"object\",\"selector\":\".dsm_advanced_tabs {{selector}} .et_pb_button_module_wrapper .et_pb_button\",\"default\":{\"decoration\":{\"button\":{\"desktop\":{\"value\":{\"enable\":\"off\",\"icon\":{\"enable\":\"on\",\"onHover\":\"on\"}}}}}},\"elementType\":\"button\",\"styleProps\":{\"font\":{\"important\":{\"font\":{\"desktop\":{\"value\":{\"color\":true,\"font-size\":true,\"letter-spacing\":true}}}}},\"button\":{\"propertySelectors\":{\"desktop\":{\"value\":{\"text-align\":\".dsm_advanced_tabs {{selector}} .et_pb_button_wrapper\"}}}},\"spacing\":{\"important\":true}}}},\"settings\":{\"advanced\":\"auto\",\"groups\":{\"contentElements\":{\"panel\":\"content\",\"priority\":5,\"groupName\":\"contentElements\",\"multiElements\":true,\"component\":{\"name\":\"divi/composite\",\"props\":{\"groupLabel\":\"Elements\"}}}}}}');\n;// ./packages/module-library/advanced-tabs-child/advanced-tabs-child-module-defaults.js\n/**\n * InnerContent defaults for dsm/advanced-tabs-child TextContainer fields (stored as `value.text`).\n *\n * @package DiviSupreme\n */\n\n/** Layer-tree admin label fallback (matches default tab title `dsm_title`). */\nconst advancedTabsChildDefaultAdminLabel = {\n  desktop: {\n    value: 'Tab Title'\n  }\n};\nconst advancedTabsChildTabTitleInnerDefault = {\n  desktop: {\n    value: {\n      text: 'Tab Title'\n    }\n  }\n};\nconst advancedTabsChildTabSubtitleInnerDefault = {\n  desktop: {\n    value: {\n      text: ''\n    }\n  }\n};\n\n/** Effective default for VB + migrated layouts (empty title stays empty). */\nconst advancedTabsChildContentTitleInnerDefault = {\n  desktop: {\n    value: {\n      text: ''\n    }\n  }\n};\n\n/** Copy for newly inserted child modules only (placeholderContent). */\nconst advancedTabsChildContentTitlePlaceholderInner = {\n  desktop: {\n    value: {\n      text: 'Your Title Goes Here'\n    }\n  }\n};\n\n/**\n * Visual Builder: Inactive / Active panel for Tab Icon & Image (content + design).\n */\nconst dsmChildTabIconImageStateDefault = {\n  desktop: {\n    value: 'inactive'\n  }\n};\n;// ./packages/module-library/advanced-tabs-child/conversion-outline.js\nconst advanced_tabs_child_conversion_outline_conversionOutline = {\n  advanced: {\n    admin_label: 'module.meta.adminLabel',\n    animation: 'module.decoration.animation',\n    background: 'module.decoration.background',\n    // Keys must match D4 `get_advanced_fields_config()` border / box_shadow identifiers.\n    borders: {\n      default: 'module.decoration.border',\n      dsm_image_icon_border: 'tab_image_icon_style.decoration.border',\n      dsm_content_image_icon_border: 'content_image_icon_style.decoration.border'\n    },\n    box_shadow: {\n      default: 'module.decoration.boxShadow',\n      tabs_image_icon: 'tab_image_icon_style.decoration.boxShadow',\n      content_image_icon: 'content_image_icon_style.decoration.boxShadow'\n    },\n    filters: {\n      default: 'module.decoration.filters'\n    },\n    disabled_on: 'module.decoration.disabledOn',\n    display_conditions: 'module.decoration.conditions',\n    module: 'module.advanced.htmlAttributes',\n    overflow: 'module.decoration.overflow',\n    position_fields: 'module.decoration.position',\n    scroll: 'module.decoration.scroll',\n    sticky: 'module.decoration.sticky',\n    text_shadow: {\n      default: 'module.advanced.text.textShadow'\n    },\n    transform: 'module.decoration.transform',\n    transition: 'module.decoration.transition',\n    z_index: 'module.decoration.zIndex',\n    fonts: {\n      tab_title: 'tab_title.decoration.font',\n      tab_subtitle: 'tab_subtitle.decoration.font',\n      content_title: 'content_title.decoration.font',\n      tab_content_text: 'tab_content_text.decoration.font'\n    },\n    margin_padding: 'module.decoration.spacing',\n    link_options: 'module.advanced.link',\n    button: {\n      button: 'button'\n    }\n  },\n  css: {\n    after: 'css.*.after',\n    before: 'css.*.before',\n    free_form: 'css.*.freeForm',\n    main_element: 'css.*.mainElement'\n  },\n  module: {\n    content_title_level: 'content_title.decoration.font.font.*.headingLevel',\n    admin_title: 'module.meta.adminLabel.*',\n    dsm_title: 'dsm_title.innerContent.*.text',\n    dsm_subtitle: 'dsm_subtitle.innerContent.*.text',\n    dsm_child_tab_icon_image_state: 'dsm_child_tab_icon_image_state.innerContent.*',\n    dsm_use_icon_image: 'dsm_use_icon_image.innerContent.*',\n    dsm_image: 'dsm_image.innerContent.*.src',\n    dsm_use_icon: 'dsm_use_icon.innerContent.*',\n    font_icon: 'font_icon.innerContent.*',\n    dsm_use_icon_image_active: 'dsm_use_icon_image_active.innerContent.*',\n    dsm_image_active: 'dsm_image_active.innerContent.*.src',\n    dsm_use_icon_active: 'dsm_use_icon_active.innerContent.*',\n    font_icon_active: 'font_icon_active.innerContent.*',\n    dsm_content_type: 'dsm_content_type.innerContent.*',\n    shortcode_content: 'shortcode_content.innerContent.*',\n    dsm_content_title: 'dsm_content_title.innerContent.*.text',\n    dsm_content: 'dsm_content.innerContent.*.text',\n    dsm_content_use_icon_image: 'dsm_content_use_icon_image.innerContent.*',\n    dsm_content_image: 'dsm_content_image.innerContent.*.src',\n    dsm_content_use_icon: 'dsm_content_use_icon.innerContent.*',\n    dsm_content_font_icon: 'dsm_content_font_icon.innerContent.*',\n    dsm_content_image_icon_placement: 'dsm_content_image_icon_placement.innerContent.*',\n    button_text: 'button_text.innerContent.*',\n    button_url: 'button_url.innerContent.*',\n    url_new_window: 'url_new_window.innerContent.*',\n    dsm_content_image_icon_alignment: 'dsm_content_image_icon_alignment.innerContent.*',\n    dsm_content_image_width: 'dsm_content_image_width.innerContent.*',\n    dsm_content_icon_size: 'dsm_content_icon_size.innerContent.*',\n    dsm_content_icon_color: 'dsm_content_icon_color.innerContent.*',\n    dsm_tabs_image_width: 'dsm_tabs_image_width.innerContent.*',\n    dsm_tabs_icon_size: 'dsm_tabs_icon_size.innerContent.*',\n    dsm_tabs_icon_color: 'dsm_tabs_icon_color.innerContent.*',\n    dsm_tabs_active_icon_color: 'dsm_tabs_active_icon_color.innerContent.*',\n    dsm_title_url: 'dsm_title_url.innerContent.*',\n    dsm_title_url_new_window: 'dsm_title_url_new_window.innerContent.*',\n    dsm_subtitle_url: 'dsm_subtitle_url.innerContent.*',\n    dsm_subtitle_url_new_window: 'dsm_subtitle_url_new_window.innerContent.*',\n    dsm_content_library_layout: 'dsm_content_library_layout.innerContent.*',\n    dsm_content_image_alt: 'dsm_content_image_alt.innerContent.*',\n    dsm_content_image_title_text: 'dsm_content_image_title_text.innerContent.*',\n    // D4 nested `image_icon` margin_padding (tab image/icon); same prefixed attr names as parent module.\n    image_icon_custom_margin: 'dsm_tab_margin.decoration.spacing.*.margin',\n    image_icon_custom_padding: 'dsm_tab_padding.decoration.spacing.*.padding',\n    dsm_tab_margin: 'dsm_tab_margin.decoration.spacing.*.margin',\n    dsm_tab_padding: 'dsm_tab_padding.decoration.spacing.*.padding',\n    dsm_content_margin: 'dsm_content_margin.decoration.spacing.*.margin',\n    dsm_content_padding: 'dsm_content_padding.decoration.spacing.*.padding',\n    module_id: 'module.decoration.attributes.*',\n    module_class: 'module.decoration.attributes.*'\n  },\n  valueExpansionFunctionMap: {\n    font_icon: 'convertFontIcon',\n    font_icon_active: 'convertFontIcon',\n    dsm_content_font_icon: 'convertFontIcon',\n    image_icon_custom_margin: 'convertSpacing',\n    image_icon_custom_padding: 'convertSpacing',\n    dsm_tab_margin: 'convertSpacing',\n    dsm_tab_padding: 'convertSpacing',\n    dsm_content_margin: 'convertSpacing',\n    dsm_content_padding: 'convertSpacing',\n    module_id: 'dsm_convert_module_id_to_decoration_attributes',\n    module_class: 'dsm_convert_module_class_to_decoration_attributes'\n  }\n};\n;// ./packages/module-library/advanced-tabs-child/settings-content.js\n\n// Wordpress dependencies.\n\n// Divi package dependencies.\n\n\n\n\n\n\nconst settings_content_inactiveActiveTabOptions = {\n  inactive: {\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inactive', 'dsm-supreme-modules-pro-for-divi')\n  },\n  active: {\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Active', 'dsm-supreme-modules-pro-for-divi')\n  }\n};\nfunction advanced_tabs_child_settings_content_SettingsContent({\n  defaultSettingsAttrs,\n  attrs,\n  groupConfiguration\n}) {\n  var _getAttrByMode, _defaultSettingsAttrs;\n  const contentElements = groupConfiguration?.contentElements;\n  const dsmUseIcon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_use_icon?.innerContent);\n  const dsmUseIconImage = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_use_icon_image?.innerContent);\n  const dsmUseIconImageActive = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_use_icon_image_active?.innerContent);\n  const dsmUseIconActive = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_use_icon_active?.innerContent);\n  const dsmContentType = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_content_type?.innerContent);\n  const dsmContentUseIconImage = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_content_use_icon_image?.innerContent);\n  const dsmContentUseIcon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_content_use_icon?.innerContent);\n  const childTabIconImageState = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_child_tab_icon_image_state?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'inactive';\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"tab_title\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tab Title', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_title.innerContent\",\n    subName: \"text\",\n    defaultAttr: advancedTabsChildTabTitleInnerDefault,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('The title of your tab..', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_subtitle.innerContent\",\n    subName: \"text\",\n    defaultAttr: advancedTabsChildTabSubtitleInnerDefault,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Subtitle', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('The subtitle of your tab will appear below your title', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"tab_icon_image\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tab Icon & Image', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_child_tab_icon_image_state.innerContent\",\n    defaultAttr: dsmChildTabIconImageStateDefault,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tab appearance', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: settings_content_inactiveActiveTabOptions,\n    tabUi: true,\n    showLabel: true\n  })), 'inactive' === childTabIconImageState && /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_use_icon_image.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Icon / Image', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_image.innerContent\",\n    subName: \"src\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      preset: 'content',\n      sticky: false\n    },\n    visible: 'on' === dsmUseIconImage && 'on' !== dsmUseIcon\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_use_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Icon', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmUseIconImage\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"font_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmUseIcon && 'on' === dsmUseIconImage\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null))), 'active' === childTabIconImageState && /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_use_icon_image_active.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Icon / Image', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_image_active.innerContent\",\n    subName: \"src\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      sticky: false\n    },\n    visible: 'on' !== dsmUseIconActive && 'on' === dsmUseIconImageActive\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_use_icon_active.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Icon', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmUseIconImageActive\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"font_icon_active.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmUseIconActive && 'on' === dsmUseIconImageActive\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null)))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"content\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content_type.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content Type', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      content: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi')\n      },\n      library: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Divi Library', 'dsm-supreme-modules-pro-for-divi')\n      },\n      shortcode: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shortcode', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"shortcode_content.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Shortcode', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    },\n    visible: 'shortcode' === dsmContentType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), 'library' === dsmContentType && /*#__PURE__*/external_vendor_React_default().createElement(divi_layout_control, {\n    label: \"Library\",\n    attrName: \"dsm_content_library_layout.innerContent\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content_title.innerContent\",\n    subName: \"text\",\n    defaultAttr: advancedTabsChildContentTitleInnerDefault,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    },\n    visible: 'content' === dsmContentType || null === dsmContentType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content.innerContent\",\n    subName: \"text\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'content' === dsmContentType || null === dsmContentType,\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RichTextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content_use_icon_image.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Icon / Image', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'content' === dsmContentType || null === dsmContentType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content_image.innerContent\",\n    subName: \"src\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'image'\n      },\n      sticky: false\n    },\n    visible: 'on' === dsmContentUseIconImage && ('content' === dsmContentType || null === dsmContentType) && 'on' !== dsmContentUseIcon\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.UploadContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content_use_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Use Icon', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmContentUseIconImage\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.Toggle, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content_font_icon.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmContentUseIcon && 'on' === dsmContentUseIconImage\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.IconPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content_image_icon_placement.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image/Icon Placement', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      top: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Top', 'dsm-supreme-modules-pro-for-divi')\n      },\n      left: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Left', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_text.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Text', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    },\n    visible: 'content' === dsmContentType || null === dsmContentType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"button_url.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Link URL', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    },\n    visible: 'content' === dsmContentType || null === dsmContentType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"url_new_window.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Link Target', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'content' === dsmContentType || null === dsmContentType\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      off: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The Same Window', 'dsm-supreme-modules-pro-for-divi')\n      },\n      on: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The New Tab', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"title_subtitle_links\",\n    preset: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title & Subtitle Links', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_title_url.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title URL', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_title_url_new_window.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title URL Target', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      off: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The Same Window', 'dsm-supreme-modules-pro-for-divi')\n      },\n      on: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The New Tab', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_subtitle_url.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Subtitle URL', 'dsm-supreme-modules-pro-for-divi'),\n    features: {\n      dynamicContent: {\n        type: 'text'\n      },\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.TextContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_subtitle_url_new_window.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Subtitle URL Target', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.SelectContainer, {\n    options: {\n      off: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The Same Window', 'dsm-supreme-modules-pro-for-divi')\n      },\n      on: {\n        label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('In The New Tab', 'dsm-supreme-modules-pro-for-divi')\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.WarningContainer, {\n    name: \"google-api-key\",\n    value: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Only use when using the \"Hover\" Trigger, using with \"Click\" trigger might create issues.', 'dsm-supreme-modules-pro-for-divi')\n  })), contentElements ? /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleGroups, {\n    groups: {\n      contentElements\n    }\n  }) : null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BackgroundGroup, null), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.AdminLabelGroup, {\n    defaultGroupAttr: (_defaultSettingsAttrs = defaultSettingsAttrs?.module?.meta?.adminLabel) !== null && _defaultSettingsAttrs !== void 0 ? _defaultSettingsAttrs : advancedTabsChildDefaultAdminLabel\n  }));\n}\n/* harmony default export */ const advanced_tabs_child_settings_content = (advanced_tabs_child_settings_content_SettingsContent);\n;// ./packages/module-library/advanced-tabs-child/settings-design.js\n\n\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\n\n\n\nconst settings_design_inactiveActiveTabOptions = {\n  inactive: {\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Inactive', 'dsm-supreme-modules-pro-for-divi')\n  },\n  active: {\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Active', 'dsm-supreme-modules-pro-for-divi')\n  }\n};\nfunction advanced_tabs_child_settings_design_SettingsDesign({\n  defaultSettingsAttrs,\n  attrs\n}) {\n  var _getAttrByMode, _defaultSettingsAttrs;\n  const dsmContentUseIconImage = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_content_use_icon_image?.innerContent);\n  const dsmContentUseIcon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_content_use_icon?.innerContent);\n  const dsmUseIcon = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_use_icon?.innerContent);\n  const dsmUseIconImage = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_use_icon_image?.innerContent);\n  const childTabIconImageState = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.dsm_child_tab_icon_image_state?.innerContent)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'inactive';\n  const button = attrs?.button?.decoration?.button?.desktop?.value?.enable;\n  return /*#__PURE__*/external_vendor_React_default().createElement((external_vendor_React_default()).Fragment, null, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"tab_row\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tab labels', 'dsm-supreme-modules-pro-for-divi'),\n    defaultOpened: true\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"tab_row_title\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tab title', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"tab_title.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tab title', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"tab_row_subtitle\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Subtitle', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"tab_subtitle.decoration.font\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Subtitle', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false,\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"tab_row_image_icon\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Tab image & icon', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tabs_image_width.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image Width', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'off' === dsmUseIcon && 'off' !== dsmUseIconImage\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 120,\n    step: 1,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tabs_icon_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Font Size', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmUseIcon && 'on' === dsmUseIconImage\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    step: 1,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_child_tab_icon_image_state.innerContent\",\n    defaultAttr: dsmChildTabIconImageStateDefault,\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon colors', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: settings_design_inactiveActiveTabOptions,\n    tabUi: true,\n    showLabel: true\n  })), 'inactive' === childTabIconImageState && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tabs_icon_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon Color', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmUseIcon && 'on' === dsmUseIconImage\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), 'active' === childTabIconImageState && /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_tabs_active_icon_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Active Icon Color', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmUseIcon && 'on' === dsmUseIconImage\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null)), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"tab_image_icon_style.decoration.border\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image/Icon', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_tab_margin.decoration.spacing\",\n    grouped: false,\n    fields: {\n      padding: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_tab_padding.decoration.spacing\",\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"tab_image_icon_style.decoration.boxShadow\",\n    grouped: false\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"content_image_icon\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content area image & icon', 'dsm-supreme-modules-pro-for-divi'),\n    defaultOpened: true\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"content_image_layout\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Layout & sizing', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content_image_icon_alignment.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    description: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Align the image or icon inside the content area.', 'dsm-supreme-modules-pro-for-divi'),\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    }\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content_image_width.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image width', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmContentUseIconImage && 'on' !== dsmContentUseIcon\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 1,\n    max: 100,\n    defaultUnit: '%',\n    step: 1\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content_icon_size.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon size', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmContentUseIconImage && 'on' === dsmContentUseIcon\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.RangeContainer, {\n    min: 0,\n    max: 100,\n    step: 1,\n    defaultUnit: 'px'\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content_icon_color.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Icon color', 'dsm-supreme-modules-pro-for-divi'),\n    visible: 'on' === dsmContentUseIconImage && 'on' === dsmContentUseIcon\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ColorPickerContainer, null))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"content_panel_spacing\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content panel spacing', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_content_margin.decoration.spacing\",\n    grouped: false,\n    fields: {\n      padding: {\n        render: false\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.SpacingGroup, {\n    attrName: \"dsm_content_padding.decoration.spacing\",\n    grouped: false,\n    fields: {\n      margin: {\n        render: false\n      }\n    }\n  })), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"content_image_border_shadow\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Border & shadow', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BorderGroup, {\n    attrName: \"content_image_icon_style.decoration.border\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image / icon', 'dsm-supreme-modules-pro-for-divi')\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.BoxShadowGroup, {\n    attrName: \"content_image_icon_style.decoration.boxShadow\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Image / icon', 'dsm-supreme-modules-pro-for-divi'),\n    grouped: false\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"content\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Content', 'dsm-supreme-modules-pro-for-divi'),\n    defaultOpened: true\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"content_typography\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Typography', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"content_title.decoration.font\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Title', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: true\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FontGroup, {\n    attrName: \"tab_content_text.decoration.font\",\n    grouped: false,\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Body text', 'dsm-supreme-modules-pro-for-divi'),\n    fields: {\n      headingLevel: {\n        render: false\n      }\n    }\n  }))), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_modal_namespaceObject.GroupContainer, {\n    id: \"button\",\n    title: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi')\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ButtonGroupContainer, {\n    attrName: \"button\",\n    fieldLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi'),\n    groupLabel: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button', 'dsm-supreme-modules-pro-for-divi'),\n    defaultGroupAttr: (_defaultSettingsAttrs = defaultSettingsAttrs?.button?.decoration?.asMutable({\n      deep: true\n    })) !== null && _defaultSettingsAttrs !== void 0 ? _defaultSettingsAttrs : {},\n    grouped: false,\n    fields: {\n      alignment: {\n        render: true\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.FieldContainer, {\n    attrName: \"dsm_content_image_icon_alignment.innerContent\",\n    label: (0,external_window_vendor_wp_i18n_namespaceObject.__)('Button Alignment', 'dsm-supreme-modules-pro-for-divi'),\n    multipleChoices: false,\n    onChangeParams: ['multipleChoices'],\n    features: {\n      hover: false,\n      sticky: false\n    },\n    visible: 'off' === button\n  }, /*#__PURE__*/external_vendor_React_default().createElement(external_divi_fieldLibrary_namespaceObject.ButtonOptionsContainer, {\n    options: external_divi_module_namespaceObject.alignmentOptions\n  }))));\n}\n/* harmony default export */ const advanced_tabs_child_settings_design = (advanced_tabs_child_settings_design_SettingsDesign);\n;// ./packages/module-library/advanced-tabs-child/settings-advanced.js\n// Wordpress dependencies.\n\n\n\n// Divi package dependencies.\n\n\nfunction advanced_tabs_child_settings_advanced_SettingsAdvanced() {\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.AttributesGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.CssGroup, {\n    mainSelector: \".dsm_advanced_tabs_child\"\n  }), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ConditionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.InteractionsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.VisibilitySettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.TransitionGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.PositionSettingsGroup, null), /*#__PURE__*/React.createElement(external_divi_module_namespaceObject.ScrollSettingsGroup, null));\n}\n/* harmony default export */ const advanced_tabs_child_settings_advanced = (advanced_tabs_child_settings_advanced_SettingsAdvanced);\n;// ./packages/module-library/advanced-tabs-child/module-styles.js\n\n\n\n\nconst tabIconFontCss = buildLegacyPseudoIconFontCss;\nconst tabActiveIconFontCss = buildLegacyPseudoIconFontCss;\nconst contentImageIconPlacementCss = attr => {\n  const {\n    attrValue\n  } = attr;\n  const declarations = new external_divi_styleLibrary_namespaceObject.StyleDeclarations({\n    returnType: 'string',\n    important: {\n      'flex-direction': true\n    }\n  });\n  if ('top' === attrValue) {\n    declarations.add('flex-direction', `column`);\n  }\n  return declarations.value;\n};\nconst tabContentIconFontCss = buildLegacyPseudoIconFontCss;\nconst advanced_tabs_child_module_styles_ModuleStyles = ({\n  attrs,\n  elements,\n  settings,\n  orderClass,\n  mode,\n  state,\n  noStyleTag\n}) => {\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.StyleContainer, {\n    mode: mode,\n    state: state,\n    noStyleTag: noStyleTag\n  }, elements.style({\n    attrName: 'module',\n    styleProps: {\n      disabledOn: {\n        disabledModuleVisibility: settings?.disabledModuleVisibility\n      }\n    }\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CssStyle, {\n    selector: orderClass,\n    attr: attrs.css\n  }), elements.style({\n    attrName: 'tab_title'\n  }), elements.style({\n    attrName: 'tab_subtitle'\n  }), elements.style({\n    attrName: 'content_title'\n  }), elements.style({\n    attrName: 'tab_content_text'\n  }), elements.style({\n    attrName: 'tab_image_icon_style'\n  }), elements.style({\n    attrName: 'dsm_tab_margin'\n  }), elements.style({\n    attrName: 'dsm_tab_padding'\n  }), elements.style({\n    attrName: 'button'\n  }), elements.style({\n    attrName: 'dsm_content_margin'\n  }), elements.style({\n    attrName: 'dsm_content_padding'\n  }), elements.style({\n    attrName: 'content_image_icon_style'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm-tab .dsm-icon-wrapper .et-pb-icon.dsm_icon::before`,\n    attr: attrs?.font_icon?.innerContent,\n    declarationFunction: tabIconFontCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-inner-content-wrapper .dsm-icon .et-pb-icon.dsm_content_icon::before`,\n    attr: attrs?.dsm_content_font_icon?.innerContent,\n    declarationFunction: tabContentIconFontCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass}.dsm-tab.dsm-active .dsm-active-icon-wrapper .et-pb-icon.dsm-active-icon::before`,\n    attr: attrs?.font_icon_active?.innerContent,\n    declarationFunction: tabActiveIconFontCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `${orderClass} .dsm-inner-content-wrapper`,\n    attr: attrs?.dsm_content_image_icon_placement?.innerContent,\n    declarationFunction: contentImageIconPlacementCss\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm_advanced_tabs .dsm-advanced-tabs-container ${orderClass} .dsm-icon-wrapper .et-pb-icon.dsm_icon, .dsm_advanced_tabs .dsm-advanced-tabs-container ${orderClass} .dsm-active-icon-wrapper .et-pb-icon.dsm-active-icon`,\n    attr: attrs?.dsm_tabs_icon_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm_advanced_tabs .dsm-advanced-tabs-container ${orderClass} .dsm-icon-wrapper .et-pb-icon.dsm_icon`,\n    attr: attrs?.dsm_tabs_icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm_advanced_tabs .dsm-advanced-tabs-container ${orderClass}.dsm-tab.dsm-active .dsm-active-icon-wrapper .et-pb-icon.dsm-active-icon, .dsm_advanced_tabs .dsm-advanced-tabs-container ${orderClass}.dsm-tab.dsm-active .dsm-active-icon-wrapper .et-pb-icon.dsm-active-icon::before, .dsm_advanced_tabs .dsm-advanced-tabs-container ${orderClass}.dsm-tab.dsm-active .dsm-icon-wrapper .et-pb-icon.dsm_icon, .dsm_advanced_tabs .dsm-advanced-tabs-container ${orderClass}.dsm-tab.dsm-active .dsm-icon-wrapper .et-pb-icon.dsm_icon::before`,\n    attr: attrs?.dsm_tabs_active_icon_color?.innerContent,\n    property: \"color\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm-advanced-tabs-container  ${orderClass}.dsm-content-wrapper .dsm-image img`,\n    attr: attrs?.dsm_content_image_width?.innerContent,\n    property: \"width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm-advanced-tabs-container  ${orderClass}.dsm-tab .dsm-image`,\n    attr: attrs?.dsm_tabs_image_width?.innerContent,\n    property: \"width\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm-advanced-tabs-container ${orderClass}.dsm-content-wrapper  .dsm-image, .dsm-advanced-tabs-container ${orderClass}.dsm-content-wrapper .dsm-icon`,\n    attr: attrs?.dsm_content_image_icon_alignment?.innerContent,\n    property: \"text-align\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm-advanced-tabs-container ${orderClass}.dsm-content-wrapper .et-pb-icon.dsm_content_icon, .dsm-advanced-tabs-container ${orderClass}.dsm-content-wrapper .dsm-icon`,\n    attr: attrs?.dsm_content_icon_size?.innerContent,\n    property: \"font-size\"\n  }), /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.CommonStyle, {\n    selector: `.dsm-advanced-tabs-container ${orderClass}.dsm-content-wrapper .et-pb-icon.dsm_content_icon, .dsm-advanced-tabs-container ${orderClass}.dsm-content-wrapper .dsm-icon`,\n    attr: attrs?.dsm_content_icon_color?.innerContent,\n    property: \"color\"\n  }));\n};\n;// ./packages/module-library/advanced-tabs-child/edit.js\n\n\n\n\nconst advanced_tabs_child_edit_ModuleScriptData = ({\n  elements\n}) => /*#__PURE__*/external_vendor_React_default().createElement(external_vendor_React_.Fragment, null, elements.scriptData({\n  attrName: 'module'\n}));\n\n/**\n * Tab child edit renders only the nestable Elements area. Panel title, description,\n * and button are rendered by the parent `AdvancedTabsContent` component.\n */\nfunction advanced_tabs_child_edit_Edit({\n  attrs,\n  id,\n  name,\n  elements,\n  childrenIds,\n  canvasId,\n  isLooped,\n  loopIndex\n}) {\n  var _getAttrByMode;\n  const hasNestedModules = Array.isArray(childrenIds) && childrenIds.length > 0;\n  const nestableLayoutDisplay = (_getAttrByMode = (0,external_divi_moduleUtils_namespaceObject.getAttrByMode)(attrs?.module?.decoration?.layout?.desktop?.value?.display)) !== null && _getAttrByMode !== void 0 ? _getAttrByMode : 'flex';\n  const nestableWrapperClassName = ['dsm-tabs-nestable', 'grid' === nestableLayoutDisplay ? 'et_grid_module' : 'et_flex_module'].join(' ');\n  return /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleContainer, {\n    attrs: attrs,\n    elements: elements,\n    id: id,\n    name: name,\n    childrenIds: childrenIds,\n    scriptDataComponent: advanced_tabs_child_edit_ModuleScriptData,\n    stylesComponent: advanced_tabs_child_module_styles_ModuleStyles,\n    classnamesFunction: params => {\n      var _attrs$module$decorat;\n      params.classnamesInstance.add((0,external_divi_module_namespaceObject.elementClassnames)({\n        attrs: (_attrs$module$decorat = attrs?.module?.decoration) !== null && _attrs$module$decorat !== void 0 ? _attrs$module$decorat : {}\n      }));\n    }\n  }, elements.styleComponents({\n    attrName: 'module'\n  }), /*#__PURE__*/external_vendor_React_default().createElement(\"div\", {\n    className: nestableWrapperClassName\n  }, hasNestedModules ? /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ChildModulesContainer, {\n    ids: childrenIds,\n    isLooped: isLooped,\n    loopIndex: loopIndex,\n    canvasId: canvasId\n  }) : /*#__PURE__*/external_vendor_React_default().createElement(external_divi_module_namespaceObject.ModuleAdd, {\n    moduleId: id,\n    basicModuleType: \"module\",\n    addChild: true\n  })));\n}\n/* harmony default export */ const advanced_tabs_child_edit = (advanced_tabs_child_edit_Edit);\n;// ./packages/module-library/advanced-tabs-child/index.js\n// External library dependencies.\n\n\n\n\n\n\n\n\n\n\nconst advancedTabsChildModule = {\n  metadata: advanced_tabs_child_module_namespaceObject,\n  conversionOutline: advanced_tabs_child_conversion_outline_conversionOutline,\n  renderers: {\n    edit: advanced_tabs_child_edit,\n    styles: advanced_tabs_child_module_styles_ModuleStyles\n  },\n  parentsName: ['dsm/advanced-tabs'],\n  callbacks: {\n    content: {\n      elements: external_divi_moduleUtils_namespaceObject.elementsCallbacks\n    }\n  },\n  settings: {\n    content: advanced_tabs_child_settings_content,\n    design: advanced_tabs_child_settings_design,\n    advanced: advanced_tabs_child_settings_advanced\n  },\n  placeholderContent: {\n    module: {\n      decoration: {}\n    },\n    content_title: {\n      decoration: {\n        font: {\n          font: {\n            desktop: {\n              value: {\n                headingLevel: 'h2'\n              }\n            }\n          }\n        }\n      }\n    },\n    dsm_use_icon: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    dsm_use_icon_image_active: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    dsm_child_tab_icon_image_state: {\n      innerContent: dsmChildTabIconImageStateDefault\n    },\n    dsm_title: {\n      innerContent: advancedTabsChildTabTitleInnerDefault\n    },\n    dsm_subtitle: {\n      innerContent: advancedTabsChildTabSubtitleInnerDefault\n    },\n    dsm_use_icon_active: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    dsm_content_type: {\n      innerContent: {\n        desktop: {\n          value: 'content'\n        }\n      }\n    },\n    dsm_content_title: {\n      innerContent: advancedTabsChildContentTitlePlaceholderInner\n    },\n    dsm_content: {\n      innerContent: {\n        desktop: {\n          value: {\n            text: 'Your description goes here. Edit or remove this text inline or in the description settings'\n          }\n        }\n      }\n    },\n    dsm_content_use_icon_image: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    dsm_content_image: {\n      innerContent: {\n        desktop: {\n          value: 'data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDgwIiBoZWlnaHQ9IjU0MCIgdmlld0JveD0iMCAwIDEwODAgNTQwIj48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGZpbGw9IiNFQkVCRUIiIGQ9Ik0wIDBoMTA4MHY1NDBIMHoiLz48cGF0aCBkPSJNNDQ1LjY0OSA1NDBoLTk4Ljk5NUwxNDQuNjQ5IDMzNy45OTUgMCA0ODIuNjQ0di05OC45OTVsMTE2LjM2NS0xMTYuMzY1YzE1LjYyLTE1LjYyIDQwLjk0Ny0xNS42MiA1Ni41NjggMEw0NDUuNjUgNTQweiIgZmlsbC1vcGFjaXR5PSIuMSIgZmlsbD0iIzAwMCIgZmlsbC1ydWxlPSJub256ZXJvIi8+PGNpcmNsZSBmaWxsLW9wYWNpdHk9Ii4wNSIgZmlsbD0iIzAwMCIgY3g9IjMzMSIgY3k9IjE0OCIgcj0iNzAiLz48cGF0aCBkPSJNMTA4MCAzNzl2MTEzLjEzN0w3MjguMTYyIDE0MC4zIDMyOC40NjIgNTQwSDIxNS4zMjRMNjk5Ljg3OCA1NS40NDZjMTUuNjItMTUuNjIgNDAuOTQ4LTE1LjYyIDU2LjU2OCAwTDEwODAgMzc5eiIgZmlsbC1vcGFjaXR5PSIuMiIgZmlsbD0iIzAwMCIgZmlsbC1ydWxlPSJub256ZXJvIi8+PC9nPjwvc3ZnPg=='\n        }\n      }\n    },\n    dsm_content_use_icon: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    dsm_content_image_icon_placement: {\n      innerContent: {\n        desktop: {\n          value: 'top'\n        }\n      }\n    },\n    url_new_window: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    dsm_title_url_new_window: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    dsm_use_icon_image: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    dsm_subtitle_url_new_window: {\n      innerContent: {\n        desktop: {\n          value: 'off'\n        }\n      }\n    },\n    button: {\n      decoration: {\n        button: {\n          desktop: {\n            value: {\n              enable: 'off'\n            }\n          }\n        }\n      }\n    }\n  }\n};\n/* harmony default export */ const advanced_tabs_child = (advancedTabsChildModule);\n;// ./packages/module-library/index.js\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nexternal_window_vendor_wp_hooks_namespaceObject.addAction('divi.moduleLibrary.registerModuleLibraryStore.after', 'divi-supreme-modules', () => {\n  const activeModules = window.diviSupreme5?.activeModules || {};\n  const isModuleActive = settingKey => settingKey == null || activeModules[settingKey] == null || activeModules[settingKey] === true || activeModules[settingKey] === 'on';\n\n  // General → Enable Divi Popup off: do not inject Advanced → Popup. Use\n  // `__dsmSupremePopupExtensionEnabled` (output first via dsm-supreme-vb-config) so this runs\n  // before diviSupreme5 localizes — reading only diviSupreme5 was undefined !== false → true.\n  const supremePopupExtensionEnabled = typeof window.__dsmSupremePopupExtensionEnabled === 'boolean' ? window.__dsmSupremePopupExtensionEnabled : window.diviSupreme5?.dsmSupremePopupExtensionEnabled !== false;\n  const supremeLineHoverAnimationExtensionEnabled = typeof window.__dsmSupremeLineHoverAnimationExtensionEnabled === 'boolean' ? window.__dsmSupremeLineHoverAnimationExtensionEnabled : window.diviSupreme5?.dsmSupremeLineHoverAnimationExtensionEnabled !== false;\n  const supremeParallaxExtensionEnabled = typeof window.__dsmSupremeParallaxExtensionEnabled === 'boolean' ? window.__dsmSupremeParallaxExtensionEnabled : window.diviSupreme5?.dsmSupremeParallaxExtensionEnabled !== false;\n  const imageParallaxExtensionEnabled = typeof window.__dsmImageParallaxExtensionEnabled === 'boolean' ? window.__dsmImageParallaxExtensionEnabled : window.diviSupreme5?.dsmImageParallaxExtensionEnabled === true;\n  [{\n    settingKey: 'Card',\n    module: card\n  }, {\n    settingKey: 'BusinessHours',\n    module: business_hours\n  }, {\n    settingKey: 'BusinessHours',\n    module: business_hours_child\n  }, {\n    settingKey: 'AnimatedGradientText',\n    module: animated_gradient_text\n  }, {\n    settingKey: 'AnimatedHeadline',\n    module: animated_headline\n  }, {\n    settingKey: 'BeforeAfterImage',\n    module: before_after_slider\n  }, {\n    settingKey: 'BlobImage',\n    module: blob_image\n  }, {\n    settingKey: 'Breadcrumbs',\n    module: breadcrumbs\n  }, {\n    settingKey: 'Buttons',\n    module: buttons\n  }, {\n    settingKey: 'BlockRevealText',\n    module: block_reveal_text\n  }, {\n    settingKey: 'BlockRevealImage',\n    module: block_reveal_image\n  }, {\n    settingKey: 'ContentToggle',\n    module: content_toggle\n  }, {\n    settingKey: 'ContentTimeLine',\n    module: content_timeline\n  }, {\n    settingKey: 'ContentTimeLine',\n    module: content_timeline_child\n  }, {\n    settingKey: 'ContactForm7',\n    module: contact_form7\n  }, {\n    settingKey: 'CircleInfo',\n    module: circle_info\n  }, {\n    settingKey: 'CircleInfo',\n    module: circle_info_child\n  }, {\n    settingKey: 'DualHeading',\n    module: dual_heading\n  }, {\n    settingKey: 'EmbedGoogleMap',\n    module: embed_google_map\n  }, {\n    settingKey: 'FacebookEmbed',\n    module: facebook_embed\n  }, {\n    settingKey: 'FacebookSimpleFeed',\n    module: facebook_simple_feed\n  }, {\n    settingKey: 'Faq',\n    module: faq\n  }, {\n    settingKey: 'Faq',\n    module: faq_child\n  }, {\n    settingKey: 'FloatingMultiImages',\n    module: floating_multi_images\n  }, {\n    settingKey: 'FloatingMultiImages',\n    module: floating_multi_images_child\n  }, {\n    settingKey: 'GlitchText',\n    module: glitch_text\n  }, {\n    settingKey: 'GradientText',\n    module: gradient_text\n  }, {\n    settingKey: 'IconDivider',\n    module: icon_divider\n  }, {\n    settingKey: 'ImageAccordion',\n    module: image_accordion\n  }, {\n    settingKey: 'ImageAccordion',\n    module: image_accordion_child\n  }, {\n    settingKey: 'ImageCarousel',\n    module: image_carousel\n  }, {\n    settingKey: 'CardCarousel',\n    module: card_carousel\n  }, {\n    settingKey: 'CardCarousel',\n    module: card_carousel_child\n  }, {\n    settingKey: 'PostCarousel',\n    module: post_carousel\n  }, {\n    settingKey: 'BlogCarousel',\n    module: blog_carousel\n  }, {\n    settingKey: 'MasonryGallery',\n    module: masonry_gallery\n  }, {\n    settingKey: 'FilterableGallery',\n    module: filterable_gallery\n  }, {\n    settingKey: 'FlipBoxPerk',\n    module: flipbox_perk\n  }, {\n    settingKey: 'FlipBoxPerk',\n    module: flipbox_child\n  }, {\n    settingKey: 'IconList',\n    module: icon_list\n  }, {\n    settingKey: 'IconList',\n    module: icon_list_child\n  }, {\n    settingKey: 'Lottie',\n    module: module_library_lottie\n  }, {\n    settingKey: 'LineHover',\n    module: line_hover\n  }, {\n    settingKey: 'MaskText',\n    module: mask_text\n  }, {\n    settingKey: 'Menu',\n    module: menu\n  }, {\n    settingKey: 'OnScrollHeaderAnimation',\n    module: on_scroll_header_animation\n  }, {\n    settingKey: 'StackingCard',\n    module: stacking_card\n  }, {\n    settingKey: 'StackingCard',\n    module: stacking_card_child\n  }, {\n    settingKey: 'PerspectiveImage',\n    module: perspective_image\n  }, {\n    settingKey: 'PriceList',\n    module: price_list\n  }, {\n    settingKey: 'PriceList',\n    module: price_list_child\n  }, {\n    settingKey: 'ProgressBar',\n    module: progress_bar\n  }, {\n    settingKey: 'RandomImage',\n    module: random_image\n  }, {\n    settingKey: 'Readmore',\n    module: readmore\n  }, {\n    settingKey: 'ScrollImage',\n    module: scroll_image\n  }, {\n    settingKey: 'Shapes',\n    module: shapes\n  }, {\n    settingKey: 'ShuffleLetters',\n    module: shuffle_letters\n  }, {\n    settingKey: 'SocialShareButtons',\n    module: social_share_buttons\n  }, {\n    settingKey: 'SocialShareButtons',\n    module: social_share_buttons_child\n  }, {\n    settingKey: 'StarRating',\n    module: star_rating\n  }, {\n    settingKey: 'StepFlow',\n    module: step_flow\n  }, {\n    settingKey: 'Badges',\n    module: text_badges\n  }, {\n    settingKey: 'TextDivider',\n    module: text_divider\n  }, {\n    settingKey: 'TextNotation',\n    module: text_notation\n  }, {\n    settingKey: 'TextPath',\n    module: text_path\n  }, {\n    settingKey: 'TextRotator',\n    module: text_rotator\n  }, {\n    settingKey: 'TiltImage',\n    module: tilt_image\n  }, {\n    settingKey: 'TypingEffect',\n    module: typing_effect\n  }, {\n    settingKey: 'SvgAnimation',\n    module: svg_animation\n  }, {\n    settingKey: 'TableOfContents',\n    module: table_of_contents\n  }, {\n    settingKey: 'ImageHoverReveal',\n    module: image_hover_reveal\n  }, {\n    settingKey: 'ImageHotSpots',\n    module: image_hotspots\n  }, {\n    settingKey: 'ImageHotSpots',\n    module: image_hotspots_child\n  }, {\n    settingKey: 'ImageReveal',\n    module: image_reveal\n  }, {\n    settingKey: 'AdvancedTabs',\n    module: advanced_tabs\n  }, {\n    settingKey: 'AdvancedTabs',\n    module: advanced_tabs_child\n  }].filter(({\n    settingKey\n  }) => isModuleActive(settingKey)).forEach(({\n    module\n  }) => {\n    const hasAdvanced = module.settings?.advanced != null;\n    const hasDesign = module.settings?.design != null;\n    const hasContent = module.settings?.content != null;\n    const moduleName = typeof module.metadata?.name === 'string' ? module.metadata.name : '';\n    const skipLineHoverAnimationExtensionMerge = 'dsm/line-hover' === moduleName;\n    let moduleToRegister = {\n      ...module\n    };\n    if (imageParallaxExtensionEnabled && hasContent) {\n      const existingAttributes = module.metadata?.attributes && typeof module.metadata.attributes === 'object' ? module.metadata.attributes : {};\n      const mergedAttributes = dsmIpxMergeParallaxSettingsIntoAttributes(existingAttributes);\n      moduleToRegister = {\n        ...moduleToRegister,\n        metadata: {\n          ...(moduleToRegister.metadata || module.metadata),\n          attributes: mergedAttributes\n        },\n        defaultAttrs: dsmIpxMergeParallaxDefaultAttrs({\n          ...(module.defaultAttrs || {})\n        }, mergedAttributes),\n        settings: {\n          ...(moduleToRegister.settings || module.settings),\n          content: withImageParallaxContentSettings(module.settings.content)\n        }\n      };\n    }\n    if (hasAdvanced || hasDesign) {\n      moduleToRegister = {\n        ...moduleToRegister,\n        defaultAttrs: {\n          ...(moduleToRegister.defaultAttrs || module.defaultAttrs || {}),\n          ...(supremePopupExtensionEnabled ? dsmPopupModuleDefaultAttrs : {}),\n          ...(supremeLineHoverAnimationExtensionEnabled && !skipLineHoverAnimationExtensionMerge ? dsmLineHoverAnimationModuleDefaultAttrs : {}),\n          ...(supremeParallaxExtensionEnabled ? dsmSupremeParallaxExtensionDefaultAttrs : {})\n        },\n        settings: {\n          ...(moduleToRegister.settings || module.settings),\n          design: hasDesign && supremeLineHoverAnimationExtensionEnabled && !skipLineHoverAnimationExtensionMerge ? withLineHoverAnimationDesignSettings(module.settings.design) : module.settings.design,\n          advanced: hasAdvanced ? (() => {\n            let advancedTree = module.settings.advanced;\n            if (supremeParallaxExtensionEnabled) {\n              advancedTree = withSupremeParallaxAdvancedSettings(advancedTree);\n            }\n            if (supremePopupExtensionEnabled) {\n              advancedTree = withPopupAdvancedSettings(advancedTree);\n            }\n            return advancedTree;\n          })() : module.settings.advanced\n        }\n      };\n    }\n    (0,external_divi_moduleLibrary_namespaceObject.registerModule)(moduleToRegister.metadata, (0,lodash.omit)(moduleToRegister, ['metadata']));\n  });\n});\n\n//# sourceURL=webpack://divi-supreme/./packages/module-library/index.js_+_907_modules?\n}");

/***/ },

/***/ "./packages/module-library/line-hover/icon.js"
/*!****************************************************!*\
  !*** ./packages/module-library/line-hover/icon.js ***!
  \****************************************************/
() {

eval("{// import { addFilter } from '@wordpress/hooks';\n\n// addFilter( 'divi.iconLibrary.icon.map', 'dsmTextDivider', ( iconMap ) => {\n// \treturn {\n// \t\t...iconMap,\n// \t\t'divi-supreme/text-divider': {\n// \t\t\tname: 'divi-supreme/text-divider',\n// \t\t\tcomponent: () => (\n// \t\t\t\t<>\n// \t\t\t\t\t<path\n// \t\t\t\t\t\tfill=\"#5C1DB0\"\n// \t\t\t\t\t\td=\"M 12.082031 5.105469 C 11.671875 5.105469 11.335938 4.800781 11.335938 4.429688 C 11.335938 4.054688 11.671875 3.75 12.082031 3.75 C 12.492188 3.75 12.828125 4.054688 12.828125 4.429688 C 12.828125 4.800781 12.492188 5.105469 12.082031 5.105469 Z M 12.082031 4.128906 C 11.898438 4.128906 11.746094 4.265625 11.746094 4.433594 C 11.746094 4.601562 11.898438 4.738281 12.082031 4.738281 C 12.265625 4.738281 12.417969 4.601562 12.417969 4.433594 C 12.417969 4.265625 12.265625 4.128906 12.082031 4.128906 Z M 12.082031 4.128906 \"\n// \t\t\t\t\t/>\n// \t\t\t\t\t<path\n// \t\t\t\t\t\tfill=\"#5C1DB0\"\n// \t\t\t\t\t\td=\"M 3.34375 12.152344 C 2.972656 12.152344 2.667969 11.847656 2.667969 11.472656 C 2.667969 11.101562 2.972656 10.796875 3.34375 10.796875 C 3.71875 10.796875 4.023438 11.101562 4.023438 11.472656 C 4.027344 11.847656 3.722656 12.152344 3.34375 12.152344 Z M 3.34375 11.167969 C 3.175781 11.167969 3.039062 11.308594 3.039062 11.472656 C 3.039062 11.640625 3.175781 11.777344 3.34375 11.777344 C 3.511719 11.777344 3.648438 11.640625 3.648438 11.472656 C 3.648438 11.308594 3.511719 11.167969 3.34375 11.167969 Z M 3.34375 11.167969 \"\n// \t\t\t\t\t/>\n// \t\t\t\t\t<path\n// \t\t\t\t\t\tfill=\"#5C1DB0\"\n// \t\t\t\t\t\td=\"M 12.765625 13.777344 L 5.710938 13.777344 C 5.152344 13.777344 4.699219 13.320312 4.699219 12.761719 L 4.699219 3.683594 C 4.699219 3.121094 5.15625 2.667969 5.710938 2.667969 L 12.765625 2.667969 C 13.328125 2.667969 13.777344 3.125 13.777344 3.683594 L 13.777344 12.753906 C 13.777344 13.320312 13.320312 13.777344 12.765625 13.777344 Z M 5.710938 3.046875 C 5.363281 3.046875 5.082031 3.328125 5.082031 3.679688 L 5.082031 12.753906 C 5.082031 13.105469 5.363281 13.390625 5.710938 13.390625 L 12.765625 13.390625 C 13.113281 13.390625 13.394531 13.105469 13.394531 12.753906 L 13.394531 3.683594 C 13.394531 3.335938 13.113281 3.050781 12.765625 3.050781 L 5.710938 3.050781 Z M 5.710938 3.046875 \"\n// \t\t\t\t\t/>\n// \t\t\t\t\t<path\n// \t\t\t\t\t\tfill=\"#5C1DB0\"\n// \t\t\t\t\t\td=\"M 6.054688 6.191406 L 12.421875 6.191406 L 12.421875 6.597656 L 6.054688 6.597656 Z M 6.054688 6.191406 \"\n// \t\t\t\t\t/>\n// \t\t\t\t\t<path\n// \t\t\t\t\t\tfill=\"#5C1DB0\"\n// \t\t\t\t\t\td=\"M 6.054688 9.578125 L 12.421875 9.578125 L 12.421875 9.847656 L 6.054688 9.847656 Z M 6.054688 9.578125 \"\n// \t\t\t\t\t/>\n// \t\t\t\t\t<path\n// \t\t\t\t\t\tfill=\"#5C1DB0\"\n// \t\t\t\t\t\td=\"M 5.988281 7.890625 L 6.308594 7.890625 L 6.308594 8.273438 L 5.988281 8.273438 Z M 5.988281 7.890625 \"\n// \t\t\t\t\t/>\n// \t\t\t\t\t<path\n// \t\t\t\t\t\tfill=\"#5C1DB0\"\n// \t\t\t\t\t\td=\"M 11.460938 8.273438 L 10.816406 8.273438 L 10.816406 7.890625 L 11.460938 7.890625 Z M 10.171875 8.273438 L 9.527344 8.273438 L 9.527344 7.890625 L 10.171875 7.890625 Z M 8.886719 8.273438 L 8.242188 8.273438 L 8.242188 7.890625 L 8.886719 7.890625 Z M 7.597656 8.273438 L 6.953125 8.273438 L 6.953125 7.890625 L 7.597656 7.890625 Z M 7.597656 8.273438 \"\n// \t\t\t\t\t/>\n// \t\t\t\t\t<path\n// \t\t\t\t\t\tfill=\"#5C1DB0\"\n// \t\t\t\t\t\td=\"M 12.105469 7.890625 L 12.425781 7.890625 L 12.425781 8.273438 L 12.105469 8.273438 Z M 12.105469 7.890625 \"\n// \t\t\t\t\t/>\n// \t\t\t\t\t<path\n// \t\t\t\t\t\tfill=\"#5C1DB0\"\n// \t\t\t\t\t\td=\"M 5.988281 10.394531 L 12.417969 10.394531 L 12.417969 10.648438 L 5.988281 10.648438 Z M 5.988281 10.394531 \"\n// \t\t\t\t\t/>\n// \t\t\t\t</>\n// \t\t\t),\n// \t\t},\n// \t};\n// } );\n\n//# sourceURL=webpack://divi-supreme/./packages/module-library/line-hover/icon.js?\n}");

/***/ },

/***/ "./packages/module-library/on-scroll-header-animation/icon.js"
/*!********************************************************************!*\
  !*** ./packages/module-library/on-scroll-header-animation/icon.js ***!
  \********************************************************************/
() {

eval("{// import { addFilter } from '@wordpress/hooks';\n\n// addFilter( 'divi.iconLibrary.icon.map', 'dsmScrollImage', ( iconMap ) => {\n// \treturn {\n// \t\t...iconMap,\n// \t\t'divi-supreme/scroll-image': {\n// \t\t\tname: 'divi-supreme/scroll-image',\n\n// \t\t\tcomponent: () => (\n// \t\t\t\t<>\n// \t\t\t\t\t<path\n// \t\t\t\t\t\tfill=\"#5C1DB0\"\n// \t\t\t\t\t\td=\"M 4.328125 7.1875 C 4 7.1875 3.734375 6.917969 3.734375 6.589844 C 3.734375 6.261719 4 5.996094 4.328125 5.996094 C 4.65625 5.996094 4.925781 6.261719 4.925781 6.589844 C 4.929688 6.917969 4.660156 7.1875 4.328125 7.1875 Z M 4.328125 6.328125 C 4.183594 6.328125 4.0625 6.449219 4.0625 6.59375 C 4.0625 6.742188 4.183594 6.863281 4.328125 6.863281 C 4.476562 6.863281 4.597656 6.742188 4.597656 6.59375 C 4.597656 6.445312 4.476562 6.328125 4.328125 6.328125 Z M 4.328125 6.328125 \"\n// \t\t\t\t\t/>\n// \t\t\t\t\t<path\n// \t\t\t\t\t\tfill=\"#5C1DB0\"\n// \t\t\t\t\t\td=\"M 11.25 10.363281 C 10.925781 10.363281 10.65625 10.09375 10.65625 9.765625 C 10.65625 9.4375 10.925781 9.171875 11.25 9.171875 C 11.578125 9.171875 11.847656 9.4375 11.847656 9.765625 C 11.847656 10.09375 11.578125 10.363281 11.25 10.363281 Z M 11.25 9.5 C 11.105469 9.5 10.984375 9.621094 10.984375 9.765625 C 10.984375 9.914062 11.105469 10.035156 11.25 10.035156 C 11.398438 10.035156 11.519531 9.914062 11.519531 9.765625 C 11.515625 9.621094 11.398438 9.5 11.25 9.5 Z M 11.25 9.5 \"\n// \t\t\t\t\t/>\n// \t\t\t\t\t<path\n// \t\t\t\t\t\tfill=\"#5C1DB0\"\n// \t\t\t\t\t\td=\"M 8.234375 10.738281 C 8.160156 10.738281 8.085938 10.710938 8.03125 10.65625 L 5.371094 7.996094 C 5.265625 7.886719 5.265625 7.707031 5.371094 7.597656 C 5.425781 7.539062 5.496094 7.507812 5.574219 7.507812 C 5.652344 7.507812 5.726562 7.535156 5.777344 7.589844 L 8.234375 10.046875 L 10.738281 7.542969 L 10.753906 7.542969 C 10.863281 7.488281 10.996094 7.5 11.085938 7.589844 C 11.144531 7.644531 11.171875 7.714844 11.171875 7.792969 C 11.171875 7.871094 11.148438 7.941406 11.089844 7.996094 L 8.433594 10.65625 C 8.382812 10.707031 8.308594 10.738281 8.234375 10.738281 Z M 8.234375 10.738281 \"\n// \t\t\t\t\t/>\n// \t\t\t\t\t<path\n// \t\t\t\t\t\tfill=\"#5C1DB0\"\n// \t\t\t\t\t\td=\"M 8.234375 8.5625 C 8.160156 8.5625 8.085938 8.535156 8.03125 8.480469 L 5.371094 5.824219 C 5.265625 5.714844 5.265625 5.535156 5.371094 5.425781 C 5.480469 5.3125 5.660156 5.308594 5.777344 5.417969 L 8.234375 7.871094 L 10.738281 5.367188 L 10.753906 5.367188 C 10.867188 5.308594 11.007812 5.324219 11.101562 5.421875 C 11.207031 5.53125 11.207031 5.714844 11.089844 5.824219 L 8.4375 8.480469 C 8.382812 8.535156 8.308594 8.5625 8.234375 8.5625 Z M 8.234375 8.5625 \"\n// \t\t\t\t\t/>\n// \t\t\t\t\t<path\n// \t\t\t\t\t\tfill=\"#5C1DB0\"\n// \t\t\t\t\t\td=\"M 8.234375 10.738281 C 8.15625 10.738281 8.089844 10.707031 8.03125 10.65625 L 5.375 7.996094 C 5.316406 7.941406 5.292969 7.867188 5.292969 7.789062 C 5.292969 7.710938 5.320312 7.644531 5.378906 7.585938 C 5.488281 7.480469 5.664062 7.480469 5.773438 7.585938 L 8.230469 10.042969 L 10.683594 7.589844 C 10.738281 7.535156 10.808594 7.507812 10.890625 7.507812 C 10.96875 7.507812 11.035156 7.539062 11.09375 7.597656 C 11.199219 7.707031 11.199219 7.878906 11.09375 7.992188 L 8.433594 10.652344 C 8.382812 10.707031 8.308594 10.738281 8.234375 10.738281 Z M 8.234375 10.738281 \"\n// \t\t\t\t\t/>\n// \t\t\t\t\t<path\n// \t\t\t\t\t\tfill=\"#5C1DB0\"\n// \t\t\t\t\t\td=\"M 8.234375 8.5625 C 8.15625 8.5625 8.089844 8.53125 8.03125 8.480469 L 5.375 5.824219 C 5.320312 5.765625 5.292969 5.695312 5.292969 5.617188 C 5.292969 5.542969 5.320312 5.472656 5.378906 5.417969 C 5.488281 5.308594 5.664062 5.308594 5.773438 5.417969 L 8.230469 7.871094 L 10.683594 5.421875 C 10.789062 5.308594 10.972656 5.308594 11.085938 5.417969 C 11.140625 5.46875 11.171875 5.542969 11.171875 5.617188 C 11.171875 5.695312 11.144531 5.765625 11.089844 5.820312 L 8.429688 8.484375 C 8.382812 8.53125 8.308594 8.5625 8.234375 8.5625 Z M 10.925781 5.652344 C 10.921875 5.652344 10.925781 5.652344 10.925781 5.652344 Z M 10.925781 5.652344 \"\n// \t\t\t\t\t/>\n// \t\t\t\t</>\n// \t\t\t),\n// \t\t},\n// \t};\n// } );\n\n//# sourceURL=webpack://divi-supreme/./packages/module-library/on-scroll-header-animation/icon.js?\n}");

/***/ },

/***/ "./node_modules/baffle/dist/baffle.min.js"
/*!************************************************!*\
  !*** ./node_modules/baffle/dist/baffle.min.js ***!
  \************************************************/
(module) {

eval("{/*!\n * baffle 0.3.6 - A tiny javascript library for obfuscating and revealing text in DOM elements.\n * Copyright (c) 2016 Cam Wiegert <cam@camwiegert.com> - https://camwiegert.github.io/baffle\n * License: MIT\n */\n!function(t,e){ true?module.exports=e():0}(this,function(){return function(t){function e(r){if(n[r])return n[r].exports;var i=n[r]={exports:{},id:r,loaded:!1};return t[r].call(i.exports,i,i.exports,e),i.loaded=!0,i.exports}var n={};return e.m=t,e.c=n,e.p=\"\",e(0)}([function(t,e,n){\"use strict\";function r(t){return t&&t.__esModule?t:{\"default\":t}}var i=n(2),o=r(i);t.exports=o[\"default\"]},function(t,e){\"use strict\";function n(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);return t}function r(t,e){return t.split(\"\").map(e).join(\"\")}function i(t){return t[Math.floor(Math.random()*t.length)]}function o(t,e){for(var n=0,r=t.length;n<r;n++)e(t[n],n)}function u(t){return t.map(function(t,e){return!!t&&e}).filter(function(t){return t!==!1})}function s(t){return\"string\"==typeof t?[].slice.call(document.querySelectorAll(t)):[NodeList,HTMLCollection].some(function(e){return t instanceof e})?[].slice.call(t):t.nodeType?[t]:t}Object.defineProperty(e,\"__esModule\",{value:!0}),e.extend=n,e.mapString=r,e.sample=i,e.each=o,e.getTruthyIndices=u,e.getElements=s},function(t,e,n){\"use strict\";function r(t){return t&&t.__esModule?t:{\"default\":t}}function i(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}Object.defineProperty(e,\"__esModule\",{value:!0});var o=n(1),u=n(3),s=r(u),c={characters:\"AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz~!@#$%^&*()-+=[]{}|;:,./<>?\",exclude:[\" \"],speed:50},a=function(){function t(e,n){i(this,t),this.options=(0,o.extend)(Object.create(c),n),this.elements=(0,o.getElements)(e).map(s[\"default\"]),this.running=!1}return t.prototype.once=function(){var t=this;return(0,o.each)(this.elements,function(e){return e.write(t.options.characters,t.options.exclude)}),this.running=!0,this},t.prototype.start=function(){var t=this;return clearInterval(this.interval),(0,o.each)(this.elements,function(t){return t.init()}),this.interval=setInterval(function(){return t.once()},this.options.speed),this.running=!0,this},t.prototype.stop=function(){return clearInterval(this.interval),this.running=!1,this},t.prototype.set=function(t){return(0,o.extend)(this.options,t),this.running&&this.start(),this},t.prototype.text=function(t){var e=this;return(0,o.each)(this.elements,function(n){n.text(t(n.value)),e.running||n.write()}),this},t.prototype.reveal=function(){var t=this,e=arguments.length<=0||void 0===arguments[0]?0:arguments[0],n=arguments.length<=1||void 0===arguments[1]?0:arguments[1],r=e/this.options.speed||1,i=function(){clearInterval(t.interval),t.running=!0,t.interval=setInterval(function(){var e=t.elements.filter(function(t){return!t.bitmap.every(function(t){return!t})});(0,o.each)(e,function(e){var n=Math.ceil(e.value.length/r);e.decay(n).write(t.options.characters,t.options.exclude)}),e.length||(t.stop(),(0,o.each)(t.elements,function(t){return t.init()}))},t.options.speed)};return setTimeout(i,n),this},t}();e[\"default\"]=function(t,e){return new a(t,e)}},function(t,e,n){\"use strict\";function r(t,e){if(!t)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return!e||\"object\"!=typeof e&&\"function\"!=typeof e?t:e}function i(t,e){if(\"function\"!=typeof e&&null!==e)throw new TypeError(\"Super expression must either be null or a function, not \"+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}function o(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}Object.defineProperty(e,\"__esModule\",{value:!0});var u=n(1),s=function(){function t(e){o(this,t),this.value=e,this.init()}return t.prototype.init=function(){return this.bitmap=this.value.split(\"\").map(function(){return 1}),this},t.prototype.render=function(){var t=this,e=arguments.length<=0||void 0===arguments[0]?[]:arguments[0],n=arguments.length<=1||void 0===arguments[1]?[]:arguments[1];return e.length?(0,u.mapString)(this.value,function(r,i){return n.indexOf(r)>-1?r:t.bitmap[i]?(0,u.sample)(e):r}):this.value},t.prototype.decay=function(){for(var t=arguments.length<=0||void 0===arguments[0]?1:arguments[0];t--;){var e=(0,u.getTruthyIndices)(this.bitmap);this.bitmap[(0,u.sample)(e)]=0}return this},t.prototype.text=function(){var t=arguments.length<=0||void 0===arguments[0]?this.value:arguments[0];return this.value=t,this.init(),this},t}(),c=function(t){function e(n){o(this,e);var i=r(this,t.call(this,n.textContent));return i.element=n,i}return i(e,t),e.prototype.write=function(t,e){return this.element.textContent=this.render(t,e),this},e}(s);e[\"default\"]=function(t){return new c(t)}}])});\n\n//# sourceURL=webpack://divi-supreme/./node_modules/baffle/dist/baffle.min.js?\n}");

/***/ },

/***/ "./node_modules/desandro-matches-selector/matches-selector.js"
/*!********************************************************************!*\
  !*** ./node_modules/desandro-matches-selector/matches-selector.js ***!
  \********************************************************************/
(module, exports, __webpack_require__) {

eval("{var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;/**\n * matchesSelector v2.0.2\n * matchesSelector( element, '.selector' )\n * MIT license\n */\n\n/*jshint browser: true, strict: true, undef: true, unused: true */\n\n( function( window, factory ) {\n  /*global define: false, module: false */\n  'use strict';\n  // universal module definition\n  if ( true ) {\n    // AMD\n    !(__WEBPACK_AMD_DEFINE_FACTORY__ = (factory),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?\n\t\t(__WEBPACK_AMD_DEFINE_FACTORY__.call(exports, __webpack_require__, exports, module)) :\n\t\t__WEBPACK_AMD_DEFINE_FACTORY__),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n  } else // removed by dead control flow\n{}\n\n}( window, function factory() {\n  'use strict';\n\n  var matchesMethod = ( function() {\n    var ElemProto = window.Element.prototype;\n    // check for the standard method name first\n    if ( ElemProto.matches ) {\n      return 'matches';\n    }\n    // check un-prefixed\n    if ( ElemProto.matchesSelector ) {\n      return 'matchesSelector';\n    }\n    // check vendor prefixes\n    var prefixes = [ 'webkit', 'moz', 'ms', 'o' ];\n\n    for ( var i=0; i < prefixes.length; i++ ) {\n      var prefix = prefixes[i];\n      var method = prefix + 'MatchesSelector';\n      if ( ElemProto[ method ] ) {\n        return method;\n      }\n    }\n  })();\n\n  return function matchesSelector( elem, selector ) {\n    return elem[ matchesMethod ]( selector );\n  };\n\n}));\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/desandro-matches-selector/matches-selector.js?\n}");

/***/ },

/***/ "./node_modules/ev-emitter/ev-emitter.js"
/*!***********************************************!*\
  !*** ./node_modules/ev-emitter/ev-emitter.js ***!
  \***********************************************/
(module) {

eval("{/**\n * EvEmitter v2.1.1\n * Lil' event emitter\n * MIT License\n */\n\n( function( global, factory ) {\n  // universal module definition\n  if (  true && module.exports ) {\n    // CommonJS - Browserify, Webpack\n    module.exports = factory();\n  } else {\n    // Browser globals\n    global.EvEmitter = factory();\n  }\n\n}( typeof window != 'undefined' ? window : this, function() {\n\nfunction EvEmitter() {}\n\nlet proto = EvEmitter.prototype;\n\nproto.on = function( eventName, listener ) {\n  if ( !eventName || !listener ) return this;\n\n  // set events hash\n  let events = this._events = this._events || {};\n  // set listeners array\n  let listeners = events[ eventName ] = events[ eventName ] || [];\n  // only add once\n  if ( !listeners.includes( listener ) ) {\n    listeners.push( listener );\n  }\n\n  return this;\n};\n\nproto.once = function( eventName, listener ) {\n  if ( !eventName || !listener ) return this;\n\n  // add event\n  this.on( eventName, listener );\n  // set once flag\n  // set onceEvents hash\n  let onceEvents = this._onceEvents = this._onceEvents || {};\n  // set onceListeners object\n  let onceListeners = onceEvents[ eventName ] = onceEvents[ eventName ] || {};\n  // set flag\n  onceListeners[ listener ] = true;\n\n  return this;\n};\n\nproto.off = function( eventName, listener ) {\n  let listeners = this._events && this._events[ eventName ];\n  if ( !listeners || !listeners.length ) return this;\n\n  let index = listeners.indexOf( listener );\n  if ( index != -1 ) {\n    listeners.splice( index, 1 );\n  }\n\n  return this;\n};\n\nproto.emitEvent = function( eventName, args ) {\n  let listeners = this._events && this._events[ eventName ];\n  if ( !listeners || !listeners.length ) return this;\n\n  // copy over to avoid interference if .off() in listener\n  listeners = listeners.slice( 0 );\n  args = args || [];\n  // once stuff\n  let onceListeners = this._onceEvents && this._onceEvents[ eventName ];\n\n  for ( let listener of listeners ) {\n    let isOnce = onceListeners && onceListeners[ listener ];\n    if ( isOnce ) {\n      // remove listener\n      // remove before trigger to prevent recursion\n      this.off( eventName, listener );\n      // unset once flag\n      delete onceListeners[ listener ];\n    }\n    // trigger listener\n    listener.apply( this, args );\n  }\n\n  return this;\n};\n\nproto.allOff = function() {\n  delete this._events;\n  delete this._onceEvents;\n  return this;\n};\n\nreturn EvEmitter;\n\n} ) );\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/ev-emitter/ev-emitter.js?\n}");

/***/ },

/***/ "./node_modules/fizzy-ui-utils/utils.js"
/*!**********************************************!*\
  !*** ./node_modules/fizzy-ui-utils/utils.js ***!
  \**********************************************/
(module, exports, __webpack_require__) {

eval("{var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/**\n * Fizzy UI utils v2.0.7\n * MIT license\n */\n\n/*jshint browser: true, undef: true, unused: true, strict: true */\n\n( function( window, factory ) {\n  // universal module definition\n  /*jshint strict: false */ /*globals define, module, require */\n\n  if ( true ) {\n    // AMD\n    !(__WEBPACK_AMD_DEFINE_ARRAY__ = [\n      __webpack_require__(/*! desandro-matches-selector/matches-selector */ \"./node_modules/desandro-matches-selector/matches-selector.js\")\n    ], __WEBPACK_AMD_DEFINE_RESULT__ = (function( matchesSelector ) {\n      return factory( window, matchesSelector );\n    }).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n  } else // removed by dead control flow\n{}\n\n}( window, function factory( window, matchesSelector ) {\n\n'use strict';\n\nvar utils = {};\n\n// ----- extend ----- //\n\n// extends objects\nutils.extend = function( a, b ) {\n  for ( var prop in b ) {\n    a[ prop ] = b[ prop ];\n  }\n  return a;\n};\n\n// ----- modulo ----- //\n\nutils.modulo = function( num, div ) {\n  return ( ( num % div ) + div ) % div;\n};\n\n// ----- makeArray ----- //\n\nvar arraySlice = Array.prototype.slice;\n\n// turn element or nodeList into an array\nutils.makeArray = function( obj ) {\n  if ( Array.isArray( obj ) ) {\n    // use object if already an array\n    return obj;\n  }\n  // return empty array if undefined or null. #6\n  if ( obj === null || obj === undefined ) {\n    return [];\n  }\n\n  var isArrayLike = typeof obj == 'object' && typeof obj.length == 'number';\n  if ( isArrayLike ) {\n    // convert nodeList to array\n    return arraySlice.call( obj );\n  }\n\n  // array of single index\n  return [ obj ];\n};\n\n// ----- removeFrom ----- //\n\nutils.removeFrom = function( ary, obj ) {\n  var index = ary.indexOf( obj );\n  if ( index != -1 ) {\n    ary.splice( index, 1 );\n  }\n};\n\n// ----- getParent ----- //\n\nutils.getParent = function( elem, selector ) {\n  while ( elem.parentNode && elem != document.body ) {\n    elem = elem.parentNode;\n    if ( matchesSelector( elem, selector ) ) {\n      return elem;\n    }\n  }\n};\n\n// ----- getQueryElement ----- //\n\n// use element as selector string\nutils.getQueryElement = function( elem ) {\n  if ( typeof elem == 'string' ) {\n    return document.querySelector( elem );\n  }\n  return elem;\n};\n\n// ----- handleEvent ----- //\n\n// enable .ontype to trigger from .addEventListener( elem, 'type' )\nutils.handleEvent = function( event ) {\n  var method = 'on' + event.type;\n  if ( this[ method ] ) {\n    this[ method ]( event );\n  }\n};\n\n// ----- filterFindElements ----- //\n\nutils.filterFindElements = function( elems, selector ) {\n  // make array of elems\n  elems = utils.makeArray( elems );\n  var ffElems = [];\n\n  elems.forEach( function( elem ) {\n    // check that elem is an actual element\n    if ( !( elem instanceof HTMLElement ) ) {\n      return;\n    }\n    // add elem if no selector\n    if ( !selector ) {\n      ffElems.push( elem );\n      return;\n    }\n    // filter & find items if we have a selector\n    // filter\n    if ( matchesSelector( elem, selector ) ) {\n      ffElems.push( elem );\n    }\n    // find children\n    var childElems = elem.querySelectorAll( selector );\n    // concat childElems to filterFound array\n    for ( var i=0; i < childElems.length; i++ ) {\n      ffElems.push( childElems[i] );\n    }\n  });\n\n  return ffElems;\n};\n\n// ----- debounceMethod ----- //\n\nutils.debounceMethod = function( _class, methodName, threshold ) {\n  threshold = threshold || 100;\n  // original method\n  var method = _class.prototype[ methodName ];\n  var timeoutName = methodName + 'Timeout';\n\n  _class.prototype[ methodName ] = function() {\n    var timeout = this[ timeoutName ];\n    clearTimeout( timeout );\n\n    var args = arguments;\n    var _this = this;\n    this[ timeoutName ] = setTimeout( function() {\n      method.apply( _this, args );\n      delete _this[ timeoutName ];\n    }, threshold );\n  };\n};\n\n// ----- docReady ----- //\n\nutils.docReady = function( callback ) {\n  var readyState = document.readyState;\n  if ( readyState == 'complete' || readyState == 'interactive' ) {\n    // do async to allow for other scripts to run. metafizzy/flickity#441\n    setTimeout( callback );\n  } else {\n    document.addEventListener( 'DOMContentLoaded', callback );\n  }\n};\n\n// ----- htmlInit ----- //\n\n// http://jamesroberts.name/blog/2010/02/22/string-functions-for-javascript-trim-to-camel-case-to-dashed-and-to-underscore/\nutils.toDashed = function( str ) {\n  return str.replace( /(.)([A-Z])/g, function( match, $1, $2 ) {\n    return $1 + '-' + $2;\n  }).toLowerCase();\n};\n\nvar console = window.console;\n/**\n * allow user to initialize classes via [data-namespace] or .js-namespace class\n * htmlInit( Widget, 'widgetName' )\n * options are parsed from data-namespace-options\n */\nutils.htmlInit = function( WidgetClass, namespace ) {\n  utils.docReady( function() {\n    var dashedNamespace = utils.toDashed( namespace );\n    var dataAttr = 'data-' + dashedNamespace;\n    var dataAttrElems = document.querySelectorAll( '[' + dataAttr + ']' );\n    var jsDashElems = document.querySelectorAll( '.js-' + dashedNamespace );\n    var elems = utils.makeArray( dataAttrElems )\n      .concat( utils.makeArray( jsDashElems ) );\n    var dataOptionsAttr = dataAttr + '-options';\n    var jQuery = window.jQuery;\n\n    elems.forEach( function( elem ) {\n      var attr = elem.getAttribute( dataAttr ) ||\n        elem.getAttribute( dataOptionsAttr );\n      var options;\n      try {\n        options = attr && JSON.parse( attr );\n      } catch ( error ) {\n        // log error, do not initialize\n        if ( console ) {\n          console.error( 'Error parsing ' + dataAttr + ' on ' + elem.className +\n          ': ' + error );\n        }\n        return;\n      }\n      // initialize\n      var instance = new WidgetClass( elem, options );\n      // make available via $().data('namespace')\n      if ( jQuery ) {\n        jQuery.data( elem, namespace, instance );\n      }\n    });\n\n  });\n};\n\n// -----  ----- //\n\nreturn utils;\n\n}));\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/fizzy-ui-utils/utils.js?\n}");

/***/ },

/***/ "./node_modules/get-size/get-size.js"
/*!*******************************************!*\
  !*** ./node_modules/get-size/get-size.js ***!
  \*******************************************/
(module, exports, __webpack_require__) {

eval("{var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!\n * getSize v2.0.3\n * measure size of elements\n * MIT license\n */\n\n/* jshint browser: true, strict: true, undef: true, unused: true */\n/* globals console: false */\n\n( function( window, factory ) {\n  /* jshint strict: false */ /* globals define, module */\n  if ( true ) {\n    // AMD\n    !(__WEBPACK_AMD_DEFINE_FACTORY__ = (factory),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?\n\t\t(__WEBPACK_AMD_DEFINE_FACTORY__.call(exports, __webpack_require__, exports, module)) :\n\t\t__WEBPACK_AMD_DEFINE_FACTORY__),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n  } else // removed by dead control flow\n{}\n\n})( window, function factory() {\n'use strict';\n\n// -------------------------- helpers -------------------------- //\n\n// get a number from a string, not a percentage\nfunction getStyleSize( value ) {\n  var num = parseFloat( value );\n  // not a percent like '100%', and a number\n  var isValid = value.indexOf('%') == -1 && !isNaN( num );\n  return isValid && num;\n}\n\nfunction noop() {}\n\nvar logError = typeof console == 'undefined' ? noop :\n  function( message ) {\n    console.error( message );\n  };\n\n// -------------------------- measurements -------------------------- //\n\nvar measurements = [\n  'paddingLeft',\n  'paddingRight',\n  'paddingTop',\n  'paddingBottom',\n  'marginLeft',\n  'marginRight',\n  'marginTop',\n  'marginBottom',\n  'borderLeftWidth',\n  'borderRightWidth',\n  'borderTopWidth',\n  'borderBottomWidth'\n];\n\nvar measurementsLength = measurements.length;\n\nfunction getZeroSize() {\n  var size = {\n    width: 0,\n    height: 0,\n    innerWidth: 0,\n    innerHeight: 0,\n    outerWidth: 0,\n    outerHeight: 0\n  };\n  for ( var i=0; i < measurementsLength; i++ ) {\n    var measurement = measurements[i];\n    size[ measurement ] = 0;\n  }\n  return size;\n}\n\n// -------------------------- getStyle -------------------------- //\n\n/**\n * getStyle, get style of element, check for Firefox bug\n * https://bugzilla.mozilla.org/show_bug.cgi?id=548397\n */\nfunction getStyle( elem ) {\n  var style = getComputedStyle( elem );\n  if ( !style ) {\n    logError( 'Style returned ' + style +\n      '. Are you running this code in a hidden iframe on Firefox? ' +\n      'See https://bit.ly/getsizebug1' );\n  }\n  return style;\n}\n\n// -------------------------- setup -------------------------- //\n\nvar isSetup = false;\n\nvar isBoxSizeOuter;\n\n/**\n * setup\n * check isBoxSizerOuter\n * do on first getSize() rather than on page load for Firefox bug\n */\nfunction setup() {\n  // setup once\n  if ( isSetup ) {\n    return;\n  }\n  isSetup = true;\n\n  // -------------------------- box sizing -------------------------- //\n\n  /**\n   * Chrome & Safari measure the outer-width on style.width on border-box elems\n   * IE11 & Firefox<29 measures the inner-width\n   */\n  var div = document.createElement('div');\n  div.style.width = '200px';\n  div.style.padding = '1px 2px 3px 4px';\n  div.style.borderStyle = 'solid';\n  div.style.borderWidth = '1px 2px 3px 4px';\n  div.style.boxSizing = 'border-box';\n\n  var body = document.body || document.documentElement;\n  body.appendChild( div );\n  var style = getStyle( div );\n  // round value for browser zoom. desandro/masonry#928\n  isBoxSizeOuter = Math.round( getStyleSize( style.width ) ) == 200;\n  getSize.isBoxSizeOuter = isBoxSizeOuter;\n\n  body.removeChild( div );\n}\n\n// -------------------------- getSize -------------------------- //\n\nfunction getSize( elem ) {\n  setup();\n\n  // use querySeletor if elem is string\n  if ( typeof elem == 'string' ) {\n    elem = document.querySelector( elem );\n  }\n\n  // do not proceed on non-objects\n  if ( !elem || typeof elem != 'object' || !elem.nodeType ) {\n    return;\n  }\n\n  var style = getStyle( elem );\n\n  // if hidden, everything is 0\n  if ( style.display == 'none' ) {\n    return getZeroSize();\n  }\n\n  var size = {};\n  size.width = elem.offsetWidth;\n  size.height = elem.offsetHeight;\n\n  var isBorderBox = size.isBorderBox = style.boxSizing == 'border-box';\n\n  // get all measurements\n  for ( var i=0; i < measurementsLength; i++ ) {\n    var measurement = measurements[i];\n    var value = style[ measurement ];\n    var num = parseFloat( value );\n    // any 'auto', 'medium' value will be 0\n    size[ measurement ] = !isNaN( num ) ? num : 0;\n  }\n\n  var paddingWidth = size.paddingLeft + size.paddingRight;\n  var paddingHeight = size.paddingTop + size.paddingBottom;\n  var marginWidth = size.marginLeft + size.marginRight;\n  var marginHeight = size.marginTop + size.marginBottom;\n  var borderWidth = size.borderLeftWidth + size.borderRightWidth;\n  var borderHeight = size.borderTopWidth + size.borderBottomWidth;\n\n  var isBorderBoxSizeOuter = isBorderBox && isBoxSizeOuter;\n\n  // overwrite width and height if we can get it from style\n  var styleWidth = getStyleSize( style.width );\n  if ( styleWidth !== false ) {\n    size.width = styleWidth +\n      // add padding and border unless it's already including it\n      ( isBorderBoxSizeOuter ? 0 : paddingWidth + borderWidth );\n  }\n\n  var styleHeight = getStyleSize( style.height );\n  if ( styleHeight !== false ) {\n    size.height = styleHeight +\n      // add padding and border unless it's already including it\n      ( isBorderBoxSizeOuter ? 0 : paddingHeight + borderHeight );\n  }\n\n  size.innerWidth = size.width - ( paddingWidth + borderWidth );\n  size.innerHeight = size.height - ( paddingHeight + borderHeight );\n\n  size.outerWidth = size.width + marginWidth;\n  size.outerHeight = size.height + marginHeight;\n\n  return size;\n}\n\nreturn getSize;\n\n});\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/get-size/get-size.js?\n}");

/***/ },

/***/ "./node_modules/imagesloaded/imagesloaded.js"
/*!***************************************************!*\
  !*** ./node_modules/imagesloaded/imagesloaded.js ***!
  \***************************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{/*!\n * imagesLoaded v5.0.0\n * JavaScript is all like \"You images are done yet or what?\"\n * MIT License\n */\n\n( function( window, factory ) {\n  // universal module definition\n  if (  true && module.exports ) {\n    // CommonJS\n    module.exports = factory( window, __webpack_require__(/*! ev-emitter */ \"./node_modules/ev-emitter/ev-emitter.js\") );\n  } else {\n    // browser global\n    window.imagesLoaded = factory( window, window.EvEmitter );\n  }\n\n} )( typeof window !== 'undefined' ? window : this,\n    function factory( window, EvEmitter ) {\n\nlet $ = window.jQuery;\nlet console = window.console;\n\n// -------------------------- helpers -------------------------- //\n\n// turn element or nodeList into an array\nfunction makeArray( obj ) {\n  // use object if already an array\n  if ( Array.isArray( obj ) ) return obj;\n\n  let isArrayLike = typeof obj == 'object' && typeof obj.length == 'number';\n  // convert nodeList to array\n  if ( isArrayLike ) return [ ...obj ];\n\n  // array of single index\n  return [ obj ];\n}\n\n// -------------------------- imagesLoaded -------------------------- //\n\n/**\n * @param {[Array, Element, NodeList, String]} elem\n * @param {[Object, Function]} options - if function, use as callback\n * @param {Function} onAlways - callback function\n * @returns {ImagesLoaded}\n */\nfunction ImagesLoaded( elem, options, onAlways ) {\n  // coerce ImagesLoaded() without new, to be new ImagesLoaded()\n  if ( !( this instanceof ImagesLoaded ) ) {\n    return new ImagesLoaded( elem, options, onAlways );\n  }\n  // use elem as selector string\n  let queryElem = elem;\n  if ( typeof elem == 'string' ) {\n    queryElem = document.querySelectorAll( elem );\n  }\n  // bail if bad element\n  if ( !queryElem ) {\n    console.error(`Bad element for imagesLoaded ${queryElem || elem}`);\n    return;\n  }\n\n  this.elements = makeArray( queryElem );\n  this.options = {};\n  // shift arguments if no options set\n  if ( typeof options == 'function' ) {\n    onAlways = options;\n  } else {\n    Object.assign( this.options, options );\n  }\n\n  if ( onAlways ) this.on( 'always', onAlways );\n\n  this.getImages();\n  // add jQuery Deferred object\n  if ( $ ) this.jqDeferred = new $.Deferred();\n\n  // HACK check async to allow time to bind listeners\n  setTimeout( this.check.bind( this ) );\n}\n\nImagesLoaded.prototype = Object.create( EvEmitter.prototype );\n\nImagesLoaded.prototype.getImages = function() {\n  this.images = [];\n\n  // filter & find items if we have an item selector\n  this.elements.forEach( this.addElementImages, this );\n};\n\nconst elementNodeTypes = [ 1, 9, 11 ];\n\n/**\n * @param {Node} elem\n */\nImagesLoaded.prototype.addElementImages = function( elem ) {\n  // filter siblings\n  if ( elem.nodeName === 'IMG' ) {\n    this.addImage( elem );\n  }\n  // get background image on element\n  if ( this.options.background === true ) {\n    this.addElementBackgroundImages( elem );\n  }\n\n  // find children\n  // no non-element nodes, #143\n  let { nodeType } = elem;\n  if ( !nodeType || !elementNodeTypes.includes( nodeType ) ) return;\n\n  let childImgs = elem.querySelectorAll('img');\n  // concat childElems to filterFound array\n  for ( let img of childImgs ) {\n    this.addImage( img );\n  }\n\n  // get child background images\n  if ( typeof this.options.background == 'string' ) {\n    let children = elem.querySelectorAll( this.options.background );\n    for ( let child of children ) {\n      this.addElementBackgroundImages( child );\n    }\n  }\n};\n\nconst reURL = /url\\((['\"])?(.*?)\\1\\)/gi;\n\nImagesLoaded.prototype.addElementBackgroundImages = function( elem ) {\n  let style = getComputedStyle( elem );\n  // Firefox returns null if in a hidden iframe https://bugzil.la/548397\n  if ( !style ) return;\n\n  // get url inside url(\"...\")\n  let matches = reURL.exec( style.backgroundImage );\n  while ( matches !== null ) {\n    let url = matches && matches[2];\n    if ( url ) {\n      this.addBackground( url, elem );\n    }\n    matches = reURL.exec( style.backgroundImage );\n  }\n};\n\n/**\n * @param {Image} img\n */\nImagesLoaded.prototype.addImage = function( img ) {\n  let loadingImage = new LoadingImage( img );\n  this.images.push( loadingImage );\n};\n\nImagesLoaded.prototype.addBackground = function( url, elem ) {\n  let background = new Background( url, elem );\n  this.images.push( background );\n};\n\nImagesLoaded.prototype.check = function() {\n  this.progressedCount = 0;\n  this.hasAnyBroken = false;\n  // complete if no images\n  if ( !this.images.length ) {\n    this.complete();\n    return;\n  }\n\n  /* eslint-disable-next-line func-style */\n  let onProgress = ( image, elem, message ) => {\n    // HACK - Chrome triggers event before object properties have changed. #83\n    setTimeout( () => {\n      this.progress( image, elem, message );\n    } );\n  };\n\n  this.images.forEach( function( loadingImage ) {\n    loadingImage.once( 'progress', onProgress );\n    loadingImage.check();\n  } );\n};\n\nImagesLoaded.prototype.progress = function( image, elem, message ) {\n  this.progressedCount++;\n  this.hasAnyBroken = this.hasAnyBroken || !image.isLoaded;\n  // progress event\n  this.emitEvent( 'progress', [ this, image, elem ] );\n  if ( this.jqDeferred && this.jqDeferred.notify ) {\n    this.jqDeferred.notify( this, image );\n  }\n  // check if completed\n  if ( this.progressedCount === this.images.length ) {\n    this.complete();\n  }\n\n  if ( this.options.debug && console ) {\n    console.log( `progress: ${message}`, image, elem );\n  }\n};\n\nImagesLoaded.prototype.complete = function() {\n  let eventName = this.hasAnyBroken ? 'fail' : 'done';\n  this.isComplete = true;\n  this.emitEvent( eventName, [ this ] );\n  this.emitEvent( 'always', [ this ] );\n  if ( this.jqDeferred ) {\n    let jqMethod = this.hasAnyBroken ? 'reject' : 'resolve';\n    this.jqDeferred[ jqMethod ]( this );\n  }\n};\n\n// --------------------------  -------------------------- //\n\nfunction LoadingImage( img ) {\n  this.img = img;\n}\n\nLoadingImage.prototype = Object.create( EvEmitter.prototype );\n\nLoadingImage.prototype.check = function() {\n  // If complete is true and browser supports natural sizes,\n  // try to check for image status manually.\n  let isComplete = this.getIsImageComplete();\n  if ( isComplete ) {\n    // report based on naturalWidth\n    this.confirm( this.img.naturalWidth !== 0, 'naturalWidth' );\n    return;\n  }\n\n  // If none of the checks above matched, simulate loading on detached element.\n  this.proxyImage = new Image();\n  // add crossOrigin attribute. #204\n  if ( this.img.crossOrigin ) {\n    this.proxyImage.crossOrigin = this.img.crossOrigin;\n  }\n  this.proxyImage.addEventListener( 'load', this );\n  this.proxyImage.addEventListener( 'error', this );\n  // bind to image as well for Firefox. #191\n  this.img.addEventListener( 'load', this );\n  this.img.addEventListener( 'error', this );\n  this.proxyImage.src = this.img.currentSrc || this.img.src;\n};\n\nLoadingImage.prototype.getIsImageComplete = function() {\n  // check for non-zero, non-undefined naturalWidth\n  // fixes Safari+InfiniteScroll+Masonry bug infinite-scroll#671\n  return this.img.complete && this.img.naturalWidth;\n};\n\nLoadingImage.prototype.confirm = function( isLoaded, message ) {\n  this.isLoaded = isLoaded;\n  let { parentNode } = this.img;\n  // emit progress with parent <picture> or self <img>\n  let elem = parentNode.nodeName === 'PICTURE' ? parentNode : this.img;\n  this.emitEvent( 'progress', [ this, elem, message ] );\n};\n\n// ----- events ----- //\n\n// trigger specified handler for event type\nLoadingImage.prototype.handleEvent = function( event ) {\n  let method = 'on' + event.type;\n  if ( this[ method ] ) {\n    this[ method ]( event );\n  }\n};\n\nLoadingImage.prototype.onload = function() {\n  this.confirm( true, 'onload' );\n  this.unbindEvents();\n};\n\nLoadingImage.prototype.onerror = function() {\n  this.confirm( false, 'onerror' );\n  this.unbindEvents();\n};\n\nLoadingImage.prototype.unbindEvents = function() {\n  this.proxyImage.removeEventListener( 'load', this );\n  this.proxyImage.removeEventListener( 'error', this );\n  this.img.removeEventListener( 'load', this );\n  this.img.removeEventListener( 'error', this );\n};\n\n// -------------------------- Background -------------------------- //\n\nfunction Background( url, element ) {\n  this.url = url;\n  this.element = element;\n  this.img = new Image();\n}\n\n// inherit LoadingImage prototype\nBackground.prototype = Object.create( LoadingImage.prototype );\n\nBackground.prototype.check = function() {\n  this.img.addEventListener( 'load', this );\n  this.img.addEventListener( 'error', this );\n  this.img.src = this.url;\n  // check if image is already complete\n  let isComplete = this.getIsImageComplete();\n  if ( isComplete ) {\n    this.confirm( this.img.naturalWidth !== 0, 'naturalWidth' );\n    this.unbindEvents();\n  }\n};\n\nBackground.prototype.unbindEvents = function() {\n  this.img.removeEventListener( 'load', this );\n  this.img.removeEventListener( 'error', this );\n};\n\nBackground.prototype.confirm = function( isLoaded, message ) {\n  this.isLoaded = isLoaded;\n  this.emitEvent( 'progress', [ this, this.element, message ] );\n};\n\n// -------------------------- jQuery -------------------------- //\n\nImagesLoaded.makeJQueryPlugin = function( jQuery ) {\n  jQuery = jQuery || window.jQuery;\n  if ( !jQuery ) return;\n\n  // set local variable\n  $ = jQuery;\n  // $().imagesLoaded()\n  $.fn.imagesLoaded = function( options, onAlways ) {\n    let instance = new ImagesLoaded( this, options, onAlways );\n    return instance.jqDeferred.promise( $( this ) );\n  };\n};\n// try making plugin\nImagesLoaded.makeJQueryPlugin();\n\n// --------------------------  -------------------------- //\n\nreturn ImagesLoaded;\n\n} );\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/imagesloaded/imagesloaded.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_DataView.js"
/*!******************************************!*\
  !*** ./node_modules/lodash/_DataView.js ***!
  \******************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var getNative = __webpack_require__(/*! ./_getNative */ \"./node_modules/lodash/_getNative.js\"),\n    root = __webpack_require__(/*! ./_root */ \"./node_modules/lodash/_root.js\");\n\n/* Built-in method references that are verified to be native. */\nvar DataView = getNative(root, 'DataView');\n\nmodule.exports = DataView;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_DataView.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_Hash.js"
/*!**************************************!*\
  !*** ./node_modules/lodash/_Hash.js ***!
  \**************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var hashClear = __webpack_require__(/*! ./_hashClear */ \"./node_modules/lodash/_hashClear.js\"),\n    hashDelete = __webpack_require__(/*! ./_hashDelete */ \"./node_modules/lodash/_hashDelete.js\"),\n    hashGet = __webpack_require__(/*! ./_hashGet */ \"./node_modules/lodash/_hashGet.js\"),\n    hashHas = __webpack_require__(/*! ./_hashHas */ \"./node_modules/lodash/_hashHas.js\"),\n    hashSet = __webpack_require__(/*! ./_hashSet */ \"./node_modules/lodash/_hashSet.js\");\n\n/**\n * Creates a hash object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Hash(entries) {\n  var index = -1,\n      length = entries == null ? 0 : entries.length;\n\n  this.clear();\n  while (++index < length) {\n    var entry = entries[index];\n    this.set(entry[0], entry[1]);\n  }\n}\n\n// Add methods to `Hash`.\nHash.prototype.clear = hashClear;\nHash.prototype['delete'] = hashDelete;\nHash.prototype.get = hashGet;\nHash.prototype.has = hashHas;\nHash.prototype.set = hashSet;\n\nmodule.exports = Hash;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_Hash.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_ListCache.js"
/*!*******************************************!*\
  !*** ./node_modules/lodash/_ListCache.js ***!
  \*******************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var listCacheClear = __webpack_require__(/*! ./_listCacheClear */ \"./node_modules/lodash/_listCacheClear.js\"),\n    listCacheDelete = __webpack_require__(/*! ./_listCacheDelete */ \"./node_modules/lodash/_listCacheDelete.js\"),\n    listCacheGet = __webpack_require__(/*! ./_listCacheGet */ \"./node_modules/lodash/_listCacheGet.js\"),\n    listCacheHas = __webpack_require__(/*! ./_listCacheHas */ \"./node_modules/lodash/_listCacheHas.js\"),\n    listCacheSet = __webpack_require__(/*! ./_listCacheSet */ \"./node_modules/lodash/_listCacheSet.js\");\n\n/**\n * Creates an list cache object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction ListCache(entries) {\n  var index = -1,\n      length = entries == null ? 0 : entries.length;\n\n  this.clear();\n  while (++index < length) {\n    var entry = entries[index];\n    this.set(entry[0], entry[1]);\n  }\n}\n\n// Add methods to `ListCache`.\nListCache.prototype.clear = listCacheClear;\nListCache.prototype['delete'] = listCacheDelete;\nListCache.prototype.get = listCacheGet;\nListCache.prototype.has = listCacheHas;\nListCache.prototype.set = listCacheSet;\n\nmodule.exports = ListCache;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_ListCache.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_Map.js"
/*!*************************************!*\
  !*** ./node_modules/lodash/_Map.js ***!
  \*************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var getNative = __webpack_require__(/*! ./_getNative */ \"./node_modules/lodash/_getNative.js\"),\n    root = __webpack_require__(/*! ./_root */ \"./node_modules/lodash/_root.js\");\n\n/* Built-in method references that are verified to be native. */\nvar Map = getNative(root, 'Map');\n\nmodule.exports = Map;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_Map.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_MapCache.js"
/*!******************************************!*\
  !*** ./node_modules/lodash/_MapCache.js ***!
  \******************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var mapCacheClear = __webpack_require__(/*! ./_mapCacheClear */ \"./node_modules/lodash/_mapCacheClear.js\"),\n    mapCacheDelete = __webpack_require__(/*! ./_mapCacheDelete */ \"./node_modules/lodash/_mapCacheDelete.js\"),\n    mapCacheGet = __webpack_require__(/*! ./_mapCacheGet */ \"./node_modules/lodash/_mapCacheGet.js\"),\n    mapCacheHas = __webpack_require__(/*! ./_mapCacheHas */ \"./node_modules/lodash/_mapCacheHas.js\"),\n    mapCacheSet = __webpack_require__(/*! ./_mapCacheSet */ \"./node_modules/lodash/_mapCacheSet.js\");\n\n/**\n * Creates a map cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction MapCache(entries) {\n  var index = -1,\n      length = entries == null ? 0 : entries.length;\n\n  this.clear();\n  while (++index < length) {\n    var entry = entries[index];\n    this.set(entry[0], entry[1]);\n  }\n}\n\n// Add methods to `MapCache`.\nMapCache.prototype.clear = mapCacheClear;\nMapCache.prototype['delete'] = mapCacheDelete;\nMapCache.prototype.get = mapCacheGet;\nMapCache.prototype.has = mapCacheHas;\nMapCache.prototype.set = mapCacheSet;\n\nmodule.exports = MapCache;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_MapCache.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_Promise.js"
/*!*****************************************!*\
  !*** ./node_modules/lodash/_Promise.js ***!
  \*****************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var getNative = __webpack_require__(/*! ./_getNative */ \"./node_modules/lodash/_getNative.js\"),\n    root = __webpack_require__(/*! ./_root */ \"./node_modules/lodash/_root.js\");\n\n/* Built-in method references that are verified to be native. */\nvar Promise = getNative(root, 'Promise');\n\nmodule.exports = Promise;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_Promise.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_Set.js"
/*!*************************************!*\
  !*** ./node_modules/lodash/_Set.js ***!
  \*************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var getNative = __webpack_require__(/*! ./_getNative */ \"./node_modules/lodash/_getNative.js\"),\n    root = __webpack_require__(/*! ./_root */ \"./node_modules/lodash/_root.js\");\n\n/* Built-in method references that are verified to be native. */\nvar Set = getNative(root, 'Set');\n\nmodule.exports = Set;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_Set.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_SetCache.js"
/*!******************************************!*\
  !*** ./node_modules/lodash/_SetCache.js ***!
  \******************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var MapCache = __webpack_require__(/*! ./_MapCache */ \"./node_modules/lodash/_MapCache.js\"),\n    setCacheAdd = __webpack_require__(/*! ./_setCacheAdd */ \"./node_modules/lodash/_setCacheAdd.js\"),\n    setCacheHas = __webpack_require__(/*! ./_setCacheHas */ \"./node_modules/lodash/_setCacheHas.js\");\n\n/**\n *\n * Creates an array cache object to store unique values.\n *\n * @private\n * @constructor\n * @param {Array} [values] The values to cache.\n */\nfunction SetCache(values) {\n  var index = -1,\n      length = values == null ? 0 : values.length;\n\n  this.__data__ = new MapCache;\n  while (++index < length) {\n    this.add(values[index]);\n  }\n}\n\n// Add methods to `SetCache`.\nSetCache.prototype.add = SetCache.prototype.push = setCacheAdd;\nSetCache.prototype.has = setCacheHas;\n\nmodule.exports = SetCache;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_SetCache.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_Stack.js"
/*!***************************************!*\
  !*** ./node_modules/lodash/_Stack.js ***!
  \***************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var ListCache = __webpack_require__(/*! ./_ListCache */ \"./node_modules/lodash/_ListCache.js\"),\n    stackClear = __webpack_require__(/*! ./_stackClear */ \"./node_modules/lodash/_stackClear.js\"),\n    stackDelete = __webpack_require__(/*! ./_stackDelete */ \"./node_modules/lodash/_stackDelete.js\"),\n    stackGet = __webpack_require__(/*! ./_stackGet */ \"./node_modules/lodash/_stackGet.js\"),\n    stackHas = __webpack_require__(/*! ./_stackHas */ \"./node_modules/lodash/_stackHas.js\"),\n    stackSet = __webpack_require__(/*! ./_stackSet */ \"./node_modules/lodash/_stackSet.js\");\n\n/**\n * Creates a stack cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Stack(entries) {\n  var data = this.__data__ = new ListCache(entries);\n  this.size = data.size;\n}\n\n// Add methods to `Stack`.\nStack.prototype.clear = stackClear;\nStack.prototype['delete'] = stackDelete;\nStack.prototype.get = stackGet;\nStack.prototype.has = stackHas;\nStack.prototype.set = stackSet;\n\nmodule.exports = Stack;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_Stack.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_Symbol.js"
/*!****************************************!*\
  !*** ./node_modules/lodash/_Symbol.js ***!
  \****************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var root = __webpack_require__(/*! ./_root */ \"./node_modules/lodash/_root.js\");\n\n/** Built-in value references. */\nvar Symbol = root.Symbol;\n\nmodule.exports = Symbol;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_Symbol.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_Uint8Array.js"
/*!********************************************!*\
  !*** ./node_modules/lodash/_Uint8Array.js ***!
  \********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var root = __webpack_require__(/*! ./_root */ \"./node_modules/lodash/_root.js\");\n\n/** Built-in value references. */\nvar Uint8Array = root.Uint8Array;\n\nmodule.exports = Uint8Array;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_Uint8Array.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_WeakMap.js"
/*!*****************************************!*\
  !*** ./node_modules/lodash/_WeakMap.js ***!
  \*****************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var getNative = __webpack_require__(/*! ./_getNative */ \"./node_modules/lodash/_getNative.js\"),\n    root = __webpack_require__(/*! ./_root */ \"./node_modules/lodash/_root.js\");\n\n/* Built-in method references that are verified to be native. */\nvar WeakMap = getNative(root, 'WeakMap');\n\nmodule.exports = WeakMap;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_WeakMap.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_arrayFilter.js"
/*!*********************************************!*\
  !*** ./node_modules/lodash/_arrayFilter.js ***!
  \*********************************************/
(module) {

eval("{/**\n * A specialized version of `_.filter` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n */\nfunction arrayFilter(array, predicate) {\n  var index = -1,\n      length = array == null ? 0 : array.length,\n      resIndex = 0,\n      result = [];\n\n  while (++index < length) {\n    var value = array[index];\n    if (predicate(value, index, array)) {\n      result[resIndex++] = value;\n    }\n  }\n  return result;\n}\n\nmodule.exports = arrayFilter;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_arrayFilter.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_arrayLikeKeys.js"
/*!***********************************************!*\
  !*** ./node_modules/lodash/_arrayLikeKeys.js ***!
  \***********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var baseTimes = __webpack_require__(/*! ./_baseTimes */ \"./node_modules/lodash/_baseTimes.js\"),\n    isArguments = __webpack_require__(/*! ./isArguments */ \"./node_modules/lodash/isArguments.js\"),\n    isArray = __webpack_require__(/*! ./isArray */ \"./node_modules/lodash/isArray.js\"),\n    isBuffer = __webpack_require__(/*! ./isBuffer */ \"./node_modules/lodash/isBuffer.js\"),\n    isIndex = __webpack_require__(/*! ./_isIndex */ \"./node_modules/lodash/_isIndex.js\"),\n    isTypedArray = __webpack_require__(/*! ./isTypedArray */ \"./node_modules/lodash/isTypedArray.js\");\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Creates an array of the enumerable property names of the array-like `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @param {boolean} inherited Specify returning inherited property names.\n * @returns {Array} Returns the array of property names.\n */\nfunction arrayLikeKeys(value, inherited) {\n  var isArr = isArray(value),\n      isArg = !isArr && isArguments(value),\n      isBuff = !isArr && !isArg && isBuffer(value),\n      isType = !isArr && !isArg && !isBuff && isTypedArray(value),\n      skipIndexes = isArr || isArg || isBuff || isType,\n      result = skipIndexes ? baseTimes(value.length, String) : [],\n      length = result.length;\n\n  for (var key in value) {\n    if ((inherited || hasOwnProperty.call(value, key)) &&\n        !(skipIndexes && (\n           // Safari 9 has enumerable `arguments.length` in strict mode.\n           key == 'length' ||\n           // Node.js 0.10 has enumerable non-index properties on buffers.\n           (isBuff && (key == 'offset' || key == 'parent')) ||\n           // PhantomJS 2 has enumerable non-index properties on typed arrays.\n           (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||\n           // Skip index properties.\n           isIndex(key, length)\n        ))) {\n      result.push(key);\n    }\n  }\n  return result;\n}\n\nmodule.exports = arrayLikeKeys;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_arrayLikeKeys.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_arrayMap.js"
/*!******************************************!*\
  !*** ./node_modules/lodash/_arrayMap.js ***!
  \******************************************/
(module) {

eval("{/**\n * A specialized version of `_.map` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the new mapped array.\n */\nfunction arrayMap(array, iteratee) {\n  var index = -1,\n      length = array == null ? 0 : array.length,\n      result = Array(length);\n\n  while (++index < length) {\n    result[index] = iteratee(array[index], index, array);\n  }\n  return result;\n}\n\nmodule.exports = arrayMap;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_arrayMap.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_arrayPush.js"
/*!*******************************************!*\
  !*** ./node_modules/lodash/_arrayPush.js ***!
  \*******************************************/
(module) {

eval("{/**\n * Appends the elements of `values` to `array`.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {Array} values The values to append.\n * @returns {Array} Returns `array`.\n */\nfunction arrayPush(array, values) {\n  var index = -1,\n      length = values.length,\n      offset = array.length;\n\n  while (++index < length) {\n    array[offset + index] = values[index];\n  }\n  return array;\n}\n\nmodule.exports = arrayPush;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_arrayPush.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_arraySome.js"
/*!*******************************************!*\
  !*** ./node_modules/lodash/_arraySome.js ***!
  \*******************************************/
(module) {

eval("{/**\n * A specialized version of `_.some` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n *  else `false`.\n */\nfunction arraySome(array, predicate) {\n  var index = -1,\n      length = array == null ? 0 : array.length;\n\n  while (++index < length) {\n    if (predicate(array[index], index, array)) {\n      return true;\n    }\n  }\n  return false;\n}\n\nmodule.exports = arraySome;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_arraySome.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_assignValue.js"
/*!*********************************************!*\
  !*** ./node_modules/lodash/_assignValue.js ***!
  \*********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var baseAssignValue = __webpack_require__(/*! ./_baseAssignValue */ \"./node_modules/lodash/_baseAssignValue.js\"),\n    eq = __webpack_require__(/*! ./eq */ \"./node_modules/lodash/eq.js\");\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Assigns `value` to `key` of `object` if the existing value is not equivalent\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction assignValue(object, key, value) {\n  var objValue = object[key];\n  if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) ||\n      (value === undefined && !(key in object))) {\n    baseAssignValue(object, key, value);\n  }\n}\n\nmodule.exports = assignValue;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_assignValue.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_assocIndexOf.js"
/*!**********************************************!*\
  !*** ./node_modules/lodash/_assocIndexOf.js ***!
  \**********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var eq = __webpack_require__(/*! ./eq */ \"./node_modules/lodash/eq.js\");\n\n/**\n * Gets the index at which the `key` is found in `array` of key-value pairs.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} key The key to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\nfunction assocIndexOf(array, key) {\n  var length = array.length;\n  while (length--) {\n    if (eq(array[length][0], key)) {\n      return length;\n    }\n  }\n  return -1;\n}\n\nmodule.exports = assocIndexOf;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_assocIndexOf.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_baseAssignValue.js"
/*!*************************************************!*\
  !*** ./node_modules/lodash/_baseAssignValue.js ***!
  \*************************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var defineProperty = __webpack_require__(/*! ./_defineProperty */ \"./node_modules/lodash/_defineProperty.js\");\n\n/**\n * The base implementation of `assignValue` and `assignMergeValue` without\n * value checks.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction baseAssignValue(object, key, value) {\n  if (key == '__proto__' && defineProperty) {\n    defineProperty(object, key, {\n      'configurable': true,\n      'enumerable': true,\n      'value': value,\n      'writable': true\n    });\n  } else {\n    object[key] = value;\n  }\n}\n\nmodule.exports = baseAssignValue;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_baseAssignValue.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_baseGet.js"
/*!*****************************************!*\
  !*** ./node_modules/lodash/_baseGet.js ***!
  \*****************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var castPath = __webpack_require__(/*! ./_castPath */ \"./node_modules/lodash/_castPath.js\"),\n    toKey = __webpack_require__(/*! ./_toKey */ \"./node_modules/lodash/_toKey.js\");\n\n/**\n * The base implementation of `_.get` without support for default values.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @returns {*} Returns the resolved value.\n */\nfunction baseGet(object, path) {\n  path = castPath(path, object);\n\n  var index = 0,\n      length = path.length;\n\n  while (object != null && index < length) {\n    object = object[toKey(path[index++])];\n  }\n  return (index && index == length) ? object : undefined;\n}\n\nmodule.exports = baseGet;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_baseGet.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_baseGetAllKeys.js"
/*!************************************************!*\
  !*** ./node_modules/lodash/_baseGetAllKeys.js ***!
  \************************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var arrayPush = __webpack_require__(/*! ./_arrayPush */ \"./node_modules/lodash/_arrayPush.js\"),\n    isArray = __webpack_require__(/*! ./isArray */ \"./node_modules/lodash/isArray.js\");\n\n/**\n * The base implementation of `getAllKeys` and `getAllKeysIn` which uses\n * `keysFunc` and `symbolsFunc` to get the enumerable property names and\n * symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @param {Function} symbolsFunc The function to get the symbols of `object`.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction baseGetAllKeys(object, keysFunc, symbolsFunc) {\n  var result = keysFunc(object);\n  return isArray(object) ? result : arrayPush(result, symbolsFunc(object));\n}\n\nmodule.exports = baseGetAllKeys;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_baseGetAllKeys.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_baseGetTag.js"
/*!********************************************!*\
  !*** ./node_modules/lodash/_baseGetTag.js ***!
  \********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var Symbol = __webpack_require__(/*! ./_Symbol */ \"./node_modules/lodash/_Symbol.js\"),\n    getRawTag = __webpack_require__(/*! ./_getRawTag */ \"./node_modules/lodash/_getRawTag.js\"),\n    objectToString = __webpack_require__(/*! ./_objectToString */ \"./node_modules/lodash/_objectToString.js\");\n\n/** `Object#toString` result references. */\nvar nullTag = '[object Null]',\n    undefinedTag = '[object Undefined]';\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nfunction baseGetTag(value) {\n  if (value == null) {\n    return value === undefined ? undefinedTag : nullTag;\n  }\n  return (symToStringTag && symToStringTag in Object(value))\n    ? getRawTag(value)\n    : objectToString(value);\n}\n\nmodule.exports = baseGetTag;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_baseGetTag.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_baseHasIn.js"
/*!*******************************************!*\
  !*** ./node_modules/lodash/_baseHasIn.js ***!
  \*******************************************/
(module) {

eval("{/**\n * The base implementation of `_.hasIn` without support for deep paths.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {Array|string} key The key to check.\n * @returns {boolean} Returns `true` if `key` exists, else `false`.\n */\nfunction baseHasIn(object, key) {\n  return object != null && key in Object(object);\n}\n\nmodule.exports = baseHasIn;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_baseHasIn.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_baseIsArguments.js"
/*!*************************************************!*\
  !*** ./node_modules/lodash/_baseIsArguments.js ***!
  \*************************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var baseGetTag = __webpack_require__(/*! ./_baseGetTag */ \"./node_modules/lodash/_baseGetTag.js\"),\n    isObjectLike = __webpack_require__(/*! ./isObjectLike */ \"./node_modules/lodash/isObjectLike.js\");\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]';\n\n/**\n * The base implementation of `_.isArguments`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n */\nfunction baseIsArguments(value) {\n  return isObjectLike(value) && baseGetTag(value) == argsTag;\n}\n\nmodule.exports = baseIsArguments;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_baseIsArguments.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_baseIsEqual.js"
/*!*********************************************!*\
  !*** ./node_modules/lodash/_baseIsEqual.js ***!
  \*********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var baseIsEqualDeep = __webpack_require__(/*! ./_baseIsEqualDeep */ \"./node_modules/lodash/_baseIsEqualDeep.js\"),\n    isObjectLike = __webpack_require__(/*! ./isObjectLike */ \"./node_modules/lodash/isObjectLike.js\");\n\n/**\n * The base implementation of `_.isEqual` which supports partial comparisons\n * and tracks traversed objects.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @param {boolean} bitmask The bitmask flags.\n *  1 - Unordered comparison\n *  2 - Partial comparison\n * @param {Function} [customizer] The function to customize comparisons.\n * @param {Object} [stack] Tracks traversed `value` and `other` objects.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n */\nfunction baseIsEqual(value, other, bitmask, customizer, stack) {\n  if (value === other) {\n    return true;\n  }\n  if (value == null || other == null || (!isObjectLike(value) && !isObjectLike(other))) {\n    return value !== value && other !== other;\n  }\n  return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack);\n}\n\nmodule.exports = baseIsEqual;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_baseIsEqual.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_baseIsEqualDeep.js"
/*!*************************************************!*\
  !*** ./node_modules/lodash/_baseIsEqualDeep.js ***!
  \*************************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var Stack = __webpack_require__(/*! ./_Stack */ \"./node_modules/lodash/_Stack.js\"),\n    equalArrays = __webpack_require__(/*! ./_equalArrays */ \"./node_modules/lodash/_equalArrays.js\"),\n    equalByTag = __webpack_require__(/*! ./_equalByTag */ \"./node_modules/lodash/_equalByTag.js\"),\n    equalObjects = __webpack_require__(/*! ./_equalObjects */ \"./node_modules/lodash/_equalObjects.js\"),\n    getTag = __webpack_require__(/*! ./_getTag */ \"./node_modules/lodash/_getTag.js\"),\n    isArray = __webpack_require__(/*! ./isArray */ \"./node_modules/lodash/isArray.js\"),\n    isBuffer = __webpack_require__(/*! ./isBuffer */ \"./node_modules/lodash/isBuffer.js\"),\n    isTypedArray = __webpack_require__(/*! ./isTypedArray */ \"./node_modules/lodash/isTypedArray.js\");\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1;\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n    arrayTag = '[object Array]',\n    objectTag = '[object Object]';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * A specialized version of `baseIsEqual` for arrays and objects which performs\n * deep comparisons and tracks traversed objects enabling objects with circular\n * references to be compared.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} [stack] Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) {\n  var objIsArr = isArray(object),\n      othIsArr = isArray(other),\n      objTag = objIsArr ? arrayTag : getTag(object),\n      othTag = othIsArr ? arrayTag : getTag(other);\n\n  objTag = objTag == argsTag ? objectTag : objTag;\n  othTag = othTag == argsTag ? objectTag : othTag;\n\n  var objIsObj = objTag == objectTag,\n      othIsObj = othTag == objectTag,\n      isSameTag = objTag == othTag;\n\n  if (isSameTag && isBuffer(object)) {\n    if (!isBuffer(other)) {\n      return false;\n    }\n    objIsArr = true;\n    objIsObj = false;\n  }\n  if (isSameTag && !objIsObj) {\n    stack || (stack = new Stack);\n    return (objIsArr || isTypedArray(object))\n      ? equalArrays(object, other, bitmask, customizer, equalFunc, stack)\n      : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack);\n  }\n  if (!(bitmask & COMPARE_PARTIAL_FLAG)) {\n    var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'),\n        othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__');\n\n    if (objIsWrapped || othIsWrapped) {\n      var objUnwrapped = objIsWrapped ? object.value() : object,\n          othUnwrapped = othIsWrapped ? other.value() : other;\n\n      stack || (stack = new Stack);\n      return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack);\n    }\n  }\n  if (!isSameTag) {\n    return false;\n  }\n  stack || (stack = new Stack);\n  return equalObjects(object, other, bitmask, customizer, equalFunc, stack);\n}\n\nmodule.exports = baseIsEqualDeep;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_baseIsEqualDeep.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_baseIsMatch.js"
/*!*********************************************!*\
  !*** ./node_modules/lodash/_baseIsMatch.js ***!
  \*********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var Stack = __webpack_require__(/*! ./_Stack */ \"./node_modules/lodash/_Stack.js\"),\n    baseIsEqual = __webpack_require__(/*! ./_baseIsEqual */ \"./node_modules/lodash/_baseIsEqual.js\");\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n    COMPARE_UNORDERED_FLAG = 2;\n\n/**\n * The base implementation of `_.isMatch` without support for iteratee shorthands.\n *\n * @private\n * @param {Object} object The object to inspect.\n * @param {Object} source The object of property values to match.\n * @param {Array} matchData The property names, values, and compare flags to match.\n * @param {Function} [customizer] The function to customize comparisons.\n * @returns {boolean} Returns `true` if `object` is a match, else `false`.\n */\nfunction baseIsMatch(object, source, matchData, customizer) {\n  var index = matchData.length,\n      length = index,\n      noCustomizer = !customizer;\n\n  if (object == null) {\n    return !length;\n  }\n  object = Object(object);\n  while (index--) {\n    var data = matchData[index];\n    if ((noCustomizer && data[2])\n          ? data[1] !== object[data[0]]\n          : !(data[0] in object)\n        ) {\n      return false;\n    }\n  }\n  while (++index < length) {\n    data = matchData[index];\n    var key = data[0],\n        objValue = object[key],\n        srcValue = data[1];\n\n    if (noCustomizer && data[2]) {\n      if (objValue === undefined && !(key in object)) {\n        return false;\n      }\n    } else {\n      var stack = new Stack;\n      if (customizer) {\n        var result = customizer(objValue, srcValue, key, object, source, stack);\n      }\n      if (!(result === undefined\n            ? baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG, customizer, stack)\n            : result\n          )) {\n        return false;\n      }\n    }\n  }\n  return true;\n}\n\nmodule.exports = baseIsMatch;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_baseIsMatch.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_baseIsNative.js"
/*!**********************************************!*\
  !*** ./node_modules/lodash/_baseIsNative.js ***!
  \**********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var isFunction = __webpack_require__(/*! ./isFunction */ \"./node_modules/lodash/isFunction.js\"),\n    isMasked = __webpack_require__(/*! ./_isMasked */ \"./node_modules/lodash/_isMasked.js\"),\n    isObject = __webpack_require__(/*! ./isObject */ \"./node_modules/lodash/isObject.js\"),\n    toSource = __webpack_require__(/*! ./_toSource */ \"./node_modules/lodash/_toSource.js\");\n\n/**\n * Used to match `RegExp`\n * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).\n */\nvar reRegExpChar = /[\\\\^$.*+?()[\\]{}|]/g;\n\n/** Used to detect host constructors (Safari). */\nvar reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n/** Used for built-in method references. */\nvar funcProto = Function.prototype,\n    objectProto = Object.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Used to detect if a method is native. */\nvar reIsNative = RegExp('^' +\n  funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\\\$&')\n  .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n);\n\n/**\n * The base implementation of `_.isNative` without bad shim checks.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n *  else `false`.\n */\nfunction baseIsNative(value) {\n  if (!isObject(value) || isMasked(value)) {\n    return false;\n  }\n  var pattern = isFunction(value) ? reIsNative : reIsHostCtor;\n  return pattern.test(toSource(value));\n}\n\nmodule.exports = baseIsNative;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_baseIsNative.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_baseIsTypedArray.js"
/*!**************************************************!*\
  !*** ./node_modules/lodash/_baseIsTypedArray.js ***!
  \**************************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var baseGetTag = __webpack_require__(/*! ./_baseGetTag */ \"./node_modules/lodash/_baseGetTag.js\"),\n    isLength = __webpack_require__(/*! ./isLength */ \"./node_modules/lodash/isLength.js\"),\n    isObjectLike = __webpack_require__(/*! ./isObjectLike */ \"./node_modules/lodash/isObjectLike.js\");\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n    arrayTag = '[object Array]',\n    boolTag = '[object Boolean]',\n    dateTag = '[object Date]',\n    errorTag = '[object Error]',\n    funcTag = '[object Function]',\n    mapTag = '[object Map]',\n    numberTag = '[object Number]',\n    objectTag = '[object Object]',\n    regexpTag = '[object RegExp]',\n    setTag = '[object Set]',\n    stringTag = '[object String]',\n    weakMapTag = '[object WeakMap]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n    dataViewTag = '[object DataView]',\n    float32Tag = '[object Float32Array]',\n    float64Tag = '[object Float64Array]',\n    int8Tag = '[object Int8Array]',\n    int16Tag = '[object Int16Array]',\n    int32Tag = '[object Int32Array]',\n    uint8Tag = '[object Uint8Array]',\n    uint8ClampedTag = '[object Uint8ClampedArray]',\n    uint16Tag = '[object Uint16Array]',\n    uint32Tag = '[object Uint32Array]';\n\n/** Used to identify `toStringTag` values of typed arrays. */\nvar typedArrayTags = {};\ntypedArrayTags[float32Tag] = typedArrayTags[float64Tag] =\ntypedArrayTags[int8Tag] = typedArrayTags[int16Tag] =\ntypedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =\ntypedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =\ntypedArrayTags[uint32Tag] = true;\ntypedArrayTags[argsTag] = typedArrayTags[arrayTag] =\ntypedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =\ntypedArrayTags[dataViewTag] = typedArrayTags[dateTag] =\ntypedArrayTags[errorTag] = typedArrayTags[funcTag] =\ntypedArrayTags[mapTag] = typedArrayTags[numberTag] =\ntypedArrayTags[objectTag] = typedArrayTags[regexpTag] =\ntypedArrayTags[setTag] = typedArrayTags[stringTag] =\ntypedArrayTags[weakMapTag] = false;\n\n/**\n * The base implementation of `_.isTypedArray` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n */\nfunction baseIsTypedArray(value) {\n  return isObjectLike(value) &&\n    isLength(value.length) && !!typedArrayTags[baseGetTag(value)];\n}\n\nmodule.exports = baseIsTypedArray;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_baseIsTypedArray.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_baseIteratee.js"
/*!**********************************************!*\
  !*** ./node_modules/lodash/_baseIteratee.js ***!
  \**********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var baseMatches = __webpack_require__(/*! ./_baseMatches */ \"./node_modules/lodash/_baseMatches.js\"),\n    baseMatchesProperty = __webpack_require__(/*! ./_baseMatchesProperty */ \"./node_modules/lodash/_baseMatchesProperty.js\"),\n    identity = __webpack_require__(/*! ./identity */ \"./node_modules/lodash/identity.js\"),\n    isArray = __webpack_require__(/*! ./isArray */ \"./node_modules/lodash/isArray.js\"),\n    property = __webpack_require__(/*! ./property */ \"./node_modules/lodash/property.js\");\n\n/**\n * The base implementation of `_.iteratee`.\n *\n * @private\n * @param {*} [value=_.identity] The value to convert to an iteratee.\n * @returns {Function} Returns the iteratee.\n */\nfunction baseIteratee(value) {\n  // Don't store the `typeof` result in a variable to avoid a JIT bug in Safari 9.\n  // See https://bugs.webkit.org/show_bug.cgi?id=156034 for more details.\n  if (typeof value == 'function') {\n    return value;\n  }\n  if (value == null) {\n    return identity;\n  }\n  if (typeof value == 'object') {\n    return isArray(value)\n      ? baseMatchesProperty(value[0], value[1])\n      : baseMatches(value);\n  }\n  return property(value);\n}\n\nmodule.exports = baseIteratee;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_baseIteratee.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_baseKeys.js"
/*!******************************************!*\
  !*** ./node_modules/lodash/_baseKeys.js ***!
  \******************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var isPrototype = __webpack_require__(/*! ./_isPrototype */ \"./node_modules/lodash/_isPrototype.js\"),\n    nativeKeys = __webpack_require__(/*! ./_nativeKeys */ \"./node_modules/lodash/_nativeKeys.js\");\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * The base implementation of `_.keys` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeys(object) {\n  if (!isPrototype(object)) {\n    return nativeKeys(object);\n  }\n  var result = [];\n  for (var key in Object(object)) {\n    if (hasOwnProperty.call(object, key) && key != 'constructor') {\n      result.push(key);\n    }\n  }\n  return result;\n}\n\nmodule.exports = baseKeys;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_baseKeys.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_baseKeysIn.js"
/*!********************************************!*\
  !*** ./node_modules/lodash/_baseKeysIn.js ***!
  \********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var isObject = __webpack_require__(/*! ./isObject */ \"./node_modules/lodash/isObject.js\"),\n    isPrototype = __webpack_require__(/*! ./_isPrototype */ \"./node_modules/lodash/_isPrototype.js\"),\n    nativeKeysIn = __webpack_require__(/*! ./_nativeKeysIn */ \"./node_modules/lodash/_nativeKeysIn.js\");\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeysIn(object) {\n  if (!isObject(object)) {\n    return nativeKeysIn(object);\n  }\n  var isProto = isPrototype(object),\n      result = [];\n\n  for (var key in object) {\n    if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) {\n      result.push(key);\n    }\n  }\n  return result;\n}\n\nmodule.exports = baseKeysIn;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_baseKeysIn.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_baseMatches.js"
/*!*********************************************!*\
  !*** ./node_modules/lodash/_baseMatches.js ***!
  \*********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var baseIsMatch = __webpack_require__(/*! ./_baseIsMatch */ \"./node_modules/lodash/_baseIsMatch.js\"),\n    getMatchData = __webpack_require__(/*! ./_getMatchData */ \"./node_modules/lodash/_getMatchData.js\"),\n    matchesStrictComparable = __webpack_require__(/*! ./_matchesStrictComparable */ \"./node_modules/lodash/_matchesStrictComparable.js\");\n\n/**\n * The base implementation of `_.matches` which doesn't clone `source`.\n *\n * @private\n * @param {Object} source The object of property values to match.\n * @returns {Function} Returns the new spec function.\n */\nfunction baseMatches(source) {\n  var matchData = getMatchData(source);\n  if (matchData.length == 1 && matchData[0][2]) {\n    return matchesStrictComparable(matchData[0][0], matchData[0][1]);\n  }\n  return function(object) {\n    return object === source || baseIsMatch(object, source, matchData);\n  };\n}\n\nmodule.exports = baseMatches;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_baseMatches.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_baseMatchesProperty.js"
/*!*****************************************************!*\
  !*** ./node_modules/lodash/_baseMatchesProperty.js ***!
  \*****************************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var baseIsEqual = __webpack_require__(/*! ./_baseIsEqual */ \"./node_modules/lodash/_baseIsEqual.js\"),\n    get = __webpack_require__(/*! ./get */ \"./node_modules/lodash/get.js\"),\n    hasIn = __webpack_require__(/*! ./hasIn */ \"./node_modules/lodash/hasIn.js\"),\n    isKey = __webpack_require__(/*! ./_isKey */ \"./node_modules/lodash/_isKey.js\"),\n    isStrictComparable = __webpack_require__(/*! ./_isStrictComparable */ \"./node_modules/lodash/_isStrictComparable.js\"),\n    matchesStrictComparable = __webpack_require__(/*! ./_matchesStrictComparable */ \"./node_modules/lodash/_matchesStrictComparable.js\"),\n    toKey = __webpack_require__(/*! ./_toKey */ \"./node_modules/lodash/_toKey.js\");\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n    COMPARE_UNORDERED_FLAG = 2;\n\n/**\n * The base implementation of `_.matchesProperty` which doesn't clone `srcValue`.\n *\n * @private\n * @param {string} path The path of the property to get.\n * @param {*} srcValue The value to match.\n * @returns {Function} Returns the new spec function.\n */\nfunction baseMatchesProperty(path, srcValue) {\n  if (isKey(path) && isStrictComparable(srcValue)) {\n    return matchesStrictComparable(toKey(path), srcValue);\n  }\n  return function(object) {\n    var objValue = get(object, path);\n    return (objValue === undefined && objValue === srcValue)\n      ? hasIn(object, path)\n      : baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG);\n  };\n}\n\nmodule.exports = baseMatchesProperty;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_baseMatchesProperty.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_basePickBy.js"
/*!********************************************!*\
  !*** ./node_modules/lodash/_basePickBy.js ***!
  \********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var baseGet = __webpack_require__(/*! ./_baseGet */ \"./node_modules/lodash/_baseGet.js\"),\n    baseSet = __webpack_require__(/*! ./_baseSet */ \"./node_modules/lodash/_baseSet.js\"),\n    castPath = __webpack_require__(/*! ./_castPath */ \"./node_modules/lodash/_castPath.js\");\n\n/**\n * The base implementation of  `_.pickBy` without support for iteratee shorthands.\n *\n * @private\n * @param {Object} object The source object.\n * @param {string[]} paths The property paths to pick.\n * @param {Function} predicate The function invoked per property.\n * @returns {Object} Returns the new object.\n */\nfunction basePickBy(object, paths, predicate) {\n  var index = -1,\n      length = paths.length,\n      result = {};\n\n  while (++index < length) {\n    var path = paths[index],\n        value = baseGet(object, path);\n\n    if (predicate(value, path)) {\n      baseSet(result, castPath(path, object), value);\n    }\n  }\n  return result;\n}\n\nmodule.exports = basePickBy;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_basePickBy.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_baseProperty.js"
/*!**********************************************!*\
  !*** ./node_modules/lodash/_baseProperty.js ***!
  \**********************************************/
(module) {

eval("{/**\n * The base implementation of `_.property` without support for deep paths.\n *\n * @private\n * @param {string} key The key of the property to get.\n * @returns {Function} Returns the new accessor function.\n */\nfunction baseProperty(key) {\n  return function(object) {\n    return object == null ? undefined : object[key];\n  };\n}\n\nmodule.exports = baseProperty;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_baseProperty.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_basePropertyDeep.js"
/*!**************************************************!*\
  !*** ./node_modules/lodash/_basePropertyDeep.js ***!
  \**************************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var baseGet = __webpack_require__(/*! ./_baseGet */ \"./node_modules/lodash/_baseGet.js\");\n\n/**\n * A specialized version of `baseProperty` which supports deep paths.\n *\n * @private\n * @param {Array|string} path The path of the property to get.\n * @returns {Function} Returns the new accessor function.\n */\nfunction basePropertyDeep(path) {\n  return function(object) {\n    return baseGet(object, path);\n  };\n}\n\nmodule.exports = basePropertyDeep;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_basePropertyDeep.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_baseSet.js"
/*!*****************************************!*\
  !*** ./node_modules/lodash/_baseSet.js ***!
  \*****************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var assignValue = __webpack_require__(/*! ./_assignValue */ \"./node_modules/lodash/_assignValue.js\"),\n    castPath = __webpack_require__(/*! ./_castPath */ \"./node_modules/lodash/_castPath.js\"),\n    isIndex = __webpack_require__(/*! ./_isIndex */ \"./node_modules/lodash/_isIndex.js\"),\n    isObject = __webpack_require__(/*! ./isObject */ \"./node_modules/lodash/isObject.js\"),\n    toKey = __webpack_require__(/*! ./_toKey */ \"./node_modules/lodash/_toKey.js\");\n\n/**\n * The base implementation of `_.set`.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {*} value The value to set.\n * @param {Function} [customizer] The function to customize path creation.\n * @returns {Object} Returns `object`.\n */\nfunction baseSet(object, path, value, customizer) {\n  if (!isObject(object)) {\n    return object;\n  }\n  path = castPath(path, object);\n\n  var index = -1,\n      length = path.length,\n      lastIndex = length - 1,\n      nested = object;\n\n  while (nested != null && ++index < length) {\n    var key = toKey(path[index]),\n        newValue = value;\n\n    if (key === '__proto__' || key === 'constructor' || key === 'prototype') {\n      return object;\n    }\n\n    if (index != lastIndex) {\n      var objValue = nested[key];\n      newValue = customizer ? customizer(objValue, key, nested) : undefined;\n      if (newValue === undefined) {\n        newValue = isObject(objValue)\n          ? objValue\n          : (isIndex(path[index + 1]) ? [] : {});\n      }\n    }\n    assignValue(nested, key, newValue);\n    nested = nested[key];\n  }\n  return object;\n}\n\nmodule.exports = baseSet;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_baseSet.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_baseTimes.js"
/*!*******************************************!*\
  !*** ./node_modules/lodash/_baseTimes.js ***!
  \*******************************************/
(module) {

eval("{/**\n * The base implementation of `_.times` without support for iteratee shorthands\n * or max array length checks.\n *\n * @private\n * @param {number} n The number of times to invoke `iteratee`.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the array of results.\n */\nfunction baseTimes(n, iteratee) {\n  var index = -1,\n      result = Array(n);\n\n  while (++index < n) {\n    result[index] = iteratee(index);\n  }\n  return result;\n}\n\nmodule.exports = baseTimes;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_baseTimes.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_baseToString.js"
/*!**********************************************!*\
  !*** ./node_modules/lodash/_baseToString.js ***!
  \**********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var Symbol = __webpack_require__(/*! ./_Symbol */ \"./node_modules/lodash/_Symbol.js\"),\n    arrayMap = __webpack_require__(/*! ./_arrayMap */ \"./node_modules/lodash/_arrayMap.js\"),\n    isArray = __webpack_require__(/*! ./isArray */ \"./node_modules/lodash/isArray.js\"),\n    isSymbol = __webpack_require__(/*! ./isSymbol */ \"./node_modules/lodash/isSymbol.js\");\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0;\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n    symbolToString = symbolProto ? symbolProto.toString : undefined;\n\n/**\n * The base implementation of `_.toString` which doesn't convert nullish\n * values to empty strings.\n *\n * @private\n * @param {*} value The value to process.\n * @returns {string} Returns the string.\n */\nfunction baseToString(value) {\n  // Exit early for strings to avoid a performance hit in some environments.\n  if (typeof value == 'string') {\n    return value;\n  }\n  if (isArray(value)) {\n    // Recursively convert values (susceptible to call stack limits).\n    return arrayMap(value, baseToString) + '';\n  }\n  if (isSymbol(value)) {\n    return symbolToString ? symbolToString.call(value) : '';\n  }\n  var result = (value + '');\n  return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\nmodule.exports = baseToString;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_baseToString.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_baseUnary.js"
/*!*******************************************!*\
  !*** ./node_modules/lodash/_baseUnary.js ***!
  \*******************************************/
(module) {

eval("{/**\n * The base implementation of `_.unary` without support for storing metadata.\n *\n * @private\n * @param {Function} func The function to cap arguments for.\n * @returns {Function} Returns the new capped function.\n */\nfunction baseUnary(func) {\n  return function(value) {\n    return func(value);\n  };\n}\n\nmodule.exports = baseUnary;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_baseUnary.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_cacheHas.js"
/*!******************************************!*\
  !*** ./node_modules/lodash/_cacheHas.js ***!
  \******************************************/
(module) {

eval("{/**\n * Checks if a `cache` value for `key` exists.\n *\n * @private\n * @param {Object} cache The cache to query.\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction cacheHas(cache, key) {\n  return cache.has(key);\n}\n\nmodule.exports = cacheHas;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_cacheHas.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_castPath.js"
/*!******************************************!*\
  !*** ./node_modules/lodash/_castPath.js ***!
  \******************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var isArray = __webpack_require__(/*! ./isArray */ \"./node_modules/lodash/isArray.js\"),\n    isKey = __webpack_require__(/*! ./_isKey */ \"./node_modules/lodash/_isKey.js\"),\n    stringToPath = __webpack_require__(/*! ./_stringToPath */ \"./node_modules/lodash/_stringToPath.js\"),\n    toString = __webpack_require__(/*! ./toString */ \"./node_modules/lodash/toString.js\");\n\n/**\n * Casts `value` to a path array if it's not one.\n *\n * @private\n * @param {*} value The value to inspect.\n * @param {Object} [object] The object to query keys on.\n * @returns {Array} Returns the cast property path array.\n */\nfunction castPath(value, object) {\n  if (isArray(value)) {\n    return value;\n  }\n  return isKey(value, object) ? [value] : stringToPath(toString(value));\n}\n\nmodule.exports = castPath;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_castPath.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_coreJsData.js"
/*!********************************************!*\
  !*** ./node_modules/lodash/_coreJsData.js ***!
  \********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var root = __webpack_require__(/*! ./_root */ \"./node_modules/lodash/_root.js\");\n\n/** Used to detect overreaching core-js shims. */\nvar coreJsData = root['__core-js_shared__'];\n\nmodule.exports = coreJsData;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_coreJsData.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_defineProperty.js"
/*!************************************************!*\
  !*** ./node_modules/lodash/_defineProperty.js ***!
  \************************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var getNative = __webpack_require__(/*! ./_getNative */ \"./node_modules/lodash/_getNative.js\");\n\nvar defineProperty = (function() {\n  try {\n    var func = getNative(Object, 'defineProperty');\n    func({}, '', {});\n    return func;\n  } catch (e) {}\n}());\n\nmodule.exports = defineProperty;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_defineProperty.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_equalArrays.js"
/*!*********************************************!*\
  !*** ./node_modules/lodash/_equalArrays.js ***!
  \*********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var SetCache = __webpack_require__(/*! ./_SetCache */ \"./node_modules/lodash/_SetCache.js\"),\n    arraySome = __webpack_require__(/*! ./_arraySome */ \"./node_modules/lodash/_arraySome.js\"),\n    cacheHas = __webpack_require__(/*! ./_cacheHas */ \"./node_modules/lodash/_cacheHas.js\");\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n    COMPARE_UNORDERED_FLAG = 2;\n\n/**\n * A specialized version of `baseIsEqualDeep` for arrays with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Array} array The array to compare.\n * @param {Array} other The other array to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `array` and `other` objects.\n * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`.\n */\nfunction equalArrays(array, other, bitmask, customizer, equalFunc, stack) {\n  var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n      arrLength = array.length,\n      othLength = other.length;\n\n  if (arrLength != othLength && !(isPartial && othLength > arrLength)) {\n    return false;\n  }\n  // Check that cyclic values are equal.\n  var arrStacked = stack.get(array);\n  var othStacked = stack.get(other);\n  if (arrStacked && othStacked) {\n    return arrStacked == other && othStacked == array;\n  }\n  var index = -1,\n      result = true,\n      seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined;\n\n  stack.set(array, other);\n  stack.set(other, array);\n\n  // Ignore non-index properties.\n  while (++index < arrLength) {\n    var arrValue = array[index],\n        othValue = other[index];\n\n    if (customizer) {\n      var compared = isPartial\n        ? customizer(othValue, arrValue, index, other, array, stack)\n        : customizer(arrValue, othValue, index, array, other, stack);\n    }\n    if (compared !== undefined) {\n      if (compared) {\n        continue;\n      }\n      result = false;\n      break;\n    }\n    // Recursively compare arrays (susceptible to call stack limits).\n    if (seen) {\n      if (!arraySome(other, function(othValue, othIndex) {\n            if (!cacheHas(seen, othIndex) &&\n                (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) {\n              return seen.push(othIndex);\n            }\n          })) {\n        result = false;\n        break;\n      }\n    } else if (!(\n          arrValue === othValue ||\n            equalFunc(arrValue, othValue, bitmask, customizer, stack)\n        )) {\n      result = false;\n      break;\n    }\n  }\n  stack['delete'](array);\n  stack['delete'](other);\n  return result;\n}\n\nmodule.exports = equalArrays;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_equalArrays.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_equalByTag.js"
/*!********************************************!*\
  !*** ./node_modules/lodash/_equalByTag.js ***!
  \********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var Symbol = __webpack_require__(/*! ./_Symbol */ \"./node_modules/lodash/_Symbol.js\"),\n    Uint8Array = __webpack_require__(/*! ./_Uint8Array */ \"./node_modules/lodash/_Uint8Array.js\"),\n    eq = __webpack_require__(/*! ./eq */ \"./node_modules/lodash/eq.js\"),\n    equalArrays = __webpack_require__(/*! ./_equalArrays */ \"./node_modules/lodash/_equalArrays.js\"),\n    mapToArray = __webpack_require__(/*! ./_mapToArray */ \"./node_modules/lodash/_mapToArray.js\"),\n    setToArray = __webpack_require__(/*! ./_setToArray */ \"./node_modules/lodash/_setToArray.js\");\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n    COMPARE_UNORDERED_FLAG = 2;\n\n/** `Object#toString` result references. */\nvar boolTag = '[object Boolean]',\n    dateTag = '[object Date]',\n    errorTag = '[object Error]',\n    mapTag = '[object Map]',\n    numberTag = '[object Number]',\n    regexpTag = '[object RegExp]',\n    setTag = '[object Set]',\n    stringTag = '[object String]',\n    symbolTag = '[object Symbol]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n    dataViewTag = '[object DataView]';\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n    symbolValueOf = symbolProto ? symbolProto.valueOf : undefined;\n\n/**\n * A specialized version of `baseIsEqualDeep` for comparing objects of\n * the same `toStringTag`.\n *\n * **Note:** This function only supports comparing values with tags of\n * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {string} tag The `toStringTag` of the objects to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) {\n  switch (tag) {\n    case dataViewTag:\n      if ((object.byteLength != other.byteLength) ||\n          (object.byteOffset != other.byteOffset)) {\n        return false;\n      }\n      object = object.buffer;\n      other = other.buffer;\n\n    case arrayBufferTag:\n      if ((object.byteLength != other.byteLength) ||\n          !equalFunc(new Uint8Array(object), new Uint8Array(other))) {\n        return false;\n      }\n      return true;\n\n    case boolTag:\n    case dateTag:\n    case numberTag:\n      // Coerce booleans to `1` or `0` and dates to milliseconds.\n      // Invalid dates are coerced to `NaN`.\n      return eq(+object, +other);\n\n    case errorTag:\n      return object.name == other.name && object.message == other.message;\n\n    case regexpTag:\n    case stringTag:\n      // Coerce regexes to strings and treat strings, primitives and objects,\n      // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring\n      // for more details.\n      return object == (other + '');\n\n    case mapTag:\n      var convert = mapToArray;\n\n    case setTag:\n      var isPartial = bitmask & COMPARE_PARTIAL_FLAG;\n      convert || (convert = setToArray);\n\n      if (object.size != other.size && !isPartial) {\n        return false;\n      }\n      // Assume cyclic values are equal.\n      var stacked = stack.get(object);\n      if (stacked) {\n        return stacked == other;\n      }\n      bitmask |= COMPARE_UNORDERED_FLAG;\n\n      // Recursively compare objects (susceptible to call stack limits).\n      stack.set(object, other);\n      var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack);\n      stack['delete'](object);\n      return result;\n\n    case symbolTag:\n      if (symbolValueOf) {\n        return symbolValueOf.call(object) == symbolValueOf.call(other);\n      }\n  }\n  return false;\n}\n\nmodule.exports = equalByTag;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_equalByTag.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_equalObjects.js"
/*!**********************************************!*\
  !*** ./node_modules/lodash/_equalObjects.js ***!
  \**********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var getAllKeys = __webpack_require__(/*! ./_getAllKeys */ \"./node_modules/lodash/_getAllKeys.js\");\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1;\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * A specialized version of `baseIsEqualDeep` for objects with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalObjects(object, other, bitmask, customizer, equalFunc, stack) {\n  var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n      objProps = getAllKeys(object),\n      objLength = objProps.length,\n      othProps = getAllKeys(other),\n      othLength = othProps.length;\n\n  if (objLength != othLength && !isPartial) {\n    return false;\n  }\n  var index = objLength;\n  while (index--) {\n    var key = objProps[index];\n    if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) {\n      return false;\n    }\n  }\n  // Check that cyclic values are equal.\n  var objStacked = stack.get(object);\n  var othStacked = stack.get(other);\n  if (objStacked && othStacked) {\n    return objStacked == other && othStacked == object;\n  }\n  var result = true;\n  stack.set(object, other);\n  stack.set(other, object);\n\n  var skipCtor = isPartial;\n  while (++index < objLength) {\n    key = objProps[index];\n    var objValue = object[key],\n        othValue = other[key];\n\n    if (customizer) {\n      var compared = isPartial\n        ? customizer(othValue, objValue, key, other, object, stack)\n        : customizer(objValue, othValue, key, object, other, stack);\n    }\n    // Recursively compare objects (susceptible to call stack limits).\n    if (!(compared === undefined\n          ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack))\n          : compared\n        )) {\n      result = false;\n      break;\n    }\n    skipCtor || (skipCtor = key == 'constructor');\n  }\n  if (result && !skipCtor) {\n    var objCtor = object.constructor,\n        othCtor = other.constructor;\n\n    // Non `Object` object instances with different constructors are not equal.\n    if (objCtor != othCtor &&\n        ('constructor' in object && 'constructor' in other) &&\n        !(typeof objCtor == 'function' && objCtor instanceof objCtor &&\n          typeof othCtor == 'function' && othCtor instanceof othCtor)) {\n      result = false;\n    }\n  }\n  stack['delete'](object);\n  stack['delete'](other);\n  return result;\n}\n\nmodule.exports = equalObjects;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_equalObjects.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_freeGlobal.js"
/*!********************************************!*\
  !*** ./node_modules/lodash/_freeGlobal.js ***!
  \********************************************/
(module) {

eval("{/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof globalThis == 'object' && globalThis && globalThis.Object === Object && globalThis;\n\nmodule.exports = freeGlobal;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_freeGlobal.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_getAllKeys.js"
/*!********************************************!*\
  !*** ./node_modules/lodash/_getAllKeys.js ***!
  \********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var baseGetAllKeys = __webpack_require__(/*! ./_baseGetAllKeys */ \"./node_modules/lodash/_baseGetAllKeys.js\"),\n    getSymbols = __webpack_require__(/*! ./_getSymbols */ \"./node_modules/lodash/_getSymbols.js\"),\n    keys = __webpack_require__(/*! ./keys */ \"./node_modules/lodash/keys.js\");\n\n/**\n * Creates an array of own enumerable property names and symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction getAllKeys(object) {\n  return baseGetAllKeys(object, keys, getSymbols);\n}\n\nmodule.exports = getAllKeys;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_getAllKeys.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_getAllKeysIn.js"
/*!**********************************************!*\
  !*** ./node_modules/lodash/_getAllKeysIn.js ***!
  \**********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var baseGetAllKeys = __webpack_require__(/*! ./_baseGetAllKeys */ \"./node_modules/lodash/_baseGetAllKeys.js\"),\n    getSymbolsIn = __webpack_require__(/*! ./_getSymbolsIn */ \"./node_modules/lodash/_getSymbolsIn.js\"),\n    keysIn = __webpack_require__(/*! ./keysIn */ \"./node_modules/lodash/keysIn.js\");\n\n/**\n * Creates an array of own and inherited enumerable property names and\n * symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction getAllKeysIn(object) {\n  return baseGetAllKeys(object, keysIn, getSymbolsIn);\n}\n\nmodule.exports = getAllKeysIn;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_getAllKeysIn.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_getMapData.js"
/*!********************************************!*\
  !*** ./node_modules/lodash/_getMapData.js ***!
  \********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var isKeyable = __webpack_require__(/*! ./_isKeyable */ \"./node_modules/lodash/_isKeyable.js\");\n\n/**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\nfunction getMapData(map, key) {\n  var data = map.__data__;\n  return isKeyable(key)\n    ? data[typeof key == 'string' ? 'string' : 'hash']\n    : data.map;\n}\n\nmodule.exports = getMapData;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_getMapData.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_getMatchData.js"
/*!**********************************************!*\
  !*** ./node_modules/lodash/_getMatchData.js ***!
  \**********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var isStrictComparable = __webpack_require__(/*! ./_isStrictComparable */ \"./node_modules/lodash/_isStrictComparable.js\"),\n    keys = __webpack_require__(/*! ./keys */ \"./node_modules/lodash/keys.js\");\n\n/**\n * Gets the property names, values, and compare flags of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the match data of `object`.\n */\nfunction getMatchData(object) {\n  var result = keys(object),\n      length = result.length;\n\n  while (length--) {\n    var key = result[length],\n        value = object[key];\n\n    result[length] = [key, value, isStrictComparable(value)];\n  }\n  return result;\n}\n\nmodule.exports = getMatchData;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_getMatchData.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_getNative.js"
/*!*******************************************!*\
  !*** ./node_modules/lodash/_getNative.js ***!
  \*******************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var baseIsNative = __webpack_require__(/*! ./_baseIsNative */ \"./node_modules/lodash/_baseIsNative.js\"),\n    getValue = __webpack_require__(/*! ./_getValue */ \"./node_modules/lodash/_getValue.js\");\n\n/**\n * Gets the native function at `key` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the method to get.\n * @returns {*} Returns the function if it's native, else `undefined`.\n */\nfunction getNative(object, key) {\n  var value = getValue(object, key);\n  return baseIsNative(value) ? value : undefined;\n}\n\nmodule.exports = getNative;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_getNative.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_getPrototype.js"
/*!**********************************************!*\
  !*** ./node_modules/lodash/_getPrototype.js ***!
  \**********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var overArg = __webpack_require__(/*! ./_overArg */ \"./node_modules/lodash/_overArg.js\");\n\n/** Built-in value references. */\nvar getPrototype = overArg(Object.getPrototypeOf, Object);\n\nmodule.exports = getPrototype;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_getPrototype.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_getRawTag.js"
/*!*******************************************!*\
  !*** ./node_modules/lodash/_getRawTag.js ***!
  \*******************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var Symbol = __webpack_require__(/*! ./_Symbol */ \"./node_modules/lodash/_Symbol.js\");\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n  var isOwn = hasOwnProperty.call(value, symToStringTag),\n      tag = value[symToStringTag];\n\n  try {\n    value[symToStringTag] = undefined;\n    var unmasked = true;\n  } catch (e) {}\n\n  var result = nativeObjectToString.call(value);\n  if (unmasked) {\n    if (isOwn) {\n      value[symToStringTag] = tag;\n    } else {\n      delete value[symToStringTag];\n    }\n  }\n  return result;\n}\n\nmodule.exports = getRawTag;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_getRawTag.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_getSymbols.js"
/*!********************************************!*\
  !*** ./node_modules/lodash/_getSymbols.js ***!
  \********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var arrayFilter = __webpack_require__(/*! ./_arrayFilter */ \"./node_modules/lodash/_arrayFilter.js\"),\n    stubArray = __webpack_require__(/*! ./stubArray */ \"./node_modules/lodash/stubArray.js\");\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.propertyIsEnumerable;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeGetSymbols = Object.getOwnPropertySymbols;\n\n/**\n * Creates an array of the own enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\nvar getSymbols = !nativeGetSymbols ? stubArray : function(object) {\n  if (object == null) {\n    return [];\n  }\n  object = Object(object);\n  return arrayFilter(nativeGetSymbols(object), function(symbol) {\n    return propertyIsEnumerable.call(object, symbol);\n  });\n};\n\nmodule.exports = getSymbols;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_getSymbols.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_getSymbolsIn.js"
/*!**********************************************!*\
  !*** ./node_modules/lodash/_getSymbolsIn.js ***!
  \**********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var arrayPush = __webpack_require__(/*! ./_arrayPush */ \"./node_modules/lodash/_arrayPush.js\"),\n    getPrototype = __webpack_require__(/*! ./_getPrototype */ \"./node_modules/lodash/_getPrototype.js\"),\n    getSymbols = __webpack_require__(/*! ./_getSymbols */ \"./node_modules/lodash/_getSymbols.js\"),\n    stubArray = __webpack_require__(/*! ./stubArray */ \"./node_modules/lodash/stubArray.js\");\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeGetSymbols = Object.getOwnPropertySymbols;\n\n/**\n * Creates an array of the own and inherited enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\nvar getSymbolsIn = !nativeGetSymbols ? stubArray : function(object) {\n  var result = [];\n  while (object) {\n    arrayPush(result, getSymbols(object));\n    object = getPrototype(object);\n  }\n  return result;\n};\n\nmodule.exports = getSymbolsIn;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_getSymbolsIn.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_getTag.js"
/*!****************************************!*\
  !*** ./node_modules/lodash/_getTag.js ***!
  \****************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var DataView = __webpack_require__(/*! ./_DataView */ \"./node_modules/lodash/_DataView.js\"),\n    Map = __webpack_require__(/*! ./_Map */ \"./node_modules/lodash/_Map.js\"),\n    Promise = __webpack_require__(/*! ./_Promise */ \"./node_modules/lodash/_Promise.js\"),\n    Set = __webpack_require__(/*! ./_Set */ \"./node_modules/lodash/_Set.js\"),\n    WeakMap = __webpack_require__(/*! ./_WeakMap */ \"./node_modules/lodash/_WeakMap.js\"),\n    baseGetTag = __webpack_require__(/*! ./_baseGetTag */ \"./node_modules/lodash/_baseGetTag.js\"),\n    toSource = __webpack_require__(/*! ./_toSource */ \"./node_modules/lodash/_toSource.js\");\n\n/** `Object#toString` result references. */\nvar mapTag = '[object Map]',\n    objectTag = '[object Object]',\n    promiseTag = '[object Promise]',\n    setTag = '[object Set]',\n    weakMapTag = '[object WeakMap]';\n\nvar dataViewTag = '[object DataView]';\n\n/** Used to detect maps, sets, and weakmaps. */\nvar dataViewCtorString = toSource(DataView),\n    mapCtorString = toSource(Map),\n    promiseCtorString = toSource(Promise),\n    setCtorString = toSource(Set),\n    weakMapCtorString = toSource(WeakMap);\n\n/**\n * Gets the `toStringTag` of `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nvar getTag = baseGetTag;\n\n// Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.\nif ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) ||\n    (Map && getTag(new Map) != mapTag) ||\n    (Promise && getTag(Promise.resolve()) != promiseTag) ||\n    (Set && getTag(new Set) != setTag) ||\n    (WeakMap && getTag(new WeakMap) != weakMapTag)) {\n  getTag = function(value) {\n    var result = baseGetTag(value),\n        Ctor = result == objectTag ? value.constructor : undefined,\n        ctorString = Ctor ? toSource(Ctor) : '';\n\n    if (ctorString) {\n      switch (ctorString) {\n        case dataViewCtorString: return dataViewTag;\n        case mapCtorString: return mapTag;\n        case promiseCtorString: return promiseTag;\n        case setCtorString: return setTag;\n        case weakMapCtorString: return weakMapTag;\n      }\n    }\n    return result;\n  };\n}\n\nmodule.exports = getTag;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_getTag.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_getValue.js"
/*!******************************************!*\
  !*** ./node_modules/lodash/_getValue.js ***!
  \******************************************/
(module) {

eval("{/**\n * Gets the value at `key` of `object`.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction getValue(object, key) {\n  return object == null ? undefined : object[key];\n}\n\nmodule.exports = getValue;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_getValue.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_hasPath.js"
/*!*****************************************!*\
  !*** ./node_modules/lodash/_hasPath.js ***!
  \*****************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var castPath = __webpack_require__(/*! ./_castPath */ \"./node_modules/lodash/_castPath.js\"),\n    isArguments = __webpack_require__(/*! ./isArguments */ \"./node_modules/lodash/isArguments.js\"),\n    isArray = __webpack_require__(/*! ./isArray */ \"./node_modules/lodash/isArray.js\"),\n    isIndex = __webpack_require__(/*! ./_isIndex */ \"./node_modules/lodash/_isIndex.js\"),\n    isLength = __webpack_require__(/*! ./isLength */ \"./node_modules/lodash/isLength.js\"),\n    toKey = __webpack_require__(/*! ./_toKey */ \"./node_modules/lodash/_toKey.js\");\n\n/**\n * Checks if `path` exists on `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path to check.\n * @param {Function} hasFunc The function to check properties.\n * @returns {boolean} Returns `true` if `path` exists, else `false`.\n */\nfunction hasPath(object, path, hasFunc) {\n  path = castPath(path, object);\n\n  var index = -1,\n      length = path.length,\n      result = false;\n\n  while (++index < length) {\n    var key = toKey(path[index]);\n    if (!(result = object != null && hasFunc(object, key))) {\n      break;\n    }\n    object = object[key];\n  }\n  if (result || ++index != length) {\n    return result;\n  }\n  length = object == null ? 0 : object.length;\n  return !!length && isLength(length) && isIndex(key, length) &&\n    (isArray(object) || isArguments(object));\n}\n\nmodule.exports = hasPath;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_hasPath.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_hashClear.js"
/*!*******************************************!*\
  !*** ./node_modules/lodash/_hashClear.js ***!
  \*******************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var nativeCreate = __webpack_require__(/*! ./_nativeCreate */ \"./node_modules/lodash/_nativeCreate.js\");\n\n/**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\nfunction hashClear() {\n  this.__data__ = nativeCreate ? nativeCreate(null) : {};\n  this.size = 0;\n}\n\nmodule.exports = hashClear;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_hashClear.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_hashDelete.js"
/*!********************************************!*\
  !*** ./node_modules/lodash/_hashDelete.js ***!
  \********************************************/
(module) {

eval("{/**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction hashDelete(key) {\n  var result = this.has(key) && delete this.__data__[key];\n  this.size -= result ? 1 : 0;\n  return result;\n}\n\nmodule.exports = hashDelete;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_hashDelete.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_hashGet.js"
/*!*****************************************!*\
  !*** ./node_modules/lodash/_hashGet.js ***!
  \*****************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var nativeCreate = __webpack_require__(/*! ./_nativeCreate */ \"./node_modules/lodash/_nativeCreate.js\");\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction hashGet(key) {\n  var data = this.__data__;\n  if (nativeCreate) {\n    var result = data[key];\n    return result === HASH_UNDEFINED ? undefined : result;\n  }\n  return hasOwnProperty.call(data, key) ? data[key] : undefined;\n}\n\nmodule.exports = hashGet;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_hashGet.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_hashHas.js"
/*!*****************************************!*\
  !*** ./node_modules/lodash/_hashHas.js ***!
  \*****************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var nativeCreate = __webpack_require__(/*! ./_nativeCreate */ \"./node_modules/lodash/_nativeCreate.js\");\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction hashHas(key) {\n  var data = this.__data__;\n  return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);\n}\n\nmodule.exports = hashHas;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_hashHas.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_hashSet.js"
/*!*****************************************!*\
  !*** ./node_modules/lodash/_hashSet.js ***!
  \*****************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var nativeCreate = __webpack_require__(/*! ./_nativeCreate */ \"./node_modules/lodash/_nativeCreate.js\");\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\nfunction hashSet(key, value) {\n  var data = this.__data__;\n  this.size += this.has(key) ? 0 : 1;\n  data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n  return this;\n}\n\nmodule.exports = hashSet;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_hashSet.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_isIndex.js"
/*!*****************************************!*\
  !*** ./node_modules/lodash/_isIndex.js ***!
  \*****************************************/
(module) {

eval("{/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/** Used to detect unsigned integer values. */\nvar reIsUint = /^(?:0|[1-9]\\d*)$/;\n\n/**\n * Checks if `value` is a valid array-like index.\n *\n * @private\n * @param {*} value The value to check.\n * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.\n * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.\n */\nfunction isIndex(value, length) {\n  var type = typeof value;\n  length = length == null ? MAX_SAFE_INTEGER : length;\n\n  return !!length &&\n    (type == 'number' ||\n      (type != 'symbol' && reIsUint.test(value))) &&\n        (value > -1 && value % 1 == 0 && value < length);\n}\n\nmodule.exports = isIndex;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_isIndex.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_isKey.js"
/*!***************************************!*\
  !*** ./node_modules/lodash/_isKey.js ***!
  \***************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var isArray = __webpack_require__(/*! ./isArray */ \"./node_modules/lodash/isArray.js\"),\n    isSymbol = __webpack_require__(/*! ./isSymbol */ \"./node_modules/lodash/isSymbol.js\");\n\n/** Used to match property names within property paths. */\nvar reIsDeepProp = /\\.|\\[(?:[^[\\]]*|([\"'])(?:(?!\\1)[^\\\\]|\\\\.)*?\\1)\\]/,\n    reIsPlainProp = /^\\w*$/;\n\n/**\n * Checks if `value` is a property name and not a property path.\n *\n * @private\n * @param {*} value The value to check.\n * @param {Object} [object] The object to query keys on.\n * @returns {boolean} Returns `true` if `value` is a property name, else `false`.\n */\nfunction isKey(value, object) {\n  if (isArray(value)) {\n    return false;\n  }\n  var type = typeof value;\n  if (type == 'number' || type == 'symbol' || type == 'boolean' ||\n      value == null || isSymbol(value)) {\n    return true;\n  }\n  return reIsPlainProp.test(value) || !reIsDeepProp.test(value) ||\n    (object != null && value in Object(object));\n}\n\nmodule.exports = isKey;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_isKey.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_isKeyable.js"
/*!*******************************************!*\
  !*** ./node_modules/lodash/_isKeyable.js ***!
  \*******************************************/
(module) {

eval("{/**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\nfunction isKeyable(value) {\n  var type = typeof value;\n  return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n    ? (value !== '__proto__')\n    : (value === null);\n}\n\nmodule.exports = isKeyable;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_isKeyable.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_isMasked.js"
/*!******************************************!*\
  !*** ./node_modules/lodash/_isMasked.js ***!
  \******************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var coreJsData = __webpack_require__(/*! ./_coreJsData */ \"./node_modules/lodash/_coreJsData.js\");\n\n/** Used to detect methods masquerading as native. */\nvar maskSrcKey = (function() {\n  var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');\n  return uid ? ('Symbol(src)_1.' + uid) : '';\n}());\n\n/**\n * Checks if `func` has its source masked.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n */\nfunction isMasked(func) {\n  return !!maskSrcKey && (maskSrcKey in func);\n}\n\nmodule.exports = isMasked;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_isMasked.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_isPrototype.js"
/*!*********************************************!*\
  !*** ./node_modules/lodash/_isPrototype.js ***!
  \*********************************************/
(module) {

eval("{/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Checks if `value` is likely a prototype object.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.\n */\nfunction isPrototype(value) {\n  var Ctor = value && value.constructor,\n      proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;\n\n  return value === proto;\n}\n\nmodule.exports = isPrototype;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_isPrototype.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_isStrictComparable.js"
/*!****************************************************!*\
  !*** ./node_modules/lodash/_isStrictComparable.js ***!
  \****************************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var isObject = __webpack_require__(/*! ./isObject */ \"./node_modules/lodash/isObject.js\");\n\n/**\n * Checks if `value` is suitable for strict equality comparisons, i.e. `===`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` if suitable for strict\n *  equality comparisons, else `false`.\n */\nfunction isStrictComparable(value) {\n  return value === value && !isObject(value);\n}\n\nmodule.exports = isStrictComparable;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_isStrictComparable.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_listCacheClear.js"
/*!************************************************!*\
  !*** ./node_modules/lodash/_listCacheClear.js ***!
  \************************************************/
(module) {

eval("{/**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\nfunction listCacheClear() {\n  this.__data__ = [];\n  this.size = 0;\n}\n\nmodule.exports = listCacheClear;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_listCacheClear.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_listCacheDelete.js"
/*!*************************************************!*\
  !*** ./node_modules/lodash/_listCacheDelete.js ***!
  \*************************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var assocIndexOf = __webpack_require__(/*! ./_assocIndexOf */ \"./node_modules/lodash/_assocIndexOf.js\");\n\n/** Used for built-in method references. */\nvar arrayProto = Array.prototype;\n\n/** Built-in value references. */\nvar splice = arrayProto.splice;\n\n/**\n * Removes `key` and its value from the list cache.\n *\n * @private\n * @name delete\n * @memberOf ListCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction listCacheDelete(key) {\n  var data = this.__data__,\n      index = assocIndexOf(data, key);\n\n  if (index < 0) {\n    return false;\n  }\n  var lastIndex = data.length - 1;\n  if (index == lastIndex) {\n    data.pop();\n  } else {\n    splice.call(data, index, 1);\n  }\n  --this.size;\n  return true;\n}\n\nmodule.exports = listCacheDelete;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_listCacheDelete.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_listCacheGet.js"
/*!**********************************************!*\
  !*** ./node_modules/lodash/_listCacheGet.js ***!
  \**********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var assocIndexOf = __webpack_require__(/*! ./_assocIndexOf */ \"./node_modules/lodash/_assocIndexOf.js\");\n\n/**\n * Gets the list cache value for `key`.\n *\n * @private\n * @name get\n * @memberOf ListCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction listCacheGet(key) {\n  var data = this.__data__,\n      index = assocIndexOf(data, key);\n\n  return index < 0 ? undefined : data[index][1];\n}\n\nmodule.exports = listCacheGet;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_listCacheGet.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_listCacheHas.js"
/*!**********************************************!*\
  !*** ./node_modules/lodash/_listCacheHas.js ***!
  \**********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var assocIndexOf = __webpack_require__(/*! ./_assocIndexOf */ \"./node_modules/lodash/_assocIndexOf.js\");\n\n/**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction listCacheHas(key) {\n  return assocIndexOf(this.__data__, key) > -1;\n}\n\nmodule.exports = listCacheHas;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_listCacheHas.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_listCacheSet.js"
/*!**********************************************!*\
  !*** ./node_modules/lodash/_listCacheSet.js ***!
  \**********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var assocIndexOf = __webpack_require__(/*! ./_assocIndexOf */ \"./node_modules/lodash/_assocIndexOf.js\");\n\n/**\n * Sets the list cache `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf ListCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the list cache instance.\n */\nfunction listCacheSet(key, value) {\n  var data = this.__data__,\n      index = assocIndexOf(data, key);\n\n  if (index < 0) {\n    ++this.size;\n    data.push([key, value]);\n  } else {\n    data[index][1] = value;\n  }\n  return this;\n}\n\nmodule.exports = listCacheSet;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_listCacheSet.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_mapCacheClear.js"
/*!***********************************************!*\
  !*** ./node_modules/lodash/_mapCacheClear.js ***!
  \***********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var Hash = __webpack_require__(/*! ./_Hash */ \"./node_modules/lodash/_Hash.js\"),\n    ListCache = __webpack_require__(/*! ./_ListCache */ \"./node_modules/lodash/_ListCache.js\"),\n    Map = __webpack_require__(/*! ./_Map */ \"./node_modules/lodash/_Map.js\");\n\n/**\n * Removes all key-value entries from the map.\n *\n * @private\n * @name clear\n * @memberOf MapCache\n */\nfunction mapCacheClear() {\n  this.size = 0;\n  this.__data__ = {\n    'hash': new Hash,\n    'map': new (Map || ListCache),\n    'string': new Hash\n  };\n}\n\nmodule.exports = mapCacheClear;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_mapCacheClear.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_mapCacheDelete.js"
/*!************************************************!*\
  !*** ./node_modules/lodash/_mapCacheDelete.js ***!
  \************************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var getMapData = __webpack_require__(/*! ./_getMapData */ \"./node_modules/lodash/_getMapData.js\");\n\n/**\n * Removes `key` and its value from the map.\n *\n * @private\n * @name delete\n * @memberOf MapCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction mapCacheDelete(key) {\n  var result = getMapData(this, key)['delete'](key);\n  this.size -= result ? 1 : 0;\n  return result;\n}\n\nmodule.exports = mapCacheDelete;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_mapCacheDelete.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_mapCacheGet.js"
/*!*********************************************!*\
  !*** ./node_modules/lodash/_mapCacheGet.js ***!
  \*********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var getMapData = __webpack_require__(/*! ./_getMapData */ \"./node_modules/lodash/_getMapData.js\");\n\n/**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction mapCacheGet(key) {\n  return getMapData(this, key).get(key);\n}\n\nmodule.exports = mapCacheGet;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_mapCacheGet.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_mapCacheHas.js"
/*!*********************************************!*\
  !*** ./node_modules/lodash/_mapCacheHas.js ***!
  \*********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var getMapData = __webpack_require__(/*! ./_getMapData */ \"./node_modules/lodash/_getMapData.js\");\n\n/**\n * Checks if a map value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf MapCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction mapCacheHas(key) {\n  return getMapData(this, key).has(key);\n}\n\nmodule.exports = mapCacheHas;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_mapCacheHas.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_mapCacheSet.js"
/*!*********************************************!*\
  !*** ./node_modules/lodash/_mapCacheSet.js ***!
  \*********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var getMapData = __webpack_require__(/*! ./_getMapData */ \"./node_modules/lodash/_getMapData.js\");\n\n/**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\nfunction mapCacheSet(key, value) {\n  var data = getMapData(this, key),\n      size = data.size;\n\n  data.set(key, value);\n  this.size += data.size == size ? 0 : 1;\n  return this;\n}\n\nmodule.exports = mapCacheSet;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_mapCacheSet.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_mapToArray.js"
/*!********************************************!*\
  !*** ./node_modules/lodash/_mapToArray.js ***!
  \********************************************/
(module) {

eval("{/**\n * Converts `map` to its key-value pairs.\n *\n * @private\n * @param {Object} map The map to convert.\n * @returns {Array} Returns the key-value pairs.\n */\nfunction mapToArray(map) {\n  var index = -1,\n      result = Array(map.size);\n\n  map.forEach(function(value, key) {\n    result[++index] = [key, value];\n  });\n  return result;\n}\n\nmodule.exports = mapToArray;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_mapToArray.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_matchesStrictComparable.js"
/*!*********************************************************!*\
  !*** ./node_modules/lodash/_matchesStrictComparable.js ***!
  \*********************************************************/
(module) {

eval("{/**\n * A specialized version of `matchesProperty` for source values suitable\n * for strict equality comparisons, i.e. `===`.\n *\n * @private\n * @param {string} key The key of the property to get.\n * @param {*} srcValue The value to match.\n * @returns {Function} Returns the new spec function.\n */\nfunction matchesStrictComparable(key, srcValue) {\n  return function(object) {\n    if (object == null) {\n      return false;\n    }\n    return object[key] === srcValue &&\n      (srcValue !== undefined || (key in Object(object)));\n  };\n}\n\nmodule.exports = matchesStrictComparable;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_matchesStrictComparable.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_memoizeCapped.js"
/*!***********************************************!*\
  !*** ./node_modules/lodash/_memoizeCapped.js ***!
  \***********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var memoize = __webpack_require__(/*! ./memoize */ \"./node_modules/lodash/memoize.js\");\n\n/** Used as the maximum memoize cache size. */\nvar MAX_MEMOIZE_SIZE = 500;\n\n/**\n * A specialized version of `_.memoize` which clears the memoized function's\n * cache when it exceeds `MAX_MEMOIZE_SIZE`.\n *\n * @private\n * @param {Function} func The function to have its output memoized.\n * @returns {Function} Returns the new memoized function.\n */\nfunction memoizeCapped(func) {\n  var result = memoize(func, function(key) {\n    if (cache.size === MAX_MEMOIZE_SIZE) {\n      cache.clear();\n    }\n    return key;\n  });\n\n  var cache = result.cache;\n  return result;\n}\n\nmodule.exports = memoizeCapped;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_memoizeCapped.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_nativeCreate.js"
/*!**********************************************!*\
  !*** ./node_modules/lodash/_nativeCreate.js ***!
  \**********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var getNative = __webpack_require__(/*! ./_getNative */ \"./node_modules/lodash/_getNative.js\");\n\n/* Built-in method references that are verified to be native. */\nvar nativeCreate = getNative(Object, 'create');\n\nmodule.exports = nativeCreate;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_nativeCreate.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_nativeKeys.js"
/*!********************************************!*\
  !*** ./node_modules/lodash/_nativeKeys.js ***!
  \********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var overArg = __webpack_require__(/*! ./_overArg */ \"./node_modules/lodash/_overArg.js\");\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeKeys = overArg(Object.keys, Object);\n\nmodule.exports = nativeKeys;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_nativeKeys.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_nativeKeysIn.js"
/*!**********************************************!*\
  !*** ./node_modules/lodash/_nativeKeysIn.js ***!
  \**********************************************/
(module) {

eval("{/**\n * This function is like\n * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * except that it includes inherited enumerable properties.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction nativeKeysIn(object) {\n  var result = [];\n  if (object != null) {\n    for (var key in Object(object)) {\n      result.push(key);\n    }\n  }\n  return result;\n}\n\nmodule.exports = nativeKeysIn;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_nativeKeysIn.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_nodeUtil.js"
/*!******************************************!*\
  !*** ./node_modules/lodash/_nodeUtil.js ***!
  \******************************************/
(module, exports, __webpack_require__) {

eval("{/* module decorator */ module = __webpack_require__.nmd(module);\nvar freeGlobal = __webpack_require__(/*! ./_freeGlobal */ \"./node_modules/lodash/_freeGlobal.js\");\n\n/** Detect free variable `exports`. */\nvar freeExports =  true && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && \"object\" == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Detect free variable `process` from Node.js. */\nvar freeProcess = moduleExports && freeGlobal.process;\n\n/** Used to access faster Node.js helpers. */\nvar nodeUtil = (function() {\n  try {\n    // Use `util.types` for Node.js 10+.\n    var types = freeModule && freeModule.require && freeModule.require('util').types;\n\n    if (types) {\n      return types;\n    }\n\n    // Legacy `process.binding('util')` for Node.js < 10.\n    return freeProcess && freeProcess.binding && freeProcess.binding('util');\n  } catch (e) {}\n}());\n\nmodule.exports = nodeUtil;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_nodeUtil.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_objectToString.js"
/*!************************************************!*\
  !*** ./node_modules/lodash/_objectToString.js ***!
  \************************************************/
(module) {

eval("{/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n  return nativeObjectToString.call(value);\n}\n\nmodule.exports = objectToString;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_objectToString.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_overArg.js"
/*!*****************************************!*\
  !*** ./node_modules/lodash/_overArg.js ***!
  \*****************************************/
(module) {

eval("{/**\n * Creates a unary function that invokes `func` with its argument transformed.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {Function} transform The argument transform.\n * @returns {Function} Returns the new function.\n */\nfunction overArg(func, transform) {\n  return function(arg) {\n    return func(transform(arg));\n  };\n}\n\nmodule.exports = overArg;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_overArg.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_root.js"
/*!**************************************!*\
  !*** ./node_modules/lodash/_root.js ***!
  \**************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var freeGlobal = __webpack_require__(/*! ./_freeGlobal */ \"./node_modules/lodash/_freeGlobal.js\");\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\nmodule.exports = root;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_root.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_setCacheAdd.js"
/*!*********************************************!*\
  !*** ./node_modules/lodash/_setCacheAdd.js ***!
  \*********************************************/
(module) {

eval("{/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/**\n * Adds `value` to the array cache.\n *\n * @private\n * @name add\n * @memberOf SetCache\n * @alias push\n * @param {*} value The value to cache.\n * @returns {Object} Returns the cache instance.\n */\nfunction setCacheAdd(value) {\n  this.__data__.set(value, HASH_UNDEFINED);\n  return this;\n}\n\nmodule.exports = setCacheAdd;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_setCacheAdd.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_setCacheHas.js"
/*!*********************************************!*\
  !*** ./node_modules/lodash/_setCacheHas.js ***!
  \*********************************************/
(module) {

eval("{/**\n * Checks if `value` is in the array cache.\n *\n * @private\n * @name has\n * @memberOf SetCache\n * @param {*} value The value to search for.\n * @returns {number} Returns `true` if `value` is found, else `false`.\n */\nfunction setCacheHas(value) {\n  return this.__data__.has(value);\n}\n\nmodule.exports = setCacheHas;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_setCacheHas.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_setToArray.js"
/*!********************************************!*\
  !*** ./node_modules/lodash/_setToArray.js ***!
  \********************************************/
(module) {

eval("{/**\n * Converts `set` to an array of its values.\n *\n * @private\n * @param {Object} set The set to convert.\n * @returns {Array} Returns the values.\n */\nfunction setToArray(set) {\n  var index = -1,\n      result = Array(set.size);\n\n  set.forEach(function(value) {\n    result[++index] = value;\n  });\n  return result;\n}\n\nmodule.exports = setToArray;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_setToArray.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_stackClear.js"
/*!********************************************!*\
  !*** ./node_modules/lodash/_stackClear.js ***!
  \********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var ListCache = __webpack_require__(/*! ./_ListCache */ \"./node_modules/lodash/_ListCache.js\");\n\n/**\n * Removes all key-value entries from the stack.\n *\n * @private\n * @name clear\n * @memberOf Stack\n */\nfunction stackClear() {\n  this.__data__ = new ListCache;\n  this.size = 0;\n}\n\nmodule.exports = stackClear;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_stackClear.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_stackDelete.js"
/*!*********************************************!*\
  !*** ./node_modules/lodash/_stackDelete.js ***!
  \*********************************************/
(module) {

eval("{/**\n * Removes `key` and its value from the stack.\n *\n * @private\n * @name delete\n * @memberOf Stack\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction stackDelete(key) {\n  var data = this.__data__,\n      result = data['delete'](key);\n\n  this.size = data.size;\n  return result;\n}\n\nmodule.exports = stackDelete;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_stackDelete.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_stackGet.js"
/*!******************************************!*\
  !*** ./node_modules/lodash/_stackGet.js ***!
  \******************************************/
(module) {

eval("{/**\n * Gets the stack value for `key`.\n *\n * @private\n * @name get\n * @memberOf Stack\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction stackGet(key) {\n  return this.__data__.get(key);\n}\n\nmodule.exports = stackGet;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_stackGet.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_stackHas.js"
/*!******************************************!*\
  !*** ./node_modules/lodash/_stackHas.js ***!
  \******************************************/
(module) {

eval("{/**\n * Checks if a stack value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Stack\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction stackHas(key) {\n  return this.__data__.has(key);\n}\n\nmodule.exports = stackHas;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_stackHas.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_stackSet.js"
/*!******************************************!*\
  !*** ./node_modules/lodash/_stackSet.js ***!
  \******************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var ListCache = __webpack_require__(/*! ./_ListCache */ \"./node_modules/lodash/_ListCache.js\"),\n    Map = __webpack_require__(/*! ./_Map */ \"./node_modules/lodash/_Map.js\"),\n    MapCache = __webpack_require__(/*! ./_MapCache */ \"./node_modules/lodash/_MapCache.js\");\n\n/** Used as the size to enable large array optimizations. */\nvar LARGE_ARRAY_SIZE = 200;\n\n/**\n * Sets the stack `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Stack\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the stack cache instance.\n */\nfunction stackSet(key, value) {\n  var data = this.__data__;\n  if (data instanceof ListCache) {\n    var pairs = data.__data__;\n    if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {\n      pairs.push([key, value]);\n      this.size = ++data.size;\n      return this;\n    }\n    data = this.__data__ = new MapCache(pairs);\n  }\n  data.set(key, value);\n  this.size = data.size;\n  return this;\n}\n\nmodule.exports = stackSet;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_stackSet.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_stringToPath.js"
/*!**********************************************!*\
  !*** ./node_modules/lodash/_stringToPath.js ***!
  \**********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var memoizeCapped = __webpack_require__(/*! ./_memoizeCapped */ \"./node_modules/lodash/_memoizeCapped.js\");\n\n/** Used to match property names within property paths. */\nvar rePropName = /[^.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))/g;\n\n/** Used to match backslashes in property paths. */\nvar reEscapeChar = /\\\\(\\\\)?/g;\n\n/**\n * Converts `string` to a property path array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the property path array.\n */\nvar stringToPath = memoizeCapped(function(string) {\n  var result = [];\n  if (string.charCodeAt(0) === 46 /* . */) {\n    result.push('');\n  }\n  string.replace(rePropName, function(match, number, quote, subString) {\n    result.push(quote ? subString.replace(reEscapeChar, '$1') : (number || match));\n  });\n  return result;\n});\n\nmodule.exports = stringToPath;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_stringToPath.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_toKey.js"
/*!***************************************!*\
  !*** ./node_modules/lodash/_toKey.js ***!
  \***************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var isSymbol = __webpack_require__(/*! ./isSymbol */ \"./node_modules/lodash/isSymbol.js\");\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0;\n\n/**\n * Converts `value` to a string key if it's not a string or symbol.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {string|symbol} Returns the key.\n */\nfunction toKey(value) {\n  if (typeof value == 'string' || isSymbol(value)) {\n    return value;\n  }\n  var result = (value + '');\n  return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\nmodule.exports = toKey;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_toKey.js?\n}");

/***/ },

/***/ "./node_modules/lodash/_toSource.js"
/*!******************************************!*\
  !*** ./node_modules/lodash/_toSource.js ***!
  \******************************************/
(module) {

eval("{/** Used for built-in method references. */\nvar funcProto = Function.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to convert.\n * @returns {string} Returns the source code.\n */\nfunction toSource(func) {\n  if (func != null) {\n    try {\n      return funcToString.call(func);\n    } catch (e) {}\n    try {\n      return (func + '');\n    } catch (e) {}\n  }\n  return '';\n}\n\nmodule.exports = toSource;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/_toSource.js?\n}");

/***/ },

/***/ "./node_modules/lodash/eq.js"
/*!***********************************!*\
  !*** ./node_modules/lodash/eq.js ***!
  \***********************************/
(module) {

eval("{/**\n * Performs a\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * comparison between two values to determine if they are equivalent.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.eq(object, object);\n * // => true\n *\n * _.eq(object, other);\n * // => false\n *\n * _.eq('a', 'a');\n * // => true\n *\n * _.eq('a', Object('a'));\n * // => false\n *\n * _.eq(NaN, NaN);\n * // => true\n */\nfunction eq(value, other) {\n  return value === other || (value !== value && other !== other);\n}\n\nmodule.exports = eq;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/eq.js?\n}");

/***/ },

/***/ "./node_modules/lodash/get.js"
/*!************************************!*\
  !*** ./node_modules/lodash/get.js ***!
  \************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var baseGet = __webpack_require__(/*! ./_baseGet */ \"./node_modules/lodash/_baseGet.js\");\n\n/**\n * Gets the value at `path` of `object`. If the resolved value is\n * `undefined`, the `defaultValue` is returned in its place.\n *\n * @static\n * @memberOf _\n * @since 3.7.0\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @param {*} [defaultValue] The value returned for `undefined` resolved values.\n * @returns {*} Returns the resolved value.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.get(object, 'a[0].b.c');\n * // => 3\n *\n * _.get(object, ['a', '0', 'b', 'c']);\n * // => 3\n *\n * _.get(object, 'a.b.c', 'default');\n * // => 'default'\n */\nfunction get(object, path, defaultValue) {\n  var result = object == null ? undefined : baseGet(object, path);\n  return result === undefined ? defaultValue : result;\n}\n\nmodule.exports = get;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/get.js?\n}");

/***/ },

/***/ "./node_modules/lodash/hasIn.js"
/*!**************************************!*\
  !*** ./node_modules/lodash/hasIn.js ***!
  \**************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var baseHasIn = __webpack_require__(/*! ./_baseHasIn */ \"./node_modules/lodash/_baseHasIn.js\"),\n    hasPath = __webpack_require__(/*! ./_hasPath */ \"./node_modules/lodash/_hasPath.js\");\n\n/**\n * Checks if `path` is a direct or inherited property of `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path to check.\n * @returns {boolean} Returns `true` if `path` exists, else `false`.\n * @example\n *\n * var object = _.create({ 'a': _.create({ 'b': 2 }) });\n *\n * _.hasIn(object, 'a');\n * // => true\n *\n * _.hasIn(object, 'a.b');\n * // => true\n *\n * _.hasIn(object, ['a', 'b']);\n * // => true\n *\n * _.hasIn(object, 'b');\n * // => false\n */\nfunction hasIn(object, path) {\n  return object != null && hasPath(object, path, baseHasIn);\n}\n\nmodule.exports = hasIn;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/hasIn.js?\n}");

/***/ },

/***/ "./node_modules/lodash/identity.js"
/*!*****************************************!*\
  !*** ./node_modules/lodash/identity.js ***!
  \*****************************************/
(module) {

eval("{/**\n * This method returns the first argument it receives.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Util\n * @param {*} value Any value.\n * @returns {*} Returns `value`.\n * @example\n *\n * var object = { 'a': 1 };\n *\n * console.log(_.identity(object) === object);\n * // => true\n */\nfunction identity(value) {\n  return value;\n}\n\nmodule.exports = identity;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/identity.js?\n}");

/***/ },

/***/ "./node_modules/lodash/isArguments.js"
/*!********************************************!*\
  !*** ./node_modules/lodash/isArguments.js ***!
  \********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var baseIsArguments = __webpack_require__(/*! ./_baseIsArguments */ \"./node_modules/lodash/_baseIsArguments.js\"),\n    isObjectLike = __webpack_require__(/*! ./isObjectLike */ \"./node_modules/lodash/isObjectLike.js\");\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.propertyIsEnumerable;\n\n/**\n * Checks if `value` is likely an `arguments` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n *  else `false`.\n * @example\n *\n * _.isArguments(function() { return arguments; }());\n * // => true\n *\n * _.isArguments([1, 2, 3]);\n * // => false\n */\nvar isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {\n  return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&\n    !propertyIsEnumerable.call(value, 'callee');\n};\n\nmodule.exports = isArguments;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/isArguments.js?\n}");

/***/ },

/***/ "./node_modules/lodash/isArray.js"
/*!****************************************!*\
  !*** ./node_modules/lodash/isArray.js ***!
  \****************************************/
(module) {

eval("{/**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\nvar isArray = Array.isArray;\n\nmodule.exports = isArray;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/isArray.js?\n}");

/***/ },

/***/ "./node_modules/lodash/isArrayLike.js"
/*!********************************************!*\
  !*** ./node_modules/lodash/isArrayLike.js ***!
  \********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var isFunction = __webpack_require__(/*! ./isFunction */ \"./node_modules/lodash/isFunction.js\"),\n    isLength = __webpack_require__(/*! ./isLength */ \"./node_modules/lodash/isLength.js\");\n\n/**\n * Checks if `value` is array-like. A value is considered array-like if it's\n * not a function and has a `value.length` that's an integer greater than or\n * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is array-like, else `false`.\n * @example\n *\n * _.isArrayLike([1, 2, 3]);\n * // => true\n *\n * _.isArrayLike(document.body.children);\n * // => true\n *\n * _.isArrayLike('abc');\n * // => true\n *\n * _.isArrayLike(_.noop);\n * // => false\n */\nfunction isArrayLike(value) {\n  return value != null && isLength(value.length) && !isFunction(value);\n}\n\nmodule.exports = isArrayLike;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/isArrayLike.js?\n}");

/***/ },

/***/ "./node_modules/lodash/isBuffer.js"
/*!*****************************************!*\
  !*** ./node_modules/lodash/isBuffer.js ***!
  \*****************************************/
(module, exports, __webpack_require__) {

eval("{/* module decorator */ module = __webpack_require__.nmd(module);\nvar root = __webpack_require__(/*! ./_root */ \"./node_modules/lodash/_root.js\"),\n    stubFalse = __webpack_require__(/*! ./stubFalse */ \"./node_modules/lodash/stubFalse.js\");\n\n/** Detect free variable `exports`. */\nvar freeExports =  true && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && \"object\" == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? root.Buffer : undefined;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined;\n\n/**\n * Checks if `value` is a buffer.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.\n * @example\n *\n * _.isBuffer(new Buffer(2));\n * // => true\n *\n * _.isBuffer(new Uint8Array(2));\n * // => false\n */\nvar isBuffer = nativeIsBuffer || stubFalse;\n\nmodule.exports = isBuffer;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/isBuffer.js?\n}");

/***/ },

/***/ "./node_modules/lodash/isFunction.js"
/*!*******************************************!*\
  !*** ./node_modules/lodash/isFunction.js ***!
  \*******************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var baseGetTag = __webpack_require__(/*! ./_baseGetTag */ \"./node_modules/lodash/_baseGetTag.js\"),\n    isObject = __webpack_require__(/*! ./isObject */ \"./node_modules/lodash/isObject.js\");\n\n/** `Object#toString` result references. */\nvar asyncTag = '[object AsyncFunction]',\n    funcTag = '[object Function]',\n    genTag = '[object GeneratorFunction]',\n    proxyTag = '[object Proxy]';\n\n/**\n * Checks if `value` is classified as a `Function` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * _.isFunction(_);\n * // => true\n *\n * _.isFunction(/abc/);\n * // => false\n */\nfunction isFunction(value) {\n  if (!isObject(value)) {\n    return false;\n  }\n  // The use of `Object#toString` avoids issues with the `typeof` operator\n  // in Safari 9 which returns 'object' for typed arrays and other constructors.\n  var tag = baseGetTag(value);\n  return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;\n}\n\nmodule.exports = isFunction;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/isFunction.js?\n}");

/***/ },

/***/ "./node_modules/lodash/isLength.js"
/*!*****************************************!*\
  !*** ./node_modules/lodash/isLength.js ***!
  \*****************************************/
(module) {

eval("{/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/**\n * Checks if `value` is a valid array-like length.\n *\n * **Note:** This method is loosely based on\n * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.\n * @example\n *\n * _.isLength(3);\n * // => true\n *\n * _.isLength(Number.MIN_VALUE);\n * // => false\n *\n * _.isLength(Infinity);\n * // => false\n *\n * _.isLength('3');\n * // => false\n */\nfunction isLength(value) {\n  return typeof value == 'number' &&\n    value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;\n}\n\nmodule.exports = isLength;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/isLength.js?\n}");

/***/ },

/***/ "./node_modules/lodash/isObject.js"
/*!*****************************************!*\
  !*** ./node_modules/lodash/isObject.js ***!
  \*****************************************/
(module) {

eval("{/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n  var type = typeof value;\n  return value != null && (type == 'object' || type == 'function');\n}\n\nmodule.exports = isObject;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/isObject.js?\n}");

/***/ },

/***/ "./node_modules/lodash/isObjectLike.js"
/*!*********************************************!*\
  !*** ./node_modules/lodash/isObjectLike.js ***!
  \*********************************************/
(module) {

eval("{/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n  return value != null && typeof value == 'object';\n}\n\nmodule.exports = isObjectLike;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/isObjectLike.js?\n}");

/***/ },

/***/ "./node_modules/lodash/isSymbol.js"
/*!*****************************************!*\
  !*** ./node_modules/lodash/isSymbol.js ***!
  \*****************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var baseGetTag = __webpack_require__(/*! ./_baseGetTag */ \"./node_modules/lodash/_baseGetTag.js\"),\n    isObjectLike = __webpack_require__(/*! ./isObjectLike */ \"./node_modules/lodash/isObjectLike.js\");\n\n/** `Object#toString` result references. */\nvar symbolTag = '[object Symbol]';\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n  return typeof value == 'symbol' ||\n    (isObjectLike(value) && baseGetTag(value) == symbolTag);\n}\n\nmodule.exports = isSymbol;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/isSymbol.js?\n}");

/***/ },

/***/ "./node_modules/lodash/isTypedArray.js"
/*!*********************************************!*\
  !*** ./node_modules/lodash/isTypedArray.js ***!
  \*********************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var baseIsTypedArray = __webpack_require__(/*! ./_baseIsTypedArray */ \"./node_modules/lodash/_baseIsTypedArray.js\"),\n    baseUnary = __webpack_require__(/*! ./_baseUnary */ \"./node_modules/lodash/_baseUnary.js\"),\n    nodeUtil = __webpack_require__(/*! ./_nodeUtil */ \"./node_modules/lodash/_nodeUtil.js\");\n\n/* Node.js helper references. */\nvar nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;\n\n/**\n * Checks if `value` is classified as a typed array.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n * @example\n *\n * _.isTypedArray(new Uint8Array);\n * // => true\n *\n * _.isTypedArray([]);\n * // => false\n */\nvar isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;\n\nmodule.exports = isTypedArray;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/isTypedArray.js?\n}");

/***/ },

/***/ "./node_modules/lodash/keys.js"
/*!*************************************!*\
  !*** ./node_modules/lodash/keys.js ***!
  \*************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var arrayLikeKeys = __webpack_require__(/*! ./_arrayLikeKeys */ \"./node_modules/lodash/_arrayLikeKeys.js\"),\n    baseKeys = __webpack_require__(/*! ./_baseKeys */ \"./node_modules/lodash/_baseKeys.js\"),\n    isArrayLike = __webpack_require__(/*! ./isArrayLike */ \"./node_modules/lodash/isArrayLike.js\");\n\n/**\n * Creates an array of the own enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects. See the\n * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * for more details.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n *   this.a = 1;\n *   this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keys(new Foo);\n * // => ['a', 'b'] (iteration order is not guaranteed)\n *\n * _.keys('hi');\n * // => ['0', '1']\n */\nfunction keys(object) {\n  return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);\n}\n\nmodule.exports = keys;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/keys.js?\n}");

/***/ },

/***/ "./node_modules/lodash/keysIn.js"
/*!***************************************!*\
  !*** ./node_modules/lodash/keysIn.js ***!
  \***************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var arrayLikeKeys = __webpack_require__(/*! ./_arrayLikeKeys */ \"./node_modules/lodash/_arrayLikeKeys.js\"),\n    baseKeysIn = __webpack_require__(/*! ./_baseKeysIn */ \"./node_modules/lodash/_baseKeysIn.js\"),\n    isArrayLike = __webpack_require__(/*! ./isArrayLike */ \"./node_modules/lodash/isArrayLike.js\");\n\n/**\n * Creates an array of the own and inherited enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n *   this.a = 1;\n *   this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keysIn(new Foo);\n * // => ['a', 'b', 'c'] (iteration order is not guaranteed)\n */\nfunction keysIn(object) {\n  return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);\n}\n\nmodule.exports = keysIn;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/keysIn.js?\n}");

/***/ },

/***/ "./node_modules/lodash/lodash.js"
/*!***************************************!*\
  !*** ./node_modules/lodash/lodash.js ***!
  \***************************************/
(module, exports, __webpack_require__) {

eval("{/* module decorator */ module = __webpack_require__.nmd(module);\nvar __WEBPACK_AMD_DEFINE_RESULT__;/**\n * @license\n * Lodash <https://lodash.com/>\n * Copyright OpenJS Foundation and other contributors <https://openjsf.org/>\n * Released under MIT license <https://lodash.com/license>\n * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>\n * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n */\n;(function() {\n\n  /** Used as a safe reference for `undefined` in pre-ES5 environments. */\n  var undefined;\n\n  /** Used as the semantic version number. */\n  var VERSION = '4.17.21';\n\n  /** Used as the size to enable large array optimizations. */\n  var LARGE_ARRAY_SIZE = 200;\n\n  /** Error message constants. */\n  var CORE_ERROR_TEXT = 'Unsupported core-js use. Try https://npms.io/search?q=ponyfill.',\n      FUNC_ERROR_TEXT = 'Expected a function',\n      INVALID_TEMPL_VAR_ERROR_TEXT = 'Invalid `variable` option passed into `_.template`';\n\n  /** Used to stand-in for `undefined` hash values. */\n  var HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n  /** Used as the maximum memoize cache size. */\n  var MAX_MEMOIZE_SIZE = 500;\n\n  /** Used as the internal argument placeholder. */\n  var PLACEHOLDER = '__lodash_placeholder__';\n\n  /** Used to compose bitmasks for cloning. */\n  var CLONE_DEEP_FLAG = 1,\n      CLONE_FLAT_FLAG = 2,\n      CLONE_SYMBOLS_FLAG = 4;\n\n  /** Used to compose bitmasks for value comparisons. */\n  var COMPARE_PARTIAL_FLAG = 1,\n      COMPARE_UNORDERED_FLAG = 2;\n\n  /** Used to compose bitmasks for function metadata. */\n  var WRAP_BIND_FLAG = 1,\n      WRAP_BIND_KEY_FLAG = 2,\n      WRAP_CURRY_BOUND_FLAG = 4,\n      WRAP_CURRY_FLAG = 8,\n      WRAP_CURRY_RIGHT_FLAG = 16,\n      WRAP_PARTIAL_FLAG = 32,\n      WRAP_PARTIAL_RIGHT_FLAG = 64,\n      WRAP_ARY_FLAG = 128,\n      WRAP_REARG_FLAG = 256,\n      WRAP_FLIP_FLAG = 512;\n\n  /** Used as default options for `_.truncate`. */\n  var DEFAULT_TRUNC_LENGTH = 30,\n      DEFAULT_TRUNC_OMISSION = '...';\n\n  /** Used to detect hot functions by number of calls within a span of milliseconds. */\n  var HOT_COUNT = 800,\n      HOT_SPAN = 16;\n\n  /** Used to indicate the type of lazy iteratees. */\n  var LAZY_FILTER_FLAG = 1,\n      LAZY_MAP_FLAG = 2,\n      LAZY_WHILE_FLAG = 3;\n\n  /** Used as references for various `Number` constants. */\n  var INFINITY = 1 / 0,\n      MAX_SAFE_INTEGER = 9007199254740991,\n      MAX_INTEGER = 1.7976931348623157e+308,\n      NAN = 0 / 0;\n\n  /** Used as references for the maximum length and index of an array. */\n  var MAX_ARRAY_LENGTH = 4294967295,\n      MAX_ARRAY_INDEX = MAX_ARRAY_LENGTH - 1,\n      HALF_MAX_ARRAY_LENGTH = MAX_ARRAY_LENGTH >>> 1;\n\n  /** Used to associate wrap methods with their bit flags. */\n  var wrapFlags = [\n    ['ary', WRAP_ARY_FLAG],\n    ['bind', WRAP_BIND_FLAG],\n    ['bindKey', WRAP_BIND_KEY_FLAG],\n    ['curry', WRAP_CURRY_FLAG],\n    ['curryRight', WRAP_CURRY_RIGHT_FLAG],\n    ['flip', WRAP_FLIP_FLAG],\n    ['partial', WRAP_PARTIAL_FLAG],\n    ['partialRight', WRAP_PARTIAL_RIGHT_FLAG],\n    ['rearg', WRAP_REARG_FLAG]\n  ];\n\n  /** `Object#toString` result references. */\n  var argsTag = '[object Arguments]',\n      arrayTag = '[object Array]',\n      asyncTag = '[object AsyncFunction]',\n      boolTag = '[object Boolean]',\n      dateTag = '[object Date]',\n      domExcTag = '[object DOMException]',\n      errorTag = '[object Error]',\n      funcTag = '[object Function]',\n      genTag = '[object GeneratorFunction]',\n      mapTag = '[object Map]',\n      numberTag = '[object Number]',\n      nullTag = '[object Null]',\n      objectTag = '[object Object]',\n      promiseTag = '[object Promise]',\n      proxyTag = '[object Proxy]',\n      regexpTag = '[object RegExp]',\n      setTag = '[object Set]',\n      stringTag = '[object String]',\n      symbolTag = '[object Symbol]',\n      undefinedTag = '[object Undefined]',\n      weakMapTag = '[object WeakMap]',\n      weakSetTag = '[object WeakSet]';\n\n  var arrayBufferTag = '[object ArrayBuffer]',\n      dataViewTag = '[object DataView]',\n      float32Tag = '[object Float32Array]',\n      float64Tag = '[object Float64Array]',\n      int8Tag = '[object Int8Array]',\n      int16Tag = '[object Int16Array]',\n      int32Tag = '[object Int32Array]',\n      uint8Tag = '[object Uint8Array]',\n      uint8ClampedTag = '[object Uint8ClampedArray]',\n      uint16Tag = '[object Uint16Array]',\n      uint32Tag = '[object Uint32Array]';\n\n  /** Used to match empty string literals in compiled template source. */\n  var reEmptyStringLeading = /\\b__p \\+= '';/g,\n      reEmptyStringMiddle = /\\b(__p \\+=) '' \\+/g,\n      reEmptyStringTrailing = /(__e\\(.*?\\)|\\b__t\\)) \\+\\n'';/g;\n\n  /** Used to match HTML entities and HTML characters. */\n  var reEscapedHtml = /&(?:amp|lt|gt|quot|#39);/g,\n      reUnescapedHtml = /[&<>\"']/g,\n      reHasEscapedHtml = RegExp(reEscapedHtml.source),\n      reHasUnescapedHtml = RegExp(reUnescapedHtml.source);\n\n  /** Used to match template delimiters. */\n  var reEscape = /<%-([\\s\\S]+?)%>/g,\n      reEvaluate = /<%([\\s\\S]+?)%>/g,\n      reInterpolate = /<%=([\\s\\S]+?)%>/g;\n\n  /** Used to match property names within property paths. */\n  var reIsDeepProp = /\\.|\\[(?:[^[\\]]*|([\"'])(?:(?!\\1)[^\\\\]|\\\\.)*?\\1)\\]/,\n      reIsPlainProp = /^\\w*$/,\n      rePropName = /[^.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))/g;\n\n  /**\n   * Used to match `RegExp`\n   * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).\n   */\n  var reRegExpChar = /[\\\\^$.*+?()[\\]{}|]/g,\n      reHasRegExpChar = RegExp(reRegExpChar.source);\n\n  /** Used to match leading whitespace. */\n  var reTrimStart = /^\\s+/;\n\n  /** Used to match a single whitespace character. */\n  var reWhitespace = /\\s/;\n\n  /** Used to match wrap detail comments. */\n  var reWrapComment = /\\{(?:\\n\\/\\* \\[wrapped with .+\\] \\*\\/)?\\n?/,\n      reWrapDetails = /\\{\\n\\/\\* \\[wrapped with (.+)\\] \\*/,\n      reSplitDetails = /,? & /;\n\n  /** Used to match words composed of alphanumeric characters. */\n  var reAsciiWord = /[^\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\x7f]+/g;\n\n  /**\n   * Used to validate the `validate` option in `_.template` variable.\n   *\n   * Forbids characters which could potentially change the meaning of the function argument definition:\n   * - \"(),\" (modification of function parameters)\n   * - \"=\" (default value)\n   * - \"[]{}\" (destructuring of function parameters)\n   * - \"/\" (beginning of a comment)\n   * - whitespace\n   */\n  var reForbiddenIdentifierChars = /[()=,{}\\[\\]\\/\\s]/;\n\n  /** Used to match backslashes in property paths. */\n  var reEscapeChar = /\\\\(\\\\)?/g;\n\n  /**\n   * Used to match\n   * [ES template delimiters](http://ecma-international.org/ecma-262/7.0/#sec-template-literal-lexical-components).\n   */\n  var reEsTemplate = /\\$\\{([^\\\\}]*(?:\\\\.[^\\\\}]*)*)\\}/g;\n\n  /** Used to match `RegExp` flags from their coerced string values. */\n  var reFlags = /\\w*$/;\n\n  /** Used to detect bad signed hexadecimal string values. */\n  var reIsBadHex = /^[-+]0x[0-9a-f]+$/i;\n\n  /** Used to detect binary string values. */\n  var reIsBinary = /^0b[01]+$/i;\n\n  /** Used to detect host constructors (Safari). */\n  var reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n  /** Used to detect octal string values. */\n  var reIsOctal = /^0o[0-7]+$/i;\n\n  /** Used to detect unsigned integer values. */\n  var reIsUint = /^(?:0|[1-9]\\d*)$/;\n\n  /** Used to match Latin Unicode letters (excluding mathematical operators). */\n  var reLatin = /[\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\xff\\u0100-\\u017f]/g;\n\n  /** Used to ensure capturing order of template delimiters. */\n  var reNoMatch = /($^)/;\n\n  /** Used to match unescaped characters in compiled string literals. */\n  var reUnescapedString = /['\\n\\r\\u2028\\u2029\\\\]/g;\n\n  /** Used to compose unicode character classes. */\n  var rsAstralRange = '\\\\ud800-\\\\udfff',\n      rsComboMarksRange = '\\\\u0300-\\\\u036f',\n      reComboHalfMarksRange = '\\\\ufe20-\\\\ufe2f',\n      rsComboSymbolsRange = '\\\\u20d0-\\\\u20ff',\n      rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange,\n      rsDingbatRange = '\\\\u2700-\\\\u27bf',\n      rsLowerRange = 'a-z\\\\xdf-\\\\xf6\\\\xf8-\\\\xff',\n      rsMathOpRange = '\\\\xac\\\\xb1\\\\xd7\\\\xf7',\n      rsNonCharRange = '\\\\x00-\\\\x2f\\\\x3a-\\\\x40\\\\x5b-\\\\x60\\\\x7b-\\\\xbf',\n      rsPunctuationRange = '\\\\u2000-\\\\u206f',\n      rsSpaceRange = ' \\\\t\\\\x0b\\\\f\\\\xa0\\\\ufeff\\\\n\\\\r\\\\u2028\\\\u2029\\\\u1680\\\\u180e\\\\u2000\\\\u2001\\\\u2002\\\\u2003\\\\u2004\\\\u2005\\\\u2006\\\\u2007\\\\u2008\\\\u2009\\\\u200a\\\\u202f\\\\u205f\\\\u3000',\n      rsUpperRange = 'A-Z\\\\xc0-\\\\xd6\\\\xd8-\\\\xde',\n      rsVarRange = '\\\\ufe0e\\\\ufe0f',\n      rsBreakRange = rsMathOpRange + rsNonCharRange + rsPunctuationRange + rsSpaceRange;\n\n  /** Used to compose unicode capture groups. */\n  var rsApos = \"['\\u2019]\",\n      rsAstral = '[' + rsAstralRange + ']',\n      rsBreak = '[' + rsBreakRange + ']',\n      rsCombo = '[' + rsComboRange + ']',\n      rsDigits = '\\\\d+',\n      rsDingbat = '[' + rsDingbatRange + ']',\n      rsLower = '[' + rsLowerRange + ']',\n      rsMisc = '[^' + rsAstralRange + rsBreakRange + rsDigits + rsDingbatRange + rsLowerRange + rsUpperRange + ']',\n      rsFitz = '\\\\ud83c[\\\\udffb-\\\\udfff]',\n      rsModifier = '(?:' + rsCombo + '|' + rsFitz + ')',\n      rsNonAstral = '[^' + rsAstralRange + ']',\n      rsRegional = '(?:\\\\ud83c[\\\\udde6-\\\\uddff]){2}',\n      rsSurrPair = '[\\\\ud800-\\\\udbff][\\\\udc00-\\\\udfff]',\n      rsUpper = '[' + rsUpperRange + ']',\n      rsZWJ = '\\\\u200d';\n\n  /** Used to compose unicode regexes. */\n  var rsMiscLower = '(?:' + rsLower + '|' + rsMisc + ')',\n      rsMiscUpper = '(?:' + rsUpper + '|' + rsMisc + ')',\n      rsOptContrLower = '(?:' + rsApos + '(?:d|ll|m|re|s|t|ve))?',\n      rsOptContrUpper = '(?:' + rsApos + '(?:D|LL|M|RE|S|T|VE))?',\n      reOptMod = rsModifier + '?',\n      rsOptVar = '[' + rsVarRange + ']?',\n      rsOptJoin = '(?:' + rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*',\n      rsOrdLower = '\\\\d*(?:1st|2nd|3rd|(?![123])\\\\dth)(?=\\\\b|[A-Z_])',\n      rsOrdUpper = '\\\\d*(?:1ST|2ND|3RD|(?![123])\\\\dTH)(?=\\\\b|[a-z_])',\n      rsSeq = rsOptVar + reOptMod + rsOptJoin,\n      rsEmoji = '(?:' + [rsDingbat, rsRegional, rsSurrPair].join('|') + ')' + rsSeq,\n      rsSymbol = '(?:' + [rsNonAstral + rsCombo + '?', rsCombo, rsRegional, rsSurrPair, rsAstral].join('|') + ')';\n\n  /** Used to match apostrophes. */\n  var reApos = RegExp(rsApos, 'g');\n\n  /**\n   * Used to match [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks) and\n   * [combining diacritical marks for symbols](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks_for_Symbols).\n   */\n  var reComboMark = RegExp(rsCombo, 'g');\n\n  /** Used to match [string symbols](https://mathiasbynens.be/notes/javascript-unicode). */\n  var reUnicode = RegExp(rsFitz + '(?=' + rsFitz + ')|' + rsSymbol + rsSeq, 'g');\n\n  /** Used to match complex or compound words. */\n  var reUnicodeWord = RegExp([\n    rsUpper + '?' + rsLower + '+' + rsOptContrLower + '(?=' + [rsBreak, rsUpper, '$'].join('|') + ')',\n    rsMiscUpper + '+' + rsOptContrUpper + '(?=' + [rsBreak, rsUpper + rsMiscLower, '$'].join('|') + ')',\n    rsUpper + '?' + rsMiscLower + '+' + rsOptContrLower,\n    rsUpper + '+' + rsOptContrUpper,\n    rsOrdUpper,\n    rsOrdLower,\n    rsDigits,\n    rsEmoji\n  ].join('|'), 'g');\n\n  /** Used to detect strings with [zero-width joiners or code points from the astral planes](http://eev.ee/blog/2015/09/12/dark-corners-of-unicode/). */\n  var reHasUnicode = RegExp('[' + rsZWJ + rsAstralRange  + rsComboRange + rsVarRange + ']');\n\n  /** Used to detect strings that need a more robust regexp to match words. */\n  var reHasUnicodeWord = /[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;\n\n  /** Used to assign default `context` object properties. */\n  var contextProps = [\n    'Array', 'Buffer', 'DataView', 'Date', 'Error', 'Float32Array', 'Float64Array',\n    'Function', 'Int8Array', 'Int16Array', 'Int32Array', 'Map', 'Math', 'Object',\n    'Promise', 'RegExp', 'Set', 'String', 'Symbol', 'TypeError', 'Uint8Array',\n    'Uint8ClampedArray', 'Uint16Array', 'Uint32Array', 'WeakMap',\n    '_', 'clearTimeout', 'isFinite', 'parseInt', 'setTimeout'\n  ];\n\n  /** Used to make template sourceURLs easier to identify. */\n  var templateCounter = -1;\n\n  /** Used to identify `toStringTag` values of typed arrays. */\n  var typedArrayTags = {};\n  typedArrayTags[float32Tag] = typedArrayTags[float64Tag] =\n  typedArrayTags[int8Tag] = typedArrayTags[int16Tag] =\n  typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =\n  typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =\n  typedArrayTags[uint32Tag] = true;\n  typedArrayTags[argsTag] = typedArrayTags[arrayTag] =\n  typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =\n  typedArrayTags[dataViewTag] = typedArrayTags[dateTag] =\n  typedArrayTags[errorTag] = typedArrayTags[funcTag] =\n  typedArrayTags[mapTag] = typedArrayTags[numberTag] =\n  typedArrayTags[objectTag] = typedArrayTags[regexpTag] =\n  typedArrayTags[setTag] = typedArrayTags[stringTag] =\n  typedArrayTags[weakMapTag] = false;\n\n  /** Used to identify `toStringTag` values supported by `_.clone`. */\n  var cloneableTags = {};\n  cloneableTags[argsTag] = cloneableTags[arrayTag] =\n  cloneableTags[arrayBufferTag] = cloneableTags[dataViewTag] =\n  cloneableTags[boolTag] = cloneableTags[dateTag] =\n  cloneableTags[float32Tag] = cloneableTags[float64Tag] =\n  cloneableTags[int8Tag] = cloneableTags[int16Tag] =\n  cloneableTags[int32Tag] = cloneableTags[mapTag] =\n  cloneableTags[numberTag] = cloneableTags[objectTag] =\n  cloneableTags[regexpTag] = cloneableTags[setTag] =\n  cloneableTags[stringTag] = cloneableTags[symbolTag] =\n  cloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] =\n  cloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true;\n  cloneableTags[errorTag] = cloneableTags[funcTag] =\n  cloneableTags[weakMapTag] = false;\n\n  /** Used to map Latin Unicode letters to basic Latin letters. */\n  var deburredLetters = {\n    // Latin-1 Supplement block.\n    '\\xc0': 'A',  '\\xc1': 'A', '\\xc2': 'A', '\\xc3': 'A', '\\xc4': 'A', '\\xc5': 'A',\n    '\\xe0': 'a',  '\\xe1': 'a', '\\xe2': 'a', '\\xe3': 'a', '\\xe4': 'a', '\\xe5': 'a',\n    '\\xc7': 'C',  '\\xe7': 'c',\n    '\\xd0': 'D',  '\\xf0': 'd',\n    '\\xc8': 'E',  '\\xc9': 'E', '\\xca': 'E', '\\xcb': 'E',\n    '\\xe8': 'e',  '\\xe9': 'e', '\\xea': 'e', '\\xeb': 'e',\n    '\\xcc': 'I',  '\\xcd': 'I', '\\xce': 'I', '\\xcf': 'I',\n    '\\xec': 'i',  '\\xed': 'i', '\\xee': 'i', '\\xef': 'i',\n    '\\xd1': 'N',  '\\xf1': 'n',\n    '\\xd2': 'O',  '\\xd3': 'O', '\\xd4': 'O', '\\xd5': 'O', '\\xd6': 'O', '\\xd8': 'O',\n    '\\xf2': 'o',  '\\xf3': 'o', '\\xf4': 'o', '\\xf5': 'o', '\\xf6': 'o', '\\xf8': 'o',\n    '\\xd9': 'U',  '\\xda': 'U', '\\xdb': 'U', '\\xdc': 'U',\n    '\\xf9': 'u',  '\\xfa': 'u', '\\xfb': 'u', '\\xfc': 'u',\n    '\\xdd': 'Y',  '\\xfd': 'y', '\\xff': 'y',\n    '\\xc6': 'Ae', '\\xe6': 'ae',\n    '\\xde': 'Th', '\\xfe': 'th',\n    '\\xdf': 'ss',\n    // Latin Extended-A block.\n    '\\u0100': 'A',  '\\u0102': 'A', '\\u0104': 'A',\n    '\\u0101': 'a',  '\\u0103': 'a', '\\u0105': 'a',\n    '\\u0106': 'C',  '\\u0108': 'C', '\\u010a': 'C', '\\u010c': 'C',\n    '\\u0107': 'c',  '\\u0109': 'c', '\\u010b': 'c', '\\u010d': 'c',\n    '\\u010e': 'D',  '\\u0110': 'D', '\\u010f': 'd', '\\u0111': 'd',\n    '\\u0112': 'E',  '\\u0114': 'E', '\\u0116': 'E', '\\u0118': 'E', '\\u011a': 'E',\n    '\\u0113': 'e',  '\\u0115': 'e', '\\u0117': 'e', '\\u0119': 'e', '\\u011b': 'e',\n    '\\u011c': 'G',  '\\u011e': 'G', '\\u0120': 'G', '\\u0122': 'G',\n    '\\u011d': 'g',  '\\u011f': 'g', '\\u0121': 'g', '\\u0123': 'g',\n    '\\u0124': 'H',  '\\u0126': 'H', '\\u0125': 'h', '\\u0127': 'h',\n    '\\u0128': 'I',  '\\u012a': 'I', '\\u012c': 'I', '\\u012e': 'I', '\\u0130': 'I',\n    '\\u0129': 'i',  '\\u012b': 'i', '\\u012d': 'i', '\\u012f': 'i', '\\u0131': 'i',\n    '\\u0134': 'J',  '\\u0135': 'j',\n    '\\u0136': 'K',  '\\u0137': 'k', '\\u0138': 'k',\n    '\\u0139': 'L',  '\\u013b': 'L', '\\u013d': 'L', '\\u013f': 'L', '\\u0141': 'L',\n    '\\u013a': 'l',  '\\u013c': 'l', '\\u013e': 'l', '\\u0140': 'l', '\\u0142': 'l',\n    '\\u0143': 'N',  '\\u0145': 'N', '\\u0147': 'N', '\\u014a': 'N',\n    '\\u0144': 'n',  '\\u0146': 'n', '\\u0148': 'n', '\\u014b': 'n',\n    '\\u014c': 'O',  '\\u014e': 'O', '\\u0150': 'O',\n    '\\u014d': 'o',  '\\u014f': 'o', '\\u0151': 'o',\n    '\\u0154': 'R',  '\\u0156': 'R', '\\u0158': 'R',\n    '\\u0155': 'r',  '\\u0157': 'r', '\\u0159': 'r',\n    '\\u015a': 'S',  '\\u015c': 'S', '\\u015e': 'S', '\\u0160': 'S',\n    '\\u015b': 's',  '\\u015d': 's', '\\u015f': 's', '\\u0161': 's',\n    '\\u0162': 'T',  '\\u0164': 'T', '\\u0166': 'T',\n    '\\u0163': 't',  '\\u0165': 't', '\\u0167': 't',\n    '\\u0168': 'U',  '\\u016a': 'U', '\\u016c': 'U', '\\u016e': 'U', '\\u0170': 'U', '\\u0172': 'U',\n    '\\u0169': 'u',  '\\u016b': 'u', '\\u016d': 'u', '\\u016f': 'u', '\\u0171': 'u', '\\u0173': 'u',\n    '\\u0174': 'W',  '\\u0175': 'w',\n    '\\u0176': 'Y',  '\\u0177': 'y', '\\u0178': 'Y',\n    '\\u0179': 'Z',  '\\u017b': 'Z', '\\u017d': 'Z',\n    '\\u017a': 'z',  '\\u017c': 'z', '\\u017e': 'z',\n    '\\u0132': 'IJ', '\\u0133': 'ij',\n    '\\u0152': 'Oe', '\\u0153': 'oe',\n    '\\u0149': \"'n\", '\\u017f': 's'\n  };\n\n  /** Used to map characters to HTML entities. */\n  var htmlEscapes = {\n    '&': '&amp;',\n    '<': '&lt;',\n    '>': '&gt;',\n    '\"': '&quot;',\n    \"'\": '&#39;'\n  };\n\n  /** Used to map HTML entities to characters. */\n  var htmlUnescapes = {\n    '&amp;': '&',\n    '&lt;': '<',\n    '&gt;': '>',\n    '&quot;': '\"',\n    '&#39;': \"'\"\n  };\n\n  /** Used to escape characters for inclusion in compiled string literals. */\n  var stringEscapes = {\n    '\\\\': '\\\\',\n    \"'\": \"'\",\n    '\\n': 'n',\n    '\\r': 'r',\n    '\\u2028': 'u2028',\n    '\\u2029': 'u2029'\n  };\n\n  /** Built-in method references without a dependency on `root`. */\n  var freeParseFloat = parseFloat,\n      freeParseInt = parseInt;\n\n  /** Detect free variable `global` from Node.js. */\n  var freeGlobal = typeof globalThis == 'object' && globalThis && globalThis.Object === Object && globalThis;\n\n  /** Detect free variable `self`. */\n  var freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n  /** Used as a reference to the global object. */\n  var root = freeGlobal || freeSelf || Function('return this')();\n\n  /** Detect free variable `exports`. */\n  var freeExports =  true && exports && !exports.nodeType && exports;\n\n  /** Detect free variable `module`. */\n  var freeModule = freeExports && \"object\" == 'object' && module && !module.nodeType && module;\n\n  /** Detect the popular CommonJS extension `module.exports`. */\n  var moduleExports = freeModule && freeModule.exports === freeExports;\n\n  /** Detect free variable `process` from Node.js. */\n  var freeProcess = moduleExports && freeGlobal.process;\n\n  /** Used to access faster Node.js helpers. */\n  var nodeUtil = (function() {\n    try {\n      // Use `util.types` for Node.js 10+.\n      var types = freeModule && freeModule.require && freeModule.require('util').types;\n\n      if (types) {\n        return types;\n      }\n\n      // Legacy `process.binding('util')` for Node.js < 10.\n      return freeProcess && freeProcess.binding && freeProcess.binding('util');\n    } catch (e) {}\n  }());\n\n  /* Node.js helper references. */\n  var nodeIsArrayBuffer = nodeUtil && nodeUtil.isArrayBuffer,\n      nodeIsDate = nodeUtil && nodeUtil.isDate,\n      nodeIsMap = nodeUtil && nodeUtil.isMap,\n      nodeIsRegExp = nodeUtil && nodeUtil.isRegExp,\n      nodeIsSet = nodeUtil && nodeUtil.isSet,\n      nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;\n\n  /*--------------------------------------------------------------------------*/\n\n  /**\n   * A faster alternative to `Function#apply`, this function invokes `func`\n   * with the `this` binding of `thisArg` and the arguments of `args`.\n   *\n   * @private\n   * @param {Function} func The function to invoke.\n   * @param {*} thisArg The `this` binding of `func`.\n   * @param {Array} args The arguments to invoke `func` with.\n   * @returns {*} Returns the result of `func`.\n   */\n  function apply(func, thisArg, args) {\n    switch (args.length) {\n      case 0: return func.call(thisArg);\n      case 1: return func.call(thisArg, args[0]);\n      case 2: return func.call(thisArg, args[0], args[1]);\n      case 3: return func.call(thisArg, args[0], args[1], args[2]);\n    }\n    return func.apply(thisArg, args);\n  }\n\n  /**\n   * A specialized version of `baseAggregator` for arrays.\n   *\n   * @private\n   * @param {Array} [array] The array to iterate over.\n   * @param {Function} setter The function to set `accumulator` values.\n   * @param {Function} iteratee The iteratee to transform keys.\n   * @param {Object} accumulator The initial aggregated object.\n   * @returns {Function} Returns `accumulator`.\n   */\n  function arrayAggregator(array, setter, iteratee, accumulator) {\n    var index = -1,\n        length = array == null ? 0 : array.length;\n\n    while (++index < length) {\n      var value = array[index];\n      setter(accumulator, value, iteratee(value), array);\n    }\n    return accumulator;\n  }\n\n  /**\n   * A specialized version of `_.forEach` for arrays without support for\n   * iteratee shorthands.\n   *\n   * @private\n   * @param {Array} [array] The array to iterate over.\n   * @param {Function} iteratee The function invoked per iteration.\n   * @returns {Array} Returns `array`.\n   */\n  function arrayEach(array, iteratee) {\n    var index = -1,\n        length = array == null ? 0 : array.length;\n\n    while (++index < length) {\n      if (iteratee(array[index], index, array) === false) {\n        break;\n      }\n    }\n    return array;\n  }\n\n  /**\n   * A specialized version of `_.forEachRight` for arrays without support for\n   * iteratee shorthands.\n   *\n   * @private\n   * @param {Array} [array] The array to iterate over.\n   * @param {Function} iteratee The function invoked per iteration.\n   * @returns {Array} Returns `array`.\n   */\n  function arrayEachRight(array, iteratee) {\n    var length = array == null ? 0 : array.length;\n\n    while (length--) {\n      if (iteratee(array[length], length, array) === false) {\n        break;\n      }\n    }\n    return array;\n  }\n\n  /**\n   * A specialized version of `_.every` for arrays without support for\n   * iteratee shorthands.\n   *\n   * @private\n   * @param {Array} [array] The array to iterate over.\n   * @param {Function} predicate The function invoked per iteration.\n   * @returns {boolean} Returns `true` if all elements pass the predicate check,\n   *  else `false`.\n   */\n  function arrayEvery(array, predicate) {\n    var index = -1,\n        length = array == null ? 0 : array.length;\n\n    while (++index < length) {\n      if (!predicate(array[index], index, array)) {\n        return false;\n      }\n    }\n    return true;\n  }\n\n  /**\n   * A specialized version of `_.filter` for arrays without support for\n   * iteratee shorthands.\n   *\n   * @private\n   * @param {Array} [array] The array to iterate over.\n   * @param {Function} predicate The function invoked per iteration.\n   * @returns {Array} Returns the new filtered array.\n   */\n  function arrayFilter(array, predicate) {\n    var index = -1,\n        length = array == null ? 0 : array.length,\n        resIndex = 0,\n        result = [];\n\n    while (++index < length) {\n      var value = array[index];\n      if (predicate(value, index, array)) {\n        result[resIndex++] = value;\n      }\n    }\n    return result;\n  }\n\n  /**\n   * A specialized version of `_.includes` for arrays without support for\n   * specifying an index to search from.\n   *\n   * @private\n   * @param {Array} [array] The array to inspect.\n   * @param {*} target The value to search for.\n   * @returns {boolean} Returns `true` if `target` is found, else `false`.\n   */\n  function arrayIncludes(array, value) {\n    var length = array == null ? 0 : array.length;\n    return !!length && baseIndexOf(array, value, 0) > -1;\n  }\n\n  /**\n   * This function is like `arrayIncludes` except that it accepts a comparator.\n   *\n   * @private\n   * @param {Array} [array] The array to inspect.\n   * @param {*} target The value to search for.\n   * @param {Function} comparator The comparator invoked per element.\n   * @returns {boolean} Returns `true` if `target` is found, else `false`.\n   */\n  function arrayIncludesWith(array, value, comparator) {\n    var index = -1,\n        length = array == null ? 0 : array.length;\n\n    while (++index < length) {\n      if (comparator(value, array[index])) {\n        return true;\n      }\n    }\n    return false;\n  }\n\n  /**\n   * A specialized version of `_.map` for arrays without support for iteratee\n   * shorthands.\n   *\n   * @private\n   * @param {Array} [array] The array to iterate over.\n   * @param {Function} iteratee The function invoked per iteration.\n   * @returns {Array} Returns the new mapped array.\n   */\n  function arrayMap(array, iteratee) {\n    var index = -1,\n        length = array == null ? 0 : array.length,\n        result = Array(length);\n\n    while (++index < length) {\n      result[index] = iteratee(array[index], index, array);\n    }\n    return result;\n  }\n\n  /**\n   * Appends the elements of `values` to `array`.\n   *\n   * @private\n   * @param {Array} array The array to modify.\n   * @param {Array} values The values to append.\n   * @returns {Array} Returns `array`.\n   */\n  function arrayPush(array, values) {\n    var index = -1,\n        length = values.length,\n        offset = array.length;\n\n    while (++index < length) {\n      array[offset + index] = values[index];\n    }\n    return array;\n  }\n\n  /**\n   * A specialized version of `_.reduce` for arrays without support for\n   * iteratee shorthands.\n   *\n   * @private\n   * @param {Array} [array] The array to iterate over.\n   * @param {Function} iteratee The function invoked per iteration.\n   * @param {*} [accumulator] The initial value.\n   * @param {boolean} [initAccum] Specify using the first element of `array` as\n   *  the initial value.\n   * @returns {*} Returns the accumulated value.\n   */\n  function arrayReduce(array, iteratee, accumulator, initAccum) {\n    var index = -1,\n        length = array == null ? 0 : array.length;\n\n    if (initAccum && length) {\n      accumulator = array[++index];\n    }\n    while (++index < length) {\n      accumulator = iteratee(accumulator, array[index], index, array);\n    }\n    return accumulator;\n  }\n\n  /**\n   * A specialized version of `_.reduceRight` for arrays without support for\n   * iteratee shorthands.\n   *\n   * @private\n   * @param {Array} [array] The array to iterate over.\n   * @param {Function} iteratee The function invoked per iteration.\n   * @param {*} [accumulator] The initial value.\n   * @param {boolean} [initAccum] Specify using the last element of `array` as\n   *  the initial value.\n   * @returns {*} Returns the accumulated value.\n   */\n  function arrayReduceRight(array, iteratee, accumulator, initAccum) {\n    var length = array == null ? 0 : array.length;\n    if (initAccum && length) {\n      accumulator = array[--length];\n    }\n    while (length--) {\n      accumulator = iteratee(accumulator, array[length], length, array);\n    }\n    return accumulator;\n  }\n\n  /**\n   * A specialized version of `_.some` for arrays without support for iteratee\n   * shorthands.\n   *\n   * @private\n   * @param {Array} [array] The array to iterate over.\n   * @param {Function} predicate The function invoked per iteration.\n   * @returns {boolean} Returns `true` if any element passes the predicate check,\n   *  else `false`.\n   */\n  function arraySome(array, predicate) {\n    var index = -1,\n        length = array == null ? 0 : array.length;\n\n    while (++index < length) {\n      if (predicate(array[index], index, array)) {\n        return true;\n      }\n    }\n    return false;\n  }\n\n  /**\n   * Gets the size of an ASCII `string`.\n   *\n   * @private\n   * @param {string} string The string inspect.\n   * @returns {number} Returns the string size.\n   */\n  var asciiSize = baseProperty('length');\n\n  /**\n   * Converts an ASCII `string` to an array.\n   *\n   * @private\n   * @param {string} string The string to convert.\n   * @returns {Array} Returns the converted array.\n   */\n  function asciiToArray(string) {\n    return string.split('');\n  }\n\n  /**\n   * Splits an ASCII `string` into an array of its words.\n   *\n   * @private\n   * @param {string} The string to inspect.\n   * @returns {Array} Returns the words of `string`.\n   */\n  function asciiWords(string) {\n    return string.match(reAsciiWord) || [];\n  }\n\n  /**\n   * The base implementation of methods like `_.findKey` and `_.findLastKey`,\n   * without support for iteratee shorthands, which iterates over `collection`\n   * using `eachFunc`.\n   *\n   * @private\n   * @param {Array|Object} collection The collection to inspect.\n   * @param {Function} predicate The function invoked per iteration.\n   * @param {Function} eachFunc The function to iterate over `collection`.\n   * @returns {*} Returns the found element or its key, else `undefined`.\n   */\n  function baseFindKey(collection, predicate, eachFunc) {\n    var result;\n    eachFunc(collection, function(value, key, collection) {\n      if (predicate(value, key, collection)) {\n        result = key;\n        return false;\n      }\n    });\n    return result;\n  }\n\n  /**\n   * The base implementation of `_.findIndex` and `_.findLastIndex` without\n   * support for iteratee shorthands.\n   *\n   * @private\n   * @param {Array} array The array to inspect.\n   * @param {Function} predicate The function invoked per iteration.\n   * @param {number} fromIndex The index to search from.\n   * @param {boolean} [fromRight] Specify iterating from right to left.\n   * @returns {number} Returns the index of the matched value, else `-1`.\n   */\n  function baseFindIndex(array, predicate, fromIndex, fromRight) {\n    var length = array.length,\n        index = fromIndex + (fromRight ? 1 : -1);\n\n    while ((fromRight ? index-- : ++index < length)) {\n      if (predicate(array[index], index, array)) {\n        return index;\n      }\n    }\n    return -1;\n  }\n\n  /**\n   * The base implementation of `_.indexOf` without `fromIndex` bounds checks.\n   *\n   * @private\n   * @param {Array} array The array to inspect.\n   * @param {*} value The value to search for.\n   * @param {number} fromIndex The index to search from.\n   * @returns {number} Returns the index of the matched value, else `-1`.\n   */\n  function baseIndexOf(array, value, fromIndex) {\n    return value === value\n      ? strictIndexOf(array, value, fromIndex)\n      : baseFindIndex(array, baseIsNaN, fromIndex);\n  }\n\n  /**\n   * This function is like `baseIndexOf` except that it accepts a comparator.\n   *\n   * @private\n   * @param {Array} array The array to inspect.\n   * @param {*} value The value to search for.\n   * @param {number} fromIndex The index to search from.\n   * @param {Function} comparator The comparator invoked per element.\n   * @returns {number} Returns the index of the matched value, else `-1`.\n   */\n  function baseIndexOfWith(array, value, fromIndex, comparator) {\n    var index = fromIndex - 1,\n        length = array.length;\n\n    while (++index < length) {\n      if (comparator(array[index], value)) {\n        return index;\n      }\n    }\n    return -1;\n  }\n\n  /**\n   * The base implementation of `_.isNaN` without support for number objects.\n   *\n   * @private\n   * @param {*} value The value to check.\n   * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`.\n   */\n  function baseIsNaN(value) {\n    return value !== value;\n  }\n\n  /**\n   * The base implementation of `_.mean` and `_.meanBy` without support for\n   * iteratee shorthands.\n   *\n   * @private\n   * @param {Array} array The array to iterate over.\n   * @param {Function} iteratee The function invoked per iteration.\n   * @returns {number} Returns the mean.\n   */\n  function baseMean(array, iteratee) {\n    var length = array == null ? 0 : array.length;\n    return length ? (baseSum(array, iteratee) / length) : NAN;\n  }\n\n  /**\n   * The base implementation of `_.property` without support for deep paths.\n   *\n   * @private\n   * @param {string} key The key of the property to get.\n   * @returns {Function} Returns the new accessor function.\n   */\n  function baseProperty(key) {\n    return function(object) {\n      return object == null ? undefined : object[key];\n    };\n  }\n\n  /**\n   * The base implementation of `_.propertyOf` without support for deep paths.\n   *\n   * @private\n   * @param {Object} object The object to query.\n   * @returns {Function} Returns the new accessor function.\n   */\n  function basePropertyOf(object) {\n    return function(key) {\n      return object == null ? undefined : object[key];\n    };\n  }\n\n  /**\n   * The base implementation of `_.reduce` and `_.reduceRight`, without support\n   * for iteratee shorthands, which iterates over `collection` using `eachFunc`.\n   *\n   * @private\n   * @param {Array|Object} collection The collection to iterate over.\n   * @param {Function} iteratee The function invoked per iteration.\n   * @param {*} accumulator The initial value.\n   * @param {boolean} initAccum Specify using the first or last element of\n   *  `collection` as the initial value.\n   * @param {Function} eachFunc The function to iterate over `collection`.\n   * @returns {*} Returns the accumulated value.\n   */\n  function baseReduce(collection, iteratee, accumulator, initAccum, eachFunc) {\n    eachFunc(collection, function(value, index, collection) {\n      accumulator = initAccum\n        ? (initAccum = false, value)\n        : iteratee(accumulator, value, index, collection);\n    });\n    return accumulator;\n  }\n\n  /**\n   * The base implementation of `_.sortBy` which uses `comparer` to define the\n   * sort order of `array` and replaces criteria objects with their corresponding\n   * values.\n   *\n   * @private\n   * @param {Array} array The array to sort.\n   * @param {Function} comparer The function to define sort order.\n   * @returns {Array} Returns `array`.\n   */\n  function baseSortBy(array, comparer) {\n    var length = array.length;\n\n    array.sort(comparer);\n    while (length--) {\n      array[length] = array[length].value;\n    }\n    return array;\n  }\n\n  /**\n   * The base implementation of `_.sum` and `_.sumBy` without support for\n   * iteratee shorthands.\n   *\n   * @private\n   * @param {Array} array The array to iterate over.\n   * @param {Function} iteratee The function invoked per iteration.\n   * @returns {number} Returns the sum.\n   */\n  function baseSum(array, iteratee) {\n    var result,\n        index = -1,\n        length = array.length;\n\n    while (++index < length) {\n      var current = iteratee(array[index]);\n      if (current !== undefined) {\n        result = result === undefined ? current : (result + current);\n      }\n    }\n    return result;\n  }\n\n  /**\n   * The base implementation of `_.times` without support for iteratee shorthands\n   * or max array length checks.\n   *\n   * @private\n   * @param {number} n The number of times to invoke `iteratee`.\n   * @param {Function} iteratee The function invoked per iteration.\n   * @returns {Array} Returns the array of results.\n   */\n  function baseTimes(n, iteratee) {\n    var index = -1,\n        result = Array(n);\n\n    while (++index < n) {\n      result[index] = iteratee(index);\n    }\n    return result;\n  }\n\n  /**\n   * The base implementation of `_.toPairs` and `_.toPairsIn` which creates an array\n   * of key-value pairs for `object` corresponding to the property names of `props`.\n   *\n   * @private\n   * @param {Object} object The object to query.\n   * @param {Array} props The property names to get values for.\n   * @returns {Object} Returns the key-value pairs.\n   */\n  function baseToPairs(object, props) {\n    return arrayMap(props, function(key) {\n      return [key, object[key]];\n    });\n  }\n\n  /**\n   * The base implementation of `_.trim`.\n   *\n   * @private\n   * @param {string} string The string to trim.\n   * @returns {string} Returns the trimmed string.\n   */\n  function baseTrim(string) {\n    return string\n      ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, '')\n      : string;\n  }\n\n  /**\n   * The base implementation of `_.unary` without support for storing metadata.\n   *\n   * @private\n   * @param {Function} func The function to cap arguments for.\n   * @returns {Function} Returns the new capped function.\n   */\n  function baseUnary(func) {\n    return function(value) {\n      return func(value);\n    };\n  }\n\n  /**\n   * The base implementation of `_.values` and `_.valuesIn` which creates an\n   * array of `object` property values corresponding to the property names\n   * of `props`.\n   *\n   * @private\n   * @param {Object} object The object to query.\n   * @param {Array} props The property names to get values for.\n   * @returns {Object} Returns the array of property values.\n   */\n  function baseValues(object, props) {\n    return arrayMap(props, function(key) {\n      return object[key];\n    });\n  }\n\n  /**\n   * Checks if a `cache` value for `key` exists.\n   *\n   * @private\n   * @param {Object} cache The cache to query.\n   * @param {string} key The key of the entry to check.\n   * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n   */\n  function cacheHas(cache, key) {\n    return cache.has(key);\n  }\n\n  /**\n   * Used by `_.trim` and `_.trimStart` to get the index of the first string symbol\n   * that is not found in the character symbols.\n   *\n   * @private\n   * @param {Array} strSymbols The string symbols to inspect.\n   * @param {Array} chrSymbols The character symbols to find.\n   * @returns {number} Returns the index of the first unmatched string symbol.\n   */\n  function charsStartIndex(strSymbols, chrSymbols) {\n    var index = -1,\n        length = strSymbols.length;\n\n    while (++index < length && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) {}\n    return index;\n  }\n\n  /**\n   * Used by `_.trim` and `_.trimEnd` to get the index of the last string symbol\n   * that is not found in the character symbols.\n   *\n   * @private\n   * @param {Array} strSymbols The string symbols to inspect.\n   * @param {Array} chrSymbols The character symbols to find.\n   * @returns {number} Returns the index of the last unmatched string symbol.\n   */\n  function charsEndIndex(strSymbols, chrSymbols) {\n    var index = strSymbols.length;\n\n    while (index-- && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) {}\n    return index;\n  }\n\n  /**\n   * Gets the number of `placeholder` occurrences in `array`.\n   *\n   * @private\n   * @param {Array} array The array to inspect.\n   * @param {*} placeholder The placeholder to search for.\n   * @returns {number} Returns the placeholder count.\n   */\n  function countHolders(array, placeholder) {\n    var length = array.length,\n        result = 0;\n\n    while (length--) {\n      if (array[length] === placeholder) {\n        ++result;\n      }\n    }\n    return result;\n  }\n\n  /**\n   * Used by `_.deburr` to convert Latin-1 Supplement and Latin Extended-A\n   * letters to basic Latin letters.\n   *\n   * @private\n   * @param {string} letter The matched letter to deburr.\n   * @returns {string} Returns the deburred letter.\n   */\n  var deburrLetter = basePropertyOf(deburredLetters);\n\n  /**\n   * Used by `_.escape` to convert characters to HTML entities.\n   *\n   * @private\n   * @param {string} chr The matched character to escape.\n   * @returns {string} Returns the escaped character.\n   */\n  var escapeHtmlChar = basePropertyOf(htmlEscapes);\n\n  /**\n   * Used by `_.template` to escape characters for inclusion in compiled string literals.\n   *\n   * @private\n   * @param {string} chr The matched character to escape.\n   * @returns {string} Returns the escaped character.\n   */\n  function escapeStringChar(chr) {\n    return '\\\\' + stringEscapes[chr];\n  }\n\n  /**\n   * Gets the value at `key` of `object`.\n   *\n   * @private\n   * @param {Object} [object] The object to query.\n   * @param {string} key The key of the property to get.\n   * @returns {*} Returns the property value.\n   */\n  function getValue(object, key) {\n    return object == null ? undefined : object[key];\n  }\n\n  /**\n   * Checks if `string` contains Unicode symbols.\n   *\n   * @private\n   * @param {string} string The string to inspect.\n   * @returns {boolean} Returns `true` if a symbol is found, else `false`.\n   */\n  function hasUnicode(string) {\n    return reHasUnicode.test(string);\n  }\n\n  /**\n   * Checks if `string` contains a word composed of Unicode symbols.\n   *\n   * @private\n   * @param {string} string The string to inspect.\n   * @returns {boolean} Returns `true` if a word is found, else `false`.\n   */\n  function hasUnicodeWord(string) {\n    return reHasUnicodeWord.test(string);\n  }\n\n  /**\n   * Converts `iterator` to an array.\n   *\n   * @private\n   * @param {Object} iterator The iterator to convert.\n   * @returns {Array} Returns the converted array.\n   */\n  function iteratorToArray(iterator) {\n    var data,\n        result = [];\n\n    while (!(data = iterator.next()).done) {\n      result.push(data.value);\n    }\n    return result;\n  }\n\n  /**\n   * Converts `map` to its key-value pairs.\n   *\n   * @private\n   * @param {Object} map The map to convert.\n   * @returns {Array} Returns the key-value pairs.\n   */\n  function mapToArray(map) {\n    var index = -1,\n        result = Array(map.size);\n\n    map.forEach(function(value, key) {\n      result[++index] = [key, value];\n    });\n    return result;\n  }\n\n  /**\n   * Creates a unary function that invokes `func` with its argument transformed.\n   *\n   * @private\n   * @param {Function} func The function to wrap.\n   * @param {Function} transform The argument transform.\n   * @returns {Function} Returns the new function.\n   */\n  function overArg(func, transform) {\n    return function(arg) {\n      return func(transform(arg));\n    };\n  }\n\n  /**\n   * Replaces all `placeholder` elements in `array` with an internal placeholder\n   * and returns an array of their indexes.\n   *\n   * @private\n   * @param {Array} array The array to modify.\n   * @param {*} placeholder The placeholder to replace.\n   * @returns {Array} Returns the new array of placeholder indexes.\n   */\n  function replaceHolders(array, placeholder) {\n    var index = -1,\n        length = array.length,\n        resIndex = 0,\n        result = [];\n\n    while (++index < length) {\n      var value = array[index];\n      if (value === placeholder || value === PLACEHOLDER) {\n        array[index] = PLACEHOLDER;\n        result[resIndex++] = index;\n      }\n    }\n    return result;\n  }\n\n  /**\n   * Converts `set` to an array of its values.\n   *\n   * @private\n   * @param {Object} set The set to convert.\n   * @returns {Array} Returns the values.\n   */\n  function setToArray(set) {\n    var index = -1,\n        result = Array(set.size);\n\n    set.forEach(function(value) {\n      result[++index] = value;\n    });\n    return result;\n  }\n\n  /**\n   * Converts `set` to its value-value pairs.\n   *\n   * @private\n   * @param {Object} set The set to convert.\n   * @returns {Array} Returns the value-value pairs.\n   */\n  function setToPairs(set) {\n    var index = -1,\n        result = Array(set.size);\n\n    set.forEach(function(value) {\n      result[++index] = [value, value];\n    });\n    return result;\n  }\n\n  /**\n   * A specialized version of `_.indexOf` which performs strict equality\n   * comparisons of values, i.e. `===`.\n   *\n   * @private\n   * @param {Array} array The array to inspect.\n   * @param {*} value The value to search for.\n   * @param {number} fromIndex The index to search from.\n   * @returns {number} Returns the index of the matched value, else `-1`.\n   */\n  function strictIndexOf(array, value, fromIndex) {\n    var index = fromIndex - 1,\n        length = array.length;\n\n    while (++index < length) {\n      if (array[index] === value) {\n        return index;\n      }\n    }\n    return -1;\n  }\n\n  /**\n   * A specialized version of `_.lastIndexOf` which performs strict equality\n   * comparisons of values, i.e. `===`.\n   *\n   * @private\n   * @param {Array} array The array to inspect.\n   * @param {*} value The value to search for.\n   * @param {number} fromIndex The index to search from.\n   * @returns {number} Returns the index of the matched value, else `-1`.\n   */\n  function strictLastIndexOf(array, value, fromIndex) {\n    var index = fromIndex + 1;\n    while (index--) {\n      if (array[index] === value) {\n        return index;\n      }\n    }\n    return index;\n  }\n\n  /**\n   * Gets the number of symbols in `string`.\n   *\n   * @private\n   * @param {string} string The string to inspect.\n   * @returns {number} Returns the string size.\n   */\n  function stringSize(string) {\n    return hasUnicode(string)\n      ? unicodeSize(string)\n      : asciiSize(string);\n  }\n\n  /**\n   * Converts `string` to an array.\n   *\n   * @private\n   * @param {string} string The string to convert.\n   * @returns {Array} Returns the converted array.\n   */\n  function stringToArray(string) {\n    return hasUnicode(string)\n      ? unicodeToArray(string)\n      : asciiToArray(string);\n  }\n\n  /**\n   * Used by `_.trim` and `_.trimEnd` to get the index of the last non-whitespace\n   * character of `string`.\n   *\n   * @private\n   * @param {string} string The string to inspect.\n   * @returns {number} Returns the index of the last non-whitespace character.\n   */\n  function trimmedEndIndex(string) {\n    var index = string.length;\n\n    while (index-- && reWhitespace.test(string.charAt(index))) {}\n    return index;\n  }\n\n  /**\n   * Used by `_.unescape` to convert HTML entities to characters.\n   *\n   * @private\n   * @param {string} chr The matched character to unescape.\n   * @returns {string} Returns the unescaped character.\n   */\n  var unescapeHtmlChar = basePropertyOf(htmlUnescapes);\n\n  /**\n   * Gets the size of a Unicode `string`.\n   *\n   * @private\n   * @param {string} string The string inspect.\n   * @returns {number} Returns the string size.\n   */\n  function unicodeSize(string) {\n    var result = reUnicode.lastIndex = 0;\n    while (reUnicode.test(string)) {\n      ++result;\n    }\n    return result;\n  }\n\n  /**\n   * Converts a Unicode `string` to an array.\n   *\n   * @private\n   * @param {string} string The string to convert.\n   * @returns {Array} Returns the converted array.\n   */\n  function unicodeToArray(string) {\n    return string.match(reUnicode) || [];\n  }\n\n  /**\n   * Splits a Unicode `string` into an array of its words.\n   *\n   * @private\n   * @param {string} The string to inspect.\n   * @returns {Array} Returns the words of `string`.\n   */\n  function unicodeWords(string) {\n    return string.match(reUnicodeWord) || [];\n  }\n\n  /*--------------------------------------------------------------------------*/\n\n  /**\n   * Create a new pristine `lodash` function using the `context` object.\n   *\n   * @static\n   * @memberOf _\n   * @since 1.1.0\n   * @category Util\n   * @param {Object} [context=root] The context object.\n   * @returns {Function} Returns a new `lodash` function.\n   * @example\n   *\n   * _.mixin({ 'foo': _.constant('foo') });\n   *\n   * var lodash = _.runInContext();\n   * lodash.mixin({ 'bar': lodash.constant('bar') });\n   *\n   * _.isFunction(_.foo);\n   * // => true\n   * _.isFunction(_.bar);\n   * // => false\n   *\n   * lodash.isFunction(lodash.foo);\n   * // => false\n   * lodash.isFunction(lodash.bar);\n   * // => true\n   *\n   * // Create a suped-up `defer` in Node.js.\n   * var defer = _.runInContext({ 'setTimeout': setImmediate }).defer;\n   */\n  var runInContext = (function runInContext(context) {\n    context = context == null ? root : _.defaults(root.Object(), context, _.pick(root, contextProps));\n\n    /** Built-in constructor references. */\n    var Array = context.Array,\n        Date = context.Date,\n        Error = context.Error,\n        Function = context.Function,\n        Math = context.Math,\n        Object = context.Object,\n        RegExp = context.RegExp,\n        String = context.String,\n        TypeError = context.TypeError;\n\n    /** Used for built-in method references. */\n    var arrayProto = Array.prototype,\n        funcProto = Function.prototype,\n        objectProto = Object.prototype;\n\n    /** Used to detect overreaching core-js shims. */\n    var coreJsData = context['__core-js_shared__'];\n\n    /** Used to resolve the decompiled source of functions. */\n    var funcToString = funcProto.toString;\n\n    /** Used to check objects for own properties. */\n    var hasOwnProperty = objectProto.hasOwnProperty;\n\n    /** Used to generate unique IDs. */\n    var idCounter = 0;\n\n    /** Used to detect methods masquerading as native. */\n    var maskSrcKey = (function() {\n      var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');\n      return uid ? ('Symbol(src)_1.' + uid) : '';\n    }());\n\n    /**\n     * Used to resolve the\n     * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n     * of values.\n     */\n    var nativeObjectToString = objectProto.toString;\n\n    /** Used to infer the `Object` constructor. */\n    var objectCtorString = funcToString.call(Object);\n\n    /** Used to restore the original `_` reference in `_.noConflict`. */\n    var oldDash = root._;\n\n    /** Used to detect if a method is native. */\n    var reIsNative = RegExp('^' +\n      funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\\\$&')\n      .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n    );\n\n    /** Built-in value references. */\n    var Buffer = moduleExports ? context.Buffer : undefined,\n        Symbol = context.Symbol,\n        Uint8Array = context.Uint8Array,\n        allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined,\n        getPrototype = overArg(Object.getPrototypeOf, Object),\n        objectCreate = Object.create,\n        propertyIsEnumerable = objectProto.propertyIsEnumerable,\n        splice = arrayProto.splice,\n        spreadableSymbol = Symbol ? Symbol.isConcatSpreadable : undefined,\n        symIterator = Symbol ? Symbol.iterator : undefined,\n        symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n    var defineProperty = (function() {\n      try {\n        var func = getNative(Object, 'defineProperty');\n        func({}, '', {});\n        return func;\n      } catch (e) {}\n    }());\n\n    /** Mocked built-ins. */\n    var ctxClearTimeout = context.clearTimeout !== root.clearTimeout && context.clearTimeout,\n        ctxNow = Date && Date.now !== root.Date.now && Date.now,\n        ctxSetTimeout = context.setTimeout !== root.setTimeout && context.setTimeout;\n\n    /* Built-in method references for those with the same name as other `lodash` methods. */\n    var nativeCeil = Math.ceil,\n        nativeFloor = Math.floor,\n        nativeGetSymbols = Object.getOwnPropertySymbols,\n        nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined,\n        nativeIsFinite = context.isFinite,\n        nativeJoin = arrayProto.join,\n        nativeKeys = overArg(Object.keys, Object),\n        nativeMax = Math.max,\n        nativeMin = Math.min,\n        nativeNow = Date.now,\n        nativeParseInt = context.parseInt,\n        nativeRandom = Math.random,\n        nativeReverse = arrayProto.reverse;\n\n    /* Built-in method references that are verified to be native. */\n    var DataView = getNative(context, 'DataView'),\n        Map = getNative(context, 'Map'),\n        Promise = getNative(context, 'Promise'),\n        Set = getNative(context, 'Set'),\n        WeakMap = getNative(context, 'WeakMap'),\n        nativeCreate = getNative(Object, 'create');\n\n    /** Used to store function metadata. */\n    var metaMap = WeakMap && new WeakMap;\n\n    /** Used to lookup unminified function names. */\n    var realNames = {};\n\n    /** Used to detect maps, sets, and weakmaps. */\n    var dataViewCtorString = toSource(DataView),\n        mapCtorString = toSource(Map),\n        promiseCtorString = toSource(Promise),\n        setCtorString = toSource(Set),\n        weakMapCtorString = toSource(WeakMap);\n\n    /** Used to convert symbols to primitives and strings. */\n    var symbolProto = Symbol ? Symbol.prototype : undefined,\n        symbolValueOf = symbolProto ? symbolProto.valueOf : undefined,\n        symbolToString = symbolProto ? symbolProto.toString : undefined;\n\n    /*------------------------------------------------------------------------*/\n\n    /**\n     * Creates a `lodash` object which wraps `value` to enable implicit method\n     * chain sequences. Methods that operate on and return arrays, collections,\n     * and functions can be chained together. Methods that retrieve a single value\n     * or may return a primitive value will automatically end the chain sequence\n     * and return the unwrapped value. Otherwise, the value must be unwrapped\n     * with `_#value`.\n     *\n     * Explicit chain sequences, which must be unwrapped with `_#value`, may be\n     * enabled using `_.chain`.\n     *\n     * The execution of chained methods is lazy, that is, it's deferred until\n     * `_#value` is implicitly or explicitly called.\n     *\n     * Lazy evaluation allows several methods to support shortcut fusion.\n     * Shortcut fusion is an optimization to merge iteratee calls; this avoids\n     * the creation of intermediate arrays and can greatly reduce the number of\n     * iteratee executions. Sections of a chain sequence qualify for shortcut\n     * fusion if the section is applied to an array and iteratees accept only\n     * one argument. The heuristic for whether a section qualifies for shortcut\n     * fusion is subject to change.\n     *\n     * Chaining is supported in custom builds as long as the `_#value` method is\n     * directly or indirectly included in the build.\n     *\n     * In addition to lodash methods, wrappers have `Array` and `String` methods.\n     *\n     * The wrapper `Array` methods are:\n     * `concat`, `join`, `pop`, `push`, `shift`, `sort`, `splice`, and `unshift`\n     *\n     * The wrapper `String` methods are:\n     * `replace` and `split`\n     *\n     * The wrapper methods that support shortcut fusion are:\n     * `at`, `compact`, `drop`, `dropRight`, `dropWhile`, `filter`, `find`,\n     * `findLast`, `head`, `initial`, `last`, `map`, `reject`, `reverse`, `slice`,\n     * `tail`, `take`, `takeRight`, `takeRightWhile`, `takeWhile`, and `toArray`\n     *\n     * The chainable wrapper methods are:\n     * `after`, `ary`, `assign`, `assignIn`, `assignInWith`, `assignWith`, `at`,\n     * `before`, `bind`, `bindAll`, `bindKey`, `castArray`, `chain`, `chunk`,\n     * `commit`, `compact`, `concat`, `conforms`, `constant`, `countBy`, `create`,\n     * `curry`, `debounce`, `defaults`, `defaultsDeep`, `defer`, `delay`,\n     * `difference`, `differenceBy`, `differenceWith`, `drop`, `dropRight`,\n     * `dropRightWhile`, `dropWhile`, `extend`, `extendWith`, `fill`, `filter`,\n     * `flatMap`, `flatMapDeep`, `flatMapDepth`, `flatten`, `flattenDeep`,\n     * `flattenDepth`, `flip`, `flow`, `flowRight`, `fromPairs`, `functions`,\n     * `functionsIn`, `groupBy`, `initial`, `intersection`, `intersectionBy`,\n     * `intersectionWith`, `invert`, `invertBy`, `invokeMap`, `iteratee`, `keyBy`,\n     * `keys`, `keysIn`, `map`, `mapKeys`, `mapValues`, `matches`, `matchesProperty`,\n     * `memoize`, `merge`, `mergeWith`, `method`, `methodOf`, `mixin`, `negate`,\n     * `nthArg`, `omit`, `omitBy`, `once`, `orderBy`, `over`, `overArgs`,\n     * `overEvery`, `overSome`, `partial`, `partialRight`, `partition`, `pick`,\n     * `pickBy`, `plant`, `property`, `propertyOf`, `pull`, `pullAll`, `pullAllBy`,\n     * `pullAllWith`, `pullAt`, `push`, `range`, `rangeRight`, `rearg`, `reject`,\n     * `remove`, `rest`, `reverse`, `sampleSize`, `set`, `setWith`, `shuffle`,\n     * `slice`, `sort`, `sortBy`, `splice`, `spread`, `tail`, `take`, `takeRight`,\n     * `takeRightWhile`, `takeWhile`, `tap`, `throttle`, `thru`, `toArray`,\n     * `toPairs`, `toPairsIn`, `toPath`, `toPlainObject`, `transform`, `unary`,\n     * `union`, `unionBy`, `unionWith`, `uniq`, `uniqBy`, `uniqWith`, `unset`,\n     * `unshift`, `unzip`, `unzipWith`, `update`, `updateWith`, `values`,\n     * `valuesIn`, `without`, `wrap`, `xor`, `xorBy`, `xorWith`, `zip`,\n     * `zipObject`, `zipObjectDeep`, and `zipWith`\n     *\n     * The wrapper methods that are **not** chainable by default are:\n     * `add`, `attempt`, `camelCase`, `capitalize`, `ceil`, `clamp`, `clone`,\n     * `cloneDeep`, `cloneDeepWith`, `cloneWith`, `conformsTo`, `deburr`,\n     * `defaultTo`, `divide`, `each`, `eachRight`, `endsWith`, `eq`, `escape`,\n     * `escapeRegExp`, `every`, `find`, `findIndex`, `findKey`, `findLast`,\n     * `findLastIndex`, `findLastKey`, `first`, `floor`, `forEach`, `forEachRight`,\n     * `forIn`, `forInRight`, `forOwn`, `forOwnRight`, `get`, `gt`, `gte`, `has`,\n     * `hasIn`, `head`, `identity`, `includes`, `indexOf`, `inRange`, `invoke`,\n     * `isArguments`, `isArray`, `isArrayBuffer`, `isArrayLike`, `isArrayLikeObject`,\n     * `isBoolean`, `isBuffer`, `isDate`, `isElement`, `isEmpty`, `isEqual`,\n     * `isEqualWith`, `isError`, `isFinite`, `isFunction`, `isInteger`, `isLength`,\n     * `isMap`, `isMatch`, `isMatchWith`, `isNaN`, `isNative`, `isNil`, `isNull`,\n     * `isNumber`, `isObject`, `isObjectLike`, `isPlainObject`, `isRegExp`,\n     * `isSafeInteger`, `isSet`, `isString`, `isUndefined`, `isTypedArray`,\n     * `isWeakMap`, `isWeakSet`, `join`, `kebabCase`, `last`, `lastIndexOf`,\n     * `lowerCase`, `lowerFirst`, `lt`, `lte`, `max`, `maxBy`, `mean`, `meanBy`,\n     * `min`, `minBy`, `multiply`, `noConflict`, `noop`, `now`, `nth`, `pad`,\n     * `padEnd`, `padStart`, `parseInt`, `pop`, `random`, `reduce`, `reduceRight`,\n     * `repeat`, `result`, `round`, `runInContext`, `sample`, `shift`, `size`,\n     * `snakeCase`, `some`, `sortedIndex`, `sortedIndexBy`, `sortedLastIndex`,\n     * `sortedLastIndexBy`, `startCase`, `startsWith`, `stubArray`, `stubFalse`,\n     * `stubObject`, `stubString`, `stubTrue`, `subtract`, `sum`, `sumBy`,\n     * `template`, `times`, `toFinite`, `toInteger`, `toJSON`, `toLength`,\n     * `toLower`, `toNumber`, `toSafeInteger`, `toString`, `toUpper`, `trim`,\n     * `trimEnd`, `trimStart`, `truncate`, `unescape`, `uniqueId`, `upperCase`,\n     * `upperFirst`, `value`, and `words`\n     *\n     * @name _\n     * @constructor\n     * @category Seq\n     * @param {*} value The value to wrap in a `lodash` instance.\n     * @returns {Object} Returns the new `lodash` wrapper instance.\n     * @example\n     *\n     * function square(n) {\n     *   return n * n;\n     * }\n     *\n     * var wrapped = _([1, 2, 3]);\n     *\n     * // Returns an unwrapped value.\n     * wrapped.reduce(_.add);\n     * // => 6\n     *\n     * // Returns a wrapped value.\n     * var squares = wrapped.map(square);\n     *\n     * _.isArray(squares);\n     * // => false\n     *\n     * _.isArray(squares.value());\n     * // => true\n     */\n    function lodash(value) {\n      if (isObjectLike(value) && !isArray(value) && !(value instanceof LazyWrapper)) {\n        if (value instanceof LodashWrapper) {\n          return value;\n        }\n        if (hasOwnProperty.call(value, '__wrapped__')) {\n          return wrapperClone(value);\n        }\n      }\n      return new LodashWrapper(value);\n    }\n\n    /**\n     * The base implementation of `_.create` without support for assigning\n     * properties to the created object.\n     *\n     * @private\n     * @param {Object} proto The object to inherit from.\n     * @returns {Object} Returns the new object.\n     */\n    var baseCreate = (function() {\n      function object() {}\n      return function(proto) {\n        if (!isObject(proto)) {\n          return {};\n        }\n        if (objectCreate) {\n          return objectCreate(proto);\n        }\n        object.prototype = proto;\n        var result = new object;\n        object.prototype = undefined;\n        return result;\n      };\n    }());\n\n    /**\n     * The function whose prototype chain sequence wrappers inherit from.\n     *\n     * @private\n     */\n    function baseLodash() {\n      // No operation performed.\n    }\n\n    /**\n     * The base constructor for creating `lodash` wrapper objects.\n     *\n     * @private\n     * @param {*} value The value to wrap.\n     * @param {boolean} [chainAll] Enable explicit method chain sequences.\n     */\n    function LodashWrapper(value, chainAll) {\n      this.__wrapped__ = value;\n      this.__actions__ = [];\n      this.__chain__ = !!chainAll;\n      this.__index__ = 0;\n      this.__values__ = undefined;\n    }\n\n    /**\n     * By default, the template delimiters used by lodash are like those in\n     * embedded Ruby (ERB) as well as ES2015 template strings. Change the\n     * following template settings to use alternative delimiters.\n     *\n     * @static\n     * @memberOf _\n     * @type {Object}\n     */\n    lodash.templateSettings = {\n\n      /**\n       * Used to detect `data` property values to be HTML-escaped.\n       *\n       * @memberOf _.templateSettings\n       * @type {RegExp}\n       */\n      'escape': reEscape,\n\n      /**\n       * Used to detect code to be evaluated.\n       *\n       * @memberOf _.templateSettings\n       * @type {RegExp}\n       */\n      'evaluate': reEvaluate,\n\n      /**\n       * Used to detect `data` property values to inject.\n       *\n       * @memberOf _.templateSettings\n       * @type {RegExp}\n       */\n      'interpolate': reInterpolate,\n\n      /**\n       * Used to reference the data object in the template text.\n       *\n       * @memberOf _.templateSettings\n       * @type {string}\n       */\n      'variable': '',\n\n      /**\n       * Used to import variables into the compiled template.\n       *\n       * @memberOf _.templateSettings\n       * @type {Object}\n       */\n      'imports': {\n\n        /**\n         * A reference to the `lodash` function.\n         *\n         * @memberOf _.templateSettings.imports\n         * @type {Function}\n         */\n        '_': lodash\n      }\n    };\n\n    // Ensure wrappers are instances of `baseLodash`.\n    lodash.prototype = baseLodash.prototype;\n    lodash.prototype.constructor = lodash;\n\n    LodashWrapper.prototype = baseCreate(baseLodash.prototype);\n    LodashWrapper.prototype.constructor = LodashWrapper;\n\n    /*------------------------------------------------------------------------*/\n\n    /**\n     * Creates a lazy wrapper object which wraps `value` to enable lazy evaluation.\n     *\n     * @private\n     * @constructor\n     * @param {*} value The value to wrap.\n     */\n    function LazyWrapper(value) {\n      this.__wrapped__ = value;\n      this.__actions__ = [];\n      this.__dir__ = 1;\n      this.__filtered__ = false;\n      this.__iteratees__ = [];\n      this.__takeCount__ = MAX_ARRAY_LENGTH;\n      this.__views__ = [];\n    }\n\n    /**\n     * Creates a clone of the lazy wrapper object.\n     *\n     * @private\n     * @name clone\n     * @memberOf LazyWrapper\n     * @returns {Object} Returns the cloned `LazyWrapper` object.\n     */\n    function lazyClone() {\n      var result = new LazyWrapper(this.__wrapped__);\n      result.__actions__ = copyArray(this.__actions__);\n      result.__dir__ = this.__dir__;\n      result.__filtered__ = this.__filtered__;\n      result.__iteratees__ = copyArray(this.__iteratees__);\n      result.__takeCount__ = this.__takeCount__;\n      result.__views__ = copyArray(this.__views__);\n      return result;\n    }\n\n    /**\n     * Reverses the direction of lazy iteration.\n     *\n     * @private\n     * @name reverse\n     * @memberOf LazyWrapper\n     * @returns {Object} Returns the new reversed `LazyWrapper` object.\n     */\n    function lazyReverse() {\n      if (this.__filtered__) {\n        var result = new LazyWrapper(this);\n        result.__dir__ = -1;\n        result.__filtered__ = true;\n      } else {\n        result = this.clone();\n        result.__dir__ *= -1;\n      }\n      return result;\n    }\n\n    /**\n     * Extracts the unwrapped value from its lazy wrapper.\n     *\n     * @private\n     * @name value\n     * @memberOf LazyWrapper\n     * @returns {*} Returns the unwrapped value.\n     */\n    function lazyValue() {\n      var array = this.__wrapped__.value(),\n          dir = this.__dir__,\n          isArr = isArray(array),\n          isRight = dir < 0,\n          arrLength = isArr ? array.length : 0,\n          view = getView(0, arrLength, this.__views__),\n          start = view.start,\n          end = view.end,\n          length = end - start,\n          index = isRight ? end : (start - 1),\n          iteratees = this.__iteratees__,\n          iterLength = iteratees.length,\n          resIndex = 0,\n          takeCount = nativeMin(length, this.__takeCount__);\n\n      if (!isArr || (!isRight && arrLength == length && takeCount == length)) {\n        return baseWrapperValue(array, this.__actions__);\n      }\n      var result = [];\n\n      outer:\n      while (length-- && resIndex < takeCount) {\n        index += dir;\n\n        var iterIndex = -1,\n            value = array[index];\n\n        while (++iterIndex < iterLength) {\n          var data = iteratees[iterIndex],\n              iteratee = data.iteratee,\n              type = data.type,\n              computed = iteratee(value);\n\n          if (type == LAZY_MAP_FLAG) {\n            value = computed;\n          } else if (!computed) {\n            if (type == LAZY_FILTER_FLAG) {\n              continue outer;\n            } else {\n              break outer;\n            }\n          }\n        }\n        result[resIndex++] = value;\n      }\n      return result;\n    }\n\n    // Ensure `LazyWrapper` is an instance of `baseLodash`.\n    LazyWrapper.prototype = baseCreate(baseLodash.prototype);\n    LazyWrapper.prototype.constructor = LazyWrapper;\n\n    /*------------------------------------------------------------------------*/\n\n    /**\n     * Creates a hash object.\n     *\n     * @private\n     * @constructor\n     * @param {Array} [entries] The key-value pairs to cache.\n     */\n    function Hash(entries) {\n      var index = -1,\n          length = entries == null ? 0 : entries.length;\n\n      this.clear();\n      while (++index < length) {\n        var entry = entries[index];\n        this.set(entry[0], entry[1]);\n      }\n    }\n\n    /**\n     * Removes all key-value entries from the hash.\n     *\n     * @private\n     * @name clear\n     * @memberOf Hash\n     */\n    function hashClear() {\n      this.__data__ = nativeCreate ? nativeCreate(null) : {};\n      this.size = 0;\n    }\n\n    /**\n     * Removes `key` and its value from the hash.\n     *\n     * @private\n     * @name delete\n     * @memberOf Hash\n     * @param {Object} hash The hash to modify.\n     * @param {string} key The key of the value to remove.\n     * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n     */\n    function hashDelete(key) {\n      var result = this.has(key) && delete this.__data__[key];\n      this.size -= result ? 1 : 0;\n      return result;\n    }\n\n    /**\n     * Gets the hash value for `key`.\n     *\n     * @private\n     * @name get\n     * @memberOf Hash\n     * @param {string} key The key of the value to get.\n     * @returns {*} Returns the entry value.\n     */\n    function hashGet(key) {\n      var data = this.__data__;\n      if (nativeCreate) {\n        var result = data[key];\n        return result === HASH_UNDEFINED ? undefined : result;\n      }\n      return hasOwnProperty.call(data, key) ? data[key] : undefined;\n    }\n\n    /**\n     * Checks if a hash value for `key` exists.\n     *\n     * @private\n     * @name has\n     * @memberOf Hash\n     * @param {string} key The key of the entry to check.\n     * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n     */\n    function hashHas(key) {\n      var data = this.__data__;\n      return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);\n    }\n\n    /**\n     * Sets the hash `key` to `value`.\n     *\n     * @private\n     * @name set\n     * @memberOf Hash\n     * @param {string} key The key of the value to set.\n     * @param {*} value The value to set.\n     * @returns {Object} Returns the hash instance.\n     */\n    function hashSet(key, value) {\n      var data = this.__data__;\n      this.size += this.has(key) ? 0 : 1;\n      data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n      return this;\n    }\n\n    // Add methods to `Hash`.\n    Hash.prototype.clear = hashClear;\n    Hash.prototype['delete'] = hashDelete;\n    Hash.prototype.get = hashGet;\n    Hash.prototype.has = hashHas;\n    Hash.prototype.set = hashSet;\n\n    /*------------------------------------------------------------------------*/\n\n    /**\n     * Creates an list cache object.\n     *\n     * @private\n     * @constructor\n     * @param {Array} [entries] The key-value pairs to cache.\n     */\n    function ListCache(entries) {\n      var index = -1,\n          length = entries == null ? 0 : entries.length;\n\n      this.clear();\n      while (++index < length) {\n        var entry = entries[index];\n        this.set(entry[0], entry[1]);\n      }\n    }\n\n    /**\n     * Removes all key-value entries from the list cache.\n     *\n     * @private\n     * @name clear\n     * @memberOf ListCache\n     */\n    function listCacheClear() {\n      this.__data__ = [];\n      this.size = 0;\n    }\n\n    /**\n     * Removes `key` and its value from the list cache.\n     *\n     * @private\n     * @name delete\n     * @memberOf ListCache\n     * @param {string} key The key of the value to remove.\n     * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n     */\n    function listCacheDelete(key) {\n      var data = this.__data__,\n          index = assocIndexOf(data, key);\n\n      if (index < 0) {\n        return false;\n      }\n      var lastIndex = data.length - 1;\n      if (index == lastIndex) {\n        data.pop();\n      } else {\n        splice.call(data, index, 1);\n      }\n      --this.size;\n      return true;\n    }\n\n    /**\n     * Gets the list cache value for `key`.\n     *\n     * @private\n     * @name get\n     * @memberOf ListCache\n     * @param {string} key The key of the value to get.\n     * @returns {*} Returns the entry value.\n     */\n    function listCacheGet(key) {\n      var data = this.__data__,\n          index = assocIndexOf(data, key);\n\n      return index < 0 ? undefined : data[index][1];\n    }\n\n    /**\n     * Checks if a list cache value for `key` exists.\n     *\n     * @private\n     * @name has\n     * @memberOf ListCache\n     * @param {string} key The key of the entry to check.\n     * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n     */\n    function listCacheHas(key) {\n      return assocIndexOf(this.__data__, key) > -1;\n    }\n\n    /**\n     * Sets the list cache `key` to `value`.\n     *\n     * @private\n     * @name set\n     * @memberOf ListCache\n     * @param {string} key The key of the value to set.\n     * @param {*} value The value to set.\n     * @returns {Object} Returns the list cache instance.\n     */\n    function listCacheSet(key, value) {\n      var data = this.__data__,\n          index = assocIndexOf(data, key);\n\n      if (index < 0) {\n        ++this.size;\n        data.push([key, value]);\n      } else {\n        data[index][1] = value;\n      }\n      return this;\n    }\n\n    // Add methods to `ListCache`.\n    ListCache.prototype.clear = listCacheClear;\n    ListCache.prototype['delete'] = listCacheDelete;\n    ListCache.prototype.get = listCacheGet;\n    ListCache.prototype.has = listCacheHas;\n    ListCache.prototype.set = listCacheSet;\n\n    /*------------------------------------------------------------------------*/\n\n    /**\n     * Creates a map cache object to store key-value pairs.\n     *\n     * @private\n     * @constructor\n     * @param {Array} [entries] The key-value pairs to cache.\n     */\n    function MapCache(entries) {\n      var index = -1,\n          length = entries == null ? 0 : entries.length;\n\n      this.clear();\n      while (++index < length) {\n        var entry = entries[index];\n        this.set(entry[0], entry[1]);\n      }\n    }\n\n    /**\n     * Removes all key-value entries from the map.\n     *\n     * @private\n     * @name clear\n     * @memberOf MapCache\n     */\n    function mapCacheClear() {\n      this.size = 0;\n      this.__data__ = {\n        'hash': new Hash,\n        'map': new (Map || ListCache),\n        'string': new Hash\n      };\n    }\n\n    /**\n     * Removes `key` and its value from the map.\n     *\n     * @private\n     * @name delete\n     * @memberOf MapCache\n     * @param {string} key The key of the value to remove.\n     * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n     */\n    function mapCacheDelete(key) {\n      var result = getMapData(this, key)['delete'](key);\n      this.size -= result ? 1 : 0;\n      return result;\n    }\n\n    /**\n     * Gets the map value for `key`.\n     *\n     * @private\n     * @name get\n     * @memberOf MapCache\n     * @param {string} key The key of the value to get.\n     * @returns {*} Returns the entry value.\n     */\n    function mapCacheGet(key) {\n      return getMapData(this, key).get(key);\n    }\n\n    /**\n     * Checks if a map value for `key` exists.\n     *\n     * @private\n     * @name has\n     * @memberOf MapCache\n     * @param {string} key The key of the entry to check.\n     * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n     */\n    function mapCacheHas(key) {\n      return getMapData(this, key).has(key);\n    }\n\n    /**\n     * Sets the map `key` to `value`.\n     *\n     * @private\n     * @name set\n     * @memberOf MapCache\n     * @param {string} key The key of the value to set.\n     * @param {*} value The value to set.\n     * @returns {Object} Returns the map cache instance.\n     */\n    function mapCacheSet(key, value) {\n      var data = getMapData(this, key),\n          size = data.size;\n\n      data.set(key, value);\n      this.size += data.size == size ? 0 : 1;\n      return this;\n    }\n\n    // Add methods to `MapCache`.\n    MapCache.prototype.clear = mapCacheClear;\n    MapCache.prototype['delete'] = mapCacheDelete;\n    MapCache.prototype.get = mapCacheGet;\n    MapCache.prototype.has = mapCacheHas;\n    MapCache.prototype.set = mapCacheSet;\n\n    /*------------------------------------------------------------------------*/\n\n    /**\n     *\n     * Creates an array cache object to store unique values.\n     *\n     * @private\n     * @constructor\n     * @param {Array} [values] The values to cache.\n     */\n    function SetCache(values) {\n      var index = -1,\n          length = values == null ? 0 : values.length;\n\n      this.__data__ = new MapCache;\n      while (++index < length) {\n        this.add(values[index]);\n      }\n    }\n\n    /**\n     * Adds `value` to the array cache.\n     *\n     * @private\n     * @name add\n     * @memberOf SetCache\n     * @alias push\n     * @param {*} value The value to cache.\n     * @returns {Object} Returns the cache instance.\n     */\n    function setCacheAdd(value) {\n      this.__data__.set(value, HASH_UNDEFINED);\n      return this;\n    }\n\n    /**\n     * Checks if `value` is in the array cache.\n     *\n     * @private\n     * @name has\n     * @memberOf SetCache\n     * @param {*} value The value to search for.\n     * @returns {number} Returns `true` if `value` is found, else `false`.\n     */\n    function setCacheHas(value) {\n      return this.__data__.has(value);\n    }\n\n    // Add methods to `SetCache`.\n    SetCache.prototype.add = SetCache.prototype.push = setCacheAdd;\n    SetCache.prototype.has = setCacheHas;\n\n    /*------------------------------------------------------------------------*/\n\n    /**\n     * Creates a stack cache object to store key-value pairs.\n     *\n     * @private\n     * @constructor\n     * @param {Array} [entries] The key-value pairs to cache.\n     */\n    function Stack(entries) {\n      var data = this.__data__ = new ListCache(entries);\n      this.size = data.size;\n    }\n\n    /**\n     * Removes all key-value entries from the stack.\n     *\n     * @private\n     * @name clear\n     * @memberOf Stack\n     */\n    function stackClear() {\n      this.__data__ = new ListCache;\n      this.size = 0;\n    }\n\n    /**\n     * Removes `key` and its value from the stack.\n     *\n     * @private\n     * @name delete\n     * @memberOf Stack\n     * @param {string} key The key of the value to remove.\n     * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n     */\n    function stackDelete(key) {\n      var data = this.__data__,\n          result = data['delete'](key);\n\n      this.size = data.size;\n      return result;\n    }\n\n    /**\n     * Gets the stack value for `key`.\n     *\n     * @private\n     * @name get\n     * @memberOf Stack\n     * @param {string} key The key of the value to get.\n     * @returns {*} Returns the entry value.\n     */\n    function stackGet(key) {\n      return this.__data__.get(key);\n    }\n\n    /**\n     * Checks if a stack value for `key` exists.\n     *\n     * @private\n     * @name has\n     * @memberOf Stack\n     * @param {string} key The key of the entry to check.\n     * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n     */\n    function stackHas(key) {\n      return this.__data__.has(key);\n    }\n\n    /**\n     * Sets the stack `key` to `value`.\n     *\n     * @private\n     * @name set\n     * @memberOf Stack\n     * @param {string} key The key of the value to set.\n     * @param {*} value The value to set.\n     * @returns {Object} Returns the stack cache instance.\n     */\n    function stackSet(key, value) {\n      var data = this.__data__;\n      if (data instanceof ListCache) {\n        var pairs = data.__data__;\n        if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {\n          pairs.push([key, value]);\n          this.size = ++data.size;\n          return this;\n        }\n        data = this.__data__ = new MapCache(pairs);\n      }\n      data.set(key, value);\n      this.size = data.size;\n      return this;\n    }\n\n    // Add methods to `Stack`.\n    Stack.prototype.clear = stackClear;\n    Stack.prototype['delete'] = stackDelete;\n    Stack.prototype.get = stackGet;\n    Stack.prototype.has = stackHas;\n    Stack.prototype.set = stackSet;\n\n    /*------------------------------------------------------------------------*/\n\n    /**\n     * Creates an array of the enumerable property names of the array-like `value`.\n     *\n     * @private\n     * @param {*} value The value to query.\n     * @param {boolean} inherited Specify returning inherited property names.\n     * @returns {Array} Returns the array of property names.\n     */\n    function arrayLikeKeys(value, inherited) {\n      var isArr = isArray(value),\n          isArg = !isArr && isArguments(value),\n          isBuff = !isArr && !isArg && isBuffer(value),\n          isType = !isArr && !isArg && !isBuff && isTypedArray(value),\n          skipIndexes = isArr || isArg || isBuff || isType,\n          result = skipIndexes ? baseTimes(value.length, String) : [],\n          length = result.length;\n\n      for (var key in value) {\n        if ((inherited || hasOwnProperty.call(value, key)) &&\n            !(skipIndexes && (\n               // Safari 9 has enumerable `arguments.length` in strict mode.\n               key == 'length' ||\n               // Node.js 0.10 has enumerable non-index properties on buffers.\n               (isBuff && (key == 'offset' || key == 'parent')) ||\n               // PhantomJS 2 has enumerable non-index properties on typed arrays.\n               (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||\n               // Skip index properties.\n               isIndex(key, length)\n            ))) {\n          result.push(key);\n        }\n      }\n      return result;\n    }\n\n    /**\n     * A specialized version of `_.sample` for arrays.\n     *\n     * @private\n     * @param {Array} array The array to sample.\n     * @returns {*} Returns the random element.\n     */\n    function arraySample(array) {\n      var length = array.length;\n      return length ? array[baseRandom(0, length - 1)] : undefined;\n    }\n\n    /**\n     * A specialized version of `_.sampleSize` for arrays.\n     *\n     * @private\n     * @param {Array} array The array to sample.\n     * @param {number} n The number of elements to sample.\n     * @returns {Array} Returns the random elements.\n     */\n    function arraySampleSize(array, n) {\n      return shuffleSelf(copyArray(array), baseClamp(n, 0, array.length));\n    }\n\n    /**\n     * A specialized version of `_.shuffle` for arrays.\n     *\n     * @private\n     * @param {Array} array The array to shuffle.\n     * @returns {Array} Returns the new shuffled array.\n     */\n    function arrayShuffle(array) {\n      return shuffleSelf(copyArray(array));\n    }\n\n    /**\n     * This function is like `assignValue` except that it doesn't assign\n     * `undefined` values.\n     *\n     * @private\n     * @param {Object} object The object to modify.\n     * @param {string} key The key of the property to assign.\n     * @param {*} value The value to assign.\n     */\n    function assignMergeValue(object, key, value) {\n      if ((value !== undefined && !eq(object[key], value)) ||\n          (value === undefined && !(key in object))) {\n        baseAssignValue(object, key, value);\n      }\n    }\n\n    /**\n     * Assigns `value` to `key` of `object` if the existing value is not equivalent\n     * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n     * for equality comparisons.\n     *\n     * @private\n     * @param {Object} object The object to modify.\n     * @param {string} key The key of the property to assign.\n     * @param {*} value The value to assign.\n     */\n    function assignValue(object, key, value) {\n      var objValue = object[key];\n      if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) ||\n          (value === undefined && !(key in object))) {\n        baseAssignValue(object, key, value);\n      }\n    }\n\n    /**\n     * Gets the index at which the `key` is found in `array` of key-value pairs.\n     *\n     * @private\n     * @param {Array} array The array to inspect.\n     * @param {*} key The key to search for.\n     * @returns {number} Returns the index of the matched value, else `-1`.\n     */\n    function assocIndexOf(array, key) {\n      var length = array.length;\n      while (length--) {\n        if (eq(array[length][0], key)) {\n          return length;\n        }\n      }\n      return -1;\n    }\n\n    /**\n     * Aggregates elements of `collection` on `accumulator` with keys transformed\n     * by `iteratee` and values set by `setter`.\n     *\n     * @private\n     * @param {Array|Object} collection The collection to iterate over.\n     * @param {Function} setter The function to set `accumulator` values.\n     * @param {Function} iteratee The iteratee to transform keys.\n     * @param {Object} accumulator The initial aggregated object.\n     * @returns {Function} Returns `accumulator`.\n     */\n    function baseAggregator(collection, setter, iteratee, accumulator) {\n      baseEach(collection, function(value, key, collection) {\n        setter(accumulator, value, iteratee(value), collection);\n      });\n      return accumulator;\n    }\n\n    /**\n     * The base implementation of `_.assign` without support for multiple sources\n     * or `customizer` functions.\n     *\n     * @private\n     * @param {Object} object The destination object.\n     * @param {Object} source The source object.\n     * @returns {Object} Returns `object`.\n     */\n    function baseAssign(object, source) {\n      return object && copyObject(source, keys(source), object);\n    }\n\n    /**\n     * The base implementation of `_.assignIn` without support for multiple sources\n     * or `customizer` functions.\n     *\n     * @private\n     * @param {Object} object The destination object.\n     * @param {Object} source The source object.\n     * @returns {Object} Returns `object`.\n     */\n    function baseAssignIn(object, source) {\n      return object && copyObject(source, keysIn(source), object);\n    }\n\n    /**\n     * The base implementation of `assignValue` and `assignMergeValue` without\n     * value checks.\n     *\n     * @private\n     * @param {Object} object The object to modify.\n     * @param {string} key The key of the property to assign.\n     * @param {*} value The value to assign.\n     */\n    function baseAssignValue(object, key, value) {\n      if (key == '__proto__' && defineProperty) {\n        defineProperty(object, key, {\n          'configurable': true,\n          'enumerable': true,\n          'value': value,\n          'writable': true\n        });\n      } else {\n        object[key] = value;\n      }\n    }\n\n    /**\n     * The base implementation of `_.at` without support for individual paths.\n     *\n     * @private\n     * @param {Object} object The object to iterate over.\n     * @param {string[]} paths The property paths to pick.\n     * @returns {Array} Returns the picked elements.\n     */\n    function baseAt(object, paths) {\n      var index = -1,\n          length = paths.length,\n          result = Array(length),\n          skip = object == null;\n\n      while (++index < length) {\n        result[index] = skip ? undefined : get(object, paths[index]);\n      }\n      return result;\n    }\n\n    /**\n     * The base implementation of `_.clamp` which doesn't coerce arguments.\n     *\n     * @private\n     * @param {number} number The number to clamp.\n     * @param {number} [lower] The lower bound.\n     * @param {number} upper The upper bound.\n     * @returns {number} Returns the clamped number.\n     */\n    function baseClamp(number, lower, upper) {\n      if (number === number) {\n        if (upper !== undefined) {\n          number = number <= upper ? number : upper;\n        }\n        if (lower !== undefined) {\n          number = number >= lower ? number : lower;\n        }\n      }\n      return number;\n    }\n\n    /**\n     * The base implementation of `_.clone` and `_.cloneDeep` which tracks\n     * traversed objects.\n     *\n     * @private\n     * @param {*} value The value to clone.\n     * @param {boolean} bitmask The bitmask flags.\n     *  1 - Deep clone\n     *  2 - Flatten inherited properties\n     *  4 - Clone symbols\n     * @param {Function} [customizer] The function to customize cloning.\n     * @param {string} [key] The key of `value`.\n     * @param {Object} [object] The parent object of `value`.\n     * @param {Object} [stack] Tracks traversed objects and their clone counterparts.\n     * @returns {*} Returns the cloned value.\n     */\n    function baseClone(value, bitmask, customizer, key, object, stack) {\n      var result,\n          isDeep = bitmask & CLONE_DEEP_FLAG,\n          isFlat = bitmask & CLONE_FLAT_FLAG,\n          isFull = bitmask & CLONE_SYMBOLS_FLAG;\n\n      if (customizer) {\n        result = object ? customizer(value, key, object, stack) : customizer(value);\n      }\n      if (result !== undefined) {\n        return result;\n      }\n      if (!isObject(value)) {\n        return value;\n      }\n      var isArr = isArray(value);\n      if (isArr) {\n        result = initCloneArray(value);\n        if (!isDeep) {\n          return copyArray(value, result);\n        }\n      } else {\n        var tag = getTag(value),\n            isFunc = tag == funcTag || tag == genTag;\n\n        if (isBuffer(value)) {\n          return cloneBuffer(value, isDeep);\n        }\n        if (tag == objectTag || tag == argsTag || (isFunc && !object)) {\n          result = (isFlat || isFunc) ? {} : initCloneObject(value);\n          if (!isDeep) {\n            return isFlat\n              ? copySymbolsIn(value, baseAssignIn(result, value))\n              : copySymbols(value, baseAssign(result, value));\n          }\n        } else {\n          if (!cloneableTags[tag]) {\n            return object ? value : {};\n          }\n          result = initCloneByTag(value, tag, isDeep);\n        }\n      }\n      // Check for circular references and return its corresponding clone.\n      stack || (stack = new Stack);\n      var stacked = stack.get(value);\n      if (stacked) {\n        return stacked;\n      }\n      stack.set(value, result);\n\n      if (isSet(value)) {\n        value.forEach(function(subValue) {\n          result.add(baseClone(subValue, bitmask, customizer, subValue, value, stack));\n        });\n      } else if (isMap(value)) {\n        value.forEach(function(subValue, key) {\n          result.set(key, baseClone(subValue, bitmask, customizer, key, value, stack));\n        });\n      }\n\n      var keysFunc = isFull\n        ? (isFlat ? getAllKeysIn : getAllKeys)\n        : (isFlat ? keysIn : keys);\n\n      var props = isArr ? undefined : keysFunc(value);\n      arrayEach(props || value, function(subValue, key) {\n        if (props) {\n          key = subValue;\n          subValue = value[key];\n        }\n        // Recursively populate clone (susceptible to call stack limits).\n        assignValue(result, key, baseClone(subValue, bitmask, customizer, key, value, stack));\n      });\n      return result;\n    }\n\n    /**\n     * The base implementation of `_.conforms` which doesn't clone `source`.\n     *\n     * @private\n     * @param {Object} source The object of property predicates to conform to.\n     * @returns {Function} Returns the new spec function.\n     */\n    function baseConforms(source) {\n      var props = keys(source);\n      return function(object) {\n        return baseConformsTo(object, source, props);\n      };\n    }\n\n    /**\n     * The base implementation of `_.conformsTo` which accepts `props` to check.\n     *\n     * @private\n     * @param {Object} object The object to inspect.\n     * @param {Object} source The object of property predicates to conform to.\n     * @returns {boolean} Returns `true` if `object` conforms, else `false`.\n     */\n    function baseConformsTo(object, source, props) {\n      var length = props.length;\n      if (object == null) {\n        return !length;\n      }\n      object = Object(object);\n      while (length--) {\n        var key = props[length],\n            predicate = source[key],\n            value = object[key];\n\n        if ((value === undefined && !(key in object)) || !predicate(value)) {\n          return false;\n        }\n      }\n      return true;\n    }\n\n    /**\n     * The base implementation of `_.delay` and `_.defer` which accepts `args`\n     * to provide to `func`.\n     *\n     * @private\n     * @param {Function} func The function to delay.\n     * @param {number} wait The number of milliseconds to delay invocation.\n     * @param {Array} args The arguments to provide to `func`.\n     * @returns {number|Object} Returns the timer id or timeout object.\n     */\n    function baseDelay(func, wait, args) {\n      if (typeof func != 'function') {\n        throw new TypeError(FUNC_ERROR_TEXT);\n      }\n      return setTimeout(function() { func.apply(undefined, args); }, wait);\n    }\n\n    /**\n     * The base implementation of methods like `_.difference` without support\n     * for excluding multiple arrays or iteratee shorthands.\n     *\n     * @private\n     * @param {Array} array The array to inspect.\n     * @param {Array} values The values to exclude.\n     * @param {Function} [iteratee] The iteratee invoked per element.\n     * @param {Function} [comparator] The comparator invoked per element.\n     * @returns {Array} Returns the new array of filtered values.\n     */\n    function baseDifference(array, values, iteratee, comparator) {\n      var index = -1,\n          includes = arrayIncludes,\n          isCommon = true,\n          length = array.length,\n          result = [],\n          valuesLength = values.length;\n\n      if (!length) {\n        return result;\n      }\n      if (iteratee) {\n        values = arrayMap(values, baseUnary(iteratee));\n      }\n      if (comparator) {\n        includes = arrayIncludesWith;\n        isCommon = false;\n      }\n      else if (values.length >= LARGE_ARRAY_SIZE) {\n        includes = cacheHas;\n        isCommon = false;\n        values = new SetCache(values);\n      }\n      outer:\n      while (++index < length) {\n        var value = array[index],\n            computed = iteratee == null ? value : iteratee(value);\n\n        value = (comparator || value !== 0) ? value : 0;\n        if (isCommon && computed === computed) {\n          var valuesIndex = valuesLength;\n          while (valuesIndex--) {\n            if (values[valuesIndex] === computed) {\n              continue outer;\n            }\n          }\n          result.push(value);\n        }\n        else if (!includes(values, computed, comparator)) {\n          result.push(value);\n        }\n      }\n      return result;\n    }\n\n    /**\n     * The base implementation of `_.forEach` without support for iteratee shorthands.\n     *\n     * @private\n     * @param {Array|Object} collection The collection to iterate over.\n     * @param {Function} iteratee The function invoked per iteration.\n     * @returns {Array|Object} Returns `collection`.\n     */\n    var baseEach = createBaseEach(baseForOwn);\n\n    /**\n     * The base implementation of `_.forEachRight` without support for iteratee shorthands.\n     *\n     * @private\n     * @param {Array|Object} collection The collection to iterate over.\n     * @param {Function} iteratee The function invoked per iteration.\n     * @returns {Array|Object} Returns `collection`.\n     */\n    var baseEachRight = createBaseEach(baseForOwnRight, true);\n\n    /**\n     * The base implementation of `_.every` without support for iteratee shorthands.\n     *\n     * @private\n     * @param {Array|Object} collection The collection to iterate over.\n     * @param {Function} predicate The function invoked per iteration.\n     * @returns {boolean} Returns `true` if all elements pass the predicate check,\n     *  else `false`\n     */\n    function baseEvery(collection, predicate) {\n      var result = true;\n      baseEach(collection, function(value, index, collection) {\n        result = !!predicate(value, index, collection);\n        return result;\n      });\n      return result;\n    }\n\n    /**\n     * The base implementation of methods like `_.max` and `_.min` which accepts a\n     * `comparator` to determine the extremum value.\n     *\n     * @private\n     * @param {Array} array The array to iterate over.\n     * @param {Function} iteratee The iteratee invoked per iteration.\n     * @param {Function} comparator The comparator used to compare values.\n     * @returns {*} Returns the extremum value.\n     */\n    function baseExtremum(array, iteratee, comparator) {\n      var index = -1,\n          length = array.length;\n\n      while (++index < length) {\n        var value = array[index],\n            current = iteratee(value);\n\n        if (current != null && (computed === undefined\n              ? (current === current && !isSymbol(current))\n              : comparator(current, computed)\n            )) {\n          var computed = current,\n              result = value;\n        }\n      }\n      return result;\n    }\n\n    /**\n     * The base implementation of `_.fill` without an iteratee call guard.\n     *\n     * @private\n     * @param {Array} array The array to fill.\n     * @param {*} value The value to fill `array` with.\n     * @param {number} [start=0] The start position.\n     * @param {number} [end=array.length] The end position.\n     * @returns {Array} Returns `array`.\n     */\n    function baseFill(array, value, start, end) {\n      var length = array.length;\n\n      start = toInteger(start);\n      if (start < 0) {\n        start = -start > length ? 0 : (length + start);\n      }\n      end = (end === undefined || end > length) ? length : toInteger(end);\n      if (end < 0) {\n        end += length;\n      }\n      end = start > end ? 0 : toLength(end);\n      while (start < end) {\n        array[start++] = value;\n      }\n      return array;\n    }\n\n    /**\n     * The base implementation of `_.filter` without support for iteratee shorthands.\n     *\n     * @private\n     * @param {Array|Object} collection The collection to iterate over.\n     * @param {Function} predicate The function invoked per iteration.\n     * @returns {Array} Returns the new filtered array.\n     */\n    function baseFilter(collection, predicate) {\n      var result = [];\n      baseEach(collection, function(value, index, collection) {\n        if (predicate(value, index, collection)) {\n          result.push(value);\n        }\n      });\n      return result;\n    }\n\n    /**\n     * The base implementation of `_.flatten` with support for restricting flattening.\n     *\n     * @private\n     * @param {Array} array The array to flatten.\n     * @param {number} depth The maximum recursion depth.\n     * @param {boolean} [predicate=isFlattenable] The function invoked per iteration.\n     * @param {boolean} [isStrict] Restrict to values that pass `predicate` checks.\n     * @param {Array} [result=[]] The initial result value.\n     * @returns {Array} Returns the new flattened array.\n     */\n    function baseFlatten(array, depth, predicate, isStrict, result) {\n      var index = -1,\n          length = array.length;\n\n      predicate || (predicate = isFlattenable);\n      result || (result = []);\n\n      while (++index < length) {\n        var value = array[index];\n        if (depth > 0 && predicate(value)) {\n          if (depth > 1) {\n            // Recursively flatten arrays (susceptible to call stack limits).\n            baseFlatten(value, depth - 1, predicate, isStrict, result);\n          } else {\n            arrayPush(result, value);\n          }\n        } else if (!isStrict) {\n          result[result.length] = value;\n        }\n      }\n      return result;\n    }\n\n    /**\n     * The base implementation of `baseForOwn` which iterates over `object`\n     * properties returned by `keysFunc` and invokes `iteratee` for each property.\n     * Iteratee functions may exit iteration early by explicitly returning `false`.\n     *\n     * @private\n     * @param {Object} object The object to iterate over.\n     * @param {Function} iteratee The function invoked per iteration.\n     * @param {Function} keysFunc The function to get the keys of `object`.\n     * @returns {Object} Returns `object`.\n     */\n    var baseFor = createBaseFor();\n\n    /**\n     * This function is like `baseFor` except that it iterates over properties\n     * in the opposite order.\n     *\n     * @private\n     * @param {Object} object The object to iterate over.\n     * @param {Function} iteratee The function invoked per iteration.\n     * @param {Function} keysFunc The function to get the keys of `object`.\n     * @returns {Object} Returns `object`.\n     */\n    var baseForRight = createBaseFor(true);\n\n    /**\n     * The base implementation of `_.forOwn` without support for iteratee shorthands.\n     *\n     * @private\n     * @param {Object} object The object to iterate over.\n     * @param {Function} iteratee The function invoked per iteration.\n     * @returns {Object} Returns `object`.\n     */\n    function baseForOwn(object, iteratee) {\n      return object && baseFor(object, iteratee, keys);\n    }\n\n    /**\n     * The base implementation of `_.forOwnRight` without support for iteratee shorthands.\n     *\n     * @private\n     * @param {Object} object The object to iterate over.\n     * @param {Function} iteratee The function invoked per iteration.\n     * @returns {Object} Returns `object`.\n     */\n    function baseForOwnRight(object, iteratee) {\n      return object && baseForRight(object, iteratee, keys);\n    }\n\n    /**\n     * The base implementation of `_.functions` which creates an array of\n     * `object` function property names filtered from `props`.\n     *\n     * @private\n     * @param {Object} object The object to inspect.\n     * @param {Array} props The property names to filter.\n     * @returns {Array} Returns the function names.\n     */\n    function baseFunctions(object, props) {\n      return arrayFilter(props, function(key) {\n        return isFunction(object[key]);\n      });\n    }\n\n    /**\n     * The base implementation of `_.get` without support for default values.\n     *\n     * @private\n     * @param {Object} object The object to query.\n     * @param {Array|string} path The path of the property to get.\n     * @returns {*} Returns the resolved value.\n     */\n    function baseGet(object, path) {\n      path = castPath(path, object);\n\n      var index = 0,\n          length = path.length;\n\n      while (object != null && index < length) {\n        object = object[toKey(path[index++])];\n      }\n      return (index && index == length) ? object : undefined;\n    }\n\n    /**\n     * The base implementation of `getAllKeys` and `getAllKeysIn` which uses\n     * `keysFunc` and `symbolsFunc` to get the enumerable property names and\n     * symbols of `object`.\n     *\n     * @private\n     * @param {Object} object The object to query.\n     * @param {Function} keysFunc The function to get the keys of `object`.\n     * @param {Function} symbolsFunc The function to get the symbols of `object`.\n     * @returns {Array} Returns the array of property names and symbols.\n     */\n    function baseGetAllKeys(object, keysFunc, symbolsFunc) {\n      var result = keysFunc(object);\n      return isArray(object) ? result : arrayPush(result, symbolsFunc(object));\n    }\n\n    /**\n     * The base implementation of `getTag` without fallbacks for buggy environments.\n     *\n     * @private\n     * @param {*} value The value to query.\n     * @returns {string} Returns the `toStringTag`.\n     */\n    function baseGetTag(value) {\n      if (value == null) {\n        return value === undefined ? undefinedTag : nullTag;\n      }\n      return (symToStringTag && symToStringTag in Object(value))\n        ? getRawTag(value)\n        : objectToString(value);\n    }\n\n    /**\n     * The base implementation of `_.gt` which doesn't coerce arguments.\n     *\n     * @private\n     * @param {*} value The value to compare.\n     * @param {*} other The other value to compare.\n     * @returns {boolean} Returns `true` if `value` is greater than `other`,\n     *  else `false`.\n     */\n    function baseGt(value, other) {\n      return value > other;\n    }\n\n    /**\n     * The base implementation of `_.has` without support for deep paths.\n     *\n     * @private\n     * @param {Object} [object] The object to query.\n     * @param {Array|string} key The key to check.\n     * @returns {boolean} Returns `true` if `key` exists, else `false`.\n     */\n    function baseHas(object, key) {\n      return object != null && hasOwnProperty.call(object, key);\n    }\n\n    /**\n     * The base implementation of `_.hasIn` without support for deep paths.\n     *\n     * @private\n     * @param {Object} [object] The object to query.\n     * @param {Array|string} key The key to check.\n     * @returns {boolean} Returns `true` if `key` exists, else `false`.\n     */\n    function baseHasIn(object, key) {\n      return object != null && key in Object(object);\n    }\n\n    /**\n     * The base implementation of `_.inRange` which doesn't coerce arguments.\n     *\n     * @private\n     * @param {number} number The number to check.\n     * @param {number} start The start of the range.\n     * @param {number} end The end of the range.\n     * @returns {boolean} Returns `true` if `number` is in the range, else `false`.\n     */\n    function baseInRange(number, start, end) {\n      return number >= nativeMin(start, end) && number < nativeMax(start, end);\n    }\n\n    /**\n     * The base implementation of methods like `_.intersection`, without support\n     * for iteratee shorthands, that accepts an array of arrays to inspect.\n     *\n     * @private\n     * @param {Array} arrays The arrays to inspect.\n     * @param {Function} [iteratee] The iteratee invoked per element.\n     * @param {Function} [comparator] The comparator invoked per element.\n     * @returns {Array} Returns the new array of shared values.\n     */\n    function baseIntersection(arrays, iteratee, comparator) {\n      var includes = comparator ? arrayIncludesWith : arrayIncludes,\n          length = arrays[0].length,\n          othLength = arrays.length,\n          othIndex = othLength,\n          caches = Array(othLength),\n          maxLength = Infinity,\n          result = [];\n\n      while (othIndex--) {\n        var array = arrays[othIndex];\n        if (othIndex && iteratee) {\n          array = arrayMap(array, baseUnary(iteratee));\n        }\n        maxLength = nativeMin(array.length, maxLength);\n        caches[othIndex] = !comparator && (iteratee || (length >= 120 && array.length >= 120))\n          ? new SetCache(othIndex && array)\n          : undefined;\n      }\n      array = arrays[0];\n\n      var index = -1,\n          seen = caches[0];\n\n      outer:\n      while (++index < length && result.length < maxLength) {\n        var value = array[index],\n            computed = iteratee ? iteratee(value) : value;\n\n        value = (comparator || value !== 0) ? value : 0;\n        if (!(seen\n              ? cacheHas(seen, computed)\n              : includes(result, computed, comparator)\n            )) {\n          othIndex = othLength;\n          while (--othIndex) {\n            var cache = caches[othIndex];\n            if (!(cache\n                  ? cacheHas(cache, computed)\n                  : includes(arrays[othIndex], computed, comparator))\n                ) {\n              continue outer;\n            }\n          }\n          if (seen) {\n            seen.push(computed);\n          }\n          result.push(value);\n        }\n      }\n      return result;\n    }\n\n    /**\n     * The base implementation of `_.invert` and `_.invertBy` which inverts\n     * `object` with values transformed by `iteratee` and set by `setter`.\n     *\n     * @private\n     * @param {Object} object The object to iterate over.\n     * @param {Function} setter The function to set `accumulator` values.\n     * @param {Function} iteratee The iteratee to transform values.\n     * @param {Object} accumulator The initial inverted object.\n     * @returns {Function} Returns `accumulator`.\n     */\n    function baseInverter(object, setter, iteratee, accumulator) {\n      baseForOwn(object, function(value, key, object) {\n        setter(accumulator, iteratee(value), key, object);\n      });\n      return accumulator;\n    }\n\n    /**\n     * The base implementation of `_.invoke` without support for individual\n     * method arguments.\n     *\n     * @private\n     * @param {Object} object The object to query.\n     * @param {Array|string} path The path of the method to invoke.\n     * @param {Array} args The arguments to invoke the method with.\n     * @returns {*} Returns the result of the invoked method.\n     */\n    function baseInvoke(object, path, args) {\n      path = castPath(path, object);\n      object = parent(object, path);\n      var func = object == null ? object : object[toKey(last(path))];\n      return func == null ? undefined : apply(func, object, args);\n    }\n\n    /**\n     * The base implementation of `_.isArguments`.\n     *\n     * @private\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n     */\n    function baseIsArguments(value) {\n      return isObjectLike(value) && baseGetTag(value) == argsTag;\n    }\n\n    /**\n     * The base implementation of `_.isArrayBuffer` without Node.js optimizations.\n     *\n     * @private\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is an array buffer, else `false`.\n     */\n    function baseIsArrayBuffer(value) {\n      return isObjectLike(value) && baseGetTag(value) == arrayBufferTag;\n    }\n\n    /**\n     * The base implementation of `_.isDate` without Node.js optimizations.\n     *\n     * @private\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is a date object, else `false`.\n     */\n    function baseIsDate(value) {\n      return isObjectLike(value) && baseGetTag(value) == dateTag;\n    }\n\n    /**\n     * The base implementation of `_.isEqual` which supports partial comparisons\n     * and tracks traversed objects.\n     *\n     * @private\n     * @param {*} value The value to compare.\n     * @param {*} other The other value to compare.\n     * @param {boolean} bitmask The bitmask flags.\n     *  1 - Unordered comparison\n     *  2 - Partial comparison\n     * @param {Function} [customizer] The function to customize comparisons.\n     * @param {Object} [stack] Tracks traversed `value` and `other` objects.\n     * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n     */\n    function baseIsEqual(value, other, bitmask, customizer, stack) {\n      if (value === other) {\n        return true;\n      }\n      if (value == null || other == null || (!isObjectLike(value) && !isObjectLike(other))) {\n        return value !== value && other !== other;\n      }\n      return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack);\n    }\n\n    /**\n     * A specialized version of `baseIsEqual` for arrays and objects which performs\n     * deep comparisons and tracks traversed objects enabling objects with circular\n     * references to be compared.\n     *\n     * @private\n     * @param {Object} object The object to compare.\n     * @param {Object} other The other object to compare.\n     * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n     * @param {Function} customizer The function to customize comparisons.\n     * @param {Function} equalFunc The function to determine equivalents of values.\n     * @param {Object} [stack] Tracks traversed `object` and `other` objects.\n     * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n     */\n    function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) {\n      var objIsArr = isArray(object),\n          othIsArr = isArray(other),\n          objTag = objIsArr ? arrayTag : getTag(object),\n          othTag = othIsArr ? arrayTag : getTag(other);\n\n      objTag = objTag == argsTag ? objectTag : objTag;\n      othTag = othTag == argsTag ? objectTag : othTag;\n\n      var objIsObj = objTag == objectTag,\n          othIsObj = othTag == objectTag,\n          isSameTag = objTag == othTag;\n\n      if (isSameTag && isBuffer(object)) {\n        if (!isBuffer(other)) {\n          return false;\n        }\n        objIsArr = true;\n        objIsObj = false;\n      }\n      if (isSameTag && !objIsObj) {\n        stack || (stack = new Stack);\n        return (objIsArr || isTypedArray(object))\n          ? equalArrays(object, other, bitmask, customizer, equalFunc, stack)\n          : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack);\n      }\n      if (!(bitmask & COMPARE_PARTIAL_FLAG)) {\n        var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'),\n            othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__');\n\n        if (objIsWrapped || othIsWrapped) {\n          var objUnwrapped = objIsWrapped ? object.value() : object,\n              othUnwrapped = othIsWrapped ? other.value() : other;\n\n          stack || (stack = new Stack);\n          return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack);\n        }\n      }\n      if (!isSameTag) {\n        return false;\n      }\n      stack || (stack = new Stack);\n      return equalObjects(object, other, bitmask, customizer, equalFunc, stack);\n    }\n\n    /**\n     * The base implementation of `_.isMap` without Node.js optimizations.\n     *\n     * @private\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is a map, else `false`.\n     */\n    function baseIsMap(value) {\n      return isObjectLike(value) && getTag(value) == mapTag;\n    }\n\n    /**\n     * The base implementation of `_.isMatch` without support for iteratee shorthands.\n     *\n     * @private\n     * @param {Object} object The object to inspect.\n     * @param {Object} source The object of property values to match.\n     * @param {Array} matchData The property names, values, and compare flags to match.\n     * @param {Function} [customizer] The function to customize comparisons.\n     * @returns {boolean} Returns `true` if `object` is a match, else `false`.\n     */\n    function baseIsMatch(object, source, matchData, customizer) {\n      var index = matchData.length,\n          length = index,\n          noCustomizer = !customizer;\n\n      if (object == null) {\n        return !length;\n      }\n      object = Object(object);\n      while (index--) {\n        var data = matchData[index];\n        if ((noCustomizer && data[2])\n              ? data[1] !== object[data[0]]\n              : !(data[0] in object)\n            ) {\n          return false;\n        }\n      }\n      while (++index < length) {\n        data = matchData[index];\n        var key = data[0],\n            objValue = object[key],\n            srcValue = data[1];\n\n        if (noCustomizer && data[2]) {\n          if (objValue === undefined && !(key in object)) {\n            return false;\n          }\n        } else {\n          var stack = new Stack;\n          if (customizer) {\n            var result = customizer(objValue, srcValue, key, object, source, stack);\n          }\n          if (!(result === undefined\n                ? baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG, customizer, stack)\n                : result\n              )) {\n            return false;\n          }\n        }\n      }\n      return true;\n    }\n\n    /**\n     * The base implementation of `_.isNative` without bad shim checks.\n     *\n     * @private\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is a native function,\n     *  else `false`.\n     */\n    function baseIsNative(value) {\n      if (!isObject(value) || isMasked(value)) {\n        return false;\n      }\n      var pattern = isFunction(value) ? reIsNative : reIsHostCtor;\n      return pattern.test(toSource(value));\n    }\n\n    /**\n     * The base implementation of `_.isRegExp` without Node.js optimizations.\n     *\n     * @private\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is a regexp, else `false`.\n     */\n    function baseIsRegExp(value) {\n      return isObjectLike(value) && baseGetTag(value) == regexpTag;\n    }\n\n    /**\n     * The base implementation of `_.isSet` without Node.js optimizations.\n     *\n     * @private\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is a set, else `false`.\n     */\n    function baseIsSet(value) {\n      return isObjectLike(value) && getTag(value) == setTag;\n    }\n\n    /**\n     * The base implementation of `_.isTypedArray` without Node.js optimizations.\n     *\n     * @private\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n     */\n    function baseIsTypedArray(value) {\n      return isObjectLike(value) &&\n        isLength(value.length) && !!typedArrayTags[baseGetTag(value)];\n    }\n\n    /**\n     * The base implementation of `_.iteratee`.\n     *\n     * @private\n     * @param {*} [value=_.identity] The value to convert to an iteratee.\n     * @returns {Function} Returns the iteratee.\n     */\n    function baseIteratee(value) {\n      // Don't store the `typeof` result in a variable to avoid a JIT bug in Safari 9.\n      // See https://bugs.webkit.org/show_bug.cgi?id=156034 for more details.\n      if (typeof value == 'function') {\n        return value;\n      }\n      if (value == null) {\n        return identity;\n      }\n      if (typeof value == 'object') {\n        return isArray(value)\n          ? baseMatchesProperty(value[0], value[1])\n          : baseMatches(value);\n      }\n      return property(value);\n    }\n\n    /**\n     * The base implementation of `_.keys` which doesn't treat sparse arrays as dense.\n     *\n     * @private\n     * @param {Object} object The object to query.\n     * @returns {Array} Returns the array of property names.\n     */\n    function baseKeys(object) {\n      if (!isPrototype(object)) {\n        return nativeKeys(object);\n      }\n      var result = [];\n      for (var key in Object(object)) {\n        if (hasOwnProperty.call(object, key) && key != 'constructor') {\n          result.push(key);\n        }\n      }\n      return result;\n    }\n\n    /**\n     * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.\n     *\n     * @private\n     * @param {Object} object The object to query.\n     * @returns {Array} Returns the array of property names.\n     */\n    function baseKeysIn(object) {\n      if (!isObject(object)) {\n        return nativeKeysIn(object);\n      }\n      var isProto = isPrototype(object),\n          result = [];\n\n      for (var key in object) {\n        if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) {\n          result.push(key);\n        }\n      }\n      return result;\n    }\n\n    /**\n     * The base implementation of `_.lt` which doesn't coerce arguments.\n     *\n     * @private\n     * @param {*} value The value to compare.\n     * @param {*} other The other value to compare.\n     * @returns {boolean} Returns `true` if `value` is less than `other`,\n     *  else `false`.\n     */\n    function baseLt(value, other) {\n      return value < other;\n    }\n\n    /**\n     * The base implementation of `_.map` without support for iteratee shorthands.\n     *\n     * @private\n     * @param {Array|Object} collection The collection to iterate over.\n     * @param {Function} iteratee The function invoked per iteration.\n     * @returns {Array} Returns the new mapped array.\n     */\n    function baseMap(collection, iteratee) {\n      var index = -1,\n          result = isArrayLike(collection) ? Array(collection.length) : [];\n\n      baseEach(collection, function(value, key, collection) {\n        result[++index] = iteratee(value, key, collection);\n      });\n      return result;\n    }\n\n    /**\n     * The base implementation of `_.matches` which doesn't clone `source`.\n     *\n     * @private\n     * @param {Object} source The object of property values to match.\n     * @returns {Function} Returns the new spec function.\n     */\n    function baseMatches(source) {\n      var matchData = getMatchData(source);\n      if (matchData.length == 1 && matchData[0][2]) {\n        return matchesStrictComparable(matchData[0][0], matchData[0][1]);\n      }\n      return function(object) {\n        return object === source || baseIsMatch(object, source, matchData);\n      };\n    }\n\n    /**\n     * The base implementation of `_.matchesProperty` which doesn't clone `srcValue`.\n     *\n     * @private\n     * @param {string} path The path of the property to get.\n     * @param {*} srcValue The value to match.\n     * @returns {Function} Returns the new spec function.\n     */\n    function baseMatchesProperty(path, srcValue) {\n      if (isKey(path) && isStrictComparable(srcValue)) {\n        return matchesStrictComparable(toKey(path), srcValue);\n      }\n      return function(object) {\n        var objValue = get(object, path);\n        return (objValue === undefined && objValue === srcValue)\n          ? hasIn(object, path)\n          : baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG);\n      };\n    }\n\n    /**\n     * The base implementation of `_.merge` without support for multiple sources.\n     *\n     * @private\n     * @param {Object} object The destination object.\n     * @param {Object} source The source object.\n     * @param {number} srcIndex The index of `source`.\n     * @param {Function} [customizer] The function to customize merged values.\n     * @param {Object} [stack] Tracks traversed source values and their merged\n     *  counterparts.\n     */\n    function baseMerge(object, source, srcIndex, customizer, stack) {\n      if (object === source) {\n        return;\n      }\n      baseFor(source, function(srcValue, key) {\n        stack || (stack = new Stack);\n        if (isObject(srcValue)) {\n          baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack);\n        }\n        else {\n          var newValue = customizer\n            ? customizer(safeGet(object, key), srcValue, (key + ''), object, source, stack)\n            : undefined;\n\n          if (newValue === undefined) {\n            newValue = srcValue;\n          }\n          assignMergeValue(object, key, newValue);\n        }\n      }, keysIn);\n    }\n\n    /**\n     * A specialized version of `baseMerge` for arrays and objects which performs\n     * deep merges and tracks traversed objects enabling objects with circular\n     * references to be merged.\n     *\n     * @private\n     * @param {Object} object The destination object.\n     * @param {Object} source The source object.\n     * @param {string} key The key of the value to merge.\n     * @param {number} srcIndex The index of `source`.\n     * @param {Function} mergeFunc The function to merge values.\n     * @param {Function} [customizer] The function to customize assigned values.\n     * @param {Object} [stack] Tracks traversed source values and their merged\n     *  counterparts.\n     */\n    function baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) {\n      var objValue = safeGet(object, key),\n          srcValue = safeGet(source, key),\n          stacked = stack.get(srcValue);\n\n      if (stacked) {\n        assignMergeValue(object, key, stacked);\n        return;\n      }\n      var newValue = customizer\n        ? customizer(objValue, srcValue, (key + ''), object, source, stack)\n        : undefined;\n\n      var isCommon = newValue === undefined;\n\n      if (isCommon) {\n        var isArr = isArray(srcValue),\n            isBuff = !isArr && isBuffer(srcValue),\n            isTyped = !isArr && !isBuff && isTypedArray(srcValue);\n\n        newValue = srcValue;\n        if (isArr || isBuff || isTyped) {\n          if (isArray(objValue)) {\n            newValue = objValue;\n          }\n          else if (isArrayLikeObject(objValue)) {\n            newValue = copyArray(objValue);\n          }\n          else if (isBuff) {\n            isCommon = false;\n            newValue = cloneBuffer(srcValue, true);\n          }\n          else if (isTyped) {\n            isCommon = false;\n            newValue = cloneTypedArray(srcValue, true);\n          }\n          else {\n            newValue = [];\n          }\n        }\n        else if (isPlainObject(srcValue) || isArguments(srcValue)) {\n          newValue = objValue;\n          if (isArguments(objValue)) {\n            newValue = toPlainObject(objValue);\n          }\n          else if (!isObject(objValue) || isFunction(objValue)) {\n            newValue = initCloneObject(srcValue);\n          }\n        }\n        else {\n          isCommon = false;\n        }\n      }\n      if (isCommon) {\n        // Recursively merge objects and arrays (susceptible to call stack limits).\n        stack.set(srcValue, newValue);\n        mergeFunc(newValue, srcValue, srcIndex, customizer, stack);\n        stack['delete'](srcValue);\n      }\n      assignMergeValue(object, key, newValue);\n    }\n\n    /**\n     * The base implementation of `_.nth` which doesn't coerce arguments.\n     *\n     * @private\n     * @param {Array} array The array to query.\n     * @param {number} n The index of the element to return.\n     * @returns {*} Returns the nth element of `array`.\n     */\n    function baseNth(array, n) {\n      var length = array.length;\n      if (!length) {\n        return;\n      }\n      n += n < 0 ? length : 0;\n      return isIndex(n, length) ? array[n] : undefined;\n    }\n\n    /**\n     * The base implementation of `_.orderBy` without param guards.\n     *\n     * @private\n     * @param {Array|Object} collection The collection to iterate over.\n     * @param {Function[]|Object[]|string[]} iteratees The iteratees to sort by.\n     * @param {string[]} orders The sort orders of `iteratees`.\n     * @returns {Array} Returns the new sorted array.\n     */\n    function baseOrderBy(collection, iteratees, orders) {\n      if (iteratees.length) {\n        iteratees = arrayMap(iteratees, function(iteratee) {\n          if (isArray(iteratee)) {\n            return function(value) {\n              return baseGet(value, iteratee.length === 1 ? iteratee[0] : iteratee);\n            }\n          }\n          return iteratee;\n        });\n      } else {\n        iteratees = [identity];\n      }\n\n      var index = -1;\n      iteratees = arrayMap(iteratees, baseUnary(getIteratee()));\n\n      var result = baseMap(collection, function(value, key, collection) {\n        var criteria = arrayMap(iteratees, function(iteratee) {\n          return iteratee(value);\n        });\n        return { 'criteria': criteria, 'index': ++index, 'value': value };\n      });\n\n      return baseSortBy(result, function(object, other) {\n        return compareMultiple(object, other, orders);\n      });\n    }\n\n    /**\n     * The base implementation of `_.pick` without support for individual\n     * property identifiers.\n     *\n     * @private\n     * @param {Object} object The source object.\n     * @param {string[]} paths The property paths to pick.\n     * @returns {Object} Returns the new object.\n     */\n    function basePick(object, paths) {\n      return basePickBy(object, paths, function(value, path) {\n        return hasIn(object, path);\n      });\n    }\n\n    /**\n     * The base implementation of  `_.pickBy` without support for iteratee shorthands.\n     *\n     * @private\n     * @param {Object} object The source object.\n     * @param {string[]} paths The property paths to pick.\n     * @param {Function} predicate The function invoked per property.\n     * @returns {Object} Returns the new object.\n     */\n    function basePickBy(object, paths, predicate) {\n      var index = -1,\n          length = paths.length,\n          result = {};\n\n      while (++index < length) {\n        var path = paths[index],\n            value = baseGet(object, path);\n\n        if (predicate(value, path)) {\n          baseSet(result, castPath(path, object), value);\n        }\n      }\n      return result;\n    }\n\n    /**\n     * A specialized version of `baseProperty` which supports deep paths.\n     *\n     * @private\n     * @param {Array|string} path The path of the property to get.\n     * @returns {Function} Returns the new accessor function.\n     */\n    function basePropertyDeep(path) {\n      return function(object) {\n        return baseGet(object, path);\n      };\n    }\n\n    /**\n     * The base implementation of `_.pullAllBy` without support for iteratee\n     * shorthands.\n     *\n     * @private\n     * @param {Array} array The array to modify.\n     * @param {Array} values The values to remove.\n     * @param {Function} [iteratee] The iteratee invoked per element.\n     * @param {Function} [comparator] The comparator invoked per element.\n     * @returns {Array} Returns `array`.\n     */\n    function basePullAll(array, values, iteratee, comparator) {\n      var indexOf = comparator ? baseIndexOfWith : baseIndexOf,\n          index = -1,\n          length = values.length,\n          seen = array;\n\n      if (array === values) {\n        values = copyArray(values);\n      }\n      if (iteratee) {\n        seen = arrayMap(array, baseUnary(iteratee));\n      }\n      while (++index < length) {\n        var fromIndex = 0,\n            value = values[index],\n            computed = iteratee ? iteratee(value) : value;\n\n        while ((fromIndex = indexOf(seen, computed, fromIndex, comparator)) > -1) {\n          if (seen !== array) {\n            splice.call(seen, fromIndex, 1);\n          }\n          splice.call(array, fromIndex, 1);\n        }\n      }\n      return array;\n    }\n\n    /**\n     * The base implementation of `_.pullAt` without support for individual\n     * indexes or capturing the removed elements.\n     *\n     * @private\n     * @param {Array} array The array to modify.\n     * @param {number[]} indexes The indexes of elements to remove.\n     * @returns {Array} Returns `array`.\n     */\n    function basePullAt(array, indexes) {\n      var length = array ? indexes.length : 0,\n          lastIndex = length - 1;\n\n      while (length--) {\n        var index = indexes[length];\n        if (length == lastIndex || index !== previous) {\n          var previous = index;\n          if (isIndex(index)) {\n            splice.call(array, index, 1);\n          } else {\n            baseUnset(array, index);\n          }\n        }\n      }\n      return array;\n    }\n\n    /**\n     * The base implementation of `_.random` without support for returning\n     * floating-point numbers.\n     *\n     * @private\n     * @param {number} lower The lower bound.\n     * @param {number} upper The upper bound.\n     * @returns {number} Returns the random number.\n     */\n    function baseRandom(lower, upper) {\n      return lower + nativeFloor(nativeRandom() * (upper - lower + 1));\n    }\n\n    /**\n     * The base implementation of `_.range` and `_.rangeRight` which doesn't\n     * coerce arguments.\n     *\n     * @private\n     * @param {number} start The start of the range.\n     * @param {number} end The end of the range.\n     * @param {number} step The value to increment or decrement by.\n     * @param {boolean} [fromRight] Specify iterating from right to left.\n     * @returns {Array} Returns the range of numbers.\n     */\n    function baseRange(start, end, step, fromRight) {\n      var index = -1,\n          length = nativeMax(nativeCeil((end - start) / (step || 1)), 0),\n          result = Array(length);\n\n      while (length--) {\n        result[fromRight ? length : ++index] = start;\n        start += step;\n      }\n      return result;\n    }\n\n    /**\n     * The base implementation of `_.repeat` which doesn't coerce arguments.\n     *\n     * @private\n     * @param {string} string The string to repeat.\n     * @param {number} n The number of times to repeat the string.\n     * @returns {string} Returns the repeated string.\n     */\n    function baseRepeat(string, n) {\n      var result = '';\n      if (!string || n < 1 || n > MAX_SAFE_INTEGER) {\n        return result;\n      }\n      // Leverage the exponentiation by squaring algorithm for a faster repeat.\n      // See https://en.wikipedia.org/wiki/Exponentiation_by_squaring for more details.\n      do {\n        if (n % 2) {\n          result += string;\n        }\n        n = nativeFloor(n / 2);\n        if (n) {\n          string += string;\n        }\n      } while (n);\n\n      return result;\n    }\n\n    /**\n     * The base implementation of `_.rest` which doesn't validate or coerce arguments.\n     *\n     * @private\n     * @param {Function} func The function to apply a rest parameter to.\n     * @param {number} [start=func.length-1] The start position of the rest parameter.\n     * @returns {Function} Returns the new function.\n     */\n    function baseRest(func, start) {\n      return setToString(overRest(func, start, identity), func + '');\n    }\n\n    /**\n     * The base implementation of `_.sample`.\n     *\n     * @private\n     * @param {Array|Object} collection The collection to sample.\n     * @returns {*} Returns the random element.\n     */\n    function baseSample(collection) {\n      return arraySample(values(collection));\n    }\n\n    /**\n     * The base implementation of `_.sampleSize` without param guards.\n     *\n     * @private\n     * @param {Array|Object} collection The collection to sample.\n     * @param {number} n The number of elements to sample.\n     * @returns {Array} Returns the random elements.\n     */\n    function baseSampleSize(collection, n) {\n      var array = values(collection);\n      return shuffleSelf(array, baseClamp(n, 0, array.length));\n    }\n\n    /**\n     * The base implementation of `_.set`.\n     *\n     * @private\n     * @param {Object} object The object to modify.\n     * @param {Array|string} path The path of the property to set.\n     * @param {*} value The value to set.\n     * @param {Function} [customizer] The function to customize path creation.\n     * @returns {Object} Returns `object`.\n     */\n    function baseSet(object, path, value, customizer) {\n      if (!isObject(object)) {\n        return object;\n      }\n      path = castPath(path, object);\n\n      var index = -1,\n          length = path.length,\n          lastIndex = length - 1,\n          nested = object;\n\n      while (nested != null && ++index < length) {\n        var key = toKey(path[index]),\n            newValue = value;\n\n        if (key === '__proto__' || key === 'constructor' || key === 'prototype') {\n          return object;\n        }\n\n        if (index != lastIndex) {\n          var objValue = nested[key];\n          newValue = customizer ? customizer(objValue, key, nested) : undefined;\n          if (newValue === undefined) {\n            newValue = isObject(objValue)\n              ? objValue\n              : (isIndex(path[index + 1]) ? [] : {});\n          }\n        }\n        assignValue(nested, key, newValue);\n        nested = nested[key];\n      }\n      return object;\n    }\n\n    /**\n     * The base implementation of `setData` without support for hot loop shorting.\n     *\n     * @private\n     * @param {Function} func The function to associate metadata with.\n     * @param {*} data The metadata.\n     * @returns {Function} Returns `func`.\n     */\n    var baseSetData = !metaMap ? identity : function(func, data) {\n      metaMap.set(func, data);\n      return func;\n    };\n\n    /**\n     * The base implementation of `setToString` without support for hot loop shorting.\n     *\n     * @private\n     * @param {Function} func The function to modify.\n     * @param {Function} string The `toString` result.\n     * @returns {Function} Returns `func`.\n     */\n    var baseSetToString = !defineProperty ? identity : function(func, string) {\n      return defineProperty(func, 'toString', {\n        'configurable': true,\n        'enumerable': false,\n        'value': constant(string),\n        'writable': true\n      });\n    };\n\n    /**\n     * The base implementation of `_.shuffle`.\n     *\n     * @private\n     * @param {Array|Object} collection The collection to shuffle.\n     * @returns {Array} Returns the new shuffled array.\n     */\n    function baseShuffle(collection) {\n      return shuffleSelf(values(collection));\n    }\n\n    /**\n     * The base implementation of `_.slice` without an iteratee call guard.\n     *\n     * @private\n     * @param {Array} array The array to slice.\n     * @param {number} [start=0] The start position.\n     * @param {number} [end=array.length] The end position.\n     * @returns {Array} Returns the slice of `array`.\n     */\n    function baseSlice(array, start, end) {\n      var index = -1,\n          length = array.length;\n\n      if (start < 0) {\n        start = -start > length ? 0 : (length + start);\n      }\n      end = end > length ? length : end;\n      if (end < 0) {\n        end += length;\n      }\n      length = start > end ? 0 : ((end - start) >>> 0);\n      start >>>= 0;\n\n      var result = Array(length);\n      while (++index < length) {\n        result[index] = array[index + start];\n      }\n      return result;\n    }\n\n    /**\n     * The base implementation of `_.some` without support for iteratee shorthands.\n     *\n     * @private\n     * @param {Array|Object} collection The collection to iterate over.\n     * @param {Function} predicate The function invoked per iteration.\n     * @returns {boolean} Returns `true` if any element passes the predicate check,\n     *  else `false`.\n     */\n    function baseSome(collection, predicate) {\n      var result;\n\n      baseEach(collection, function(value, index, collection) {\n        result = predicate(value, index, collection);\n        return !result;\n      });\n      return !!result;\n    }\n\n    /**\n     * The base implementation of `_.sortedIndex` and `_.sortedLastIndex` which\n     * performs a binary search of `array` to determine the index at which `value`\n     * should be inserted into `array` in order to maintain its sort order.\n     *\n     * @private\n     * @param {Array} array The sorted array to inspect.\n     * @param {*} value The value to evaluate.\n     * @param {boolean} [retHighest] Specify returning the highest qualified index.\n     * @returns {number} Returns the index at which `value` should be inserted\n     *  into `array`.\n     */\n    function baseSortedIndex(array, value, retHighest) {\n      var low = 0,\n          high = array == null ? low : array.length;\n\n      if (typeof value == 'number' && value === value && high <= HALF_MAX_ARRAY_LENGTH) {\n        while (low < high) {\n          var mid = (low + high) >>> 1,\n              computed = array[mid];\n\n          if (computed !== null && !isSymbol(computed) &&\n              (retHighest ? (computed <= value) : (computed < value))) {\n            low = mid + 1;\n          } else {\n            high = mid;\n          }\n        }\n        return high;\n      }\n      return baseSortedIndexBy(array, value, identity, retHighest);\n    }\n\n    /**\n     * The base implementation of `_.sortedIndexBy` and `_.sortedLastIndexBy`\n     * which invokes `iteratee` for `value` and each element of `array` to compute\n     * their sort ranking. The iteratee is invoked with one argument; (value).\n     *\n     * @private\n     * @param {Array} array The sorted array to inspect.\n     * @param {*} value The value to evaluate.\n     * @param {Function} iteratee The iteratee invoked per element.\n     * @param {boolean} [retHighest] Specify returning the highest qualified index.\n     * @returns {number} Returns the index at which `value` should be inserted\n     *  into `array`.\n     */\n    function baseSortedIndexBy(array, value, iteratee, retHighest) {\n      var low = 0,\n          high = array == null ? 0 : array.length;\n      if (high === 0) {\n        return 0;\n      }\n\n      value = iteratee(value);\n      var valIsNaN = value !== value,\n          valIsNull = value === null,\n          valIsSymbol = isSymbol(value),\n          valIsUndefined = value === undefined;\n\n      while (low < high) {\n        var mid = nativeFloor((low + high) / 2),\n            computed = iteratee(array[mid]),\n            othIsDefined = computed !== undefined,\n            othIsNull = computed === null,\n            othIsReflexive = computed === computed,\n            othIsSymbol = isSymbol(computed);\n\n        if (valIsNaN) {\n          var setLow = retHighest || othIsReflexive;\n        } else if (valIsUndefined) {\n          setLow = othIsReflexive && (retHighest || othIsDefined);\n        } else if (valIsNull) {\n          setLow = othIsReflexive && othIsDefined && (retHighest || !othIsNull);\n        } else if (valIsSymbol) {\n          setLow = othIsReflexive && othIsDefined && !othIsNull && (retHighest || !othIsSymbol);\n        } else if (othIsNull || othIsSymbol) {\n          setLow = false;\n        } else {\n          setLow = retHighest ? (computed <= value) : (computed < value);\n        }\n        if (setLow) {\n          low = mid + 1;\n        } else {\n          high = mid;\n        }\n      }\n      return nativeMin(high, MAX_ARRAY_INDEX);\n    }\n\n    /**\n     * The base implementation of `_.sortedUniq` and `_.sortedUniqBy` without\n     * support for iteratee shorthands.\n     *\n     * @private\n     * @param {Array} array The array to inspect.\n     * @param {Function} [iteratee] The iteratee invoked per element.\n     * @returns {Array} Returns the new duplicate free array.\n     */\n    function baseSortedUniq(array, iteratee) {\n      var index = -1,\n          length = array.length,\n          resIndex = 0,\n          result = [];\n\n      while (++index < length) {\n        var value = array[index],\n            computed = iteratee ? iteratee(value) : value;\n\n        if (!index || !eq(computed, seen)) {\n          var seen = computed;\n          result[resIndex++] = value === 0 ? 0 : value;\n        }\n      }\n      return result;\n    }\n\n    /**\n     * The base implementation of `_.toNumber` which doesn't ensure correct\n     * conversions of binary, hexadecimal, or octal string values.\n     *\n     * @private\n     * @param {*} value The value to process.\n     * @returns {number} Returns the number.\n     */\n    function baseToNumber(value) {\n      if (typeof value == 'number') {\n        return value;\n      }\n      if (isSymbol(value)) {\n        return NAN;\n      }\n      return +value;\n    }\n\n    /**\n     * The base implementation of `_.toString` which doesn't convert nullish\n     * values to empty strings.\n     *\n     * @private\n     * @param {*} value The value to process.\n     * @returns {string} Returns the string.\n     */\n    function baseToString(value) {\n      // Exit early for strings to avoid a performance hit in some environments.\n      if (typeof value == 'string') {\n        return value;\n      }\n      if (isArray(value)) {\n        // Recursively convert values (susceptible to call stack limits).\n        return arrayMap(value, baseToString) + '';\n      }\n      if (isSymbol(value)) {\n        return symbolToString ? symbolToString.call(value) : '';\n      }\n      var result = (value + '');\n      return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n    }\n\n    /**\n     * The base implementation of `_.uniqBy` without support for iteratee shorthands.\n     *\n     * @private\n     * @param {Array} array The array to inspect.\n     * @param {Function} [iteratee] The iteratee invoked per element.\n     * @param {Function} [comparator] The comparator invoked per element.\n     * @returns {Array} Returns the new duplicate free array.\n     */\n    function baseUniq(array, iteratee, comparator) {\n      var index = -1,\n          includes = arrayIncludes,\n          length = array.length,\n          isCommon = true,\n          result = [],\n          seen = result;\n\n      if (comparator) {\n        isCommon = false;\n        includes = arrayIncludesWith;\n      }\n      else if (length >= LARGE_ARRAY_SIZE) {\n        var set = iteratee ? null : createSet(array);\n        if (set) {\n          return setToArray(set);\n        }\n        isCommon = false;\n        includes = cacheHas;\n        seen = new SetCache;\n      }\n      else {\n        seen = iteratee ? [] : result;\n      }\n      outer:\n      while (++index < length) {\n        var value = array[index],\n            computed = iteratee ? iteratee(value) : value;\n\n        value = (comparator || value !== 0) ? value : 0;\n        if (isCommon && computed === computed) {\n          var seenIndex = seen.length;\n          while (seenIndex--) {\n            if (seen[seenIndex] === computed) {\n              continue outer;\n            }\n          }\n          if (iteratee) {\n            seen.push(computed);\n          }\n          result.push(value);\n        }\n        else if (!includes(seen, computed, comparator)) {\n          if (seen !== result) {\n            seen.push(computed);\n          }\n          result.push(value);\n        }\n      }\n      return result;\n    }\n\n    /**\n     * The base implementation of `_.unset`.\n     *\n     * @private\n     * @param {Object} object The object to modify.\n     * @param {Array|string} path The property path to unset.\n     * @returns {boolean} Returns `true` if the property is deleted, else `false`.\n     */\n    function baseUnset(object, path) {\n      path = castPath(path, object);\n      object = parent(object, path);\n      return object == null || delete object[toKey(last(path))];\n    }\n\n    /**\n     * The base implementation of `_.update`.\n     *\n     * @private\n     * @param {Object} object The object to modify.\n     * @param {Array|string} path The path of the property to update.\n     * @param {Function} updater The function to produce the updated value.\n     * @param {Function} [customizer] The function to customize path creation.\n     * @returns {Object} Returns `object`.\n     */\n    function baseUpdate(object, path, updater, customizer) {\n      return baseSet(object, path, updater(baseGet(object, path)), customizer);\n    }\n\n    /**\n     * The base implementation of methods like `_.dropWhile` and `_.takeWhile`\n     * without support for iteratee shorthands.\n     *\n     * @private\n     * @param {Array} array The array to query.\n     * @param {Function} predicate The function invoked per iteration.\n     * @param {boolean} [isDrop] Specify dropping elements instead of taking them.\n     * @param {boolean} [fromRight] Specify iterating from right to left.\n     * @returns {Array} Returns the slice of `array`.\n     */\n    function baseWhile(array, predicate, isDrop, fromRight) {\n      var length = array.length,\n          index = fromRight ? length : -1;\n\n      while ((fromRight ? index-- : ++index < length) &&\n        predicate(array[index], index, array)) {}\n\n      return isDrop\n        ? baseSlice(array, (fromRight ? 0 : index), (fromRight ? index + 1 : length))\n        : baseSlice(array, (fromRight ? index + 1 : 0), (fromRight ? length : index));\n    }\n\n    /**\n     * The base implementation of `wrapperValue` which returns the result of\n     * performing a sequence of actions on the unwrapped `value`, where each\n     * successive action is supplied the return value of the previous.\n     *\n     * @private\n     * @param {*} value The unwrapped value.\n     * @param {Array} actions Actions to perform to resolve the unwrapped value.\n     * @returns {*} Returns the resolved value.\n     */\n    function baseWrapperValue(value, actions) {\n      var result = value;\n      if (result instanceof LazyWrapper) {\n        result = result.value();\n      }\n      return arrayReduce(actions, function(result, action) {\n        return action.func.apply(action.thisArg, arrayPush([result], action.args));\n      }, result);\n    }\n\n    /**\n     * The base implementation of methods like `_.xor`, without support for\n     * iteratee shorthands, that accepts an array of arrays to inspect.\n     *\n     * @private\n     * @param {Array} arrays The arrays to inspect.\n     * @param {Function} [iteratee] The iteratee invoked per element.\n     * @param {Function} [comparator] The comparator invoked per element.\n     * @returns {Array} Returns the new array of values.\n     */\n    function baseXor(arrays, iteratee, comparator) {\n      var length = arrays.length;\n      if (length < 2) {\n        return length ? baseUniq(arrays[0]) : [];\n      }\n      var index = -1,\n          result = Array(length);\n\n      while (++index < length) {\n        var array = arrays[index],\n            othIndex = -1;\n\n        while (++othIndex < length) {\n          if (othIndex != index) {\n            result[index] = baseDifference(result[index] || array, arrays[othIndex], iteratee, comparator);\n          }\n        }\n      }\n      return baseUniq(baseFlatten(result, 1), iteratee, comparator);\n    }\n\n    /**\n     * This base implementation of `_.zipObject` which assigns values using `assignFunc`.\n     *\n     * @private\n     * @param {Array} props The property identifiers.\n     * @param {Array} values The property values.\n     * @param {Function} assignFunc The function to assign values.\n     * @returns {Object} Returns the new object.\n     */\n    function baseZipObject(props, values, assignFunc) {\n      var index = -1,\n          length = props.length,\n          valsLength = values.length,\n          result = {};\n\n      while (++index < length) {\n        var value = index < valsLength ? values[index] : undefined;\n        assignFunc(result, props[index], value);\n      }\n      return result;\n    }\n\n    /**\n     * Casts `value` to an empty array if it's not an array like object.\n     *\n     * @private\n     * @param {*} value The value to inspect.\n     * @returns {Array|Object} Returns the cast array-like object.\n     */\n    function castArrayLikeObject(value) {\n      return isArrayLikeObject(value) ? value : [];\n    }\n\n    /**\n     * Casts `value` to `identity` if it's not a function.\n     *\n     * @private\n     * @param {*} value The value to inspect.\n     * @returns {Function} Returns cast function.\n     */\n    function castFunction(value) {\n      return typeof value == 'function' ? value : identity;\n    }\n\n    /**\n     * Casts `value` to a path array if it's not one.\n     *\n     * @private\n     * @param {*} value The value to inspect.\n     * @param {Object} [object] The object to query keys on.\n     * @returns {Array} Returns the cast property path array.\n     */\n    function castPath(value, object) {\n      if (isArray(value)) {\n        return value;\n      }\n      return isKey(value, object) ? [value] : stringToPath(toString(value));\n    }\n\n    /**\n     * A `baseRest` alias which can be replaced with `identity` by module\n     * replacement plugins.\n     *\n     * @private\n     * @type {Function}\n     * @param {Function} func The function to apply a rest parameter to.\n     * @returns {Function} Returns the new function.\n     */\n    var castRest = baseRest;\n\n    /**\n     * Casts `array` to a slice if it's needed.\n     *\n     * @private\n     * @param {Array} array The array to inspect.\n     * @param {number} start The start position.\n     * @param {number} [end=array.length] The end position.\n     * @returns {Array} Returns the cast slice.\n     */\n    function castSlice(array, start, end) {\n      var length = array.length;\n      end = end === undefined ? length : end;\n      return (!start && end >= length) ? array : baseSlice(array, start, end);\n    }\n\n    /**\n     * A simple wrapper around the global [`clearTimeout`](https://mdn.io/clearTimeout).\n     *\n     * @private\n     * @param {number|Object} id The timer id or timeout object of the timer to clear.\n     */\n    var clearTimeout = ctxClearTimeout || function(id) {\n      return root.clearTimeout(id);\n    };\n\n    /**\n     * Creates a clone of  `buffer`.\n     *\n     * @private\n     * @param {Buffer} buffer The buffer to clone.\n     * @param {boolean} [isDeep] Specify a deep clone.\n     * @returns {Buffer} Returns the cloned buffer.\n     */\n    function cloneBuffer(buffer, isDeep) {\n      if (isDeep) {\n        return buffer.slice();\n      }\n      var length = buffer.length,\n          result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);\n\n      buffer.copy(result);\n      return result;\n    }\n\n    /**\n     * Creates a clone of `arrayBuffer`.\n     *\n     * @private\n     * @param {ArrayBuffer} arrayBuffer The array buffer to clone.\n     * @returns {ArrayBuffer} Returns the cloned array buffer.\n     */\n    function cloneArrayBuffer(arrayBuffer) {\n      var result = new arrayBuffer.constructor(arrayBuffer.byteLength);\n      new Uint8Array(result).set(new Uint8Array(arrayBuffer));\n      return result;\n    }\n\n    /**\n     * Creates a clone of `dataView`.\n     *\n     * @private\n     * @param {Object} dataView The data view to clone.\n     * @param {boolean} [isDeep] Specify a deep clone.\n     * @returns {Object} Returns the cloned data view.\n     */\n    function cloneDataView(dataView, isDeep) {\n      var buffer = isDeep ? cloneArrayBuffer(dataView.buffer) : dataView.buffer;\n      return new dataView.constructor(buffer, dataView.byteOffset, dataView.byteLength);\n    }\n\n    /**\n     * Creates a clone of `regexp`.\n     *\n     * @private\n     * @param {Object} regexp The regexp to clone.\n     * @returns {Object} Returns the cloned regexp.\n     */\n    function cloneRegExp(regexp) {\n      var result = new regexp.constructor(regexp.source, reFlags.exec(regexp));\n      result.lastIndex = regexp.lastIndex;\n      return result;\n    }\n\n    /**\n     * Creates a clone of the `symbol` object.\n     *\n     * @private\n     * @param {Object} symbol The symbol object to clone.\n     * @returns {Object} Returns the cloned symbol object.\n     */\n    function cloneSymbol(symbol) {\n      return symbolValueOf ? Object(symbolValueOf.call(symbol)) : {};\n    }\n\n    /**\n     * Creates a clone of `typedArray`.\n     *\n     * @private\n     * @param {Object} typedArray The typed array to clone.\n     * @param {boolean} [isDeep] Specify a deep clone.\n     * @returns {Object} Returns the cloned typed array.\n     */\n    function cloneTypedArray(typedArray, isDeep) {\n      var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer;\n      return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);\n    }\n\n    /**\n     * Compares values to sort them in ascending order.\n     *\n     * @private\n     * @param {*} value The value to compare.\n     * @param {*} other The other value to compare.\n     * @returns {number} Returns the sort order indicator for `value`.\n     */\n    function compareAscending(value, other) {\n      if (value !== other) {\n        var valIsDefined = value !== undefined,\n            valIsNull = value === null,\n            valIsReflexive = value === value,\n            valIsSymbol = isSymbol(value);\n\n        var othIsDefined = other !== undefined,\n            othIsNull = other === null,\n            othIsReflexive = other === other,\n            othIsSymbol = isSymbol(other);\n\n        if ((!othIsNull && !othIsSymbol && !valIsSymbol && value > other) ||\n            (valIsSymbol && othIsDefined && othIsReflexive && !othIsNull && !othIsSymbol) ||\n            (valIsNull && othIsDefined && othIsReflexive) ||\n            (!valIsDefined && othIsReflexive) ||\n            !valIsReflexive) {\n          return 1;\n        }\n        if ((!valIsNull && !valIsSymbol && !othIsSymbol && value < other) ||\n            (othIsSymbol && valIsDefined && valIsReflexive && !valIsNull && !valIsSymbol) ||\n            (othIsNull && valIsDefined && valIsReflexive) ||\n            (!othIsDefined && valIsReflexive) ||\n            !othIsReflexive) {\n          return -1;\n        }\n      }\n      return 0;\n    }\n\n    /**\n     * Used by `_.orderBy` to compare multiple properties of a value to another\n     * and stable sort them.\n     *\n     * If `orders` is unspecified, all values are sorted in ascending order. Otherwise,\n     * specify an order of \"desc\" for descending or \"asc\" for ascending sort order\n     * of corresponding values.\n     *\n     * @private\n     * @param {Object} object The object to compare.\n     * @param {Object} other The other object to compare.\n     * @param {boolean[]|string[]} orders The order to sort by for each property.\n     * @returns {number} Returns the sort order indicator for `object`.\n     */\n    function compareMultiple(object, other, orders) {\n      var index = -1,\n          objCriteria = object.criteria,\n          othCriteria = other.criteria,\n          length = objCriteria.length,\n          ordersLength = orders.length;\n\n      while (++index < length) {\n        var result = compareAscending(objCriteria[index], othCriteria[index]);\n        if (result) {\n          if (index >= ordersLength) {\n            return result;\n          }\n          var order = orders[index];\n          return result * (order == 'desc' ? -1 : 1);\n        }\n      }\n      // Fixes an `Array#sort` bug in the JS engine embedded in Adobe applications\n      // that causes it, under certain circumstances, to provide the same value for\n      // `object` and `other`. See https://github.com/jashkenas/underscore/pull/1247\n      // for more details.\n      //\n      // This also ensures a stable sort in V8 and other engines.\n      // See https://bugs.chromium.org/p/v8/issues/detail?id=90 for more details.\n      return object.index - other.index;\n    }\n\n    /**\n     * Creates an array that is the composition of partially applied arguments,\n     * placeholders, and provided arguments into a single array of arguments.\n     *\n     * @private\n     * @param {Array} args The provided arguments.\n     * @param {Array} partials The arguments to prepend to those provided.\n     * @param {Array} holders The `partials` placeholder indexes.\n     * @params {boolean} [isCurried] Specify composing for a curried function.\n     * @returns {Array} Returns the new array of composed arguments.\n     */\n    function composeArgs(args, partials, holders, isCurried) {\n      var argsIndex = -1,\n          argsLength = args.length,\n          holdersLength = holders.length,\n          leftIndex = -1,\n          leftLength = partials.length,\n          rangeLength = nativeMax(argsLength - holdersLength, 0),\n          result = Array(leftLength + rangeLength),\n          isUncurried = !isCurried;\n\n      while (++leftIndex < leftLength) {\n        result[leftIndex] = partials[leftIndex];\n      }\n      while (++argsIndex < holdersLength) {\n        if (isUncurried || argsIndex < argsLength) {\n          result[holders[argsIndex]] = args[argsIndex];\n        }\n      }\n      while (rangeLength--) {\n        result[leftIndex++] = args[argsIndex++];\n      }\n      return result;\n    }\n\n    /**\n     * This function is like `composeArgs` except that the arguments composition\n     * is tailored for `_.partialRight`.\n     *\n     * @private\n     * @param {Array} args The provided arguments.\n     * @param {Array} partials The arguments to append to those provided.\n     * @param {Array} holders The `partials` placeholder indexes.\n     * @params {boolean} [isCurried] Specify composing for a curried function.\n     * @returns {Array} Returns the new array of composed arguments.\n     */\n    function composeArgsRight(args, partials, holders, isCurried) {\n      var argsIndex = -1,\n          argsLength = args.length,\n          holdersIndex = -1,\n          holdersLength = holders.length,\n          rightIndex = -1,\n          rightLength = partials.length,\n          rangeLength = nativeMax(argsLength - holdersLength, 0),\n          result = Array(rangeLength + rightLength),\n          isUncurried = !isCurried;\n\n      while (++argsIndex < rangeLength) {\n        result[argsIndex] = args[argsIndex];\n      }\n      var offset = argsIndex;\n      while (++rightIndex < rightLength) {\n        result[offset + rightIndex] = partials[rightIndex];\n      }\n      while (++holdersIndex < holdersLength) {\n        if (isUncurried || argsIndex < argsLength) {\n          result[offset + holders[holdersIndex]] = args[argsIndex++];\n        }\n      }\n      return result;\n    }\n\n    /**\n     * Copies the values of `source` to `array`.\n     *\n     * @private\n     * @param {Array} source The array to copy values from.\n     * @param {Array} [array=[]] The array to copy values to.\n     * @returns {Array} Returns `array`.\n     */\n    function copyArray(source, array) {\n      var index = -1,\n          length = source.length;\n\n      array || (array = Array(length));\n      while (++index < length) {\n        array[index] = source[index];\n      }\n      return array;\n    }\n\n    /**\n     * Copies properties of `source` to `object`.\n     *\n     * @private\n     * @param {Object} source The object to copy properties from.\n     * @param {Array} props The property identifiers to copy.\n     * @param {Object} [object={}] The object to copy properties to.\n     * @param {Function} [customizer] The function to customize copied values.\n     * @returns {Object} Returns `object`.\n     */\n    function copyObject(source, props, object, customizer) {\n      var isNew = !object;\n      object || (object = {});\n\n      var index = -1,\n          length = props.length;\n\n      while (++index < length) {\n        var key = props[index];\n\n        var newValue = customizer\n          ? customizer(object[key], source[key], key, object, source)\n          : undefined;\n\n        if (newValue === undefined) {\n          newValue = source[key];\n        }\n        if (isNew) {\n          baseAssignValue(object, key, newValue);\n        } else {\n          assignValue(object, key, newValue);\n        }\n      }\n      return object;\n    }\n\n    /**\n     * Copies own symbols of `source` to `object`.\n     *\n     * @private\n     * @param {Object} source The object to copy symbols from.\n     * @param {Object} [object={}] The object to copy symbols to.\n     * @returns {Object} Returns `object`.\n     */\n    function copySymbols(source, object) {\n      return copyObject(source, getSymbols(source), object);\n    }\n\n    /**\n     * Copies own and inherited symbols of `source` to `object`.\n     *\n     * @private\n     * @param {Object} source The object to copy symbols from.\n     * @param {Object} [object={}] The object to copy symbols to.\n     * @returns {Object} Returns `object`.\n     */\n    function copySymbolsIn(source, object) {\n      return copyObject(source, getSymbolsIn(source), object);\n    }\n\n    /**\n     * Creates a function like `_.groupBy`.\n     *\n     * @private\n     * @param {Function} setter The function to set accumulator values.\n     * @param {Function} [initializer] The accumulator object initializer.\n     * @returns {Function} Returns the new aggregator function.\n     */\n    function createAggregator(setter, initializer) {\n      return function(collection, iteratee) {\n        var func = isArray(collection) ? arrayAggregator : baseAggregator,\n            accumulator = initializer ? initializer() : {};\n\n        return func(collection, setter, getIteratee(iteratee, 2), accumulator);\n      };\n    }\n\n    /**\n     * Creates a function like `_.assign`.\n     *\n     * @private\n     * @param {Function} assigner The function to assign values.\n     * @returns {Function} Returns the new assigner function.\n     */\n    function createAssigner(assigner) {\n      return baseRest(function(object, sources) {\n        var index = -1,\n            length = sources.length,\n            customizer = length > 1 ? sources[length - 1] : undefined,\n            guard = length > 2 ? sources[2] : undefined;\n\n        customizer = (assigner.length > 3 && typeof customizer == 'function')\n          ? (length--, customizer)\n          : undefined;\n\n        if (guard && isIterateeCall(sources[0], sources[1], guard)) {\n          customizer = length < 3 ? undefined : customizer;\n          length = 1;\n        }\n        object = Object(object);\n        while (++index < length) {\n          var source = sources[index];\n          if (source) {\n            assigner(object, source, index, customizer);\n          }\n        }\n        return object;\n      });\n    }\n\n    /**\n     * Creates a `baseEach` or `baseEachRight` function.\n     *\n     * @private\n     * @param {Function} eachFunc The function to iterate over a collection.\n     * @param {boolean} [fromRight] Specify iterating from right to left.\n     * @returns {Function} Returns the new base function.\n     */\n    function createBaseEach(eachFunc, fromRight) {\n      return function(collection, iteratee) {\n        if (collection == null) {\n          return collection;\n        }\n        if (!isArrayLike(collection)) {\n          return eachFunc(collection, iteratee);\n        }\n        var length = collection.length,\n            index = fromRight ? length : -1,\n            iterable = Object(collection);\n\n        while ((fromRight ? index-- : ++index < length)) {\n          if (iteratee(iterable[index], index, iterable) === false) {\n            break;\n          }\n        }\n        return collection;\n      };\n    }\n\n    /**\n     * Creates a base function for methods like `_.forIn` and `_.forOwn`.\n     *\n     * @private\n     * @param {boolean} [fromRight] Specify iterating from right to left.\n     * @returns {Function} Returns the new base function.\n     */\n    function createBaseFor(fromRight) {\n      return function(object, iteratee, keysFunc) {\n        var index = -1,\n            iterable = Object(object),\n            props = keysFunc(object),\n            length = props.length;\n\n        while (length--) {\n          var key = props[fromRight ? length : ++index];\n          if (iteratee(iterable[key], key, iterable) === false) {\n            break;\n          }\n        }\n        return object;\n      };\n    }\n\n    /**\n     * Creates a function that wraps `func` to invoke it with the optional `this`\n     * binding of `thisArg`.\n     *\n     * @private\n     * @param {Function} func The function to wrap.\n     * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n     * @param {*} [thisArg] The `this` binding of `func`.\n     * @returns {Function} Returns the new wrapped function.\n     */\n    function createBind(func, bitmask, thisArg) {\n      var isBind = bitmask & WRAP_BIND_FLAG,\n          Ctor = createCtor(func);\n\n      function wrapper() {\n        var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func;\n        return fn.apply(isBind ? thisArg : this, arguments);\n      }\n      return wrapper;\n    }\n\n    /**\n     * Creates a function like `_.lowerFirst`.\n     *\n     * @private\n     * @param {string} methodName The name of the `String` case method to use.\n     * @returns {Function} Returns the new case function.\n     */\n    function createCaseFirst(methodName) {\n      return function(string) {\n        string = toString(string);\n\n        var strSymbols = hasUnicode(string)\n          ? stringToArray(string)\n          : undefined;\n\n        var chr = strSymbols\n          ? strSymbols[0]\n          : string.charAt(0);\n\n        var trailing = strSymbols\n          ? castSlice(strSymbols, 1).join('')\n          : string.slice(1);\n\n        return chr[methodName]() + trailing;\n      };\n    }\n\n    /**\n     * Creates a function like `_.camelCase`.\n     *\n     * @private\n     * @param {Function} callback The function to combine each word.\n     * @returns {Function} Returns the new compounder function.\n     */\n    function createCompounder(callback) {\n      return function(string) {\n        return arrayReduce(words(deburr(string).replace(reApos, '')), callback, '');\n      };\n    }\n\n    /**\n     * Creates a function that produces an instance of `Ctor` regardless of\n     * whether it was invoked as part of a `new` expression or by `call` or `apply`.\n     *\n     * @private\n     * @param {Function} Ctor The constructor to wrap.\n     * @returns {Function} Returns the new wrapped function.\n     */\n    function createCtor(Ctor) {\n      return function() {\n        // Use a `switch` statement to work with class constructors. See\n        // http://ecma-international.org/ecma-262/7.0/#sec-ecmascript-function-objects-call-thisargument-argumentslist\n        // for more details.\n        var args = arguments;\n        switch (args.length) {\n          case 0: return new Ctor;\n          case 1: return new Ctor(args[0]);\n          case 2: return new Ctor(args[0], args[1]);\n          case 3: return new Ctor(args[0], args[1], args[2]);\n          case 4: return new Ctor(args[0], args[1], args[2], args[3]);\n          case 5: return new Ctor(args[0], args[1], args[2], args[3], args[4]);\n          case 6: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5]);\n          case 7: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5], args[6]);\n        }\n        var thisBinding = baseCreate(Ctor.prototype),\n            result = Ctor.apply(thisBinding, args);\n\n        // Mimic the constructor's `return` behavior.\n        // See https://es5.github.io/#x13.2.2 for more details.\n        return isObject(result) ? result : thisBinding;\n      };\n    }\n\n    /**\n     * Creates a function that wraps `func` to enable currying.\n     *\n     * @private\n     * @param {Function} func The function to wrap.\n     * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n     * @param {number} arity The arity of `func`.\n     * @returns {Function} Returns the new wrapped function.\n     */\n    function createCurry(func, bitmask, arity) {\n      var Ctor = createCtor(func);\n\n      function wrapper() {\n        var length = arguments.length,\n            args = Array(length),\n            index = length,\n            placeholder = getHolder(wrapper);\n\n        while (index--) {\n          args[index] = arguments[index];\n        }\n        var holders = (length < 3 && args[0] !== placeholder && args[length - 1] !== placeholder)\n          ? []\n          : replaceHolders(args, placeholder);\n\n        length -= holders.length;\n        if (length < arity) {\n          return createRecurry(\n            func, bitmask, createHybrid, wrapper.placeholder, undefined,\n            args, holders, undefined, undefined, arity - length);\n        }\n        var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func;\n        return apply(fn, this, args);\n      }\n      return wrapper;\n    }\n\n    /**\n     * Creates a `_.find` or `_.findLast` function.\n     *\n     * @private\n     * @param {Function} findIndexFunc The function to find the collection index.\n     * @returns {Function} Returns the new find function.\n     */\n    function createFind(findIndexFunc) {\n      return function(collection, predicate, fromIndex) {\n        var iterable = Object(collection);\n        if (!isArrayLike(collection)) {\n          var iteratee = getIteratee(predicate, 3);\n          collection = keys(collection);\n          predicate = function(key) { return iteratee(iterable[key], key, iterable); };\n        }\n        var index = findIndexFunc(collection, predicate, fromIndex);\n        return index > -1 ? iterable[iteratee ? collection[index] : index] : undefined;\n      };\n    }\n\n    /**\n     * Creates a `_.flow` or `_.flowRight` function.\n     *\n     * @private\n     * @param {boolean} [fromRight] Specify iterating from right to left.\n     * @returns {Function} Returns the new flow function.\n     */\n    function createFlow(fromRight) {\n      return flatRest(function(funcs) {\n        var length = funcs.length,\n            index = length,\n            prereq = LodashWrapper.prototype.thru;\n\n        if (fromRight) {\n          funcs.reverse();\n        }\n        while (index--) {\n          var func = funcs[index];\n          if (typeof func != 'function') {\n            throw new TypeError(FUNC_ERROR_TEXT);\n          }\n          if (prereq && !wrapper && getFuncName(func) == 'wrapper') {\n            var wrapper = new LodashWrapper([], true);\n          }\n        }\n        index = wrapper ? index : length;\n        while (++index < length) {\n          func = funcs[index];\n\n          var funcName = getFuncName(func),\n              data = funcName == 'wrapper' ? getData(func) : undefined;\n\n          if (data && isLaziable(data[0]) &&\n                data[1] == (WRAP_ARY_FLAG | WRAP_CURRY_FLAG | WRAP_PARTIAL_FLAG | WRAP_REARG_FLAG) &&\n                !data[4].length && data[9] == 1\n              ) {\n            wrapper = wrapper[getFuncName(data[0])].apply(wrapper, data[3]);\n          } else {\n            wrapper = (func.length == 1 && isLaziable(func))\n              ? wrapper[funcName]()\n              : wrapper.thru(func);\n          }\n        }\n        return function() {\n          var args = arguments,\n              value = args[0];\n\n          if (wrapper && args.length == 1 && isArray(value)) {\n            return wrapper.plant(value).value();\n          }\n          var index = 0,\n              result = length ? funcs[index].apply(this, args) : value;\n\n          while (++index < length) {\n            result = funcs[index].call(this, result);\n          }\n          return result;\n        };\n      });\n    }\n\n    /**\n     * Creates a function that wraps `func` to invoke it with optional `this`\n     * binding of `thisArg`, partial application, and currying.\n     *\n     * @private\n     * @param {Function|string} func The function or method name to wrap.\n     * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n     * @param {*} [thisArg] The `this` binding of `func`.\n     * @param {Array} [partials] The arguments to prepend to those provided to\n     *  the new function.\n     * @param {Array} [holders] The `partials` placeholder indexes.\n     * @param {Array} [partialsRight] The arguments to append to those provided\n     *  to the new function.\n     * @param {Array} [holdersRight] The `partialsRight` placeholder indexes.\n     * @param {Array} [argPos] The argument positions of the new function.\n     * @param {number} [ary] The arity cap of `func`.\n     * @param {number} [arity] The arity of `func`.\n     * @returns {Function} Returns the new wrapped function.\n     */\n    function createHybrid(func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, argPos, ary, arity) {\n      var isAry = bitmask & WRAP_ARY_FLAG,\n          isBind = bitmask & WRAP_BIND_FLAG,\n          isBindKey = bitmask & WRAP_BIND_KEY_FLAG,\n          isCurried = bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG),\n          isFlip = bitmask & WRAP_FLIP_FLAG,\n          Ctor = isBindKey ? undefined : createCtor(func);\n\n      function wrapper() {\n        var length = arguments.length,\n            args = Array(length),\n            index = length;\n\n        while (index--) {\n          args[index] = arguments[index];\n        }\n        if (isCurried) {\n          var placeholder = getHolder(wrapper),\n              holdersCount = countHolders(args, placeholder);\n        }\n        if (partials) {\n          args = composeArgs(args, partials, holders, isCurried);\n        }\n        if (partialsRight) {\n          args = composeArgsRight(args, partialsRight, holdersRight, isCurried);\n        }\n        length -= holdersCount;\n        if (isCurried && length < arity) {\n          var newHolders = replaceHolders(args, placeholder);\n          return createRecurry(\n            func, bitmask, createHybrid, wrapper.placeholder, thisArg,\n            args, newHolders, argPos, ary, arity - length\n          );\n        }\n        var thisBinding = isBind ? thisArg : this,\n            fn = isBindKey ? thisBinding[func] : func;\n\n        length = args.length;\n        if (argPos) {\n          args = reorder(args, argPos);\n        } else if (isFlip && length > 1) {\n          args.reverse();\n        }\n        if (isAry && ary < length) {\n          args.length = ary;\n        }\n        if (this && this !== root && this instanceof wrapper) {\n          fn = Ctor || createCtor(fn);\n        }\n        return fn.apply(thisBinding, args);\n      }\n      return wrapper;\n    }\n\n    /**\n     * Creates a function like `_.invertBy`.\n     *\n     * @private\n     * @param {Function} setter The function to set accumulator values.\n     * @param {Function} toIteratee The function to resolve iteratees.\n     * @returns {Function} Returns the new inverter function.\n     */\n    function createInverter(setter, toIteratee) {\n      return function(object, iteratee) {\n        return baseInverter(object, setter, toIteratee(iteratee), {});\n      };\n    }\n\n    /**\n     * Creates a function that performs a mathematical operation on two values.\n     *\n     * @private\n     * @param {Function} operator The function to perform the operation.\n     * @param {number} [defaultValue] The value used for `undefined` arguments.\n     * @returns {Function} Returns the new mathematical operation function.\n     */\n    function createMathOperation(operator, defaultValue) {\n      return function(value, other) {\n        var result;\n        if (value === undefined && other === undefined) {\n          return defaultValue;\n        }\n        if (value !== undefined) {\n          result = value;\n        }\n        if (other !== undefined) {\n          if (result === undefined) {\n            return other;\n          }\n          if (typeof value == 'string' || typeof other == 'string') {\n            value = baseToString(value);\n            other = baseToString(other);\n          } else {\n            value = baseToNumber(value);\n            other = baseToNumber(other);\n          }\n          result = operator(value, other);\n        }\n        return result;\n      };\n    }\n\n    /**\n     * Creates a function like `_.over`.\n     *\n     * @private\n     * @param {Function} arrayFunc The function to iterate over iteratees.\n     * @returns {Function} Returns the new over function.\n     */\n    function createOver(arrayFunc) {\n      return flatRest(function(iteratees) {\n        iteratees = arrayMap(iteratees, baseUnary(getIteratee()));\n        return baseRest(function(args) {\n          var thisArg = this;\n          return arrayFunc(iteratees, function(iteratee) {\n            return apply(iteratee, thisArg, args);\n          });\n        });\n      });\n    }\n\n    /**\n     * Creates the padding for `string` based on `length`. The `chars` string\n     * is truncated if the number of characters exceeds `length`.\n     *\n     * @private\n     * @param {number} length The padding length.\n     * @param {string} [chars=' '] The string used as padding.\n     * @returns {string} Returns the padding for `string`.\n     */\n    function createPadding(length, chars) {\n      chars = chars === undefined ? ' ' : baseToString(chars);\n\n      var charsLength = chars.length;\n      if (charsLength < 2) {\n        return charsLength ? baseRepeat(chars, length) : chars;\n      }\n      var result = baseRepeat(chars, nativeCeil(length / stringSize(chars)));\n      return hasUnicode(chars)\n        ? castSlice(stringToArray(result), 0, length).join('')\n        : result.slice(0, length);\n    }\n\n    /**\n     * Creates a function that wraps `func` to invoke it with the `this` binding\n     * of `thisArg` and `partials` prepended to the arguments it receives.\n     *\n     * @private\n     * @param {Function} func The function to wrap.\n     * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n     * @param {*} thisArg The `this` binding of `func`.\n     * @param {Array} partials The arguments to prepend to those provided to\n     *  the new function.\n     * @returns {Function} Returns the new wrapped function.\n     */\n    function createPartial(func, bitmask, thisArg, partials) {\n      var isBind = bitmask & WRAP_BIND_FLAG,\n          Ctor = createCtor(func);\n\n      function wrapper() {\n        var argsIndex = -1,\n            argsLength = arguments.length,\n            leftIndex = -1,\n            leftLength = partials.length,\n            args = Array(leftLength + argsLength),\n            fn = (this && this !== root && this instanceof wrapper) ? Ctor : func;\n\n        while (++leftIndex < leftLength) {\n          args[leftIndex] = partials[leftIndex];\n        }\n        while (argsLength--) {\n          args[leftIndex++] = arguments[++argsIndex];\n        }\n        return apply(fn, isBind ? thisArg : this, args);\n      }\n      return wrapper;\n    }\n\n    /**\n     * Creates a `_.range` or `_.rangeRight` function.\n     *\n     * @private\n     * @param {boolean} [fromRight] Specify iterating from right to left.\n     * @returns {Function} Returns the new range function.\n     */\n    function createRange(fromRight) {\n      return function(start, end, step) {\n        if (step && typeof step != 'number' && isIterateeCall(start, end, step)) {\n          end = step = undefined;\n        }\n        // Ensure the sign of `-0` is preserved.\n        start = toFinite(start);\n        if (end === undefined) {\n          end = start;\n          start = 0;\n        } else {\n          end = toFinite(end);\n        }\n        step = step === undefined ? (start < end ? 1 : -1) : toFinite(step);\n        return baseRange(start, end, step, fromRight);\n      };\n    }\n\n    /**\n     * Creates a function that performs a relational operation on two values.\n     *\n     * @private\n     * @param {Function} operator The function to perform the operation.\n     * @returns {Function} Returns the new relational operation function.\n     */\n    function createRelationalOperation(operator) {\n      return function(value, other) {\n        if (!(typeof value == 'string' && typeof other == 'string')) {\n          value = toNumber(value);\n          other = toNumber(other);\n        }\n        return operator(value, other);\n      };\n    }\n\n    /**\n     * Creates a function that wraps `func` to continue currying.\n     *\n     * @private\n     * @param {Function} func The function to wrap.\n     * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n     * @param {Function} wrapFunc The function to create the `func` wrapper.\n     * @param {*} placeholder The placeholder value.\n     * @param {*} [thisArg] The `this` binding of `func`.\n     * @param {Array} [partials] The arguments to prepend to those provided to\n     *  the new function.\n     * @param {Array} [holders] The `partials` placeholder indexes.\n     * @param {Array} [argPos] The argument positions of the new function.\n     * @param {number} [ary] The arity cap of `func`.\n     * @param {number} [arity] The arity of `func`.\n     * @returns {Function} Returns the new wrapped function.\n     */\n    function createRecurry(func, bitmask, wrapFunc, placeholder, thisArg, partials, holders, argPos, ary, arity) {\n      var isCurry = bitmask & WRAP_CURRY_FLAG,\n          newHolders = isCurry ? holders : undefined,\n          newHoldersRight = isCurry ? undefined : holders,\n          newPartials = isCurry ? partials : undefined,\n          newPartialsRight = isCurry ? undefined : partials;\n\n      bitmask |= (isCurry ? WRAP_PARTIAL_FLAG : WRAP_PARTIAL_RIGHT_FLAG);\n      bitmask &= ~(isCurry ? WRAP_PARTIAL_RIGHT_FLAG : WRAP_PARTIAL_FLAG);\n\n      if (!(bitmask & WRAP_CURRY_BOUND_FLAG)) {\n        bitmask &= ~(WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG);\n      }\n      var newData = [\n        func, bitmask, thisArg, newPartials, newHolders, newPartialsRight,\n        newHoldersRight, argPos, ary, arity\n      ];\n\n      var result = wrapFunc.apply(undefined, newData);\n      if (isLaziable(func)) {\n        setData(result, newData);\n      }\n      result.placeholder = placeholder;\n      return setWrapToString(result, func, bitmask);\n    }\n\n    /**\n     * Creates a function like `_.round`.\n     *\n     * @private\n     * @param {string} methodName The name of the `Math` method to use when rounding.\n     * @returns {Function} Returns the new round function.\n     */\n    function createRound(methodName) {\n      var func = Math[methodName];\n      return function(number, precision) {\n        number = toNumber(number);\n        precision = precision == null ? 0 : nativeMin(toInteger(precision), 292);\n        if (precision && nativeIsFinite(number)) {\n          // Shift with exponential notation to avoid floating-point issues.\n          // See [MDN](https://mdn.io/round#Examples) for more details.\n          var pair = (toString(number) + 'e').split('e'),\n              value = func(pair[0] + 'e' + (+pair[1] + precision));\n\n          pair = (toString(value) + 'e').split('e');\n          return +(pair[0] + 'e' + (+pair[1] - precision));\n        }\n        return func(number);\n      };\n    }\n\n    /**\n     * Creates a set object of `values`.\n     *\n     * @private\n     * @param {Array} values The values to add to the set.\n     * @returns {Object} Returns the new set.\n     */\n    var createSet = !(Set && (1 / setToArray(new Set([,-0]))[1]) == INFINITY) ? noop : function(values) {\n      return new Set(values);\n    };\n\n    /**\n     * Creates a `_.toPairs` or `_.toPairsIn` function.\n     *\n     * @private\n     * @param {Function} keysFunc The function to get the keys of a given object.\n     * @returns {Function} Returns the new pairs function.\n     */\n    function createToPairs(keysFunc) {\n      return function(object) {\n        var tag = getTag(object);\n        if (tag == mapTag) {\n          return mapToArray(object);\n        }\n        if (tag == setTag) {\n          return setToPairs(object);\n        }\n        return baseToPairs(object, keysFunc(object));\n      };\n    }\n\n    /**\n     * Creates a function that either curries or invokes `func` with optional\n     * `this` binding and partially applied arguments.\n     *\n     * @private\n     * @param {Function|string} func The function or method name to wrap.\n     * @param {number} bitmask The bitmask flags.\n     *    1 - `_.bind`\n     *    2 - `_.bindKey`\n     *    4 - `_.curry` or `_.curryRight` of a bound function\n     *    8 - `_.curry`\n     *   16 - `_.curryRight`\n     *   32 - `_.partial`\n     *   64 - `_.partialRight`\n     *  128 - `_.rearg`\n     *  256 - `_.ary`\n     *  512 - `_.flip`\n     * @param {*} [thisArg] The `this` binding of `func`.\n     * @param {Array} [partials] The arguments to be partially applied.\n     * @param {Array} [holders] The `partials` placeholder indexes.\n     * @param {Array} [argPos] The argument positions of the new function.\n     * @param {number} [ary] The arity cap of `func`.\n     * @param {number} [arity] The arity of `func`.\n     * @returns {Function} Returns the new wrapped function.\n     */\n    function createWrap(func, bitmask, thisArg, partials, holders, argPos, ary, arity) {\n      var isBindKey = bitmask & WRAP_BIND_KEY_FLAG;\n      if (!isBindKey && typeof func != 'function') {\n        throw new TypeError(FUNC_ERROR_TEXT);\n      }\n      var length = partials ? partials.length : 0;\n      if (!length) {\n        bitmask &= ~(WRAP_PARTIAL_FLAG | WRAP_PARTIAL_RIGHT_FLAG);\n        partials = holders = undefined;\n      }\n      ary = ary === undefined ? ary : nativeMax(toInteger(ary), 0);\n      arity = arity === undefined ? arity : toInteger(arity);\n      length -= holders ? holders.length : 0;\n\n      if (bitmask & WRAP_PARTIAL_RIGHT_FLAG) {\n        var partialsRight = partials,\n            holdersRight = holders;\n\n        partials = holders = undefined;\n      }\n      var data = isBindKey ? undefined : getData(func);\n\n      var newData = [\n        func, bitmask, thisArg, partials, holders, partialsRight, holdersRight,\n        argPos, ary, arity\n      ];\n\n      if (data) {\n        mergeData(newData, data);\n      }\n      func = newData[0];\n      bitmask = newData[1];\n      thisArg = newData[2];\n      partials = newData[3];\n      holders = newData[4];\n      arity = newData[9] = newData[9] === undefined\n        ? (isBindKey ? 0 : func.length)\n        : nativeMax(newData[9] - length, 0);\n\n      if (!arity && bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG)) {\n        bitmask &= ~(WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG);\n      }\n      if (!bitmask || bitmask == WRAP_BIND_FLAG) {\n        var result = createBind(func, bitmask, thisArg);\n      } else if (bitmask == WRAP_CURRY_FLAG || bitmask == WRAP_CURRY_RIGHT_FLAG) {\n        result = createCurry(func, bitmask, arity);\n      } else if ((bitmask == WRAP_PARTIAL_FLAG || bitmask == (WRAP_BIND_FLAG | WRAP_PARTIAL_FLAG)) && !holders.length) {\n        result = createPartial(func, bitmask, thisArg, partials);\n      } else {\n        result = createHybrid.apply(undefined, newData);\n      }\n      var setter = data ? baseSetData : setData;\n      return setWrapToString(setter(result, newData), func, bitmask);\n    }\n\n    /**\n     * Used by `_.defaults` to customize its `_.assignIn` use to assign properties\n     * of source objects to the destination object for all destination properties\n     * that resolve to `undefined`.\n     *\n     * @private\n     * @param {*} objValue The destination value.\n     * @param {*} srcValue The source value.\n     * @param {string} key The key of the property to assign.\n     * @param {Object} object The parent object of `objValue`.\n     * @returns {*} Returns the value to assign.\n     */\n    function customDefaultsAssignIn(objValue, srcValue, key, object) {\n      if (objValue === undefined ||\n          (eq(objValue, objectProto[key]) && !hasOwnProperty.call(object, key))) {\n        return srcValue;\n      }\n      return objValue;\n    }\n\n    /**\n     * Used by `_.defaultsDeep` to customize its `_.merge` use to merge source\n     * objects into destination objects that are passed thru.\n     *\n     * @private\n     * @param {*} objValue The destination value.\n     * @param {*} srcValue The source value.\n     * @param {string} key The key of the property to merge.\n     * @param {Object} object The parent object of `objValue`.\n     * @param {Object} source The parent object of `srcValue`.\n     * @param {Object} [stack] Tracks traversed source values and their merged\n     *  counterparts.\n     * @returns {*} Returns the value to assign.\n     */\n    function customDefaultsMerge(objValue, srcValue, key, object, source, stack) {\n      if (isObject(objValue) && isObject(srcValue)) {\n        // Recursively merge objects and arrays (susceptible to call stack limits).\n        stack.set(srcValue, objValue);\n        baseMerge(objValue, srcValue, undefined, customDefaultsMerge, stack);\n        stack['delete'](srcValue);\n      }\n      return objValue;\n    }\n\n    /**\n     * Used by `_.omit` to customize its `_.cloneDeep` use to only clone plain\n     * objects.\n     *\n     * @private\n     * @param {*} value The value to inspect.\n     * @param {string} key The key of the property to inspect.\n     * @returns {*} Returns the uncloned value or `undefined` to defer cloning to `_.cloneDeep`.\n     */\n    function customOmitClone(value) {\n      return isPlainObject(value) ? undefined : value;\n    }\n\n    /**\n     * A specialized version of `baseIsEqualDeep` for arrays with support for\n     * partial deep comparisons.\n     *\n     * @private\n     * @param {Array} array The array to compare.\n     * @param {Array} other The other array to compare.\n     * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n     * @param {Function} customizer The function to customize comparisons.\n     * @param {Function} equalFunc The function to determine equivalents of values.\n     * @param {Object} stack Tracks traversed `array` and `other` objects.\n     * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`.\n     */\n    function equalArrays(array, other, bitmask, customizer, equalFunc, stack) {\n      var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n          arrLength = array.length,\n          othLength = other.length;\n\n      if (arrLength != othLength && !(isPartial && othLength > arrLength)) {\n        return false;\n      }\n      // Check that cyclic values are equal.\n      var arrStacked = stack.get(array);\n      var othStacked = stack.get(other);\n      if (arrStacked && othStacked) {\n        return arrStacked == other && othStacked == array;\n      }\n      var index = -1,\n          result = true,\n          seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined;\n\n      stack.set(array, other);\n      stack.set(other, array);\n\n      // Ignore non-index properties.\n      while (++index < arrLength) {\n        var arrValue = array[index],\n            othValue = other[index];\n\n        if (customizer) {\n          var compared = isPartial\n            ? customizer(othValue, arrValue, index, other, array, stack)\n            : customizer(arrValue, othValue, index, array, other, stack);\n        }\n        if (compared !== undefined) {\n          if (compared) {\n            continue;\n          }\n          result = false;\n          break;\n        }\n        // Recursively compare arrays (susceptible to call stack limits).\n        if (seen) {\n          if (!arraySome(other, function(othValue, othIndex) {\n                if (!cacheHas(seen, othIndex) &&\n                    (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) {\n                  return seen.push(othIndex);\n                }\n              })) {\n            result = false;\n            break;\n          }\n        } else if (!(\n              arrValue === othValue ||\n                equalFunc(arrValue, othValue, bitmask, customizer, stack)\n            )) {\n          result = false;\n          break;\n        }\n      }\n      stack['delete'](array);\n      stack['delete'](other);\n      return result;\n    }\n\n    /**\n     * A specialized version of `baseIsEqualDeep` for comparing objects of\n     * the same `toStringTag`.\n     *\n     * **Note:** This function only supports comparing values with tags of\n     * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.\n     *\n     * @private\n     * @param {Object} object The object to compare.\n     * @param {Object} other The other object to compare.\n     * @param {string} tag The `toStringTag` of the objects to compare.\n     * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n     * @param {Function} customizer The function to customize comparisons.\n     * @param {Function} equalFunc The function to determine equivalents of values.\n     * @param {Object} stack Tracks traversed `object` and `other` objects.\n     * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n     */\n    function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) {\n      switch (tag) {\n        case dataViewTag:\n          if ((object.byteLength != other.byteLength) ||\n              (object.byteOffset != other.byteOffset)) {\n            return false;\n          }\n          object = object.buffer;\n          other = other.buffer;\n\n        case arrayBufferTag:\n          if ((object.byteLength != other.byteLength) ||\n              !equalFunc(new Uint8Array(object), new Uint8Array(other))) {\n            return false;\n          }\n          return true;\n\n        case boolTag:\n        case dateTag:\n        case numberTag:\n          // Coerce booleans to `1` or `0` and dates to milliseconds.\n          // Invalid dates are coerced to `NaN`.\n          return eq(+object, +other);\n\n        case errorTag:\n          return object.name == other.name && object.message == other.message;\n\n        case regexpTag:\n        case stringTag:\n          // Coerce regexes to strings and treat strings, primitives and objects,\n          // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring\n          // for more details.\n          return object == (other + '');\n\n        case mapTag:\n          var convert = mapToArray;\n\n        case setTag:\n          var isPartial = bitmask & COMPARE_PARTIAL_FLAG;\n          convert || (convert = setToArray);\n\n          if (object.size != other.size && !isPartial) {\n            return false;\n          }\n          // Assume cyclic values are equal.\n          var stacked = stack.get(object);\n          if (stacked) {\n            return stacked == other;\n          }\n          bitmask |= COMPARE_UNORDERED_FLAG;\n\n          // Recursively compare objects (susceptible to call stack limits).\n          stack.set(object, other);\n          var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack);\n          stack['delete'](object);\n          return result;\n\n        case symbolTag:\n          if (symbolValueOf) {\n            return symbolValueOf.call(object) == symbolValueOf.call(other);\n          }\n      }\n      return false;\n    }\n\n    /**\n     * A specialized version of `baseIsEqualDeep` for objects with support for\n     * partial deep comparisons.\n     *\n     * @private\n     * @param {Object} object The object to compare.\n     * @param {Object} other The other object to compare.\n     * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n     * @param {Function} customizer The function to customize comparisons.\n     * @param {Function} equalFunc The function to determine equivalents of values.\n     * @param {Object} stack Tracks traversed `object` and `other` objects.\n     * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n     */\n    function equalObjects(object, other, bitmask, customizer, equalFunc, stack) {\n      var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n          objProps = getAllKeys(object),\n          objLength = objProps.length,\n          othProps = getAllKeys(other),\n          othLength = othProps.length;\n\n      if (objLength != othLength && !isPartial) {\n        return false;\n      }\n      var index = objLength;\n      while (index--) {\n        var key = objProps[index];\n        if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) {\n          return false;\n        }\n      }\n      // Check that cyclic values are equal.\n      var objStacked = stack.get(object);\n      var othStacked = stack.get(other);\n      if (objStacked && othStacked) {\n        return objStacked == other && othStacked == object;\n      }\n      var result = true;\n      stack.set(object, other);\n      stack.set(other, object);\n\n      var skipCtor = isPartial;\n      while (++index < objLength) {\n        key = objProps[index];\n        var objValue = object[key],\n            othValue = other[key];\n\n        if (customizer) {\n          var compared = isPartial\n            ? customizer(othValue, objValue, key, other, object, stack)\n            : customizer(objValue, othValue, key, object, other, stack);\n        }\n        // Recursively compare objects (susceptible to call stack limits).\n        if (!(compared === undefined\n              ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack))\n              : compared\n            )) {\n          result = false;\n          break;\n        }\n        skipCtor || (skipCtor = key == 'constructor');\n      }\n      if (result && !skipCtor) {\n        var objCtor = object.constructor,\n            othCtor = other.constructor;\n\n        // Non `Object` object instances with different constructors are not equal.\n        if (objCtor != othCtor &&\n            ('constructor' in object && 'constructor' in other) &&\n            !(typeof objCtor == 'function' && objCtor instanceof objCtor &&\n              typeof othCtor == 'function' && othCtor instanceof othCtor)) {\n          result = false;\n        }\n      }\n      stack['delete'](object);\n      stack['delete'](other);\n      return result;\n    }\n\n    /**\n     * A specialized version of `baseRest` which flattens the rest array.\n     *\n     * @private\n     * @param {Function} func The function to apply a rest parameter to.\n     * @returns {Function} Returns the new function.\n     */\n    function flatRest(func) {\n      return setToString(overRest(func, undefined, flatten), func + '');\n    }\n\n    /**\n     * Creates an array of own enumerable property names and symbols of `object`.\n     *\n     * @private\n     * @param {Object} object The object to query.\n     * @returns {Array} Returns the array of property names and symbols.\n     */\n    function getAllKeys(object) {\n      return baseGetAllKeys(object, keys, getSymbols);\n    }\n\n    /**\n     * Creates an array of own and inherited enumerable property names and\n     * symbols of `object`.\n     *\n     * @private\n     * @param {Object} object The object to query.\n     * @returns {Array} Returns the array of property names and symbols.\n     */\n    function getAllKeysIn(object) {\n      return baseGetAllKeys(object, keysIn, getSymbolsIn);\n    }\n\n    /**\n     * Gets metadata for `func`.\n     *\n     * @private\n     * @param {Function} func The function to query.\n     * @returns {*} Returns the metadata for `func`.\n     */\n    var getData = !metaMap ? noop : function(func) {\n      return metaMap.get(func);\n    };\n\n    /**\n     * Gets the name of `func`.\n     *\n     * @private\n     * @param {Function} func The function to query.\n     * @returns {string} Returns the function name.\n     */\n    function getFuncName(func) {\n      var result = (func.name + ''),\n          array = realNames[result],\n          length = hasOwnProperty.call(realNames, result) ? array.length : 0;\n\n      while (length--) {\n        var data = array[length],\n            otherFunc = data.func;\n        if (otherFunc == null || otherFunc == func) {\n          return data.name;\n        }\n      }\n      return result;\n    }\n\n    /**\n     * Gets the argument placeholder value for `func`.\n     *\n     * @private\n     * @param {Function} func The function to inspect.\n     * @returns {*} Returns the placeholder value.\n     */\n    function getHolder(func) {\n      var object = hasOwnProperty.call(lodash, 'placeholder') ? lodash : func;\n      return object.placeholder;\n    }\n\n    /**\n     * Gets the appropriate \"iteratee\" function. If `_.iteratee` is customized,\n     * this function returns the custom method, otherwise it returns `baseIteratee`.\n     * If arguments are provided, the chosen function is invoked with them and\n     * its result is returned.\n     *\n     * @private\n     * @param {*} [value] The value to convert to an iteratee.\n     * @param {number} [arity] The arity of the created iteratee.\n     * @returns {Function} Returns the chosen function or its result.\n     */\n    function getIteratee() {\n      var result = lodash.iteratee || iteratee;\n      result = result === iteratee ? baseIteratee : result;\n      return arguments.length ? result(arguments[0], arguments[1]) : result;\n    }\n\n    /**\n     * Gets the data for `map`.\n     *\n     * @private\n     * @param {Object} map The map to query.\n     * @param {string} key The reference key.\n     * @returns {*} Returns the map data.\n     */\n    function getMapData(map, key) {\n      var data = map.__data__;\n      return isKeyable(key)\n        ? data[typeof key == 'string' ? 'string' : 'hash']\n        : data.map;\n    }\n\n    /**\n     * Gets the property names, values, and compare flags of `object`.\n     *\n     * @private\n     * @param {Object} object The object to query.\n     * @returns {Array} Returns the match data of `object`.\n     */\n    function getMatchData(object) {\n      var result = keys(object),\n          length = result.length;\n\n      while (length--) {\n        var key = result[length],\n            value = object[key];\n\n        result[length] = [key, value, isStrictComparable(value)];\n      }\n      return result;\n    }\n\n    /**\n     * Gets the native function at `key` of `object`.\n     *\n     * @private\n     * @param {Object} object The object to query.\n     * @param {string} key The key of the method to get.\n     * @returns {*} Returns the function if it's native, else `undefined`.\n     */\n    function getNative(object, key) {\n      var value = getValue(object, key);\n      return baseIsNative(value) ? value : undefined;\n    }\n\n    /**\n     * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n     *\n     * @private\n     * @param {*} value The value to query.\n     * @returns {string} Returns the raw `toStringTag`.\n     */\n    function getRawTag(value) {\n      var isOwn = hasOwnProperty.call(value, symToStringTag),\n          tag = value[symToStringTag];\n\n      try {\n        value[symToStringTag] = undefined;\n        var unmasked = true;\n      } catch (e) {}\n\n      var result = nativeObjectToString.call(value);\n      if (unmasked) {\n        if (isOwn) {\n          value[symToStringTag] = tag;\n        } else {\n          delete value[symToStringTag];\n        }\n      }\n      return result;\n    }\n\n    /**\n     * Creates an array of the own enumerable symbols of `object`.\n     *\n     * @private\n     * @param {Object} object The object to query.\n     * @returns {Array} Returns the array of symbols.\n     */\n    var getSymbols = !nativeGetSymbols ? stubArray : function(object) {\n      if (object == null) {\n        return [];\n      }\n      object = Object(object);\n      return arrayFilter(nativeGetSymbols(object), function(symbol) {\n        return propertyIsEnumerable.call(object, symbol);\n      });\n    };\n\n    /**\n     * Creates an array of the own and inherited enumerable symbols of `object`.\n     *\n     * @private\n     * @param {Object} object The object to query.\n     * @returns {Array} Returns the array of symbols.\n     */\n    var getSymbolsIn = !nativeGetSymbols ? stubArray : function(object) {\n      var result = [];\n      while (object) {\n        arrayPush(result, getSymbols(object));\n        object = getPrototype(object);\n      }\n      return result;\n    };\n\n    /**\n     * Gets the `toStringTag` of `value`.\n     *\n     * @private\n     * @param {*} value The value to query.\n     * @returns {string} Returns the `toStringTag`.\n     */\n    var getTag = baseGetTag;\n\n    // Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.\n    if ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) ||\n        (Map && getTag(new Map) != mapTag) ||\n        (Promise && getTag(Promise.resolve()) != promiseTag) ||\n        (Set && getTag(new Set) != setTag) ||\n        (WeakMap && getTag(new WeakMap) != weakMapTag)) {\n      getTag = function(value) {\n        var result = baseGetTag(value),\n            Ctor = result == objectTag ? value.constructor : undefined,\n            ctorString = Ctor ? toSource(Ctor) : '';\n\n        if (ctorString) {\n          switch (ctorString) {\n            case dataViewCtorString: return dataViewTag;\n            case mapCtorString: return mapTag;\n            case promiseCtorString: return promiseTag;\n            case setCtorString: return setTag;\n            case weakMapCtorString: return weakMapTag;\n          }\n        }\n        return result;\n      };\n    }\n\n    /**\n     * Gets the view, applying any `transforms` to the `start` and `end` positions.\n     *\n     * @private\n     * @param {number} start The start of the view.\n     * @param {number} end The end of the view.\n     * @param {Array} transforms The transformations to apply to the view.\n     * @returns {Object} Returns an object containing the `start` and `end`\n     *  positions of the view.\n     */\n    function getView(start, end, transforms) {\n      var index = -1,\n          length = transforms.length;\n\n      while (++index < length) {\n        var data = transforms[index],\n            size = data.size;\n\n        switch (data.type) {\n          case 'drop':      start += size; break;\n          case 'dropRight': end -= size; break;\n          case 'take':      end = nativeMin(end, start + size); break;\n          case 'takeRight': start = nativeMax(start, end - size); break;\n        }\n      }\n      return { 'start': start, 'end': end };\n    }\n\n    /**\n     * Extracts wrapper details from the `source` body comment.\n     *\n     * @private\n     * @param {string} source The source to inspect.\n     * @returns {Array} Returns the wrapper details.\n     */\n    function getWrapDetails(source) {\n      var match = source.match(reWrapDetails);\n      return match ? match[1].split(reSplitDetails) : [];\n    }\n\n    /**\n     * Checks if `path` exists on `object`.\n     *\n     * @private\n     * @param {Object} object The object to query.\n     * @param {Array|string} path The path to check.\n     * @param {Function} hasFunc The function to check properties.\n     * @returns {boolean} Returns `true` if `path` exists, else `false`.\n     */\n    function hasPath(object, path, hasFunc) {\n      path = castPath(path, object);\n\n      var index = -1,\n          length = path.length,\n          result = false;\n\n      while (++index < length) {\n        var key = toKey(path[index]);\n        if (!(result = object != null && hasFunc(object, key))) {\n          break;\n        }\n        object = object[key];\n      }\n      if (result || ++index != length) {\n        return result;\n      }\n      length = object == null ? 0 : object.length;\n      return !!length && isLength(length) && isIndex(key, length) &&\n        (isArray(object) || isArguments(object));\n    }\n\n    /**\n     * Initializes an array clone.\n     *\n     * @private\n     * @param {Array} array The array to clone.\n     * @returns {Array} Returns the initialized clone.\n     */\n    function initCloneArray(array) {\n      var length = array.length,\n          result = new array.constructor(length);\n\n      // Add properties assigned by `RegExp#exec`.\n      if (length && typeof array[0] == 'string' && hasOwnProperty.call(array, 'index')) {\n        result.index = array.index;\n        result.input = array.input;\n      }\n      return result;\n    }\n\n    /**\n     * Initializes an object clone.\n     *\n     * @private\n     * @param {Object} object The object to clone.\n     * @returns {Object} Returns the initialized clone.\n     */\n    function initCloneObject(object) {\n      return (typeof object.constructor == 'function' && !isPrototype(object))\n        ? baseCreate(getPrototype(object))\n        : {};\n    }\n\n    /**\n     * Initializes an object clone based on its `toStringTag`.\n     *\n     * **Note:** This function only supports cloning values with tags of\n     * `Boolean`, `Date`, `Error`, `Map`, `Number`, `RegExp`, `Set`, or `String`.\n     *\n     * @private\n     * @param {Object} object The object to clone.\n     * @param {string} tag The `toStringTag` of the object to clone.\n     * @param {boolean} [isDeep] Specify a deep clone.\n     * @returns {Object} Returns the initialized clone.\n     */\n    function initCloneByTag(object, tag, isDeep) {\n      var Ctor = object.constructor;\n      switch (tag) {\n        case arrayBufferTag:\n          return cloneArrayBuffer(object);\n\n        case boolTag:\n        case dateTag:\n          return new Ctor(+object);\n\n        case dataViewTag:\n          return cloneDataView(object, isDeep);\n\n        case float32Tag: case float64Tag:\n        case int8Tag: case int16Tag: case int32Tag:\n        case uint8Tag: case uint8ClampedTag: case uint16Tag: case uint32Tag:\n          return cloneTypedArray(object, isDeep);\n\n        case mapTag:\n          return new Ctor;\n\n        case numberTag:\n        case stringTag:\n          return new Ctor(object);\n\n        case regexpTag:\n          return cloneRegExp(object);\n\n        case setTag:\n          return new Ctor;\n\n        case symbolTag:\n          return cloneSymbol(object);\n      }\n    }\n\n    /**\n     * Inserts wrapper `details` in a comment at the top of the `source` body.\n     *\n     * @private\n     * @param {string} source The source to modify.\n     * @returns {Array} details The details to insert.\n     * @returns {string} Returns the modified source.\n     */\n    function insertWrapDetails(source, details) {\n      var length = details.length;\n      if (!length) {\n        return source;\n      }\n      var lastIndex = length - 1;\n      details[lastIndex] = (length > 1 ? '& ' : '') + details[lastIndex];\n      details = details.join(length > 2 ? ', ' : ' ');\n      return source.replace(reWrapComment, '{\\n/* [wrapped with ' + details + '] */\\n');\n    }\n\n    /**\n     * Checks if `value` is a flattenable `arguments` object or array.\n     *\n     * @private\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is flattenable, else `false`.\n     */\n    function isFlattenable(value) {\n      return isArray(value) || isArguments(value) ||\n        !!(spreadableSymbol && value && value[spreadableSymbol]);\n    }\n\n    /**\n     * Checks if `value` is a valid array-like index.\n     *\n     * @private\n     * @param {*} value The value to check.\n     * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.\n     * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.\n     */\n    function isIndex(value, length) {\n      var type = typeof value;\n      length = length == null ? MAX_SAFE_INTEGER : length;\n\n      return !!length &&\n        (type == 'number' ||\n          (type != 'symbol' && reIsUint.test(value))) &&\n            (value > -1 && value % 1 == 0 && value < length);\n    }\n\n    /**\n     * Checks if the given arguments are from an iteratee call.\n     *\n     * @private\n     * @param {*} value The potential iteratee value argument.\n     * @param {*} index The potential iteratee index or key argument.\n     * @param {*} object The potential iteratee object argument.\n     * @returns {boolean} Returns `true` if the arguments are from an iteratee call,\n     *  else `false`.\n     */\n    function isIterateeCall(value, index, object) {\n      if (!isObject(object)) {\n        return false;\n      }\n      var type = typeof index;\n      if (type == 'number'\n            ? (isArrayLike(object) && isIndex(index, object.length))\n            : (type == 'string' && index in object)\n          ) {\n        return eq(object[index], value);\n      }\n      return false;\n    }\n\n    /**\n     * Checks if `value` is a property name and not a property path.\n     *\n     * @private\n     * @param {*} value The value to check.\n     * @param {Object} [object] The object to query keys on.\n     * @returns {boolean} Returns `true` if `value` is a property name, else `false`.\n     */\n    function isKey(value, object) {\n      if (isArray(value)) {\n        return false;\n      }\n      var type = typeof value;\n      if (type == 'number' || type == 'symbol' || type == 'boolean' ||\n          value == null || isSymbol(value)) {\n        return true;\n      }\n      return reIsPlainProp.test(value) || !reIsDeepProp.test(value) ||\n        (object != null && value in Object(object));\n    }\n\n    /**\n     * Checks if `value` is suitable for use as unique object key.\n     *\n     * @private\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n     */\n    function isKeyable(value) {\n      var type = typeof value;\n      return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n        ? (value !== '__proto__')\n        : (value === null);\n    }\n\n    /**\n     * Checks if `func` has a lazy counterpart.\n     *\n     * @private\n     * @param {Function} func The function to check.\n     * @returns {boolean} Returns `true` if `func` has a lazy counterpart,\n     *  else `false`.\n     */\n    function isLaziable(func) {\n      var funcName = getFuncName(func),\n          other = lodash[funcName];\n\n      if (typeof other != 'function' || !(funcName in LazyWrapper.prototype)) {\n        return false;\n      }\n      if (func === other) {\n        return true;\n      }\n      var data = getData(other);\n      return !!data && func === data[0];\n    }\n\n    /**\n     * Checks if `func` has its source masked.\n     *\n     * @private\n     * @param {Function} func The function to check.\n     * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n     */\n    function isMasked(func) {\n      return !!maskSrcKey && (maskSrcKey in func);\n    }\n\n    /**\n     * Checks if `func` is capable of being masked.\n     *\n     * @private\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `func` is maskable, else `false`.\n     */\n    var isMaskable = coreJsData ? isFunction : stubFalse;\n\n    /**\n     * Checks if `value` is likely a prototype object.\n     *\n     * @private\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.\n     */\n    function isPrototype(value) {\n      var Ctor = value && value.constructor,\n          proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;\n\n      return value === proto;\n    }\n\n    /**\n     * Checks if `value` is suitable for strict equality comparisons, i.e. `===`.\n     *\n     * @private\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` if suitable for strict\n     *  equality comparisons, else `false`.\n     */\n    function isStrictComparable(value) {\n      return value === value && !isObject(value);\n    }\n\n    /**\n     * A specialized version of `matchesProperty` for source values suitable\n     * for strict equality comparisons, i.e. `===`.\n     *\n     * @private\n     * @param {string} key The key of the property to get.\n     * @param {*} srcValue The value to match.\n     * @returns {Function} Returns the new spec function.\n     */\n    function matchesStrictComparable(key, srcValue) {\n      return function(object) {\n        if (object == null) {\n          return false;\n        }\n        return object[key] === srcValue &&\n          (srcValue !== undefined || (key in Object(object)));\n      };\n    }\n\n    /**\n     * A specialized version of `_.memoize` which clears the memoized function's\n     * cache when it exceeds `MAX_MEMOIZE_SIZE`.\n     *\n     * @private\n     * @param {Function} func The function to have its output memoized.\n     * @returns {Function} Returns the new memoized function.\n     */\n    function memoizeCapped(func) {\n      var result = memoize(func, function(key) {\n        if (cache.size === MAX_MEMOIZE_SIZE) {\n          cache.clear();\n        }\n        return key;\n      });\n\n      var cache = result.cache;\n      return result;\n    }\n\n    /**\n     * Merges the function metadata of `source` into `data`.\n     *\n     * Merging metadata reduces the number of wrappers used to invoke a function.\n     * This is possible because methods like `_.bind`, `_.curry`, and `_.partial`\n     * may be applied regardless of execution order. Methods like `_.ary` and\n     * `_.rearg` modify function arguments, making the order in which they are\n     * executed important, preventing the merging of metadata. However, we make\n     * an exception for a safe combined case where curried functions have `_.ary`\n     * and or `_.rearg` applied.\n     *\n     * @private\n     * @param {Array} data The destination metadata.\n     * @param {Array} source The source metadata.\n     * @returns {Array} Returns `data`.\n     */\n    function mergeData(data, source) {\n      var bitmask = data[1],\n          srcBitmask = source[1],\n          newBitmask = bitmask | srcBitmask,\n          isCommon = newBitmask < (WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG | WRAP_ARY_FLAG);\n\n      var isCombo =\n        ((srcBitmask == WRAP_ARY_FLAG) && (bitmask == WRAP_CURRY_FLAG)) ||\n        ((srcBitmask == WRAP_ARY_FLAG) && (bitmask == WRAP_REARG_FLAG) && (data[7].length <= source[8])) ||\n        ((srcBitmask == (WRAP_ARY_FLAG | WRAP_REARG_FLAG)) && (source[7].length <= source[8]) && (bitmask == WRAP_CURRY_FLAG));\n\n      // Exit early if metadata can't be merged.\n      if (!(isCommon || isCombo)) {\n        return data;\n      }\n      // Use source `thisArg` if available.\n      if (srcBitmask & WRAP_BIND_FLAG) {\n        data[2] = source[2];\n        // Set when currying a bound function.\n        newBitmask |= bitmask & WRAP_BIND_FLAG ? 0 : WRAP_CURRY_BOUND_FLAG;\n      }\n      // Compose partial arguments.\n      var value = source[3];\n      if (value) {\n        var partials = data[3];\n        data[3] = partials ? composeArgs(partials, value, source[4]) : value;\n        data[4] = partials ? replaceHolders(data[3], PLACEHOLDER) : source[4];\n      }\n      // Compose partial right arguments.\n      value = source[5];\n      if (value) {\n        partials = data[5];\n        data[5] = partials ? composeArgsRight(partials, value, source[6]) : value;\n        data[6] = partials ? replaceHolders(data[5], PLACEHOLDER) : source[6];\n      }\n      // Use source `argPos` if available.\n      value = source[7];\n      if (value) {\n        data[7] = value;\n      }\n      // Use source `ary` if it's smaller.\n      if (srcBitmask & WRAP_ARY_FLAG) {\n        data[8] = data[8] == null ? source[8] : nativeMin(data[8], source[8]);\n      }\n      // Use source `arity` if one is not provided.\n      if (data[9] == null) {\n        data[9] = source[9];\n      }\n      // Use source `func` and merge bitmasks.\n      data[0] = source[0];\n      data[1] = newBitmask;\n\n      return data;\n    }\n\n    /**\n     * This function is like\n     * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n     * except that it includes inherited enumerable properties.\n     *\n     * @private\n     * @param {Object} object The object to query.\n     * @returns {Array} Returns the array of property names.\n     */\n    function nativeKeysIn(object) {\n      var result = [];\n      if (object != null) {\n        for (var key in Object(object)) {\n          result.push(key);\n        }\n      }\n      return result;\n    }\n\n    /**\n     * Converts `value` to a string using `Object.prototype.toString`.\n     *\n     * @private\n     * @param {*} value The value to convert.\n     * @returns {string} Returns the converted string.\n     */\n    function objectToString(value) {\n      return nativeObjectToString.call(value);\n    }\n\n    /**\n     * A specialized version of `baseRest` which transforms the rest array.\n     *\n     * @private\n     * @param {Function} func The function to apply a rest parameter to.\n     * @param {number} [start=func.length-1] The start position of the rest parameter.\n     * @param {Function} transform The rest array transform.\n     * @returns {Function} Returns the new function.\n     */\n    function overRest(func, start, transform) {\n      start = nativeMax(start === undefined ? (func.length - 1) : start, 0);\n      return function() {\n        var args = arguments,\n            index = -1,\n            length = nativeMax(args.length - start, 0),\n            array = Array(length);\n\n        while (++index < length) {\n          array[index] = args[start + index];\n        }\n        index = -1;\n        var otherArgs = Array(start + 1);\n        while (++index < start) {\n          otherArgs[index] = args[index];\n        }\n        otherArgs[start] = transform(array);\n        return apply(func, this, otherArgs);\n      };\n    }\n\n    /**\n     * Gets the parent value at `path` of `object`.\n     *\n     * @private\n     * @param {Object} object The object to query.\n     * @param {Array} path The path to get the parent value of.\n     * @returns {*} Returns the parent value.\n     */\n    function parent(object, path) {\n      return path.length < 2 ? object : baseGet(object, baseSlice(path, 0, -1));\n    }\n\n    /**\n     * Reorder `array` according to the specified indexes where the element at\n     * the first index is assigned as the first element, the element at\n     * the second index is assigned as the second element, and so on.\n     *\n     * @private\n     * @param {Array} array The array to reorder.\n     * @param {Array} indexes The arranged array indexes.\n     * @returns {Array} Returns `array`.\n     */\n    function reorder(array, indexes) {\n      var arrLength = array.length,\n          length = nativeMin(indexes.length, arrLength),\n          oldArray = copyArray(array);\n\n      while (length--) {\n        var index = indexes[length];\n        array[length] = isIndex(index, arrLength) ? oldArray[index] : undefined;\n      }\n      return array;\n    }\n\n    /**\n     * Gets the value at `key`, unless `key` is \"__proto__\" or \"constructor\".\n     *\n     * @private\n     * @param {Object} object The object to query.\n     * @param {string} key The key of the property to get.\n     * @returns {*} Returns the property value.\n     */\n    function safeGet(object, key) {\n      if (key === 'constructor' && typeof object[key] === 'function') {\n        return;\n      }\n\n      if (key == '__proto__') {\n        return;\n      }\n\n      return object[key];\n    }\n\n    /**\n     * Sets metadata for `func`.\n     *\n     * **Note:** If this function becomes hot, i.e. is invoked a lot in a short\n     * period of time, it will trip its breaker and transition to an identity\n     * function to avoid garbage collection pauses in V8. See\n     * [V8 issue 2070](https://bugs.chromium.org/p/v8/issues/detail?id=2070)\n     * for more details.\n     *\n     * @private\n     * @param {Function} func The function to associate metadata with.\n     * @param {*} data The metadata.\n     * @returns {Function} Returns `func`.\n     */\n    var setData = shortOut(baseSetData);\n\n    /**\n     * A simple wrapper around the global [`setTimeout`](https://mdn.io/setTimeout).\n     *\n     * @private\n     * @param {Function} func The function to delay.\n     * @param {number} wait The number of milliseconds to delay invocation.\n     * @returns {number|Object} Returns the timer id or timeout object.\n     */\n    var setTimeout = ctxSetTimeout || function(func, wait) {\n      return root.setTimeout(func, wait);\n    };\n\n    /**\n     * Sets the `toString` method of `func` to return `string`.\n     *\n     * @private\n     * @param {Function} func The function to modify.\n     * @param {Function} string The `toString` result.\n     * @returns {Function} Returns `func`.\n     */\n    var setToString = shortOut(baseSetToString);\n\n    /**\n     * Sets the `toString` method of `wrapper` to mimic the source of `reference`\n     * with wrapper details in a comment at the top of the source body.\n     *\n     * @private\n     * @param {Function} wrapper The function to modify.\n     * @param {Function} reference The reference function.\n     * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n     * @returns {Function} Returns `wrapper`.\n     */\n    function setWrapToString(wrapper, reference, bitmask) {\n      var source = (reference + '');\n      return setToString(wrapper, insertWrapDetails(source, updateWrapDetails(getWrapDetails(source), bitmask)));\n    }\n\n    /**\n     * Creates a function that'll short out and invoke `identity` instead\n     * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN`\n     * milliseconds.\n     *\n     * @private\n     * @param {Function} func The function to restrict.\n     * @returns {Function} Returns the new shortable function.\n     */\n    function shortOut(func) {\n      var count = 0,\n          lastCalled = 0;\n\n      return function() {\n        var stamp = nativeNow(),\n            remaining = HOT_SPAN - (stamp - lastCalled);\n\n        lastCalled = stamp;\n        if (remaining > 0) {\n          if (++count >= HOT_COUNT) {\n            return arguments[0];\n          }\n        } else {\n          count = 0;\n        }\n        return func.apply(undefined, arguments);\n      };\n    }\n\n    /**\n     * A specialized version of `_.shuffle` which mutates and sets the size of `array`.\n     *\n     * @private\n     * @param {Array} array The array to shuffle.\n     * @param {number} [size=array.length] The size of `array`.\n     * @returns {Array} Returns `array`.\n     */\n    function shuffleSelf(array, size) {\n      var index = -1,\n          length = array.length,\n          lastIndex = length - 1;\n\n      size = size === undefined ? length : size;\n      while (++index < size) {\n        var rand = baseRandom(index, lastIndex),\n            value = array[rand];\n\n        array[rand] = array[index];\n        array[index] = value;\n      }\n      array.length = size;\n      return array;\n    }\n\n    /**\n     * Converts `string` to a property path array.\n     *\n     * @private\n     * @param {string} string The string to convert.\n     * @returns {Array} Returns the property path array.\n     */\n    var stringToPath = memoizeCapped(function(string) {\n      var result = [];\n      if (string.charCodeAt(0) === 46 /* . */) {\n        result.push('');\n      }\n      string.replace(rePropName, function(match, number, quote, subString) {\n        result.push(quote ? subString.replace(reEscapeChar, '$1') : (number || match));\n      });\n      return result;\n    });\n\n    /**\n     * Converts `value` to a string key if it's not a string or symbol.\n     *\n     * @private\n     * @param {*} value The value to inspect.\n     * @returns {string|symbol} Returns the key.\n     */\n    function toKey(value) {\n      if (typeof value == 'string' || isSymbol(value)) {\n        return value;\n      }\n      var result = (value + '');\n      return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n    }\n\n    /**\n     * Converts `func` to its source code.\n     *\n     * @private\n     * @param {Function} func The function to convert.\n     * @returns {string} Returns the source code.\n     */\n    function toSource(func) {\n      if (func != null) {\n        try {\n          return funcToString.call(func);\n        } catch (e) {}\n        try {\n          return (func + '');\n        } catch (e) {}\n      }\n      return '';\n    }\n\n    /**\n     * Updates wrapper `details` based on `bitmask` flags.\n     *\n     * @private\n     * @returns {Array} details The details to modify.\n     * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n     * @returns {Array} Returns `details`.\n     */\n    function updateWrapDetails(details, bitmask) {\n      arrayEach(wrapFlags, function(pair) {\n        var value = '_.' + pair[0];\n        if ((bitmask & pair[1]) && !arrayIncludes(details, value)) {\n          details.push(value);\n        }\n      });\n      return details.sort();\n    }\n\n    /**\n     * Creates a clone of `wrapper`.\n     *\n     * @private\n     * @param {Object} wrapper The wrapper to clone.\n     * @returns {Object} Returns the cloned wrapper.\n     */\n    function wrapperClone(wrapper) {\n      if (wrapper instanceof LazyWrapper) {\n        return wrapper.clone();\n      }\n      var result = new LodashWrapper(wrapper.__wrapped__, wrapper.__chain__);\n      result.__actions__ = copyArray(wrapper.__actions__);\n      result.__index__  = wrapper.__index__;\n      result.__values__ = wrapper.__values__;\n      return result;\n    }\n\n    /*------------------------------------------------------------------------*/\n\n    /**\n     * Creates an array of elements split into groups the length of `size`.\n     * If `array` can't be split evenly, the final chunk will be the remaining\n     * elements.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category Array\n     * @param {Array} array The array to process.\n     * @param {number} [size=1] The length of each chunk\n     * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n     * @returns {Array} Returns the new array of chunks.\n     * @example\n     *\n     * _.chunk(['a', 'b', 'c', 'd'], 2);\n     * // => [['a', 'b'], ['c', 'd']]\n     *\n     * _.chunk(['a', 'b', 'c', 'd'], 3);\n     * // => [['a', 'b', 'c'], ['d']]\n     */\n    function chunk(array, size, guard) {\n      if ((guard ? isIterateeCall(array, size, guard) : size === undefined)) {\n        size = 1;\n      } else {\n        size = nativeMax(toInteger(size), 0);\n      }\n      var length = array == null ? 0 : array.length;\n      if (!length || size < 1) {\n        return [];\n      }\n      var index = 0,\n          resIndex = 0,\n          result = Array(nativeCeil(length / size));\n\n      while (index < length) {\n        result[resIndex++] = baseSlice(array, index, (index += size));\n      }\n      return result;\n    }\n\n    /**\n     * Creates an array with all falsey values removed. The values `false`, `null`,\n     * `0`, `\"\"`, `undefined`, and `NaN` are falsey.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Array\n     * @param {Array} array The array to compact.\n     * @returns {Array} Returns the new array of filtered values.\n     * @example\n     *\n     * _.compact([0, 1, false, 2, '', 3]);\n     * // => [1, 2, 3]\n     */\n    function compact(array) {\n      var index = -1,\n          length = array == null ? 0 : array.length,\n          resIndex = 0,\n          result = [];\n\n      while (++index < length) {\n        var value = array[index];\n        if (value) {\n          result[resIndex++] = value;\n        }\n      }\n      return result;\n    }\n\n    /**\n     * Creates a new array concatenating `array` with any additional arrays\n     * and/or values.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Array\n     * @param {Array} array The array to concatenate.\n     * @param {...*} [values] The values to concatenate.\n     * @returns {Array} Returns the new concatenated array.\n     * @example\n     *\n     * var array = [1];\n     * var other = _.concat(array, 2, [3], [[4]]);\n     *\n     * console.log(other);\n     * // => [1, 2, 3, [4]]\n     *\n     * console.log(array);\n     * // => [1]\n     */\n    function concat() {\n      var length = arguments.length;\n      if (!length) {\n        return [];\n      }\n      var args = Array(length - 1),\n          array = arguments[0],\n          index = length;\n\n      while (index--) {\n        args[index - 1] = arguments[index];\n      }\n      return arrayPush(isArray(array) ? copyArray(array) : [array], baseFlatten(args, 1));\n    }\n\n    /**\n     * Creates an array of `array` values not included in the other given arrays\n     * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n     * for equality comparisons. The order and references of result values are\n     * determined by the first array.\n     *\n     * **Note:** Unlike `_.pullAll`, this method returns a new array.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Array\n     * @param {Array} array The array to inspect.\n     * @param {...Array} [values] The values to exclude.\n     * @returns {Array} Returns the new array of filtered values.\n     * @see _.without, _.xor\n     * @example\n     *\n     * _.difference([2, 1], [2, 3]);\n     * // => [1]\n     */\n    var difference = baseRest(function(array, values) {\n      return isArrayLikeObject(array)\n        ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true))\n        : [];\n    });\n\n    /**\n     * This method is like `_.difference` except that it accepts `iteratee` which\n     * is invoked for each element of `array` and `values` to generate the criterion\n     * by which they're compared. The order and references of result values are\n     * determined by the first array. The iteratee is invoked with one argument:\n     * (value).\n     *\n     * **Note:** Unlike `_.pullAllBy`, this method returns a new array.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Array\n     * @param {Array} array The array to inspect.\n     * @param {...Array} [values] The values to exclude.\n     * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n     * @returns {Array} Returns the new array of filtered values.\n     * @example\n     *\n     * _.differenceBy([2.1, 1.2], [2.3, 3.4], Math.floor);\n     * // => [1.2]\n     *\n     * // The `_.property` iteratee shorthand.\n     * _.differenceBy([{ 'x': 2 }, { 'x': 1 }], [{ 'x': 1 }], 'x');\n     * // => [{ 'x': 2 }]\n     */\n    var differenceBy = baseRest(function(array, values) {\n      var iteratee = last(values);\n      if (isArrayLikeObject(iteratee)) {\n        iteratee = undefined;\n      }\n      return isArrayLikeObject(array)\n        ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true), getIteratee(iteratee, 2))\n        : [];\n    });\n\n    /**\n     * This method is like `_.difference` except that it accepts `comparator`\n     * which is invoked to compare elements of `array` to `values`. The order and\n     * references of result values are determined by the first array. The comparator\n     * is invoked with two arguments: (arrVal, othVal).\n     *\n     * **Note:** Unlike `_.pullAllWith`, this method returns a new array.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Array\n     * @param {Array} array The array to inspect.\n     * @param {...Array} [values] The values to exclude.\n     * @param {Function} [comparator] The comparator invoked per element.\n     * @returns {Array} Returns the new array of filtered values.\n     * @example\n     *\n     * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }];\n     *\n     * _.differenceWith(objects, [{ 'x': 1, 'y': 2 }], _.isEqual);\n     * // => [{ 'x': 2, 'y': 1 }]\n     */\n    var differenceWith = baseRest(function(array, values) {\n      var comparator = last(values);\n      if (isArrayLikeObject(comparator)) {\n        comparator = undefined;\n      }\n      return isArrayLikeObject(array)\n        ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true), undefined, comparator)\n        : [];\n    });\n\n    /**\n     * Creates a slice of `array` with `n` elements dropped from the beginning.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.5.0\n     * @category Array\n     * @param {Array} array The array to query.\n     * @param {number} [n=1] The number of elements to drop.\n     * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n     * @returns {Array} Returns the slice of `array`.\n     * @example\n     *\n     * _.drop([1, 2, 3]);\n     * // => [2, 3]\n     *\n     * _.drop([1, 2, 3], 2);\n     * // => [3]\n     *\n     * _.drop([1, 2, 3], 5);\n     * // => []\n     *\n     * _.drop([1, 2, 3], 0);\n     * // => [1, 2, 3]\n     */\n    function drop(array, n, guard) {\n      var length = array == null ? 0 : array.length;\n      if (!length) {\n        return [];\n      }\n      n = (guard || n === undefined) ? 1 : toInteger(n);\n      return baseSlice(array, n < 0 ? 0 : n, length);\n    }\n\n    /**\n     * Creates a slice of `array` with `n` elements dropped from the end.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category Array\n     * @param {Array} array The array to query.\n     * @param {number} [n=1] The number of elements to drop.\n     * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n     * @returns {Array} Returns the slice of `array`.\n     * @example\n     *\n     * _.dropRight([1, 2, 3]);\n     * // => [1, 2]\n     *\n     * _.dropRight([1, 2, 3], 2);\n     * // => [1]\n     *\n     * _.dropRight([1, 2, 3], 5);\n     * // => []\n     *\n     * _.dropRight([1, 2, 3], 0);\n     * // => [1, 2, 3]\n     */\n    function dropRight(array, n, guard) {\n      var length = array == null ? 0 : array.length;\n      if (!length) {\n        return [];\n      }\n      n = (guard || n === undefined) ? 1 : toInteger(n);\n      n = length - n;\n      return baseSlice(array, 0, n < 0 ? 0 : n);\n    }\n\n    /**\n     * Creates a slice of `array` excluding elements dropped from the end.\n     * Elements are dropped until `predicate` returns falsey. The predicate is\n     * invoked with three arguments: (value, index, array).\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category Array\n     * @param {Array} array The array to query.\n     * @param {Function} [predicate=_.identity] The function invoked per iteration.\n     * @returns {Array} Returns the slice of `array`.\n     * @example\n     *\n     * var users = [\n     *   { 'user': 'barney',  'active': true },\n     *   { 'user': 'fred',    'active': false },\n     *   { 'user': 'pebbles', 'active': false }\n     * ];\n     *\n     * _.dropRightWhile(users, function(o) { return !o.active; });\n     * // => objects for ['barney']\n     *\n     * // The `_.matches` iteratee shorthand.\n     * _.dropRightWhile(users, { 'user': 'pebbles', 'active': false });\n     * // => objects for ['barney', 'fred']\n     *\n     * // The `_.matchesProperty` iteratee shorthand.\n     * _.dropRightWhile(users, ['active', false]);\n     * // => objects for ['barney']\n     *\n     * // The `_.property` iteratee shorthand.\n     * _.dropRightWhile(users, 'active');\n     * // => objects for ['barney', 'fred', 'pebbles']\n     */\n    function dropRightWhile(array, predicate) {\n      return (array && array.length)\n        ? baseWhile(array, getIteratee(predicate, 3), true, true)\n        : [];\n    }\n\n    /**\n     * Creates a slice of `array` excluding elements dropped from the beginning.\n     * Elements are dropped until `predicate` returns falsey. The predicate is\n     * invoked with three arguments: (value, index, array).\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category Array\n     * @param {Array} array The array to query.\n     * @param {Function} [predicate=_.identity] The function invoked per iteration.\n     * @returns {Array} Returns the slice of `array`.\n     * @example\n     *\n     * var users = [\n     *   { 'user': 'barney',  'active': false },\n     *   { 'user': 'fred',    'active': false },\n     *   { 'user': 'pebbles', 'active': true }\n     * ];\n     *\n     * _.dropWhile(users, function(o) { return !o.active; });\n     * // => objects for ['pebbles']\n     *\n     * // The `_.matches` iteratee shorthand.\n     * _.dropWhile(users, { 'user': 'barney', 'active': false });\n     * // => objects for ['fred', 'pebbles']\n     *\n     * // The `_.matchesProperty` iteratee shorthand.\n     * _.dropWhile(users, ['active', false]);\n     * // => objects for ['pebbles']\n     *\n     * // The `_.property` iteratee shorthand.\n     * _.dropWhile(users, 'active');\n     * // => objects for ['barney', 'fred', 'pebbles']\n     */\n    function dropWhile(array, predicate) {\n      return (array && array.length)\n        ? baseWhile(array, getIteratee(predicate, 3), true)\n        : [];\n    }\n\n    /**\n     * Fills elements of `array` with `value` from `start` up to, but not\n     * including, `end`.\n     *\n     * **Note:** This method mutates `array`.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.2.0\n     * @category Array\n     * @param {Array} array The array to fill.\n     * @param {*} value The value to fill `array` with.\n     * @param {number} [start=0] The start position.\n     * @param {number} [end=array.length] The end position.\n     * @returns {Array} Returns `array`.\n     * @example\n     *\n     * var array = [1, 2, 3];\n     *\n     * _.fill(array, 'a');\n     * console.log(array);\n     * // => ['a', 'a', 'a']\n     *\n     * _.fill(Array(3), 2);\n     * // => [2, 2, 2]\n     *\n     * _.fill([4, 6, 8, 10], '*', 1, 3);\n     * // => [4, '*', '*', 10]\n     */\n    function fill(array, value, start, end) {\n      var length = array == null ? 0 : array.length;\n      if (!length) {\n        return [];\n      }\n      if (start && typeof start != 'number' && isIterateeCall(array, value, start)) {\n        start = 0;\n        end = length;\n      }\n      return baseFill(array, value, start, end);\n    }\n\n    /**\n     * This method is like `_.find` except that it returns the index of the first\n     * element `predicate` returns truthy for instead of the element itself.\n     *\n     * @static\n     * @memberOf _\n     * @since 1.1.0\n     * @category Array\n     * @param {Array} array The array to inspect.\n     * @param {Function} [predicate=_.identity] The function invoked per iteration.\n     * @param {number} [fromIndex=0] The index to search from.\n     * @returns {number} Returns the index of the found element, else `-1`.\n     * @example\n     *\n     * var users = [\n     *   { 'user': 'barney',  'active': false },\n     *   { 'user': 'fred',    'active': false },\n     *   { 'user': 'pebbles', 'active': true }\n     * ];\n     *\n     * _.findIndex(users, function(o) { return o.user == 'barney'; });\n     * // => 0\n     *\n     * // The `_.matches` iteratee shorthand.\n     * _.findIndex(users, { 'user': 'fred', 'active': false });\n     * // => 1\n     *\n     * // The `_.matchesProperty` iteratee shorthand.\n     * _.findIndex(users, ['active', false]);\n     * // => 0\n     *\n     * // The `_.property` iteratee shorthand.\n     * _.findIndex(users, 'active');\n     * // => 2\n     */\n    function findIndex(array, predicate, fromIndex) {\n      var length = array == null ? 0 : array.length;\n      if (!length) {\n        return -1;\n      }\n      var index = fromIndex == null ? 0 : toInteger(fromIndex);\n      if (index < 0) {\n        index = nativeMax(length + index, 0);\n      }\n      return baseFindIndex(array, getIteratee(predicate, 3), index);\n    }\n\n    /**\n     * This method is like `_.findIndex` except that it iterates over elements\n     * of `collection` from right to left.\n     *\n     * @static\n     * @memberOf _\n     * @since 2.0.0\n     * @category Array\n     * @param {Array} array The array to inspect.\n     * @param {Function} [predicate=_.identity] The function invoked per iteration.\n     * @param {number} [fromIndex=array.length-1] The index to search from.\n     * @returns {number} Returns the index of the found element, else `-1`.\n     * @example\n     *\n     * var users = [\n     *   { 'user': 'barney',  'active': true },\n     *   { 'user': 'fred',    'active': false },\n     *   { 'user': 'pebbles', 'active': false }\n     * ];\n     *\n     * _.findLastIndex(users, function(o) { return o.user == 'pebbles'; });\n     * // => 2\n     *\n     * // The `_.matches` iteratee shorthand.\n     * _.findLastIndex(users, { 'user': 'barney', 'active': true });\n     * // => 0\n     *\n     * // The `_.matchesProperty` iteratee shorthand.\n     * _.findLastIndex(users, ['active', false]);\n     * // => 2\n     *\n     * // The `_.property` iteratee shorthand.\n     * _.findLastIndex(users, 'active');\n     * // => 0\n     */\n    function findLastIndex(array, predicate, fromIndex) {\n      var length = array == null ? 0 : array.length;\n      if (!length) {\n        return -1;\n      }\n      var index = length - 1;\n      if (fromIndex !== undefined) {\n        index = toInteger(fromIndex);\n        index = fromIndex < 0\n          ? nativeMax(length + index, 0)\n          : nativeMin(index, length - 1);\n      }\n      return baseFindIndex(array, getIteratee(predicate, 3), index, true);\n    }\n\n    /**\n     * Flattens `array` a single level deep.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Array\n     * @param {Array} array The array to flatten.\n     * @returns {Array} Returns the new flattened array.\n     * @example\n     *\n     * _.flatten([1, [2, [3, [4]], 5]]);\n     * // => [1, 2, [3, [4]], 5]\n     */\n    function flatten(array) {\n      var length = array == null ? 0 : array.length;\n      return length ? baseFlatten(array, 1) : [];\n    }\n\n    /**\n     * Recursively flattens `array`.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category Array\n     * @param {Array} array The array to flatten.\n     * @returns {Array} Returns the new flattened array.\n     * @example\n     *\n     * _.flattenDeep([1, [2, [3, [4]], 5]]);\n     * // => [1, 2, 3, 4, 5]\n     */\n    function flattenDeep(array) {\n      var length = array == null ? 0 : array.length;\n      return length ? baseFlatten(array, INFINITY) : [];\n    }\n\n    /**\n     * Recursively flatten `array` up to `depth` times.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.4.0\n     * @category Array\n     * @param {Array} array The array to flatten.\n     * @param {number} [depth=1] The maximum recursion depth.\n     * @returns {Array} Returns the new flattened array.\n     * @example\n     *\n     * var array = [1, [2, [3, [4]], 5]];\n     *\n     * _.flattenDepth(array, 1);\n     * // => [1, 2, [3, [4]], 5]\n     *\n     * _.flattenDepth(array, 2);\n     * // => [1, 2, 3, [4], 5]\n     */\n    function flattenDepth(array, depth) {\n      var length = array == null ? 0 : array.length;\n      if (!length) {\n        return [];\n      }\n      depth = depth === undefined ? 1 : toInteger(depth);\n      return baseFlatten(array, depth);\n    }\n\n    /**\n     * The inverse of `_.toPairs`; this method returns an object composed\n     * from key-value `pairs`.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Array\n     * @param {Array} pairs The key-value pairs.\n     * @returns {Object} Returns the new object.\n     * @example\n     *\n     * _.fromPairs([['a', 1], ['b', 2]]);\n     * // => { 'a': 1, 'b': 2 }\n     */\n    function fromPairs(pairs) {\n      var index = -1,\n          length = pairs == null ? 0 : pairs.length,\n          result = {};\n\n      while (++index < length) {\n        var pair = pairs[index];\n        result[pair[0]] = pair[1];\n      }\n      return result;\n    }\n\n    /**\n     * Gets the first element of `array`.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @alias first\n     * @category Array\n     * @param {Array} array The array to query.\n     * @returns {*} Returns the first element of `array`.\n     * @example\n     *\n     * _.head([1, 2, 3]);\n     * // => 1\n     *\n     * _.head([]);\n     * // => undefined\n     */\n    function head(array) {\n      return (array && array.length) ? array[0] : undefined;\n    }\n\n    /**\n     * Gets the index at which the first occurrence of `value` is found in `array`\n     * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n     * for equality comparisons. If `fromIndex` is negative, it's used as the\n     * offset from the end of `array`.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Array\n     * @param {Array} array The array to inspect.\n     * @param {*} value The value to search for.\n     * @param {number} [fromIndex=0] The index to search from.\n     * @returns {number} Returns the index of the matched value, else `-1`.\n     * @example\n     *\n     * _.indexOf([1, 2, 1, 2], 2);\n     * // => 1\n     *\n     * // Search from the `fromIndex`.\n     * _.indexOf([1, 2, 1, 2], 2, 2);\n     * // => 3\n     */\n    function indexOf(array, value, fromIndex) {\n      var length = array == null ? 0 : array.length;\n      if (!length) {\n        return -1;\n      }\n      var index = fromIndex == null ? 0 : toInteger(fromIndex);\n      if (index < 0) {\n        index = nativeMax(length + index, 0);\n      }\n      return baseIndexOf(array, value, index);\n    }\n\n    /**\n     * Gets all but the last element of `array`.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Array\n     * @param {Array} array The array to query.\n     * @returns {Array} Returns the slice of `array`.\n     * @example\n     *\n     * _.initial([1, 2, 3]);\n     * // => [1, 2]\n     */\n    function initial(array) {\n      var length = array == null ? 0 : array.length;\n      return length ? baseSlice(array, 0, -1) : [];\n    }\n\n    /**\n     * Creates an array of unique values that are included in all given arrays\n     * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n     * for equality comparisons. The order and references of result values are\n     * determined by the first array.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Array\n     * @param {...Array} [arrays] The arrays to inspect.\n     * @returns {Array} Returns the new array of intersecting values.\n     * @example\n     *\n     * _.intersection([2, 1], [2, 3]);\n     * // => [2]\n     */\n    var intersection = baseRest(function(arrays) {\n      var mapped = arrayMap(arrays, castArrayLikeObject);\n      return (mapped.length && mapped[0] === arrays[0])\n        ? baseIntersection(mapped)\n        : [];\n    });\n\n    /**\n     * This method is like `_.intersection` except that it accepts `iteratee`\n     * which is invoked for each element of each `arrays` to generate the criterion\n     * by which they're compared. The order and references of result values are\n     * determined by the first array. The iteratee is invoked with one argument:\n     * (value).\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Array\n     * @param {...Array} [arrays] The arrays to inspect.\n     * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n     * @returns {Array} Returns the new array of intersecting values.\n     * @example\n     *\n     * _.intersectionBy([2.1, 1.2], [2.3, 3.4], Math.floor);\n     * // => [2.1]\n     *\n     * // The `_.property` iteratee shorthand.\n     * _.intersectionBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x');\n     * // => [{ 'x': 1 }]\n     */\n    var intersectionBy = baseRest(function(arrays) {\n      var iteratee = last(arrays),\n          mapped = arrayMap(arrays, castArrayLikeObject);\n\n      if (iteratee === last(mapped)) {\n        iteratee = undefined;\n      } else {\n        mapped.pop();\n      }\n      return (mapped.length && mapped[0] === arrays[0])\n        ? baseIntersection(mapped, getIteratee(iteratee, 2))\n        : [];\n    });\n\n    /**\n     * This method is like `_.intersection` except that it accepts `comparator`\n     * which is invoked to compare elements of `arrays`. The order and references\n     * of result values are determined by the first array. The comparator is\n     * invoked with two arguments: (arrVal, othVal).\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Array\n     * @param {...Array} [arrays] The arrays to inspect.\n     * @param {Function} [comparator] The comparator invoked per element.\n     * @returns {Array} Returns the new array of intersecting values.\n     * @example\n     *\n     * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }];\n     * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }];\n     *\n     * _.intersectionWith(objects, others, _.isEqual);\n     * // => [{ 'x': 1, 'y': 2 }]\n     */\n    var intersectionWith = baseRest(function(arrays) {\n      var comparator = last(arrays),\n          mapped = arrayMap(arrays, castArrayLikeObject);\n\n      comparator = typeof comparator == 'function' ? comparator : undefined;\n      if (comparator) {\n        mapped.pop();\n      }\n      return (mapped.length && mapped[0] === arrays[0])\n        ? baseIntersection(mapped, undefined, comparator)\n        : [];\n    });\n\n    /**\n     * Converts all elements in `array` into a string separated by `separator`.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Array\n     * @param {Array} array The array to convert.\n     * @param {string} [separator=','] The element separator.\n     * @returns {string} Returns the joined string.\n     * @example\n     *\n     * _.join(['a', 'b', 'c'], '~');\n     * // => 'a~b~c'\n     */\n    function join(array, separator) {\n      return array == null ? '' : nativeJoin.call(array, separator);\n    }\n\n    /**\n     * Gets the last element of `array`.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Array\n     * @param {Array} array The array to query.\n     * @returns {*} Returns the last element of `array`.\n     * @example\n     *\n     * _.last([1, 2, 3]);\n     * // => 3\n     */\n    function last(array) {\n      var length = array == null ? 0 : array.length;\n      return length ? array[length - 1] : undefined;\n    }\n\n    /**\n     * This method is like `_.indexOf` except that it iterates over elements of\n     * `array` from right to left.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Array\n     * @param {Array} array The array to inspect.\n     * @param {*} value The value to search for.\n     * @param {number} [fromIndex=array.length-1] The index to search from.\n     * @returns {number} Returns the index of the matched value, else `-1`.\n     * @example\n     *\n     * _.lastIndexOf([1, 2, 1, 2], 2);\n     * // => 3\n     *\n     * // Search from the `fromIndex`.\n     * _.lastIndexOf([1, 2, 1, 2], 2, 2);\n     * // => 1\n     */\n    function lastIndexOf(array, value, fromIndex) {\n      var length = array == null ? 0 : array.length;\n      if (!length) {\n        return -1;\n      }\n      var index = length;\n      if (fromIndex !== undefined) {\n        index = toInteger(fromIndex);\n        index = index < 0 ? nativeMax(length + index, 0) : nativeMin(index, length - 1);\n      }\n      return value === value\n        ? strictLastIndexOf(array, value, index)\n        : baseFindIndex(array, baseIsNaN, index, true);\n    }\n\n    /**\n     * Gets the element at index `n` of `array`. If `n` is negative, the nth\n     * element from the end is returned.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.11.0\n     * @category Array\n     * @param {Array} array The array to query.\n     * @param {number} [n=0] The index of the element to return.\n     * @returns {*} Returns the nth element of `array`.\n     * @example\n     *\n     * var array = ['a', 'b', 'c', 'd'];\n     *\n     * _.nth(array, 1);\n     * // => 'b'\n     *\n     * _.nth(array, -2);\n     * // => 'c';\n     */\n    function nth(array, n) {\n      return (array && array.length) ? baseNth(array, toInteger(n)) : undefined;\n    }\n\n    /**\n     * Removes all given values from `array` using\n     * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n     * for equality comparisons.\n     *\n     * **Note:** Unlike `_.without`, this method mutates `array`. Use `_.remove`\n     * to remove elements from an array by predicate.\n     *\n     * @static\n     * @memberOf _\n     * @since 2.0.0\n     * @category Array\n     * @param {Array} array The array to modify.\n     * @param {...*} [values] The values to remove.\n     * @returns {Array} Returns `array`.\n     * @example\n     *\n     * var array = ['a', 'b', 'c', 'a', 'b', 'c'];\n     *\n     * _.pull(array, 'a', 'c');\n     * console.log(array);\n     * // => ['b', 'b']\n     */\n    var pull = baseRest(pullAll);\n\n    /**\n     * This method is like `_.pull` except that it accepts an array of values to remove.\n     *\n     * **Note:** Unlike `_.difference`, this method mutates `array`.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Array\n     * @param {Array} array The array to modify.\n     * @param {Array} values The values to remove.\n     * @returns {Array} Returns `array`.\n     * @example\n     *\n     * var array = ['a', 'b', 'c', 'a', 'b', 'c'];\n     *\n     * _.pullAll(array, ['a', 'c']);\n     * console.log(array);\n     * // => ['b', 'b']\n     */\n    function pullAll(array, values) {\n      return (array && array.length && values && values.length)\n        ? basePullAll(array, values)\n        : array;\n    }\n\n    /**\n     * This method is like `_.pullAll` except that it accepts `iteratee` which is\n     * invoked for each element of `array` and `values` to generate the criterion\n     * by which they're compared. The iteratee is invoked with one argument: (value).\n     *\n     * **Note:** Unlike `_.differenceBy`, this method mutates `array`.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Array\n     * @param {Array} array The array to modify.\n     * @param {Array} values The values to remove.\n     * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n     * @returns {Array} Returns `array`.\n     * @example\n     *\n     * var array = [{ 'x': 1 }, { 'x': 2 }, { 'x': 3 }, { 'x': 1 }];\n     *\n     * _.pullAllBy(array, [{ 'x': 1 }, { 'x': 3 }], 'x');\n     * console.log(array);\n     * // => [{ 'x': 2 }]\n     */\n    function pullAllBy(array, values, iteratee) {\n      return (array && array.length && values && values.length)\n        ? basePullAll(array, values, getIteratee(iteratee, 2))\n        : array;\n    }\n\n    /**\n     * This method is like `_.pullAll` except that it accepts `comparator` which\n     * is invoked to compare elements of `array` to `values`. The comparator is\n     * invoked with two arguments: (arrVal, othVal).\n     *\n     * **Note:** Unlike `_.differenceWith`, this method mutates `array`.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.6.0\n     * @category Array\n     * @param {Array} array The array to modify.\n     * @param {Array} values The values to remove.\n     * @param {Function} [comparator] The comparator invoked per element.\n     * @returns {Array} Returns `array`.\n     * @example\n     *\n     * var array = [{ 'x': 1, 'y': 2 }, { 'x': 3, 'y': 4 }, { 'x': 5, 'y': 6 }];\n     *\n     * _.pullAllWith(array, [{ 'x': 3, 'y': 4 }], _.isEqual);\n     * console.log(array);\n     * // => [{ 'x': 1, 'y': 2 }, { 'x': 5, 'y': 6 }]\n     */\n    function pullAllWith(array, values, comparator) {\n      return (array && array.length && values && values.length)\n        ? basePullAll(array, values, undefined, comparator)\n        : array;\n    }\n\n    /**\n     * Removes elements from `array` corresponding to `indexes` and returns an\n     * array of removed elements.\n     *\n     * **Note:** Unlike `_.at`, this method mutates `array`.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category Array\n     * @param {Array} array The array to modify.\n     * @param {...(number|number[])} [indexes] The indexes of elements to remove.\n     * @returns {Array} Returns the new array of removed elements.\n     * @example\n     *\n     * var array = ['a', 'b', 'c', 'd'];\n     * var pulled = _.pullAt(array, [1, 3]);\n     *\n     * console.log(array);\n     * // => ['a', 'c']\n     *\n     * console.log(pulled);\n     * // => ['b', 'd']\n     */\n    var pullAt = flatRest(function(array, indexes) {\n      var length = array == null ? 0 : array.length,\n          result = baseAt(array, indexes);\n\n      basePullAt(array, arrayMap(indexes, function(index) {\n        return isIndex(index, length) ? +index : index;\n      }).sort(compareAscending));\n\n      return result;\n    });\n\n    /**\n     * Removes all elements from `array` that `predicate` returns truthy for\n     * and returns an array of the removed elements. The predicate is invoked\n     * with three arguments: (value, index, array).\n     *\n     * **Note:** Unlike `_.filter`, this method mutates `array`. Use `_.pull`\n     * to pull elements from an array by value.\n     *\n     * @static\n     * @memberOf _\n     * @since 2.0.0\n     * @category Array\n     * @param {Array} array The array to modify.\n     * @param {Function} [predicate=_.identity] The function invoked per iteration.\n     * @returns {Array} Returns the new array of removed elements.\n     * @example\n     *\n     * var array = [1, 2, 3, 4];\n     * var evens = _.remove(array, function(n) {\n     *   return n % 2 == 0;\n     * });\n     *\n     * console.log(array);\n     * // => [1, 3]\n     *\n     * console.log(evens);\n     * // => [2, 4]\n     */\n    function remove(array, predicate) {\n      var result = [];\n      if (!(array && array.length)) {\n        return result;\n      }\n      var index = -1,\n          indexes = [],\n          length = array.length;\n\n      predicate = getIteratee(predicate, 3);\n      while (++index < length) {\n        var value = array[index];\n        if (predicate(value, index, array)) {\n          result.push(value);\n          indexes.push(index);\n        }\n      }\n      basePullAt(array, indexes);\n      return result;\n    }\n\n    /**\n     * Reverses `array` so that the first element becomes the last, the second\n     * element becomes the second to last, and so on.\n     *\n     * **Note:** This method mutates `array` and is based on\n     * [`Array#reverse`](https://mdn.io/Array/reverse).\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Array\n     * @param {Array} array The array to modify.\n     * @returns {Array} Returns `array`.\n     * @example\n     *\n     * var array = [1, 2, 3];\n     *\n     * _.reverse(array);\n     * // => [3, 2, 1]\n     *\n     * console.log(array);\n     * // => [3, 2, 1]\n     */\n    function reverse(array) {\n      return array == null ? array : nativeReverse.call(array);\n    }\n\n    /**\n     * Creates a slice of `array` from `start` up to, but not including, `end`.\n     *\n     * **Note:** This method is used instead of\n     * [`Array#slice`](https://mdn.io/Array/slice) to ensure dense arrays are\n     * returned.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category Array\n     * @param {Array} array The array to slice.\n     * @param {number} [start=0] The start position.\n     * @param {number} [end=array.length] The end position.\n     * @returns {Array} Returns the slice of `array`.\n     */\n    function slice(array, start, end) {\n      var length = array == null ? 0 : array.length;\n      if (!length) {\n        return [];\n      }\n      if (end && typeof end != 'number' && isIterateeCall(array, start, end)) {\n        start = 0;\n        end = length;\n      }\n      else {\n        start = start == null ? 0 : toInteger(start);\n        end = end === undefined ? length : toInteger(end);\n      }\n      return baseSlice(array, start, end);\n    }\n\n    /**\n     * Uses a binary search to determine the lowest index at which `value`\n     * should be inserted into `array` in order to maintain its sort order.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Array\n     * @param {Array} array The sorted array to inspect.\n     * @param {*} value The value to evaluate.\n     * @returns {number} Returns the index at which `value` should be inserted\n     *  into `array`.\n     * @example\n     *\n     * _.sortedIndex([30, 50], 40);\n     * // => 1\n     */\n    function sortedIndex(array, value) {\n      return baseSortedIndex(array, value);\n    }\n\n    /**\n     * This method is like `_.sortedIndex` except that it accepts `iteratee`\n     * which is invoked for `value` and each element of `array` to compute their\n     * sort ranking. The iteratee is invoked with one argument: (value).\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Array\n     * @param {Array} array The sorted array to inspect.\n     * @param {*} value The value to evaluate.\n     * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n     * @returns {number} Returns the index at which `value` should be inserted\n     *  into `array`.\n     * @example\n     *\n     * var objects = [{ 'x': 4 }, { 'x': 5 }];\n     *\n     * _.sortedIndexBy(objects, { 'x': 4 }, function(o) { return o.x; });\n     * // => 0\n     *\n     * // The `_.property` iteratee shorthand.\n     * _.sortedIndexBy(objects, { 'x': 4 }, 'x');\n     * // => 0\n     */\n    function sortedIndexBy(array, value, iteratee) {\n      return baseSortedIndexBy(array, value, getIteratee(iteratee, 2));\n    }\n\n    /**\n     * This method is like `_.indexOf` except that it performs a binary\n     * search on a sorted `array`.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Array\n     * @param {Array} array The array to inspect.\n     * @param {*} value The value to search for.\n     * @returns {number} Returns the index of the matched value, else `-1`.\n     * @example\n     *\n     * _.sortedIndexOf([4, 5, 5, 5, 6], 5);\n     * // => 1\n     */\n    function sortedIndexOf(array, value) {\n      var length = array == null ? 0 : array.length;\n      if (length) {\n        var index = baseSortedIndex(array, value);\n        if (index < length && eq(array[index], value)) {\n          return index;\n        }\n      }\n      return -1;\n    }\n\n    /**\n     * This method is like `_.sortedIndex` except that it returns the highest\n     * index at which `value` should be inserted into `array` in order to\n     * maintain its sort order.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category Array\n     * @param {Array} array The sorted array to inspect.\n     * @param {*} value The value to evaluate.\n     * @returns {number} Returns the index at which `value` should be inserted\n     *  into `array`.\n     * @example\n     *\n     * _.sortedLastIndex([4, 5, 5, 5, 6], 5);\n     * // => 4\n     */\n    function sortedLastIndex(array, value) {\n      return baseSortedIndex(array, value, true);\n    }\n\n    /**\n     * This method is like `_.sortedLastIndex` except that it accepts `iteratee`\n     * which is invoked for `value` and each element of `array` to compute their\n     * sort ranking. The iteratee is invoked with one argument: (value).\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Array\n     * @param {Array} array The sorted array to inspect.\n     * @param {*} value The value to evaluate.\n     * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n     * @returns {number} Returns the index at which `value` should be inserted\n     *  into `array`.\n     * @example\n     *\n     * var objects = [{ 'x': 4 }, { 'x': 5 }];\n     *\n     * _.sortedLastIndexBy(objects, { 'x': 4 }, function(o) { return o.x; });\n     * // => 1\n     *\n     * // The `_.property` iteratee shorthand.\n     * _.sortedLastIndexBy(objects, { 'x': 4 }, 'x');\n     * // => 1\n     */\n    function sortedLastIndexBy(array, value, iteratee) {\n      return baseSortedIndexBy(array, value, getIteratee(iteratee, 2), true);\n    }\n\n    /**\n     * This method is like `_.lastIndexOf` except that it performs a binary\n     * search on a sorted `array`.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Array\n     * @param {Array} array The array to inspect.\n     * @param {*} value The value to search for.\n     * @returns {number} Returns the index of the matched value, else `-1`.\n     * @example\n     *\n     * _.sortedLastIndexOf([4, 5, 5, 5, 6], 5);\n     * // => 3\n     */\n    function sortedLastIndexOf(array, value) {\n      var length = array == null ? 0 : array.length;\n      if (length) {\n        var index = baseSortedIndex(array, value, true) - 1;\n        if (eq(array[index], value)) {\n          return index;\n        }\n      }\n      return -1;\n    }\n\n    /**\n     * This method is like `_.uniq` except that it's designed and optimized\n     * for sorted arrays.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Array\n     * @param {Array} array The array to inspect.\n     * @returns {Array} Returns the new duplicate free array.\n     * @example\n     *\n     * _.sortedUniq([1, 1, 2]);\n     * // => [1, 2]\n     */\n    function sortedUniq(array) {\n      return (array && array.length)\n        ? baseSortedUniq(array)\n        : [];\n    }\n\n    /**\n     * This method is like `_.uniqBy` except that it's designed and optimized\n     * for sorted arrays.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Array\n     * @param {Array} array The array to inspect.\n     * @param {Function} [iteratee] The iteratee invoked per element.\n     * @returns {Array} Returns the new duplicate free array.\n     * @example\n     *\n     * _.sortedUniqBy([1.1, 1.2, 2.3, 2.4], Math.floor);\n     * // => [1.1, 2.3]\n     */\n    function sortedUniqBy(array, iteratee) {\n      return (array && array.length)\n        ? baseSortedUniq(array, getIteratee(iteratee, 2))\n        : [];\n    }\n\n    /**\n     * Gets all but the first element of `array`.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Array\n     * @param {Array} array The array to query.\n     * @returns {Array} Returns the slice of `array`.\n     * @example\n     *\n     * _.tail([1, 2, 3]);\n     * // => [2, 3]\n     */\n    function tail(array) {\n      var length = array == null ? 0 : array.length;\n      return length ? baseSlice(array, 1, length) : [];\n    }\n\n    /**\n     * Creates a slice of `array` with `n` elements taken from the beginning.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Array\n     * @param {Array} array The array to query.\n     * @param {number} [n=1] The number of elements to take.\n     * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n     * @returns {Array} Returns the slice of `array`.\n     * @example\n     *\n     * _.take([1, 2, 3]);\n     * // => [1]\n     *\n     * _.take([1, 2, 3], 2);\n     * // => [1, 2]\n     *\n     * _.take([1, 2, 3], 5);\n     * // => [1, 2, 3]\n     *\n     * _.take([1, 2, 3], 0);\n     * // => []\n     */\n    function take(array, n, guard) {\n      if (!(array && array.length)) {\n        return [];\n      }\n      n = (guard || n === undefined) ? 1 : toInteger(n);\n      return baseSlice(array, 0, n < 0 ? 0 : n);\n    }\n\n    /**\n     * Creates a slice of `array` with `n` elements taken from the end.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category Array\n     * @param {Array} array The array to query.\n     * @param {number} [n=1] The number of elements to take.\n     * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n     * @returns {Array} Returns the slice of `array`.\n     * @example\n     *\n     * _.takeRight([1, 2, 3]);\n     * // => [3]\n     *\n     * _.takeRight([1, 2, 3], 2);\n     * // => [2, 3]\n     *\n     * _.takeRight([1, 2, 3], 5);\n     * // => [1, 2, 3]\n     *\n     * _.takeRight([1, 2, 3], 0);\n     * // => []\n     */\n    function takeRight(array, n, guard) {\n      var length = array == null ? 0 : array.length;\n      if (!length) {\n        return [];\n      }\n      n = (guard || n === undefined) ? 1 : toInteger(n);\n      n = length - n;\n      return baseSlice(array, n < 0 ? 0 : n, length);\n    }\n\n    /**\n     * Creates a slice of `array` with elements taken from the end. Elements are\n     * taken until `predicate` returns falsey. The predicate is invoked with\n     * three arguments: (value, index, array).\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category Array\n     * @param {Array} array The array to query.\n     * @param {Function} [predicate=_.identity] The function invoked per iteration.\n     * @returns {Array} Returns the slice of `array`.\n     * @example\n     *\n     * var users = [\n     *   { 'user': 'barney',  'active': true },\n     *   { 'user': 'fred',    'active': false },\n     *   { 'user': 'pebbles', 'active': false }\n     * ];\n     *\n     * _.takeRightWhile(users, function(o) { return !o.active; });\n     * // => objects for ['fred', 'pebbles']\n     *\n     * // The `_.matches` iteratee shorthand.\n     * _.takeRightWhile(users, { 'user': 'pebbles', 'active': false });\n     * // => objects for ['pebbles']\n     *\n     * // The `_.matchesProperty` iteratee shorthand.\n     * _.takeRightWhile(users, ['active', false]);\n     * // => objects for ['fred', 'pebbles']\n     *\n     * // The `_.property` iteratee shorthand.\n     * _.takeRightWhile(users, 'active');\n     * // => []\n     */\n    function takeRightWhile(array, predicate) {\n      return (array && array.length)\n        ? baseWhile(array, getIteratee(predicate, 3), false, true)\n        : [];\n    }\n\n    /**\n     * Creates a slice of `array` with elements taken from the beginning. Elements\n     * are taken until `predicate` returns falsey. The predicate is invoked with\n     * three arguments: (value, index, array).\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category Array\n     * @param {Array} array The array to query.\n     * @param {Function} [predicate=_.identity] The function invoked per iteration.\n     * @returns {Array} Returns the slice of `array`.\n     * @example\n     *\n     * var users = [\n     *   { 'user': 'barney',  'active': false },\n     *   { 'user': 'fred',    'active': false },\n     *   { 'user': 'pebbles', 'active': true }\n     * ];\n     *\n     * _.takeWhile(users, function(o) { return !o.active; });\n     * // => objects for ['barney', 'fred']\n     *\n     * // The `_.matches` iteratee shorthand.\n     * _.takeWhile(users, { 'user': 'barney', 'active': false });\n     * // => objects for ['barney']\n     *\n     * // The `_.matchesProperty` iteratee shorthand.\n     * _.takeWhile(users, ['active', false]);\n     * // => objects for ['barney', 'fred']\n     *\n     * // The `_.property` iteratee shorthand.\n     * _.takeWhile(users, 'active');\n     * // => []\n     */\n    function takeWhile(array, predicate) {\n      return (array && array.length)\n        ? baseWhile(array, getIteratee(predicate, 3))\n        : [];\n    }\n\n    /**\n     * Creates an array of unique values, in order, from all given arrays using\n     * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n     * for equality comparisons.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Array\n     * @param {...Array} [arrays] The arrays to inspect.\n     * @returns {Array} Returns the new array of combined values.\n     * @example\n     *\n     * _.union([2], [1, 2]);\n     * // => [2, 1]\n     */\n    var union = baseRest(function(arrays) {\n      return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true));\n    });\n\n    /**\n     * This method is like `_.union` except that it accepts `iteratee` which is\n     * invoked for each element of each `arrays` to generate the criterion by\n     * which uniqueness is computed. Result values are chosen from the first\n     * array in which the value occurs. The iteratee is invoked with one argument:\n     * (value).\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Array\n     * @param {...Array} [arrays] The arrays to inspect.\n     * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n     * @returns {Array} Returns the new array of combined values.\n     * @example\n     *\n     * _.unionBy([2.1], [1.2, 2.3], Math.floor);\n     * // => [2.1, 1.2]\n     *\n     * // The `_.property` iteratee shorthand.\n     * _.unionBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x');\n     * // => [{ 'x': 1 }, { 'x': 2 }]\n     */\n    var unionBy = baseRest(function(arrays) {\n      var iteratee = last(arrays);\n      if (isArrayLikeObject(iteratee)) {\n        iteratee = undefined;\n      }\n      return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true), getIteratee(iteratee, 2));\n    });\n\n    /**\n     * This method is like `_.union` except that it accepts `comparator` which\n     * is invoked to compare elements of `arrays`. Result values are chosen from\n     * the first array in which the value occurs. The comparator is invoked\n     * with two arguments: (arrVal, othVal).\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Array\n     * @param {...Array} [arrays] The arrays to inspect.\n     * @param {Function} [comparator] The comparator invoked per element.\n     * @returns {Array} Returns the new array of combined values.\n     * @example\n     *\n     * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }];\n     * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }];\n     *\n     * _.unionWith(objects, others, _.isEqual);\n     * // => [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }, { 'x': 1, 'y': 1 }]\n     */\n    var unionWith = baseRest(function(arrays) {\n      var comparator = last(arrays);\n      comparator = typeof comparator == 'function' ? comparator : undefined;\n      return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true), undefined, comparator);\n    });\n\n    /**\n     * Creates a duplicate-free version of an array, using\n     * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n     * for equality comparisons, in which only the first occurrence of each element\n     * is kept. The order of result values is determined by the order they occur\n     * in the array.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Array\n     * @param {Array} array The array to inspect.\n     * @returns {Array} Returns the new duplicate free array.\n     * @example\n     *\n     * _.uniq([2, 1, 2]);\n     * // => [2, 1]\n     */\n    function uniq(array) {\n      return (array && array.length) ? baseUniq(array) : [];\n    }\n\n    /**\n     * This method is like `_.uniq` except that it accepts `iteratee` which is\n     * invoked for each element in `array` to generate the criterion by which\n     * uniqueness is computed. The order of result values is determined by the\n     * order they occur in the array. The iteratee is invoked with one argument:\n     * (value).\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Array\n     * @param {Array} array The array to inspect.\n     * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n     * @returns {Array} Returns the new duplicate free array.\n     * @example\n     *\n     * _.uniqBy([2.1, 1.2, 2.3], Math.floor);\n     * // => [2.1, 1.2]\n     *\n     * // The `_.property` iteratee shorthand.\n     * _.uniqBy([{ 'x': 1 }, { 'x': 2 }, { 'x': 1 }], 'x');\n     * // => [{ 'x': 1 }, { 'x': 2 }]\n     */\n    function uniqBy(array, iteratee) {\n      return (array && array.length) ? baseUniq(array, getIteratee(iteratee, 2)) : [];\n    }\n\n    /**\n     * This method is like `_.uniq` except that it accepts `comparator` which\n     * is invoked to compare elements of `array`. The order of result values is\n     * determined by the order they occur in the array.The comparator is invoked\n     * with two arguments: (arrVal, othVal).\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Array\n     * @param {Array} array The array to inspect.\n     * @param {Function} [comparator] The comparator invoked per element.\n     * @returns {Array} Returns the new duplicate free array.\n     * @example\n     *\n     * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }, { 'x': 1, 'y': 2 }];\n     *\n     * _.uniqWith(objects, _.isEqual);\n     * // => [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }]\n     */\n    function uniqWith(array, comparator) {\n      comparator = typeof comparator == 'function' ? comparator : undefined;\n      return (array && array.length) ? baseUniq(array, undefined, comparator) : [];\n    }\n\n    /**\n     * This method is like `_.zip` except that it accepts an array of grouped\n     * elements and creates an array regrouping the elements to their pre-zip\n     * configuration.\n     *\n     * @static\n     * @memberOf _\n     * @since 1.2.0\n     * @category Array\n     * @param {Array} array The array of grouped elements to process.\n     * @returns {Array} Returns the new array of regrouped elements.\n     * @example\n     *\n     * var zipped = _.zip(['a', 'b'], [1, 2], [true, false]);\n     * // => [['a', 1, true], ['b', 2, false]]\n     *\n     * _.unzip(zipped);\n     * // => [['a', 'b'], [1, 2], [true, false]]\n     */\n    function unzip(array) {\n      if (!(array && array.length)) {\n        return [];\n      }\n      var length = 0;\n      array = arrayFilter(array, function(group) {\n        if (isArrayLikeObject(group)) {\n          length = nativeMax(group.length, length);\n          return true;\n        }\n      });\n      return baseTimes(length, function(index) {\n        return arrayMap(array, baseProperty(index));\n      });\n    }\n\n    /**\n     * This method is like `_.unzip` except that it accepts `iteratee` to specify\n     * how regrouped values should be combined. The iteratee is invoked with the\n     * elements of each group: (...group).\n     *\n     * @static\n     * @memberOf _\n     * @since 3.8.0\n     * @category Array\n     * @param {Array} array The array of grouped elements to process.\n     * @param {Function} [iteratee=_.identity] The function to combine\n     *  regrouped values.\n     * @returns {Array} Returns the new array of regrouped elements.\n     * @example\n     *\n     * var zipped = _.zip([1, 2], [10, 20], [100, 200]);\n     * // => [[1, 10, 100], [2, 20, 200]]\n     *\n     * _.unzipWith(zipped, _.add);\n     * // => [3, 30, 300]\n     */\n    function unzipWith(array, iteratee) {\n      if (!(array && array.length)) {\n        return [];\n      }\n      var result = unzip(array);\n      if (iteratee == null) {\n        return result;\n      }\n      return arrayMap(result, function(group) {\n        return apply(iteratee, undefined, group);\n      });\n    }\n\n    /**\n     * Creates an array excluding all given values using\n     * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n     * for equality comparisons.\n     *\n     * **Note:** Unlike `_.pull`, this method returns a new array.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Array\n     * @param {Array} array The array to inspect.\n     * @param {...*} [values] The values to exclude.\n     * @returns {Array} Returns the new array of filtered values.\n     * @see _.difference, _.xor\n     * @example\n     *\n     * _.without([2, 1, 2, 3], 1, 2);\n     * // => [3]\n     */\n    var without = baseRest(function(array, values) {\n      return isArrayLikeObject(array)\n        ? baseDifference(array, values)\n        : [];\n    });\n\n    /**\n     * Creates an array of unique values that is the\n     * [symmetric difference](https://en.wikipedia.org/wiki/Symmetric_difference)\n     * of the given arrays. The order of result values is determined by the order\n     * they occur in the arrays.\n     *\n     * @static\n     * @memberOf _\n     * @since 2.4.0\n     * @category Array\n     * @param {...Array} [arrays] The arrays to inspect.\n     * @returns {Array} Returns the new array of filtered values.\n     * @see _.difference, _.without\n     * @example\n     *\n     * _.xor([2, 1], [2, 3]);\n     * // => [1, 3]\n     */\n    var xor = baseRest(function(arrays) {\n      return baseXor(arrayFilter(arrays, isArrayLikeObject));\n    });\n\n    /**\n     * This method is like `_.xor` except that it accepts `iteratee` which is\n     * invoked for each element of each `arrays` to generate the criterion by\n     * which by which they're compared. The order of result values is determined\n     * by the order they occur in the arrays. The iteratee is invoked with one\n     * argument: (value).\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Array\n     * @param {...Array} [arrays] The arrays to inspect.\n     * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n     * @returns {Array} Returns the new array of filtered values.\n     * @example\n     *\n     * _.xorBy([2.1, 1.2], [2.3, 3.4], Math.floor);\n     * // => [1.2, 3.4]\n     *\n     * // The `_.property` iteratee shorthand.\n     * _.xorBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x');\n     * // => [{ 'x': 2 }]\n     */\n    var xorBy = baseRest(function(arrays) {\n      var iteratee = last(arrays);\n      if (isArrayLikeObject(iteratee)) {\n        iteratee = undefined;\n      }\n      return baseXor(arrayFilter(arrays, isArrayLikeObject), getIteratee(iteratee, 2));\n    });\n\n    /**\n     * This method is like `_.xor` except that it accepts `comparator` which is\n     * invoked to compare elements of `arrays`. The order of result values is\n     * determined by the order they occur in the arrays. The comparator is invoked\n     * with two arguments: (arrVal, othVal).\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Array\n     * @param {...Array} [arrays] The arrays to inspect.\n     * @param {Function} [comparator] The comparator invoked per element.\n     * @returns {Array} Returns the new array of filtered values.\n     * @example\n     *\n     * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }];\n     * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }];\n     *\n     * _.xorWith(objects, others, _.isEqual);\n     * // => [{ 'x': 2, 'y': 1 }, { 'x': 1, 'y': 1 }]\n     */\n    var xorWith = baseRest(function(arrays) {\n      var comparator = last(arrays);\n      comparator = typeof comparator == 'function' ? comparator : undefined;\n      return baseXor(arrayFilter(arrays, isArrayLikeObject), undefined, comparator);\n    });\n\n    /**\n     * Creates an array of grouped elements, the first of which contains the\n     * first elements of the given arrays, the second of which contains the\n     * second elements of the given arrays, and so on.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Array\n     * @param {...Array} [arrays] The arrays to process.\n     * @returns {Array} Returns the new array of grouped elements.\n     * @example\n     *\n     * _.zip(['a', 'b'], [1, 2], [true, false]);\n     * // => [['a', 1, true], ['b', 2, false]]\n     */\n    var zip = baseRest(unzip);\n\n    /**\n     * This method is like `_.fromPairs` except that it accepts two arrays,\n     * one of property identifiers and one of corresponding values.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.4.0\n     * @category Array\n     * @param {Array} [props=[]] The property identifiers.\n     * @param {Array} [values=[]] The property values.\n     * @returns {Object} Returns the new object.\n     * @example\n     *\n     * _.zipObject(['a', 'b'], [1, 2]);\n     * // => { 'a': 1, 'b': 2 }\n     */\n    function zipObject(props, values) {\n      return baseZipObject(props || [], values || [], assignValue);\n    }\n\n    /**\n     * This method is like `_.zipObject` except that it supports property paths.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.1.0\n     * @category Array\n     * @param {Array} [props=[]] The property identifiers.\n     * @param {Array} [values=[]] The property values.\n     * @returns {Object} Returns the new object.\n     * @example\n     *\n     * _.zipObjectDeep(['a.b[0].c', 'a.b[1].d'], [1, 2]);\n     * // => { 'a': { 'b': [{ 'c': 1 }, { 'd': 2 }] } }\n     */\n    function zipObjectDeep(props, values) {\n      return baseZipObject(props || [], values || [], baseSet);\n    }\n\n    /**\n     * This method is like `_.zip` except that it accepts `iteratee` to specify\n     * how grouped values should be combined. The iteratee is invoked with the\n     * elements of each group: (...group).\n     *\n     * @static\n     * @memberOf _\n     * @since 3.8.0\n     * @category Array\n     * @param {...Array} [arrays] The arrays to process.\n     * @param {Function} [iteratee=_.identity] The function to combine\n     *  grouped values.\n     * @returns {Array} Returns the new array of grouped elements.\n     * @example\n     *\n     * _.zipWith([1, 2], [10, 20], [100, 200], function(a, b, c) {\n     *   return a + b + c;\n     * });\n     * // => [111, 222]\n     */\n    var zipWith = baseRest(function(arrays) {\n      var length = arrays.length,\n          iteratee = length > 1 ? arrays[length - 1] : undefined;\n\n      iteratee = typeof iteratee == 'function' ? (arrays.pop(), iteratee) : undefined;\n      return unzipWith(arrays, iteratee);\n    });\n\n    /*------------------------------------------------------------------------*/\n\n    /**\n     * Creates a `lodash` wrapper instance that wraps `value` with explicit method\n     * chain sequences enabled. The result of such sequences must be unwrapped\n     * with `_#value`.\n     *\n     * @static\n     * @memberOf _\n     * @since 1.3.0\n     * @category Seq\n     * @param {*} value The value to wrap.\n     * @returns {Object} Returns the new `lodash` wrapper instance.\n     * @example\n     *\n     * var users = [\n     *   { 'user': 'barney',  'age': 36 },\n     *   { 'user': 'fred',    'age': 40 },\n     *   { 'user': 'pebbles', 'age': 1 }\n     * ];\n     *\n     * var youngest = _\n     *   .chain(users)\n     *   .sortBy('age')\n     *   .map(function(o) {\n     *     return o.user + ' is ' + o.age;\n     *   })\n     *   .head()\n     *   .value();\n     * // => 'pebbles is 1'\n     */\n    function chain(value) {\n      var result = lodash(value);\n      result.__chain__ = true;\n      return result;\n    }\n\n    /**\n     * This method invokes `interceptor` and returns `value`. The interceptor\n     * is invoked with one argument; (value). The purpose of this method is to\n     * \"tap into\" a method chain sequence in order to modify intermediate results.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Seq\n     * @param {*} value The value to provide to `interceptor`.\n     * @param {Function} interceptor The function to invoke.\n     * @returns {*} Returns `value`.\n     * @example\n     *\n     * _([1, 2, 3])\n     *  .tap(function(array) {\n     *    // Mutate input array.\n     *    array.pop();\n     *  })\n     *  .reverse()\n     *  .value();\n     * // => [2, 1]\n     */\n    function tap(value, interceptor) {\n      interceptor(value);\n      return value;\n    }\n\n    /**\n     * This method is like `_.tap` except that it returns the result of `interceptor`.\n     * The purpose of this method is to \"pass thru\" values replacing intermediate\n     * results in a method chain sequence.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category Seq\n     * @param {*} value The value to provide to `interceptor`.\n     * @param {Function} interceptor The function to invoke.\n     * @returns {*} Returns the result of `interceptor`.\n     * @example\n     *\n     * _('  abc  ')\n     *  .chain()\n     *  .trim()\n     *  .thru(function(value) {\n     *    return [value];\n     *  })\n     *  .value();\n     * // => ['abc']\n     */\n    function thru(value, interceptor) {\n      return interceptor(value);\n    }\n\n    /**\n     * This method is the wrapper version of `_.at`.\n     *\n     * @name at\n     * @memberOf _\n     * @since 1.0.0\n     * @category Seq\n     * @param {...(string|string[])} [paths] The property paths to pick.\n     * @returns {Object} Returns the new `lodash` wrapper instance.\n     * @example\n     *\n     * var object = { 'a': [{ 'b': { 'c': 3 } }, 4] };\n     *\n     * _(object).at(['a[0].b.c', 'a[1]']).value();\n     * // => [3, 4]\n     */\n    var wrapperAt = flatRest(function(paths) {\n      var length = paths.length,\n          start = length ? paths[0] : 0,\n          value = this.__wrapped__,\n          interceptor = function(object) { return baseAt(object, paths); };\n\n      if (length > 1 || this.__actions__.length ||\n          !(value instanceof LazyWrapper) || !isIndex(start)) {\n        return this.thru(interceptor);\n      }\n      value = value.slice(start, +start + (length ? 1 : 0));\n      value.__actions__.push({\n        'func': thru,\n        'args': [interceptor],\n        'thisArg': undefined\n      });\n      return new LodashWrapper(value, this.__chain__).thru(function(array) {\n        if (length && !array.length) {\n          array.push(undefined);\n        }\n        return array;\n      });\n    });\n\n    /**\n     * Creates a `lodash` wrapper instance with explicit method chain sequences enabled.\n     *\n     * @name chain\n     * @memberOf _\n     * @since 0.1.0\n     * @category Seq\n     * @returns {Object} Returns the new `lodash` wrapper instance.\n     * @example\n     *\n     * var users = [\n     *   { 'user': 'barney', 'age': 36 },\n     *   { 'user': 'fred',   'age': 40 }\n     * ];\n     *\n     * // A sequence without explicit chaining.\n     * _(users).head();\n     * // => { 'user': 'barney', 'age': 36 }\n     *\n     * // A sequence with explicit chaining.\n     * _(users)\n     *   .chain()\n     *   .head()\n     *   .pick('user')\n     *   .value();\n     * // => { 'user': 'barney' }\n     */\n    function wrapperChain() {\n      return chain(this);\n    }\n\n    /**\n     * Executes the chain sequence and returns the wrapped result.\n     *\n     * @name commit\n     * @memberOf _\n     * @since 3.2.0\n     * @category Seq\n     * @returns {Object} Returns the new `lodash` wrapper instance.\n     * @example\n     *\n     * var array = [1, 2];\n     * var wrapped = _(array).push(3);\n     *\n     * console.log(array);\n     * // => [1, 2]\n     *\n     * wrapped = wrapped.commit();\n     * console.log(array);\n     * // => [1, 2, 3]\n     *\n     * wrapped.last();\n     * // => 3\n     *\n     * console.log(array);\n     * // => [1, 2, 3]\n     */\n    function wrapperCommit() {\n      return new LodashWrapper(this.value(), this.__chain__);\n    }\n\n    /**\n     * Gets the next value on a wrapped object following the\n     * [iterator protocol](https://mdn.io/iteration_protocols#iterator).\n     *\n     * @name next\n     * @memberOf _\n     * @since 4.0.0\n     * @category Seq\n     * @returns {Object} Returns the next iterator value.\n     * @example\n     *\n     * var wrapped = _([1, 2]);\n     *\n     * wrapped.next();\n     * // => { 'done': false, 'value': 1 }\n     *\n     * wrapped.next();\n     * // => { 'done': false, 'value': 2 }\n     *\n     * wrapped.next();\n     * // => { 'done': true, 'value': undefined }\n     */\n    function wrapperNext() {\n      if (this.__values__ === undefined) {\n        this.__values__ = toArray(this.value());\n      }\n      var done = this.__index__ >= this.__values__.length,\n          value = done ? undefined : this.__values__[this.__index__++];\n\n      return { 'done': done, 'value': value };\n    }\n\n    /**\n     * Enables the wrapper to be iterable.\n     *\n     * @name Symbol.iterator\n     * @memberOf _\n     * @since 4.0.0\n     * @category Seq\n     * @returns {Object} Returns the wrapper object.\n     * @example\n     *\n     * var wrapped = _([1, 2]);\n     *\n     * wrapped[Symbol.iterator]() === wrapped;\n     * // => true\n     *\n     * Array.from(wrapped);\n     * // => [1, 2]\n     */\n    function wrapperToIterator() {\n      return this;\n    }\n\n    /**\n     * Creates a clone of the chain sequence planting `value` as the wrapped value.\n     *\n     * @name plant\n     * @memberOf _\n     * @since 3.2.0\n     * @category Seq\n     * @param {*} value The value to plant.\n     * @returns {Object} Returns the new `lodash` wrapper instance.\n     * @example\n     *\n     * function square(n) {\n     *   return n * n;\n     * }\n     *\n     * var wrapped = _([1, 2]).map(square);\n     * var other = wrapped.plant([3, 4]);\n     *\n     * other.value();\n     * // => [9, 16]\n     *\n     * wrapped.value();\n     * // => [1, 4]\n     */\n    function wrapperPlant(value) {\n      var result,\n          parent = this;\n\n      while (parent instanceof baseLodash) {\n        var clone = wrapperClone(parent);\n        clone.__index__ = 0;\n        clone.__values__ = undefined;\n        if (result) {\n          previous.__wrapped__ = clone;\n        } else {\n          result = clone;\n        }\n        var previous = clone;\n        parent = parent.__wrapped__;\n      }\n      previous.__wrapped__ = value;\n      return result;\n    }\n\n    /**\n     * This method is the wrapper version of `_.reverse`.\n     *\n     * **Note:** This method mutates the wrapped array.\n     *\n     * @name reverse\n     * @memberOf _\n     * @since 0.1.0\n     * @category Seq\n     * @returns {Object} Returns the new `lodash` wrapper instance.\n     * @example\n     *\n     * var array = [1, 2, 3];\n     *\n     * _(array).reverse().value()\n     * // => [3, 2, 1]\n     *\n     * console.log(array);\n     * // => [3, 2, 1]\n     */\n    function wrapperReverse() {\n      var value = this.__wrapped__;\n      if (value instanceof LazyWrapper) {\n        var wrapped = value;\n        if (this.__actions__.length) {\n          wrapped = new LazyWrapper(this);\n        }\n        wrapped = wrapped.reverse();\n        wrapped.__actions__.push({\n          'func': thru,\n          'args': [reverse],\n          'thisArg': undefined\n        });\n        return new LodashWrapper(wrapped, this.__chain__);\n      }\n      return this.thru(reverse);\n    }\n\n    /**\n     * Executes the chain sequence to resolve the unwrapped value.\n     *\n     * @name value\n     * @memberOf _\n     * @since 0.1.0\n     * @alias toJSON, valueOf\n     * @category Seq\n     * @returns {*} Returns the resolved unwrapped value.\n     * @example\n     *\n     * _([1, 2, 3]).value();\n     * // => [1, 2, 3]\n     */\n    function wrapperValue() {\n      return baseWrapperValue(this.__wrapped__, this.__actions__);\n    }\n\n    /*------------------------------------------------------------------------*/\n\n    /**\n     * Creates an object composed of keys generated from the results of running\n     * each element of `collection` thru `iteratee`. The corresponding value of\n     * each key is the number of times the key was returned by `iteratee`. The\n     * iteratee is invoked with one argument: (value).\n     *\n     * @static\n     * @memberOf _\n     * @since 0.5.0\n     * @category Collection\n     * @param {Array|Object} collection The collection to iterate over.\n     * @param {Function} [iteratee=_.identity] The iteratee to transform keys.\n     * @returns {Object} Returns the composed aggregate object.\n     * @example\n     *\n     * _.countBy([6.1, 4.2, 6.3], Math.floor);\n     * // => { '4': 1, '6': 2 }\n     *\n     * // The `_.property` iteratee shorthand.\n     * _.countBy(['one', 'two', 'three'], 'length');\n     * // => { '3': 2, '5': 1 }\n     */\n    var countBy = createAggregator(function(result, value, key) {\n      if (hasOwnProperty.call(result, key)) {\n        ++result[key];\n      } else {\n        baseAssignValue(result, key, 1);\n      }\n    });\n\n    /**\n     * Checks if `predicate` returns truthy for **all** elements of `collection`.\n     * Iteration is stopped once `predicate` returns falsey. The predicate is\n     * invoked with three arguments: (value, index|key, collection).\n     *\n     * **Note:** This method returns `true` for\n     * [empty collections](https://en.wikipedia.org/wiki/Empty_set) because\n     * [everything is true](https://en.wikipedia.org/wiki/Vacuous_truth) of\n     * elements of empty collections.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Collection\n     * @param {Array|Object} collection The collection to iterate over.\n     * @param {Function} [predicate=_.identity] The function invoked per iteration.\n     * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n     * @returns {boolean} Returns `true` if all elements pass the predicate check,\n     *  else `false`.\n     * @example\n     *\n     * _.every([true, 1, null, 'yes'], Boolean);\n     * // => false\n     *\n     * var users = [\n     *   { 'user': 'barney', 'age': 36, 'active': false },\n     *   { 'user': 'fred',   'age': 40, 'active': false }\n     * ];\n     *\n     * // The `_.matches` iteratee shorthand.\n     * _.every(users, { 'user': 'barney', 'active': false });\n     * // => false\n     *\n     * // The `_.matchesProperty` iteratee shorthand.\n     * _.every(users, ['active', false]);\n     * // => true\n     *\n     * // The `_.property` iteratee shorthand.\n     * _.every(users, 'active');\n     * // => false\n     */\n    function every(collection, predicate, guard) {\n      var func = isArray(collection) ? arrayEvery : baseEvery;\n      if (guard && isIterateeCall(collection, predicate, guard)) {\n        predicate = undefined;\n      }\n      return func(collection, getIteratee(predicate, 3));\n    }\n\n    /**\n     * Iterates over elements of `collection`, returning an array of all elements\n     * `predicate` returns truthy for. The predicate is invoked with three\n     * arguments: (value, index|key, collection).\n     *\n     * **Note:** Unlike `_.remove`, this method returns a new array.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Collection\n     * @param {Array|Object} collection The collection to iterate over.\n     * @param {Function} [predicate=_.identity] The function invoked per iteration.\n     * @returns {Array} Returns the new filtered array.\n     * @see _.reject\n     * @example\n     *\n     * var users = [\n     *   { 'user': 'barney', 'age': 36, 'active': true },\n     *   { 'user': 'fred',   'age': 40, 'active': false }\n     * ];\n     *\n     * _.filter(users, function(o) { return !o.active; });\n     * // => objects for ['fred']\n     *\n     * // The `_.matches` iteratee shorthand.\n     * _.filter(users, { 'age': 36, 'active': true });\n     * // => objects for ['barney']\n     *\n     * // The `_.matchesProperty` iteratee shorthand.\n     * _.filter(users, ['active', false]);\n     * // => objects for ['fred']\n     *\n     * // The `_.property` iteratee shorthand.\n     * _.filter(users, 'active');\n     * // => objects for ['barney']\n     *\n     * // Combining several predicates using `_.overEvery` or `_.overSome`.\n     * _.filter(users, _.overSome([{ 'age': 36 }, ['age', 40]]));\n     * // => objects for ['fred', 'barney']\n     */\n    function filter(collection, predicate) {\n      var func = isArray(collection) ? arrayFilter : baseFilter;\n      return func(collection, getIteratee(predicate, 3));\n    }\n\n    /**\n     * Iterates over elements of `collection`, returning the first element\n     * `predicate` returns truthy for. The predicate is invoked with three\n     * arguments: (value, index|key, collection).\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Collection\n     * @param {Array|Object} collection The collection to inspect.\n     * @param {Function} [predicate=_.identity] The function invoked per iteration.\n     * @param {number} [fromIndex=0] The index to search from.\n     * @returns {*} Returns the matched element, else `undefined`.\n     * @example\n     *\n     * var users = [\n     *   { 'user': 'barney',  'age': 36, 'active': true },\n     *   { 'user': 'fred',    'age': 40, 'active': false },\n     *   { 'user': 'pebbles', 'age': 1,  'active': true }\n     * ];\n     *\n     * _.find(users, function(o) { return o.age < 40; });\n     * // => object for 'barney'\n     *\n     * // The `_.matches` iteratee shorthand.\n     * _.find(users, { 'age': 1, 'active': true });\n     * // => object for 'pebbles'\n     *\n     * // The `_.matchesProperty` iteratee shorthand.\n     * _.find(users, ['active', false]);\n     * // => object for 'fred'\n     *\n     * // The `_.property` iteratee shorthand.\n     * _.find(users, 'active');\n     * // => object for 'barney'\n     */\n    var find = createFind(findIndex);\n\n    /**\n     * This method is like `_.find` except that it iterates over elements of\n     * `collection` from right to left.\n     *\n     * @static\n     * @memberOf _\n     * @since 2.0.0\n     * @category Collection\n     * @param {Array|Object} collection The collection to inspect.\n     * @param {Function} [predicate=_.identity] The function invoked per iteration.\n     * @param {number} [fromIndex=collection.length-1] The index to search from.\n     * @returns {*} Returns the matched element, else `undefined`.\n     * @example\n     *\n     * _.findLast([1, 2, 3, 4], function(n) {\n     *   return n % 2 == 1;\n     * });\n     * // => 3\n     */\n    var findLast = createFind(findLastIndex);\n\n    /**\n     * Creates a flattened array of values by running each element in `collection`\n     * thru `iteratee` and flattening the mapped results. The iteratee is invoked\n     * with three arguments: (value, index|key, collection).\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Collection\n     * @param {Array|Object} collection The collection to iterate over.\n     * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n     * @returns {Array} Returns the new flattened array.\n     * @example\n     *\n     * function duplicate(n) {\n     *   return [n, n];\n     * }\n     *\n     * _.flatMap([1, 2], duplicate);\n     * // => [1, 1, 2, 2]\n     */\n    function flatMap(collection, iteratee) {\n      return baseFlatten(map(collection, iteratee), 1);\n    }\n\n    /**\n     * This method is like `_.flatMap` except that it recursively flattens the\n     * mapped results.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.7.0\n     * @category Collection\n     * @param {Array|Object} collection The collection to iterate over.\n     * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n     * @returns {Array} Returns the new flattened array.\n     * @example\n     *\n     * function duplicate(n) {\n     *   return [[[n, n]]];\n     * }\n     *\n     * _.flatMapDeep([1, 2], duplicate);\n     * // => [1, 1, 2, 2]\n     */\n    function flatMapDeep(collection, iteratee) {\n      return baseFlatten(map(collection, iteratee), INFINITY);\n    }\n\n    /**\n     * This method is like `_.flatMap` except that it recursively flattens the\n     * mapped results up to `depth` times.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.7.0\n     * @category Collection\n     * @param {Array|Object} collection The collection to iterate over.\n     * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n     * @param {number} [depth=1] The maximum recursion depth.\n     * @returns {Array} Returns the new flattened array.\n     * @example\n     *\n     * function duplicate(n) {\n     *   return [[[n, n]]];\n     * }\n     *\n     * _.flatMapDepth([1, 2], duplicate, 2);\n     * // => [[1, 1], [2, 2]]\n     */\n    function flatMapDepth(collection, iteratee, depth) {\n      depth = depth === undefined ? 1 : toInteger(depth);\n      return baseFlatten(map(collection, iteratee), depth);\n    }\n\n    /**\n     * Iterates over elements of `collection` and invokes `iteratee` for each element.\n     * The iteratee is invoked with three arguments: (value, index|key, collection).\n     * Iteratee functions may exit iteration early by explicitly returning `false`.\n     *\n     * **Note:** As with other \"Collections\" methods, objects with a \"length\"\n     * property are iterated like arrays. To avoid this behavior use `_.forIn`\n     * or `_.forOwn` for object iteration.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @alias each\n     * @category Collection\n     * @param {Array|Object} collection The collection to iterate over.\n     * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n     * @returns {Array|Object} Returns `collection`.\n     * @see _.forEachRight\n     * @example\n     *\n     * _.forEach([1, 2], function(value) {\n     *   console.log(value);\n     * });\n     * // => Logs `1` then `2`.\n     *\n     * _.forEach({ 'a': 1, 'b': 2 }, function(value, key) {\n     *   console.log(key);\n     * });\n     * // => Logs 'a' then 'b' (iteration order is not guaranteed).\n     */\n    function forEach(collection, iteratee) {\n      var func = isArray(collection) ? arrayEach : baseEach;\n      return func(collection, getIteratee(iteratee, 3));\n    }\n\n    /**\n     * This method is like `_.forEach` except that it iterates over elements of\n     * `collection` from right to left.\n     *\n     * @static\n     * @memberOf _\n     * @since 2.0.0\n     * @alias eachRight\n     * @category Collection\n     * @param {Array|Object} collection The collection to iterate over.\n     * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n     * @returns {Array|Object} Returns `collection`.\n     * @see _.forEach\n     * @example\n     *\n     * _.forEachRight([1, 2], function(value) {\n     *   console.log(value);\n     * });\n     * // => Logs `2` then `1`.\n     */\n    function forEachRight(collection, iteratee) {\n      var func = isArray(collection) ? arrayEachRight : baseEachRight;\n      return func(collection, getIteratee(iteratee, 3));\n    }\n\n    /**\n     * Creates an object composed of keys generated from the results of running\n     * each element of `collection` thru `iteratee`. The order of grouped values\n     * is determined by the order they occur in `collection`. The corresponding\n     * value of each key is an array of elements responsible for generating the\n     * key. The iteratee is invoked with one argument: (value).\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Collection\n     * @param {Array|Object} collection The collection to iterate over.\n     * @param {Function} [iteratee=_.identity] The iteratee to transform keys.\n     * @returns {Object} Returns the composed aggregate object.\n     * @example\n     *\n     * _.groupBy([6.1, 4.2, 6.3], Math.floor);\n     * // => { '4': [4.2], '6': [6.1, 6.3] }\n     *\n     * // The `_.property` iteratee shorthand.\n     * _.groupBy(['one', 'two', 'three'], 'length');\n     * // => { '3': ['one', 'two'], '5': ['three'] }\n     */\n    var groupBy = createAggregator(function(result, value, key) {\n      if (hasOwnProperty.call(result, key)) {\n        result[key].push(value);\n      } else {\n        baseAssignValue(result, key, [value]);\n      }\n    });\n\n    /**\n     * Checks if `value` is in `collection`. If `collection` is a string, it's\n     * checked for a substring of `value`, otherwise\n     * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n     * is used for equality comparisons. If `fromIndex` is negative, it's used as\n     * the offset from the end of `collection`.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Collection\n     * @param {Array|Object|string} collection The collection to inspect.\n     * @param {*} value The value to search for.\n     * @param {number} [fromIndex=0] The index to search from.\n     * @param- {Object} [guard] Enables use as an iteratee for methods like `_.reduce`.\n     * @returns {boolean} Returns `true` if `value` is found, else `false`.\n     * @example\n     *\n     * _.includes([1, 2, 3], 1);\n     * // => true\n     *\n     * _.includes([1, 2, 3], 1, 2);\n     * // => false\n     *\n     * _.includes({ 'a': 1, 'b': 2 }, 1);\n     * // => true\n     *\n     * _.includes('abcd', 'bc');\n     * // => true\n     */\n    function includes(collection, value, fromIndex, guard) {\n      collection = isArrayLike(collection) ? collection : values(collection);\n      fromIndex = (fromIndex && !guard) ? toInteger(fromIndex) : 0;\n\n      var length = collection.length;\n      if (fromIndex < 0) {\n        fromIndex = nativeMax(length + fromIndex, 0);\n      }\n      return isString(collection)\n        ? (fromIndex <= length && collection.indexOf(value, fromIndex) > -1)\n        : (!!length && baseIndexOf(collection, value, fromIndex) > -1);\n    }\n\n    /**\n     * Invokes the method at `path` of each element in `collection`, returning\n     * an array of the results of each invoked method. Any additional arguments\n     * are provided to each invoked method. If `path` is a function, it's invoked\n     * for, and `this` bound to, each element in `collection`.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Collection\n     * @param {Array|Object} collection The collection to iterate over.\n     * @param {Array|Function|string} path The path of the method to invoke or\n     *  the function invoked per iteration.\n     * @param {...*} [args] The arguments to invoke each method with.\n     * @returns {Array} Returns the array of results.\n     * @example\n     *\n     * _.invokeMap([[5, 1, 7], [3, 2, 1]], 'sort');\n     * // => [[1, 5, 7], [1, 2, 3]]\n     *\n     * _.invokeMap([123, 456], String.prototype.split, '');\n     * // => [['1', '2', '3'], ['4', '5', '6']]\n     */\n    var invokeMap = baseRest(function(collection, path, args) {\n      var index = -1,\n          isFunc = typeof path == 'function',\n          result = isArrayLike(collection) ? Array(collection.length) : [];\n\n      baseEach(collection, function(value) {\n        result[++index] = isFunc ? apply(path, value, args) : baseInvoke(value, path, args);\n      });\n      return result;\n    });\n\n    /**\n     * Creates an object composed of keys generated from the results of running\n     * each element of `collection` thru `iteratee`. The corresponding value of\n     * each key is the last element responsible for generating the key. The\n     * iteratee is invoked with one argument: (value).\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Collection\n     * @param {Array|Object} collection The collection to iterate over.\n     * @param {Function} [iteratee=_.identity] The iteratee to transform keys.\n     * @returns {Object} Returns the composed aggregate object.\n     * @example\n     *\n     * var array = [\n     *   { 'dir': 'left', 'code': 97 },\n     *   { 'dir': 'right', 'code': 100 }\n     * ];\n     *\n     * _.keyBy(array, function(o) {\n     *   return String.fromCharCode(o.code);\n     * });\n     * // => { 'a': { 'dir': 'left', 'code': 97 }, 'd': { 'dir': 'right', 'code': 100 } }\n     *\n     * _.keyBy(array, 'dir');\n     * // => { 'left': { 'dir': 'left', 'code': 97 }, 'right': { 'dir': 'right', 'code': 100 } }\n     */\n    var keyBy = createAggregator(function(result, value, key) {\n      baseAssignValue(result, key, value);\n    });\n\n    /**\n     * Creates an array of values by running each element in `collection` thru\n     * `iteratee`. The iteratee is invoked with three arguments:\n     * (value, index|key, collection).\n     *\n     * Many lodash methods are guarded to work as iteratees for methods like\n     * `_.every`, `_.filter`, `_.map`, `_.mapValues`, `_.reject`, and `_.some`.\n     *\n     * The guarded methods are:\n     * `ary`, `chunk`, `curry`, `curryRight`, `drop`, `dropRight`, `every`,\n     * `fill`, `invert`, `parseInt`, `random`, `range`, `rangeRight`, `repeat`,\n     * `sampleSize`, `slice`, `some`, `sortBy`, `split`, `take`, `takeRight`,\n     * `template`, `trim`, `trimEnd`, `trimStart`, and `words`\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Collection\n     * @param {Array|Object} collection The collection to iterate over.\n     * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n     * @returns {Array} Returns the new mapped array.\n     * @example\n     *\n     * function square(n) {\n     *   return n * n;\n     * }\n     *\n     * _.map([4, 8], square);\n     * // => [16, 64]\n     *\n     * _.map({ 'a': 4, 'b': 8 }, square);\n     * // => [16, 64] (iteration order is not guaranteed)\n     *\n     * var users = [\n     *   { 'user': 'barney' },\n     *   { 'user': 'fred' }\n     * ];\n     *\n     * // The `_.property` iteratee shorthand.\n     * _.map(users, 'user');\n     * // => ['barney', 'fred']\n     */\n    function map(collection, iteratee) {\n      var func = isArray(collection) ? arrayMap : baseMap;\n      return func(collection, getIteratee(iteratee, 3));\n    }\n\n    /**\n     * This method is like `_.sortBy` except that it allows specifying the sort\n     * orders of the iteratees to sort by. If `orders` is unspecified, all values\n     * are sorted in ascending order. Otherwise, specify an order of \"desc\" for\n     * descending or \"asc\" for ascending sort order of corresponding values.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Collection\n     * @param {Array|Object} collection The collection to iterate over.\n     * @param {Array[]|Function[]|Object[]|string[]} [iteratees=[_.identity]]\n     *  The iteratees to sort by.\n     * @param {string[]} [orders] The sort orders of `iteratees`.\n     * @param- {Object} [guard] Enables use as an iteratee for methods like `_.reduce`.\n     * @returns {Array} Returns the new sorted array.\n     * @example\n     *\n     * var users = [\n     *   { 'user': 'fred',   'age': 48 },\n     *   { 'user': 'barney', 'age': 34 },\n     *   { 'user': 'fred',   'age': 40 },\n     *   { 'user': 'barney', 'age': 36 }\n     * ];\n     *\n     * // Sort by `user` in ascending order and by `age` in descending order.\n     * _.orderBy(users, ['user', 'age'], ['asc', 'desc']);\n     * // => objects for [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 40]]\n     */\n    function orderBy(collection, iteratees, orders, guard) {\n      if (collection == null) {\n        return [];\n      }\n      if (!isArray(iteratees)) {\n        iteratees = iteratees == null ? [] : [iteratees];\n      }\n      orders = guard ? undefined : orders;\n      if (!isArray(orders)) {\n        orders = orders == null ? [] : [orders];\n      }\n      return baseOrderBy(collection, iteratees, orders);\n    }\n\n    /**\n     * Creates an array of elements split into two groups, the first of which\n     * contains elements `predicate` returns truthy for, the second of which\n     * contains elements `predicate` returns falsey for. The predicate is\n     * invoked with one argument: (value).\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category Collection\n     * @param {Array|Object} collection The collection to iterate over.\n     * @param {Function} [predicate=_.identity] The function invoked per iteration.\n     * @returns {Array} Returns the array of grouped elements.\n     * @example\n     *\n     * var users = [\n     *   { 'user': 'barney',  'age': 36, 'active': false },\n     *   { 'user': 'fred',    'age': 40, 'active': true },\n     *   { 'user': 'pebbles', 'age': 1,  'active': false }\n     * ];\n     *\n     * _.partition(users, function(o) { return o.active; });\n     * // => objects for [['fred'], ['barney', 'pebbles']]\n     *\n     * // The `_.matches` iteratee shorthand.\n     * _.partition(users, { 'age': 1, 'active': false });\n     * // => objects for [['pebbles'], ['barney', 'fred']]\n     *\n     * // The `_.matchesProperty` iteratee shorthand.\n     * _.partition(users, ['active', false]);\n     * // => objects for [['barney', 'pebbles'], ['fred']]\n     *\n     * // The `_.property` iteratee shorthand.\n     * _.partition(users, 'active');\n     * // => objects for [['fred'], ['barney', 'pebbles']]\n     */\n    var partition = createAggregator(function(result, value, key) {\n      result[key ? 0 : 1].push(value);\n    }, function() { return [[], []]; });\n\n    /**\n     * Reduces `collection` to a value which is the accumulated result of running\n     * each element in `collection` thru `iteratee`, where each successive\n     * invocation is supplied the return value of the previous. If `accumulator`\n     * is not given, the first element of `collection` is used as the initial\n     * value. The iteratee is invoked with four arguments:\n     * (accumulator, value, index|key, collection).\n     *\n     * Many lodash methods are guarded to work as iteratees for methods like\n     * `_.reduce`, `_.reduceRight`, and `_.transform`.\n     *\n     * The guarded methods are:\n     * `assign`, `defaults`, `defaultsDeep`, `includes`, `merge`, `orderBy`,\n     * and `sortBy`\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Collection\n     * @param {Array|Object} collection The collection to iterate over.\n     * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n     * @param {*} [accumulator] The initial value.\n     * @returns {*} Returns the accumulated value.\n     * @see _.reduceRight\n     * @example\n     *\n     * _.reduce([1, 2], function(sum, n) {\n     *   return sum + n;\n     * }, 0);\n     * // => 3\n     *\n     * _.reduce({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) {\n     *   (result[value] || (result[value] = [])).push(key);\n     *   return result;\n     * }, {});\n     * // => { '1': ['a', 'c'], '2': ['b'] } (iteration order is not guaranteed)\n     */\n    function reduce(collection, iteratee, accumulator) {\n      var func = isArray(collection) ? arrayReduce : baseReduce,\n          initAccum = arguments.length < 3;\n\n      return func(collection, getIteratee(iteratee, 4), accumulator, initAccum, baseEach);\n    }\n\n    /**\n     * This method is like `_.reduce` except that it iterates over elements of\n     * `collection` from right to left.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Collection\n     * @param {Array|Object} collection The collection to iterate over.\n     * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n     * @param {*} [accumulator] The initial value.\n     * @returns {*} Returns the accumulated value.\n     * @see _.reduce\n     * @example\n     *\n     * var array = [[0, 1], [2, 3], [4, 5]];\n     *\n     * _.reduceRight(array, function(flattened, other) {\n     *   return flattened.concat(other);\n     * }, []);\n     * // => [4, 5, 2, 3, 0, 1]\n     */\n    function reduceRight(collection, iteratee, accumulator) {\n      var func = isArray(collection) ? arrayReduceRight : baseReduce,\n          initAccum = arguments.length < 3;\n\n      return func(collection, getIteratee(iteratee, 4), accumulator, initAccum, baseEachRight);\n    }\n\n    /**\n     * The opposite of `_.filter`; this method returns the elements of `collection`\n     * that `predicate` does **not** return truthy for.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Collection\n     * @param {Array|Object} collection The collection to iterate over.\n     * @param {Function} [predicate=_.identity] The function invoked per iteration.\n     * @returns {Array} Returns the new filtered array.\n     * @see _.filter\n     * @example\n     *\n     * var users = [\n     *   { 'user': 'barney', 'age': 36, 'active': false },\n     *   { 'user': 'fred',   'age': 40, 'active': true }\n     * ];\n     *\n     * _.reject(users, function(o) { return !o.active; });\n     * // => objects for ['fred']\n     *\n     * // The `_.matches` iteratee shorthand.\n     * _.reject(users, { 'age': 40, 'active': true });\n     * // => objects for ['barney']\n     *\n     * // The `_.matchesProperty` iteratee shorthand.\n     * _.reject(users, ['active', false]);\n     * // => objects for ['fred']\n     *\n     * // The `_.property` iteratee shorthand.\n     * _.reject(users, 'active');\n     * // => objects for ['barney']\n     */\n    function reject(collection, predicate) {\n      var func = isArray(collection) ? arrayFilter : baseFilter;\n      return func(collection, negate(getIteratee(predicate, 3)));\n    }\n\n    /**\n     * Gets a random element from `collection`.\n     *\n     * @static\n     * @memberOf _\n     * @since 2.0.0\n     * @category Collection\n     * @param {Array|Object} collection The collection to sample.\n     * @returns {*} Returns the random element.\n     * @example\n     *\n     * _.sample([1, 2, 3, 4]);\n     * // => 2\n     */\n    function sample(collection) {\n      var func = isArray(collection) ? arraySample : baseSample;\n      return func(collection);\n    }\n\n    /**\n     * Gets `n` random elements at unique keys from `collection` up to the\n     * size of `collection`.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Collection\n     * @param {Array|Object} collection The collection to sample.\n     * @param {number} [n=1] The number of elements to sample.\n     * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n     * @returns {Array} Returns the random elements.\n     * @example\n     *\n     * _.sampleSize([1, 2, 3], 2);\n     * // => [3, 1]\n     *\n     * _.sampleSize([1, 2, 3], 4);\n     * // => [2, 3, 1]\n     */\n    function sampleSize(collection, n, guard) {\n      if ((guard ? isIterateeCall(collection, n, guard) : n === undefined)) {\n        n = 1;\n      } else {\n        n = toInteger(n);\n      }\n      var func = isArray(collection) ? arraySampleSize : baseSampleSize;\n      return func(collection, n);\n    }\n\n    /**\n     * Creates an array of shuffled values, using a version of the\n     * [Fisher-Yates shuffle](https://en.wikipedia.org/wiki/Fisher-Yates_shuffle).\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Collection\n     * @param {Array|Object} collection The collection to shuffle.\n     * @returns {Array} Returns the new shuffled array.\n     * @example\n     *\n     * _.shuffle([1, 2, 3, 4]);\n     * // => [4, 1, 3, 2]\n     */\n    function shuffle(collection) {\n      var func = isArray(collection) ? arrayShuffle : baseShuffle;\n      return func(collection);\n    }\n\n    /**\n     * Gets the size of `collection` by returning its length for array-like\n     * values or the number of own enumerable string keyed properties for objects.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Collection\n     * @param {Array|Object|string} collection The collection to inspect.\n     * @returns {number} Returns the collection size.\n     * @example\n     *\n     * _.size([1, 2, 3]);\n     * // => 3\n     *\n     * _.size({ 'a': 1, 'b': 2 });\n     * // => 2\n     *\n     * _.size('pebbles');\n     * // => 7\n     */\n    function size(collection) {\n      if (collection == null) {\n        return 0;\n      }\n      if (isArrayLike(collection)) {\n        return isString(collection) ? stringSize(collection) : collection.length;\n      }\n      var tag = getTag(collection);\n      if (tag == mapTag || tag == setTag) {\n        return collection.size;\n      }\n      return baseKeys(collection).length;\n    }\n\n    /**\n     * Checks if `predicate` returns truthy for **any** element of `collection`.\n     * Iteration is stopped once `predicate` returns truthy. The predicate is\n     * invoked with three arguments: (value, index|key, collection).\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Collection\n     * @param {Array|Object} collection The collection to iterate over.\n     * @param {Function} [predicate=_.identity] The function invoked per iteration.\n     * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n     * @returns {boolean} Returns `true` if any element passes the predicate check,\n     *  else `false`.\n     * @example\n     *\n     * _.some([null, 0, 'yes', false], Boolean);\n     * // => true\n     *\n     * var users = [\n     *   { 'user': 'barney', 'active': true },\n     *   { 'user': 'fred',   'active': false }\n     * ];\n     *\n     * // The `_.matches` iteratee shorthand.\n     * _.some(users, { 'user': 'barney', 'active': false });\n     * // => false\n     *\n     * // The `_.matchesProperty` iteratee shorthand.\n     * _.some(users, ['active', false]);\n     * // => true\n     *\n     * // The `_.property` iteratee shorthand.\n     * _.some(users, 'active');\n     * // => true\n     */\n    function some(collection, predicate, guard) {\n      var func = isArray(collection) ? arraySome : baseSome;\n      if (guard && isIterateeCall(collection, predicate, guard)) {\n        predicate = undefined;\n      }\n      return func(collection, getIteratee(predicate, 3));\n    }\n\n    /**\n     * Creates an array of elements, sorted in ascending order by the results of\n     * running each element in a collection thru each iteratee. This method\n     * performs a stable sort, that is, it preserves the original sort order of\n     * equal elements. The iteratees are invoked with one argument: (value).\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Collection\n     * @param {Array|Object} collection The collection to iterate over.\n     * @param {...(Function|Function[])} [iteratees=[_.identity]]\n     *  The iteratees to sort by.\n     * @returns {Array} Returns the new sorted array.\n     * @example\n     *\n     * var users = [\n     *   { 'user': 'fred',   'age': 48 },\n     *   { 'user': 'barney', 'age': 36 },\n     *   { 'user': 'fred',   'age': 30 },\n     *   { 'user': 'barney', 'age': 34 }\n     * ];\n     *\n     * _.sortBy(users, [function(o) { return o.user; }]);\n     * // => objects for [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 30]]\n     *\n     * _.sortBy(users, ['user', 'age']);\n     * // => objects for [['barney', 34], ['barney', 36], ['fred', 30], ['fred', 48]]\n     */\n    var sortBy = baseRest(function(collection, iteratees) {\n      if (collection == null) {\n        return [];\n      }\n      var length = iteratees.length;\n      if (length > 1 && isIterateeCall(collection, iteratees[0], iteratees[1])) {\n        iteratees = [];\n      } else if (length > 2 && isIterateeCall(iteratees[0], iteratees[1], iteratees[2])) {\n        iteratees = [iteratees[0]];\n      }\n      return baseOrderBy(collection, baseFlatten(iteratees, 1), []);\n    });\n\n    /*------------------------------------------------------------------------*/\n\n    /**\n     * Gets the timestamp of the number of milliseconds that have elapsed since\n     * the Unix epoch (1 January 1970 00:00:00 UTC).\n     *\n     * @static\n     * @memberOf _\n     * @since 2.4.0\n     * @category Date\n     * @returns {number} Returns the timestamp.\n     * @example\n     *\n     * _.defer(function(stamp) {\n     *   console.log(_.now() - stamp);\n     * }, _.now());\n     * // => Logs the number of milliseconds it took for the deferred invocation.\n     */\n    var now = ctxNow || function() {\n      return root.Date.now();\n    };\n\n    /*------------------------------------------------------------------------*/\n\n    /**\n     * The opposite of `_.before`; this method creates a function that invokes\n     * `func` once it's called `n` or more times.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Function\n     * @param {number} n The number of calls before `func` is invoked.\n     * @param {Function} func The function to restrict.\n     * @returns {Function} Returns the new restricted function.\n     * @example\n     *\n     * var saves = ['profile', 'settings'];\n     *\n     * var done = _.after(saves.length, function() {\n     *   console.log('done saving!');\n     * });\n     *\n     * _.forEach(saves, function(type) {\n     *   asyncSave({ 'type': type, 'complete': done });\n     * });\n     * // => Logs 'done saving!' after the two async saves have completed.\n     */\n    function after(n, func) {\n      if (typeof func != 'function') {\n        throw new TypeError(FUNC_ERROR_TEXT);\n      }\n      n = toInteger(n);\n      return function() {\n        if (--n < 1) {\n          return func.apply(this, arguments);\n        }\n      };\n    }\n\n    /**\n     * Creates a function that invokes `func`, with up to `n` arguments,\n     * ignoring any additional arguments.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category Function\n     * @param {Function} func The function to cap arguments for.\n     * @param {number} [n=func.length] The arity cap.\n     * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n     * @returns {Function} Returns the new capped function.\n     * @example\n     *\n     * _.map(['6', '8', '10'], _.ary(parseInt, 1));\n     * // => [6, 8, 10]\n     */\n    function ary(func, n, guard) {\n      n = guard ? undefined : n;\n      n = (func && n == null) ? func.length : n;\n      return createWrap(func, WRAP_ARY_FLAG, undefined, undefined, undefined, undefined, n);\n    }\n\n    /**\n     * Creates a function that invokes `func`, with the `this` binding and arguments\n     * of the created function, while it's called less than `n` times. Subsequent\n     * calls to the created function return the result of the last `func` invocation.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category Function\n     * @param {number} n The number of calls at which `func` is no longer invoked.\n     * @param {Function} func The function to restrict.\n     * @returns {Function} Returns the new restricted function.\n     * @example\n     *\n     * jQuery(element).on('click', _.before(5, addContactToList));\n     * // => Allows adding up to 4 contacts to the list.\n     */\n    function before(n, func) {\n      var result;\n      if (typeof func != 'function') {\n        throw new TypeError(FUNC_ERROR_TEXT);\n      }\n      n = toInteger(n);\n      return function() {\n        if (--n > 0) {\n          result = func.apply(this, arguments);\n        }\n        if (n <= 1) {\n          func = undefined;\n        }\n        return result;\n      };\n    }\n\n    /**\n     * Creates a function that invokes `func` with the `this` binding of `thisArg`\n     * and `partials` prepended to the arguments it receives.\n     *\n     * The `_.bind.placeholder` value, which defaults to `_` in monolithic builds,\n     * may be used as a placeholder for partially applied arguments.\n     *\n     * **Note:** Unlike native `Function#bind`, this method doesn't set the \"length\"\n     * property of bound functions.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Function\n     * @param {Function} func The function to bind.\n     * @param {*} thisArg The `this` binding of `func`.\n     * @param {...*} [partials] The arguments to be partially applied.\n     * @returns {Function} Returns the new bound function.\n     * @example\n     *\n     * function greet(greeting, punctuation) {\n     *   return greeting + ' ' + this.user + punctuation;\n     * }\n     *\n     * var object = { 'user': 'fred' };\n     *\n     * var bound = _.bind(greet, object, 'hi');\n     * bound('!');\n     * // => 'hi fred!'\n     *\n     * // Bound with placeholders.\n     * var bound = _.bind(greet, object, _, '!');\n     * bound('hi');\n     * // => 'hi fred!'\n     */\n    var bind = baseRest(function(func, thisArg, partials) {\n      var bitmask = WRAP_BIND_FLAG;\n      if (partials.length) {\n        var holders = replaceHolders(partials, getHolder(bind));\n        bitmask |= WRAP_PARTIAL_FLAG;\n      }\n      return createWrap(func, bitmask, thisArg, partials, holders);\n    });\n\n    /**\n     * Creates a function that invokes the method at `object[key]` with `partials`\n     * prepended to the arguments it receives.\n     *\n     * This method differs from `_.bind` by allowing bound functions to reference\n     * methods that may be redefined or don't yet exist. See\n     * [Peter Michaux's article](http://peter.michaux.ca/articles/lazy-function-definition-pattern)\n     * for more details.\n     *\n     * The `_.bindKey.placeholder` value, which defaults to `_` in monolithic\n     * builds, may be used as a placeholder for partially applied arguments.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.10.0\n     * @category Function\n     * @param {Object} object The object to invoke the method on.\n     * @param {string} key The key of the method.\n     * @param {...*} [partials] The arguments to be partially applied.\n     * @returns {Function} Returns the new bound function.\n     * @example\n     *\n     * var object = {\n     *   'user': 'fred',\n     *   'greet': function(greeting, punctuation) {\n     *     return greeting + ' ' + this.user + punctuation;\n     *   }\n     * };\n     *\n     * var bound = _.bindKey(object, 'greet', 'hi');\n     * bound('!');\n     * // => 'hi fred!'\n     *\n     * object.greet = function(greeting, punctuation) {\n     *   return greeting + 'ya ' + this.user + punctuation;\n     * };\n     *\n     * bound('!');\n     * // => 'hiya fred!'\n     *\n     * // Bound with placeholders.\n     * var bound = _.bindKey(object, 'greet', _, '!');\n     * bound('hi');\n     * // => 'hiya fred!'\n     */\n    var bindKey = baseRest(function(object, key, partials) {\n      var bitmask = WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG;\n      if (partials.length) {\n        var holders = replaceHolders(partials, getHolder(bindKey));\n        bitmask |= WRAP_PARTIAL_FLAG;\n      }\n      return createWrap(key, bitmask, object, partials, holders);\n    });\n\n    /**\n     * Creates a function that accepts arguments of `func` and either invokes\n     * `func` returning its result, if at least `arity` number of arguments have\n     * been provided, or returns a function that accepts the remaining `func`\n     * arguments, and so on. The arity of `func` may be specified if `func.length`\n     * is not sufficient.\n     *\n     * The `_.curry.placeholder` value, which defaults to `_` in monolithic builds,\n     * may be used as a placeholder for provided arguments.\n     *\n     * **Note:** This method doesn't set the \"length\" property of curried functions.\n     *\n     * @static\n     * @memberOf _\n     * @since 2.0.0\n     * @category Function\n     * @param {Function} func The function to curry.\n     * @param {number} [arity=func.length] The arity of `func`.\n     * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n     * @returns {Function} Returns the new curried function.\n     * @example\n     *\n     * var abc = function(a, b, c) {\n     *   return [a, b, c];\n     * };\n     *\n     * var curried = _.curry(abc);\n     *\n     * curried(1)(2)(3);\n     * // => [1, 2, 3]\n     *\n     * curried(1, 2)(3);\n     * // => [1, 2, 3]\n     *\n     * curried(1, 2, 3);\n     * // => [1, 2, 3]\n     *\n     * // Curried with placeholders.\n     * curried(1)(_, 3)(2);\n     * // => [1, 2, 3]\n     */\n    function curry(func, arity, guard) {\n      arity = guard ? undefined : arity;\n      var result = createWrap(func, WRAP_CURRY_FLAG, undefined, undefined, undefined, undefined, undefined, arity);\n      result.placeholder = curry.placeholder;\n      return result;\n    }\n\n    /**\n     * This method is like `_.curry` except that arguments are applied to `func`\n     * in the manner of `_.partialRight` instead of `_.partial`.\n     *\n     * The `_.curryRight.placeholder` value, which defaults to `_` in monolithic\n     * builds, may be used as a placeholder for provided arguments.\n     *\n     * **Note:** This method doesn't set the \"length\" property of curried functions.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category Function\n     * @param {Function} func The function to curry.\n     * @param {number} [arity=func.length] The arity of `func`.\n     * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n     * @returns {Function} Returns the new curried function.\n     * @example\n     *\n     * var abc = function(a, b, c) {\n     *   return [a, b, c];\n     * };\n     *\n     * var curried = _.curryRight(abc);\n     *\n     * curried(3)(2)(1);\n     * // => [1, 2, 3]\n     *\n     * curried(2, 3)(1);\n     * // => [1, 2, 3]\n     *\n     * curried(1, 2, 3);\n     * // => [1, 2, 3]\n     *\n     * // Curried with placeholders.\n     * curried(3)(1, _)(2);\n     * // => [1, 2, 3]\n     */\n    function curryRight(func, arity, guard) {\n      arity = guard ? undefined : arity;\n      var result = createWrap(func, WRAP_CURRY_RIGHT_FLAG, undefined, undefined, undefined, undefined, undefined, arity);\n      result.placeholder = curryRight.placeholder;\n      return result;\n    }\n\n    /**\n     * Creates a debounced function that delays invoking `func` until after `wait`\n     * milliseconds have elapsed since the last time the debounced function was\n     * invoked. The debounced function comes with a `cancel` method to cancel\n     * delayed `func` invocations and a `flush` method to immediately invoke them.\n     * Provide `options` to indicate whether `func` should be invoked on the\n     * leading and/or trailing edge of the `wait` timeout. The `func` is invoked\n     * with the last arguments provided to the debounced function. Subsequent\n     * calls to the debounced function return the result of the last `func`\n     * invocation.\n     *\n     * **Note:** If `leading` and `trailing` options are `true`, `func` is\n     * invoked on the trailing edge of the timeout only if the debounced function\n     * is invoked more than once during the `wait` timeout.\n     *\n     * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n     * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n     *\n     * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n     * for details over the differences between `_.debounce` and `_.throttle`.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Function\n     * @param {Function} func The function to debounce.\n     * @param {number} [wait=0] The number of milliseconds to delay.\n     * @param {Object} [options={}] The options object.\n     * @param {boolean} [options.leading=false]\n     *  Specify invoking on the leading edge of the timeout.\n     * @param {number} [options.maxWait]\n     *  The maximum time `func` is allowed to be delayed before it's invoked.\n     * @param {boolean} [options.trailing=true]\n     *  Specify invoking on the trailing edge of the timeout.\n     * @returns {Function} Returns the new debounced function.\n     * @example\n     *\n     * // Avoid costly calculations while the window size is in flux.\n     * jQuery(window).on('resize', _.debounce(calculateLayout, 150));\n     *\n     * // Invoke `sendMail` when clicked, debouncing subsequent calls.\n     * jQuery(element).on('click', _.debounce(sendMail, 300, {\n     *   'leading': true,\n     *   'trailing': false\n     * }));\n     *\n     * // Ensure `batchLog` is invoked once after 1 second of debounced calls.\n     * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });\n     * var source = new EventSource('/stream');\n     * jQuery(source).on('message', debounced);\n     *\n     * // Cancel the trailing debounced invocation.\n     * jQuery(window).on('popstate', debounced.cancel);\n     */\n    function debounce(func, wait, options) {\n      var lastArgs,\n          lastThis,\n          maxWait,\n          result,\n          timerId,\n          lastCallTime,\n          lastInvokeTime = 0,\n          leading = false,\n          maxing = false,\n          trailing = true;\n\n      if (typeof func != 'function') {\n        throw new TypeError(FUNC_ERROR_TEXT);\n      }\n      wait = toNumber(wait) || 0;\n      if (isObject(options)) {\n        leading = !!options.leading;\n        maxing = 'maxWait' in options;\n        maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;\n        trailing = 'trailing' in options ? !!options.trailing : trailing;\n      }\n\n      function invokeFunc(time) {\n        var args = lastArgs,\n            thisArg = lastThis;\n\n        lastArgs = lastThis = undefined;\n        lastInvokeTime = time;\n        result = func.apply(thisArg, args);\n        return result;\n      }\n\n      function leadingEdge(time) {\n        // Reset any `maxWait` timer.\n        lastInvokeTime = time;\n        // Start the timer for the trailing edge.\n        timerId = setTimeout(timerExpired, wait);\n        // Invoke the leading edge.\n        return leading ? invokeFunc(time) : result;\n      }\n\n      function remainingWait(time) {\n        var timeSinceLastCall = time - lastCallTime,\n            timeSinceLastInvoke = time - lastInvokeTime,\n            timeWaiting = wait - timeSinceLastCall;\n\n        return maxing\n          ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke)\n          : timeWaiting;\n      }\n\n      function shouldInvoke(time) {\n        var timeSinceLastCall = time - lastCallTime,\n            timeSinceLastInvoke = time - lastInvokeTime;\n\n        // Either this is the first call, activity has stopped and we're at the\n        // trailing edge, the system time has gone backwards and we're treating\n        // it as the trailing edge, or we've hit the `maxWait` limit.\n        return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||\n          (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));\n      }\n\n      function timerExpired() {\n        var time = now();\n        if (shouldInvoke(time)) {\n          return trailingEdge(time);\n        }\n        // Restart the timer.\n        timerId = setTimeout(timerExpired, remainingWait(time));\n      }\n\n      function trailingEdge(time) {\n        timerId = undefined;\n\n        // Only invoke if we have `lastArgs` which means `func` has been\n        // debounced at least once.\n        if (trailing && lastArgs) {\n          return invokeFunc(time);\n        }\n        lastArgs = lastThis = undefined;\n        return result;\n      }\n\n      function cancel() {\n        if (timerId !== undefined) {\n          clearTimeout(timerId);\n        }\n        lastInvokeTime = 0;\n        lastArgs = lastCallTime = lastThis = timerId = undefined;\n      }\n\n      function flush() {\n        return timerId === undefined ? result : trailingEdge(now());\n      }\n\n      function debounced() {\n        var time = now(),\n            isInvoking = shouldInvoke(time);\n\n        lastArgs = arguments;\n        lastThis = this;\n        lastCallTime = time;\n\n        if (isInvoking) {\n          if (timerId === undefined) {\n            return leadingEdge(lastCallTime);\n          }\n          if (maxing) {\n            // Handle invocations in a tight loop.\n            clearTimeout(timerId);\n            timerId = setTimeout(timerExpired, wait);\n            return invokeFunc(lastCallTime);\n          }\n        }\n        if (timerId === undefined) {\n          timerId = setTimeout(timerExpired, wait);\n        }\n        return result;\n      }\n      debounced.cancel = cancel;\n      debounced.flush = flush;\n      return debounced;\n    }\n\n    /**\n     * Defers invoking the `func` until the current call stack has cleared. Any\n     * additional arguments are provided to `func` when it's invoked.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Function\n     * @param {Function} func The function to defer.\n     * @param {...*} [args] The arguments to invoke `func` with.\n     * @returns {number} Returns the timer id.\n     * @example\n     *\n     * _.defer(function(text) {\n     *   console.log(text);\n     * }, 'deferred');\n     * // => Logs 'deferred' after one millisecond.\n     */\n    var defer = baseRest(function(func, args) {\n      return baseDelay(func, 1, args);\n    });\n\n    /**\n     * Invokes `func` after `wait` milliseconds. Any additional arguments are\n     * provided to `func` when it's invoked.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Function\n     * @param {Function} func The function to delay.\n     * @param {number} wait The number of milliseconds to delay invocation.\n     * @param {...*} [args] The arguments to invoke `func` with.\n     * @returns {number} Returns the timer id.\n     * @example\n     *\n     * _.delay(function(text) {\n     *   console.log(text);\n     * }, 1000, 'later');\n     * // => Logs 'later' after one second.\n     */\n    var delay = baseRest(function(func, wait, args) {\n      return baseDelay(func, toNumber(wait) || 0, args);\n    });\n\n    /**\n     * Creates a function that invokes `func` with arguments reversed.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Function\n     * @param {Function} func The function to flip arguments for.\n     * @returns {Function} Returns the new flipped function.\n     * @example\n     *\n     * var flipped = _.flip(function() {\n     *   return _.toArray(arguments);\n     * });\n     *\n     * flipped('a', 'b', 'c', 'd');\n     * // => ['d', 'c', 'b', 'a']\n     */\n    function flip(func) {\n      return createWrap(func, WRAP_FLIP_FLAG);\n    }\n\n    /**\n     * Creates a function that memoizes the result of `func`. If `resolver` is\n     * provided, it determines the cache key for storing the result based on the\n     * arguments provided to the memoized function. By default, the first argument\n     * provided to the memoized function is used as the map cache key. The `func`\n     * is invoked with the `this` binding of the memoized function.\n     *\n     * **Note:** The cache is exposed as the `cache` property on the memoized\n     * function. Its creation may be customized by replacing the `_.memoize.Cache`\n     * constructor with one whose instances implement the\n     * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object)\n     * method interface of `clear`, `delete`, `get`, `has`, and `set`.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Function\n     * @param {Function} func The function to have its output memoized.\n     * @param {Function} [resolver] The function to resolve the cache key.\n     * @returns {Function} Returns the new memoized function.\n     * @example\n     *\n     * var object = { 'a': 1, 'b': 2 };\n     * var other = { 'c': 3, 'd': 4 };\n     *\n     * var values = _.memoize(_.values);\n     * values(object);\n     * // => [1, 2]\n     *\n     * values(other);\n     * // => [3, 4]\n     *\n     * object.a = 2;\n     * values(object);\n     * // => [1, 2]\n     *\n     * // Modify the result cache.\n     * values.cache.set(object, ['a', 'b']);\n     * values(object);\n     * // => ['a', 'b']\n     *\n     * // Replace `_.memoize.Cache`.\n     * _.memoize.Cache = WeakMap;\n     */\n    function memoize(func, resolver) {\n      if (typeof func != 'function' || (resolver != null && typeof resolver != 'function')) {\n        throw new TypeError(FUNC_ERROR_TEXT);\n      }\n      var memoized = function() {\n        var args = arguments,\n            key = resolver ? resolver.apply(this, args) : args[0],\n            cache = memoized.cache;\n\n        if (cache.has(key)) {\n          return cache.get(key);\n        }\n        var result = func.apply(this, args);\n        memoized.cache = cache.set(key, result) || cache;\n        return result;\n      };\n      memoized.cache = new (memoize.Cache || MapCache);\n      return memoized;\n    }\n\n    // Expose `MapCache`.\n    memoize.Cache = MapCache;\n\n    /**\n     * Creates a function that negates the result of the predicate `func`. The\n     * `func` predicate is invoked with the `this` binding and arguments of the\n     * created function.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category Function\n     * @param {Function} predicate The predicate to negate.\n     * @returns {Function} Returns the new negated function.\n     * @example\n     *\n     * function isEven(n) {\n     *   return n % 2 == 0;\n     * }\n     *\n     * _.filter([1, 2, 3, 4, 5, 6], _.negate(isEven));\n     * // => [1, 3, 5]\n     */\n    function negate(predicate) {\n      if (typeof predicate != 'function') {\n        throw new TypeError(FUNC_ERROR_TEXT);\n      }\n      return function() {\n        var args = arguments;\n        switch (args.length) {\n          case 0: return !predicate.call(this);\n          case 1: return !predicate.call(this, args[0]);\n          case 2: return !predicate.call(this, args[0], args[1]);\n          case 3: return !predicate.call(this, args[0], args[1], args[2]);\n        }\n        return !predicate.apply(this, args);\n      };\n    }\n\n    /**\n     * Creates a function that is restricted to invoking `func` once. Repeat calls\n     * to the function return the value of the first invocation. The `func` is\n     * invoked with the `this` binding and arguments of the created function.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Function\n     * @param {Function} func The function to restrict.\n     * @returns {Function} Returns the new restricted function.\n     * @example\n     *\n     * var initialize = _.once(createApplication);\n     * initialize();\n     * initialize();\n     * // => `createApplication` is invoked once\n     */\n    function once(func) {\n      return before(2, func);\n    }\n\n    /**\n     * Creates a function that invokes `func` with its arguments transformed.\n     *\n     * @static\n     * @since 4.0.0\n     * @memberOf _\n     * @category Function\n     * @param {Function} func The function to wrap.\n     * @param {...(Function|Function[])} [transforms=[_.identity]]\n     *  The argument transforms.\n     * @returns {Function} Returns the new function.\n     * @example\n     *\n     * function doubled(n) {\n     *   return n * 2;\n     * }\n     *\n     * function square(n) {\n     *   return n * n;\n     * }\n     *\n     * var func = _.overArgs(function(x, y) {\n     *   return [x, y];\n     * }, [square, doubled]);\n     *\n     * func(9, 3);\n     * // => [81, 6]\n     *\n     * func(10, 5);\n     * // => [100, 10]\n     */\n    var overArgs = castRest(function(func, transforms) {\n      transforms = (transforms.length == 1 && isArray(transforms[0]))\n        ? arrayMap(transforms[0], baseUnary(getIteratee()))\n        : arrayMap(baseFlatten(transforms, 1), baseUnary(getIteratee()));\n\n      var funcsLength = transforms.length;\n      return baseRest(function(args) {\n        var index = -1,\n            length = nativeMin(args.length, funcsLength);\n\n        while (++index < length) {\n          args[index] = transforms[index].call(this, args[index]);\n        }\n        return apply(func, this, args);\n      });\n    });\n\n    /**\n     * Creates a function that invokes `func` with `partials` prepended to the\n     * arguments it receives. This method is like `_.bind` except it does **not**\n     * alter the `this` binding.\n     *\n     * The `_.partial.placeholder` value, which defaults to `_` in monolithic\n     * builds, may be used as a placeholder for partially applied arguments.\n     *\n     * **Note:** This method doesn't set the \"length\" property of partially\n     * applied functions.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.2.0\n     * @category Function\n     * @param {Function} func The function to partially apply arguments to.\n     * @param {...*} [partials] The arguments to be partially applied.\n     * @returns {Function} Returns the new partially applied function.\n     * @example\n     *\n     * function greet(greeting, name) {\n     *   return greeting + ' ' + name;\n     * }\n     *\n     * var sayHelloTo = _.partial(greet, 'hello');\n     * sayHelloTo('fred');\n     * // => 'hello fred'\n     *\n     * // Partially applied with placeholders.\n     * var greetFred = _.partial(greet, _, 'fred');\n     * greetFred('hi');\n     * // => 'hi fred'\n     */\n    var partial = baseRest(function(func, partials) {\n      var holders = replaceHolders(partials, getHolder(partial));\n      return createWrap(func, WRAP_PARTIAL_FLAG, undefined, partials, holders);\n    });\n\n    /**\n     * This method is like `_.partial` except that partially applied arguments\n     * are appended to the arguments it receives.\n     *\n     * The `_.partialRight.placeholder` value, which defaults to `_` in monolithic\n     * builds, may be used as a placeholder for partially applied arguments.\n     *\n     * **Note:** This method doesn't set the \"length\" property of partially\n     * applied functions.\n     *\n     * @static\n     * @memberOf _\n     * @since 1.0.0\n     * @category Function\n     * @param {Function} func The function to partially apply arguments to.\n     * @param {...*} [partials] The arguments to be partially applied.\n     * @returns {Function} Returns the new partially applied function.\n     * @example\n     *\n     * function greet(greeting, name) {\n     *   return greeting + ' ' + name;\n     * }\n     *\n     * var greetFred = _.partialRight(greet, 'fred');\n     * greetFred('hi');\n     * // => 'hi fred'\n     *\n     * // Partially applied with placeholders.\n     * var sayHelloTo = _.partialRight(greet, 'hello', _);\n     * sayHelloTo('fred');\n     * // => 'hello fred'\n     */\n    var partialRight = baseRest(function(func, partials) {\n      var holders = replaceHolders(partials, getHolder(partialRight));\n      return createWrap(func, WRAP_PARTIAL_RIGHT_FLAG, undefined, partials, holders);\n    });\n\n    /**\n     * Creates a function that invokes `func` with arguments arranged according\n     * to the specified `indexes` where the argument value at the first index is\n     * provided as the first argument, the argument value at the second index is\n     * provided as the second argument, and so on.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category Function\n     * @param {Function} func The function to rearrange arguments for.\n     * @param {...(number|number[])} indexes The arranged argument indexes.\n     * @returns {Function} Returns the new function.\n     * @example\n     *\n     * var rearged = _.rearg(function(a, b, c) {\n     *   return [a, b, c];\n     * }, [2, 0, 1]);\n     *\n     * rearged('b', 'c', 'a')\n     * // => ['a', 'b', 'c']\n     */\n    var rearg = flatRest(function(func, indexes) {\n      return createWrap(func, WRAP_REARG_FLAG, undefined, undefined, undefined, indexes);\n    });\n\n    /**\n     * Creates a function that invokes `func` with the `this` binding of the\n     * created function and arguments from `start` and beyond provided as\n     * an array.\n     *\n     * **Note:** This method is based on the\n     * [rest parameter](https://mdn.io/rest_parameters).\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Function\n     * @param {Function} func The function to apply a rest parameter to.\n     * @param {number} [start=func.length-1] The start position of the rest parameter.\n     * @returns {Function} Returns the new function.\n     * @example\n     *\n     * var say = _.rest(function(what, names) {\n     *   return what + ' ' + _.initial(names).join(', ') +\n     *     (_.size(names) > 1 ? ', & ' : '') + _.last(names);\n     * });\n     *\n     * say('hello', 'fred', 'barney', 'pebbles');\n     * // => 'hello fred, barney, & pebbles'\n     */\n    function rest(func, start) {\n      if (typeof func != 'function') {\n        throw new TypeError(FUNC_ERROR_TEXT);\n      }\n      start = start === undefined ? start : toInteger(start);\n      return baseRest(func, start);\n    }\n\n    /**\n     * Creates a function that invokes `func` with the `this` binding of the\n     * create function and an array of arguments much like\n     * [`Function#apply`](http://www.ecma-international.org/ecma-262/7.0/#sec-function.prototype.apply).\n     *\n     * **Note:** This method is based on the\n     * [spread operator](https://mdn.io/spread_operator).\n     *\n     * @static\n     * @memberOf _\n     * @since 3.2.0\n     * @category Function\n     * @param {Function} func The function to spread arguments over.\n     * @param {number} [start=0] The start position of the spread.\n     * @returns {Function} Returns the new function.\n     * @example\n     *\n     * var say = _.spread(function(who, what) {\n     *   return who + ' says ' + what;\n     * });\n     *\n     * say(['fred', 'hello']);\n     * // => 'fred says hello'\n     *\n     * var numbers = Promise.all([\n     *   Promise.resolve(40),\n     *   Promise.resolve(36)\n     * ]);\n     *\n     * numbers.then(_.spread(function(x, y) {\n     *   return x + y;\n     * }));\n     * // => a Promise of 76\n     */\n    function spread(func, start) {\n      if (typeof func != 'function') {\n        throw new TypeError(FUNC_ERROR_TEXT);\n      }\n      start = start == null ? 0 : nativeMax(toInteger(start), 0);\n      return baseRest(function(args) {\n        var array = args[start],\n            otherArgs = castSlice(args, 0, start);\n\n        if (array) {\n          arrayPush(otherArgs, array);\n        }\n        return apply(func, this, otherArgs);\n      });\n    }\n\n    /**\n     * Creates a throttled function that only invokes `func` at most once per\n     * every `wait` milliseconds. The throttled function comes with a `cancel`\n     * method to cancel delayed `func` invocations and a `flush` method to\n     * immediately invoke them. Provide `options` to indicate whether `func`\n     * should be invoked on the leading and/or trailing edge of the `wait`\n     * timeout. The `func` is invoked with the last arguments provided to the\n     * throttled function. Subsequent calls to the throttled function return the\n     * result of the last `func` invocation.\n     *\n     * **Note:** If `leading` and `trailing` options are `true`, `func` is\n     * invoked on the trailing edge of the timeout only if the throttled function\n     * is invoked more than once during the `wait` timeout.\n     *\n     * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n     * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n     *\n     * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n     * for details over the differences between `_.throttle` and `_.debounce`.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Function\n     * @param {Function} func The function to throttle.\n     * @param {number} [wait=0] The number of milliseconds to throttle invocations to.\n     * @param {Object} [options={}] The options object.\n     * @param {boolean} [options.leading=true]\n     *  Specify invoking on the leading edge of the timeout.\n     * @param {boolean} [options.trailing=true]\n     *  Specify invoking on the trailing edge of the timeout.\n     * @returns {Function} Returns the new throttled function.\n     * @example\n     *\n     * // Avoid excessively updating the position while scrolling.\n     * jQuery(window).on('scroll', _.throttle(updatePosition, 100));\n     *\n     * // Invoke `renewToken` when the click event is fired, but not more than once every 5 minutes.\n     * var throttled = _.throttle(renewToken, 300000, { 'trailing': false });\n     * jQuery(element).on('click', throttled);\n     *\n     * // Cancel the trailing throttled invocation.\n     * jQuery(window).on('popstate', throttled.cancel);\n     */\n    function throttle(func, wait, options) {\n      var leading = true,\n          trailing = true;\n\n      if (typeof func != 'function') {\n        throw new TypeError(FUNC_ERROR_TEXT);\n      }\n      if (isObject(options)) {\n        leading = 'leading' in options ? !!options.leading : leading;\n        trailing = 'trailing' in options ? !!options.trailing : trailing;\n      }\n      return debounce(func, wait, {\n        'leading': leading,\n        'maxWait': wait,\n        'trailing': trailing\n      });\n    }\n\n    /**\n     * Creates a function that accepts up to one argument, ignoring any\n     * additional arguments.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Function\n     * @param {Function} func The function to cap arguments for.\n     * @returns {Function} Returns the new capped function.\n     * @example\n     *\n     * _.map(['6', '8', '10'], _.unary(parseInt));\n     * // => [6, 8, 10]\n     */\n    function unary(func) {\n      return ary(func, 1);\n    }\n\n    /**\n     * Creates a function that provides `value` to `wrapper` as its first\n     * argument. Any additional arguments provided to the function are appended\n     * to those provided to the `wrapper`. The wrapper is invoked with the `this`\n     * binding of the created function.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Function\n     * @param {*} value The value to wrap.\n     * @param {Function} [wrapper=identity] The wrapper function.\n     * @returns {Function} Returns the new function.\n     * @example\n     *\n     * var p = _.wrap(_.escape, function(func, text) {\n     *   return '<p>' + func(text) + '</p>';\n     * });\n     *\n     * p('fred, barney, & pebbles');\n     * // => '<p>fred, barney, &amp; pebbles</p>'\n     */\n    function wrap(value, wrapper) {\n      return partial(castFunction(wrapper), value);\n    }\n\n    /*------------------------------------------------------------------------*/\n\n    /**\n     * Casts `value` as an array if it's not one.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.4.0\n     * @category Lang\n     * @param {*} value The value to inspect.\n     * @returns {Array} Returns the cast array.\n     * @example\n     *\n     * _.castArray(1);\n     * // => [1]\n     *\n     * _.castArray({ 'a': 1 });\n     * // => [{ 'a': 1 }]\n     *\n     * _.castArray('abc');\n     * // => ['abc']\n     *\n     * _.castArray(null);\n     * // => [null]\n     *\n     * _.castArray(undefined);\n     * // => [undefined]\n     *\n     * _.castArray();\n     * // => []\n     *\n     * var array = [1, 2, 3];\n     * console.log(_.castArray(array) === array);\n     * // => true\n     */\n    function castArray() {\n      if (!arguments.length) {\n        return [];\n      }\n      var value = arguments[0];\n      return isArray(value) ? value : [value];\n    }\n\n    /**\n     * Creates a shallow clone of `value`.\n     *\n     * **Note:** This method is loosely based on the\n     * [structured clone algorithm](https://mdn.io/Structured_clone_algorithm)\n     * and supports cloning arrays, array buffers, booleans, date objects, maps,\n     * numbers, `Object` objects, regexes, sets, strings, symbols, and typed\n     * arrays. The own enumerable properties of `arguments` objects are cloned\n     * as plain objects. An empty object is returned for uncloneable values such\n     * as error objects, functions, DOM nodes, and WeakMaps.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Lang\n     * @param {*} value The value to clone.\n     * @returns {*} Returns the cloned value.\n     * @see _.cloneDeep\n     * @example\n     *\n     * var objects = [{ 'a': 1 }, { 'b': 2 }];\n     *\n     * var shallow = _.clone(objects);\n     * console.log(shallow[0] === objects[0]);\n     * // => true\n     */\n    function clone(value) {\n      return baseClone(value, CLONE_SYMBOLS_FLAG);\n    }\n\n    /**\n     * This method is like `_.clone` except that it accepts `customizer` which\n     * is invoked to produce the cloned value. If `customizer` returns `undefined`,\n     * cloning is handled by the method instead. The `customizer` is invoked with\n     * up to four arguments; (value [, index|key, object, stack]).\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Lang\n     * @param {*} value The value to clone.\n     * @param {Function} [customizer] The function to customize cloning.\n     * @returns {*} Returns the cloned value.\n     * @see _.cloneDeepWith\n     * @example\n     *\n     * function customizer(value) {\n     *   if (_.isElement(value)) {\n     *     return value.cloneNode(false);\n     *   }\n     * }\n     *\n     * var el = _.cloneWith(document.body, customizer);\n     *\n     * console.log(el === document.body);\n     * // => false\n     * console.log(el.nodeName);\n     * // => 'BODY'\n     * console.log(el.childNodes.length);\n     * // => 0\n     */\n    function cloneWith(value, customizer) {\n      customizer = typeof customizer == 'function' ? customizer : undefined;\n      return baseClone(value, CLONE_SYMBOLS_FLAG, customizer);\n    }\n\n    /**\n     * This method is like `_.clone` except that it recursively clones `value`.\n     *\n     * @static\n     * @memberOf _\n     * @since 1.0.0\n     * @category Lang\n     * @param {*} value The value to recursively clone.\n     * @returns {*} Returns the deep cloned value.\n     * @see _.clone\n     * @example\n     *\n     * var objects = [{ 'a': 1 }, { 'b': 2 }];\n     *\n     * var deep = _.cloneDeep(objects);\n     * console.log(deep[0] === objects[0]);\n     * // => false\n     */\n    function cloneDeep(value) {\n      return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG);\n    }\n\n    /**\n     * This method is like `_.cloneWith` except that it recursively clones `value`.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Lang\n     * @param {*} value The value to recursively clone.\n     * @param {Function} [customizer] The function to customize cloning.\n     * @returns {*} Returns the deep cloned value.\n     * @see _.cloneWith\n     * @example\n     *\n     * function customizer(value) {\n     *   if (_.isElement(value)) {\n     *     return value.cloneNode(true);\n     *   }\n     * }\n     *\n     * var el = _.cloneDeepWith(document.body, customizer);\n     *\n     * console.log(el === document.body);\n     * // => false\n     * console.log(el.nodeName);\n     * // => 'BODY'\n     * console.log(el.childNodes.length);\n     * // => 20\n     */\n    function cloneDeepWith(value, customizer) {\n      customizer = typeof customizer == 'function' ? customizer : undefined;\n      return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG, customizer);\n    }\n\n    /**\n     * Checks if `object` conforms to `source` by invoking the predicate\n     * properties of `source` with the corresponding property values of `object`.\n     *\n     * **Note:** This method is equivalent to `_.conforms` when `source` is\n     * partially applied.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.14.0\n     * @category Lang\n     * @param {Object} object The object to inspect.\n     * @param {Object} source The object of property predicates to conform to.\n     * @returns {boolean} Returns `true` if `object` conforms, else `false`.\n     * @example\n     *\n     * var object = { 'a': 1, 'b': 2 };\n     *\n     * _.conformsTo(object, { 'b': function(n) { return n > 1; } });\n     * // => true\n     *\n     * _.conformsTo(object, { 'b': function(n) { return n > 2; } });\n     * // => false\n     */\n    function conformsTo(object, source) {\n      return source == null || baseConformsTo(object, source, keys(source));\n    }\n\n    /**\n     * Performs a\n     * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n     * comparison between two values to determine if they are equivalent.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Lang\n     * @param {*} value The value to compare.\n     * @param {*} other The other value to compare.\n     * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n     * @example\n     *\n     * var object = { 'a': 1 };\n     * var other = { 'a': 1 };\n     *\n     * _.eq(object, object);\n     * // => true\n     *\n     * _.eq(object, other);\n     * // => false\n     *\n     * _.eq('a', 'a');\n     * // => true\n     *\n     * _.eq('a', Object('a'));\n     * // => false\n     *\n     * _.eq(NaN, NaN);\n     * // => true\n     */\n    function eq(value, other) {\n      return value === other || (value !== value && other !== other);\n    }\n\n    /**\n     * Checks if `value` is greater than `other`.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.9.0\n     * @category Lang\n     * @param {*} value The value to compare.\n     * @param {*} other The other value to compare.\n     * @returns {boolean} Returns `true` if `value` is greater than `other`,\n     *  else `false`.\n     * @see _.lt\n     * @example\n     *\n     * _.gt(3, 1);\n     * // => true\n     *\n     * _.gt(3, 3);\n     * // => false\n     *\n     * _.gt(1, 3);\n     * // => false\n     */\n    var gt = createRelationalOperation(baseGt);\n\n    /**\n     * Checks if `value` is greater than or equal to `other`.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.9.0\n     * @category Lang\n     * @param {*} value The value to compare.\n     * @param {*} other The other value to compare.\n     * @returns {boolean} Returns `true` if `value` is greater than or equal to\n     *  `other`, else `false`.\n     * @see _.lte\n     * @example\n     *\n     * _.gte(3, 1);\n     * // => true\n     *\n     * _.gte(3, 3);\n     * // => true\n     *\n     * _.gte(1, 3);\n     * // => false\n     */\n    var gte = createRelationalOperation(function(value, other) {\n      return value >= other;\n    });\n\n    /**\n     * Checks if `value` is likely an `arguments` object.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Lang\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n     *  else `false`.\n     * @example\n     *\n     * _.isArguments(function() { return arguments; }());\n     * // => true\n     *\n     * _.isArguments([1, 2, 3]);\n     * // => false\n     */\n    var isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {\n      return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&\n        !propertyIsEnumerable.call(value, 'callee');\n    };\n\n    /**\n     * Checks if `value` is classified as an `Array` object.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Lang\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n     * @example\n     *\n     * _.isArray([1, 2, 3]);\n     * // => true\n     *\n     * _.isArray(document.body.children);\n     * // => false\n     *\n     * _.isArray('abc');\n     * // => false\n     *\n     * _.isArray(_.noop);\n     * // => false\n     */\n    var isArray = Array.isArray;\n\n    /**\n     * Checks if `value` is classified as an `ArrayBuffer` object.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.3.0\n     * @category Lang\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is an array buffer, else `false`.\n     * @example\n     *\n     * _.isArrayBuffer(new ArrayBuffer(2));\n     * // => true\n     *\n     * _.isArrayBuffer(new Array(2));\n     * // => false\n     */\n    var isArrayBuffer = nodeIsArrayBuffer ? baseUnary(nodeIsArrayBuffer) : baseIsArrayBuffer;\n\n    /**\n     * Checks if `value` is array-like. A value is considered array-like if it's\n     * not a function and has a `value.length` that's an integer greater than or\n     * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Lang\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is array-like, else `false`.\n     * @example\n     *\n     * _.isArrayLike([1, 2, 3]);\n     * // => true\n     *\n     * _.isArrayLike(document.body.children);\n     * // => true\n     *\n     * _.isArrayLike('abc');\n     * // => true\n     *\n     * _.isArrayLike(_.noop);\n     * // => false\n     */\n    function isArrayLike(value) {\n      return value != null && isLength(value.length) && !isFunction(value);\n    }\n\n    /**\n     * This method is like `_.isArrayLike` except that it also checks if `value`\n     * is an object.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Lang\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is an array-like object,\n     *  else `false`.\n     * @example\n     *\n     * _.isArrayLikeObject([1, 2, 3]);\n     * // => true\n     *\n     * _.isArrayLikeObject(document.body.children);\n     * // => true\n     *\n     * _.isArrayLikeObject('abc');\n     * // => false\n     *\n     * _.isArrayLikeObject(_.noop);\n     * // => false\n     */\n    function isArrayLikeObject(value) {\n      return isObjectLike(value) && isArrayLike(value);\n    }\n\n    /**\n     * Checks if `value` is classified as a boolean primitive or object.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Lang\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is a boolean, else `false`.\n     * @example\n     *\n     * _.isBoolean(false);\n     * // => true\n     *\n     * _.isBoolean(null);\n     * // => false\n     */\n    function isBoolean(value) {\n      return value === true || value === false ||\n        (isObjectLike(value) && baseGetTag(value) == boolTag);\n    }\n\n    /**\n     * Checks if `value` is a buffer.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.3.0\n     * @category Lang\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.\n     * @example\n     *\n     * _.isBuffer(new Buffer(2));\n     * // => true\n     *\n     * _.isBuffer(new Uint8Array(2));\n     * // => false\n     */\n    var isBuffer = nativeIsBuffer || stubFalse;\n\n    /**\n     * Checks if `value` is classified as a `Date` object.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Lang\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is a date object, else `false`.\n     * @example\n     *\n     * _.isDate(new Date);\n     * // => true\n     *\n     * _.isDate('Mon April 23 2012');\n     * // => false\n     */\n    var isDate = nodeIsDate ? baseUnary(nodeIsDate) : baseIsDate;\n\n    /**\n     * Checks if `value` is likely a DOM element.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Lang\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is a DOM element, else `false`.\n     * @example\n     *\n     * _.isElement(document.body);\n     * // => true\n     *\n     * _.isElement('<body>');\n     * // => false\n     */\n    function isElement(value) {\n      return isObjectLike(value) && value.nodeType === 1 && !isPlainObject(value);\n    }\n\n    /**\n     * Checks if `value` is an empty object, collection, map, or set.\n     *\n     * Objects are considered empty if they have no own enumerable string keyed\n     * properties.\n     *\n     * Array-like values such as `arguments` objects, arrays, buffers, strings, or\n     * jQuery-like collections are considered empty if they have a `length` of `0`.\n     * Similarly, maps and sets are considered empty if they have a `size` of `0`.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Lang\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is empty, else `false`.\n     * @example\n     *\n     * _.isEmpty(null);\n     * // => true\n     *\n     * _.isEmpty(true);\n     * // => true\n     *\n     * _.isEmpty(1);\n     * // => true\n     *\n     * _.isEmpty([1, 2, 3]);\n     * // => false\n     *\n     * _.isEmpty({ 'a': 1 });\n     * // => false\n     */\n    function isEmpty(value) {\n      if (value == null) {\n        return true;\n      }\n      if (isArrayLike(value) &&\n          (isArray(value) || typeof value == 'string' || typeof value.splice == 'function' ||\n            isBuffer(value) || isTypedArray(value) || isArguments(value))) {\n        return !value.length;\n      }\n      var tag = getTag(value);\n      if (tag == mapTag || tag == setTag) {\n        return !value.size;\n      }\n      if (isPrototype(value)) {\n        return !baseKeys(value).length;\n      }\n      for (var key in value) {\n        if (hasOwnProperty.call(value, key)) {\n          return false;\n        }\n      }\n      return true;\n    }\n\n    /**\n     * Performs a deep comparison between two values to determine if they are\n     * equivalent.\n     *\n     * **Note:** This method supports comparing arrays, array buffers, booleans,\n     * date objects, error objects, maps, numbers, `Object` objects, regexes,\n     * sets, strings, symbols, and typed arrays. `Object` objects are compared\n     * by their own, not inherited, enumerable properties. Functions and DOM\n     * nodes are compared by strict equality, i.e. `===`.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Lang\n     * @param {*} value The value to compare.\n     * @param {*} other The other value to compare.\n     * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n     * @example\n     *\n     * var object = { 'a': 1 };\n     * var other = { 'a': 1 };\n     *\n     * _.isEqual(object, other);\n     * // => true\n     *\n     * object === other;\n     * // => false\n     */\n    function isEqual(value, other) {\n      return baseIsEqual(value, other);\n    }\n\n    /**\n     * This method is like `_.isEqual` except that it accepts `customizer` which\n     * is invoked to compare values. If `customizer` returns `undefined`, comparisons\n     * are handled by the method instead. The `customizer` is invoked with up to\n     * six arguments: (objValue, othValue [, index|key, object, other, stack]).\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Lang\n     * @param {*} value The value to compare.\n     * @param {*} other The other value to compare.\n     * @param {Function} [customizer] The function to customize comparisons.\n     * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n     * @example\n     *\n     * function isGreeting(value) {\n     *   return /^h(?:i|ello)$/.test(value);\n     * }\n     *\n     * function customizer(objValue, othValue) {\n     *   if (isGreeting(objValue) && isGreeting(othValue)) {\n     *     return true;\n     *   }\n     * }\n     *\n     * var array = ['hello', 'goodbye'];\n     * var other = ['hi', 'goodbye'];\n     *\n     * _.isEqualWith(array, other, customizer);\n     * // => true\n     */\n    function isEqualWith(value, other, customizer) {\n      customizer = typeof customizer == 'function' ? customizer : undefined;\n      var result = customizer ? customizer(value, other) : undefined;\n      return result === undefined ? baseIsEqual(value, other, undefined, customizer) : !!result;\n    }\n\n    /**\n     * Checks if `value` is an `Error`, `EvalError`, `RangeError`, `ReferenceError`,\n     * `SyntaxError`, `TypeError`, or `URIError` object.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category Lang\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is an error object, else `false`.\n     * @example\n     *\n     * _.isError(new Error);\n     * // => true\n     *\n     * _.isError(Error);\n     * // => false\n     */\n    function isError(value) {\n      if (!isObjectLike(value)) {\n        return false;\n      }\n      var tag = baseGetTag(value);\n      return tag == errorTag || tag == domExcTag ||\n        (typeof value.message == 'string' && typeof value.name == 'string' && !isPlainObject(value));\n    }\n\n    /**\n     * Checks if `value` is a finite primitive number.\n     *\n     * **Note:** This method is based on\n     * [`Number.isFinite`](https://mdn.io/Number/isFinite).\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Lang\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is a finite number, else `false`.\n     * @example\n     *\n     * _.isFinite(3);\n     * // => true\n     *\n     * _.isFinite(Number.MIN_VALUE);\n     * // => true\n     *\n     * _.isFinite(Infinity);\n     * // => false\n     *\n     * _.isFinite('3');\n     * // => false\n     */\n    function isFinite(value) {\n      return typeof value == 'number' && nativeIsFinite(value);\n    }\n\n    /**\n     * Checks if `value` is classified as a `Function` object.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Lang\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n     * @example\n     *\n     * _.isFunction(_);\n     * // => true\n     *\n     * _.isFunction(/abc/);\n     * // => false\n     */\n    function isFunction(value) {\n      if (!isObject(value)) {\n        return false;\n      }\n      // The use of `Object#toString` avoids issues with the `typeof` operator\n      // in Safari 9 which returns 'object' for typed arrays and other constructors.\n      var tag = baseGetTag(value);\n      return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;\n    }\n\n    /**\n     * Checks if `value` is an integer.\n     *\n     * **Note:** This method is based on\n     * [`Number.isInteger`](https://mdn.io/Number/isInteger).\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Lang\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is an integer, else `false`.\n     * @example\n     *\n     * _.isInteger(3);\n     * // => true\n     *\n     * _.isInteger(Number.MIN_VALUE);\n     * // => false\n     *\n     * _.isInteger(Infinity);\n     * // => false\n     *\n     * _.isInteger('3');\n     * // => false\n     */\n    function isInteger(value) {\n      return typeof value == 'number' && value == toInteger(value);\n    }\n\n    /**\n     * Checks if `value` is a valid array-like length.\n     *\n     * **Note:** This method is loosely based on\n     * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Lang\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.\n     * @example\n     *\n     * _.isLength(3);\n     * // => true\n     *\n     * _.isLength(Number.MIN_VALUE);\n     * // => false\n     *\n     * _.isLength(Infinity);\n     * // => false\n     *\n     * _.isLength('3');\n     * // => false\n     */\n    function isLength(value) {\n      return typeof value == 'number' &&\n        value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;\n    }\n\n    /**\n     * Checks if `value` is the\n     * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n     * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Lang\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n     * @example\n     *\n     * _.isObject({});\n     * // => true\n     *\n     * _.isObject([1, 2, 3]);\n     * // => true\n     *\n     * _.isObject(_.noop);\n     * // => true\n     *\n     * _.isObject(null);\n     * // => false\n     */\n    function isObject(value) {\n      var type = typeof value;\n      return value != null && (type == 'object' || type == 'function');\n    }\n\n    /**\n     * Checks if `value` is object-like. A value is object-like if it's not `null`\n     * and has a `typeof` result of \"object\".\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Lang\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n     * @example\n     *\n     * _.isObjectLike({});\n     * // => true\n     *\n     * _.isObjectLike([1, 2, 3]);\n     * // => true\n     *\n     * _.isObjectLike(_.noop);\n     * // => false\n     *\n     * _.isObjectLike(null);\n     * // => false\n     */\n    function isObjectLike(value) {\n      return value != null && typeof value == 'object';\n    }\n\n    /**\n     * Checks if `value` is classified as a `Map` object.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.3.0\n     * @category Lang\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is a map, else `false`.\n     * @example\n     *\n     * _.isMap(new Map);\n     * // => true\n     *\n     * _.isMap(new WeakMap);\n     * // => false\n     */\n    var isMap = nodeIsMap ? baseUnary(nodeIsMap) : baseIsMap;\n\n    /**\n     * Performs a partial deep comparison between `object` and `source` to\n     * determine if `object` contains equivalent property values.\n     *\n     * **Note:** This method is equivalent to `_.matches` when `source` is\n     * partially applied.\n     *\n     * Partial comparisons will match empty array and empty object `source`\n     * values against any array or object value, respectively. See `_.isEqual`\n     * for a list of supported value comparisons.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category Lang\n     * @param {Object} object The object to inspect.\n     * @param {Object} source The object of property values to match.\n     * @returns {boolean} Returns `true` if `object` is a match, else `false`.\n     * @example\n     *\n     * var object = { 'a': 1, 'b': 2 };\n     *\n     * _.isMatch(object, { 'b': 2 });\n     * // => true\n     *\n     * _.isMatch(object, { 'b': 1 });\n     * // => false\n     */\n    function isMatch(object, source) {\n      return object === source || baseIsMatch(object, source, getMatchData(source));\n    }\n\n    /**\n     * This method is like `_.isMatch` except that it accepts `customizer` which\n     * is invoked to compare values. If `customizer` returns `undefined`, comparisons\n     * are handled by the method instead. The `customizer` is invoked with five\n     * arguments: (objValue, srcValue, index|key, object, source).\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Lang\n     * @param {Object} object The object to inspect.\n     * @param {Object} source The object of property values to match.\n     * @param {Function} [customizer] The function to customize comparisons.\n     * @returns {boolean} Returns `true` if `object` is a match, else `false`.\n     * @example\n     *\n     * function isGreeting(value) {\n     *   return /^h(?:i|ello)$/.test(value);\n     * }\n     *\n     * function customizer(objValue, srcValue) {\n     *   if (isGreeting(objValue) && isGreeting(srcValue)) {\n     *     return true;\n     *   }\n     * }\n     *\n     * var object = { 'greeting': 'hello' };\n     * var source = { 'greeting': 'hi' };\n     *\n     * _.isMatchWith(object, source, customizer);\n     * // => true\n     */\n    function isMatchWith(object, source, customizer) {\n      customizer = typeof customizer == 'function' ? customizer : undefined;\n      return baseIsMatch(object, source, getMatchData(source), customizer);\n    }\n\n    /**\n     * Checks if `value` is `NaN`.\n     *\n     * **Note:** This method is based on\n     * [`Number.isNaN`](https://mdn.io/Number/isNaN) and is not the same as\n     * global [`isNaN`](https://mdn.io/isNaN) which returns `true` for\n     * `undefined` and other non-number values.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Lang\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`.\n     * @example\n     *\n     * _.isNaN(NaN);\n     * // => true\n     *\n     * _.isNaN(new Number(NaN));\n     * // => true\n     *\n     * isNaN(undefined);\n     * // => true\n     *\n     * _.isNaN(undefined);\n     * // => false\n     */\n    function isNaN(value) {\n      // An `NaN` primitive is the only value that is not equal to itself.\n      // Perform the `toStringTag` check first to avoid errors with some\n      // ActiveX objects in IE.\n      return isNumber(value) && value != +value;\n    }\n\n    /**\n     * Checks if `value` is a pristine native function.\n     *\n     * **Note:** This method can't reliably detect native functions in the presence\n     * of the core-js package because core-js circumvents this kind of detection.\n     * Despite multiple requests, the core-js maintainer has made it clear: any\n     * attempt to fix the detection will be obstructed. As a result, we're left\n     * with little choice but to throw an error. Unfortunately, this also affects\n     * packages, like [babel-polyfill](https://www.npmjs.com/package/babel-polyfill),\n     * which rely on core-js.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category Lang\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is a native function,\n     *  else `false`.\n     * @example\n     *\n     * _.isNative(Array.prototype.push);\n     * // => true\n     *\n     * _.isNative(_);\n     * // => false\n     */\n    function isNative(value) {\n      if (isMaskable(value)) {\n        throw new Error(CORE_ERROR_TEXT);\n      }\n      return baseIsNative(value);\n    }\n\n    /**\n     * Checks if `value` is `null`.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Lang\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is `null`, else `false`.\n     * @example\n     *\n     * _.isNull(null);\n     * // => true\n     *\n     * _.isNull(void 0);\n     * // => false\n     */\n    function isNull(value) {\n      return value === null;\n    }\n\n    /**\n     * Checks if `value` is `null` or `undefined`.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Lang\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is nullish, else `false`.\n     * @example\n     *\n     * _.isNil(null);\n     * // => true\n     *\n     * _.isNil(void 0);\n     * // => true\n     *\n     * _.isNil(NaN);\n     * // => false\n     */\n    function isNil(value) {\n      return value == null;\n    }\n\n    /**\n     * Checks if `value` is classified as a `Number` primitive or object.\n     *\n     * **Note:** To exclude `Infinity`, `-Infinity`, and `NaN`, which are\n     * classified as numbers, use the `_.isFinite` method.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Lang\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is a number, else `false`.\n     * @example\n     *\n     * _.isNumber(3);\n     * // => true\n     *\n     * _.isNumber(Number.MIN_VALUE);\n     * // => true\n     *\n     * _.isNumber(Infinity);\n     * // => true\n     *\n     * _.isNumber('3');\n     * // => false\n     */\n    function isNumber(value) {\n      return typeof value == 'number' ||\n        (isObjectLike(value) && baseGetTag(value) == numberTag);\n    }\n\n    /**\n     * Checks if `value` is a plain object, that is, an object created by the\n     * `Object` constructor or one with a `[[Prototype]]` of `null`.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.8.0\n     * @category Lang\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.\n     * @example\n     *\n     * function Foo() {\n     *   this.a = 1;\n     * }\n     *\n     * _.isPlainObject(new Foo);\n     * // => false\n     *\n     * _.isPlainObject([1, 2, 3]);\n     * // => false\n     *\n     * _.isPlainObject({ 'x': 0, 'y': 0 });\n     * // => true\n     *\n     * _.isPlainObject(Object.create(null));\n     * // => true\n     */\n    function isPlainObject(value) {\n      if (!isObjectLike(value) || baseGetTag(value) != objectTag) {\n        return false;\n      }\n      var proto = getPrototype(value);\n      if (proto === null) {\n        return true;\n      }\n      var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor;\n      return typeof Ctor == 'function' && Ctor instanceof Ctor &&\n        funcToString.call(Ctor) == objectCtorString;\n    }\n\n    /**\n     * Checks if `value` is classified as a `RegExp` object.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.1.0\n     * @category Lang\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is a regexp, else `false`.\n     * @example\n     *\n     * _.isRegExp(/abc/);\n     * // => true\n     *\n     * _.isRegExp('/abc/');\n     * // => false\n     */\n    var isRegExp = nodeIsRegExp ? baseUnary(nodeIsRegExp) : baseIsRegExp;\n\n    /**\n     * Checks if `value` is a safe integer. An integer is safe if it's an IEEE-754\n     * double precision number which isn't the result of a rounded unsafe integer.\n     *\n     * **Note:** This method is based on\n     * [`Number.isSafeInteger`](https://mdn.io/Number/isSafeInteger).\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Lang\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is a safe integer, else `false`.\n     * @example\n     *\n     * _.isSafeInteger(3);\n     * // => true\n     *\n     * _.isSafeInteger(Number.MIN_VALUE);\n     * // => false\n     *\n     * _.isSafeInteger(Infinity);\n     * // => false\n     *\n     * _.isSafeInteger('3');\n     * // => false\n     */\n    function isSafeInteger(value) {\n      return isInteger(value) && value >= -MAX_SAFE_INTEGER && value <= MAX_SAFE_INTEGER;\n    }\n\n    /**\n     * Checks if `value` is classified as a `Set` object.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.3.0\n     * @category Lang\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is a set, else `false`.\n     * @example\n     *\n     * _.isSet(new Set);\n     * // => true\n     *\n     * _.isSet(new WeakSet);\n     * // => false\n     */\n    var isSet = nodeIsSet ? baseUnary(nodeIsSet) : baseIsSet;\n\n    /**\n     * Checks if `value` is classified as a `String` primitive or object.\n     *\n     * @static\n     * @since 0.1.0\n     * @memberOf _\n     * @category Lang\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is a string, else `false`.\n     * @example\n     *\n     * _.isString('abc');\n     * // => true\n     *\n     * _.isString(1);\n     * // => false\n     */\n    function isString(value) {\n      return typeof value == 'string' ||\n        (!isArray(value) && isObjectLike(value) && baseGetTag(value) == stringTag);\n    }\n\n    /**\n     * Checks if `value` is classified as a `Symbol` primitive or object.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Lang\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n     * @example\n     *\n     * _.isSymbol(Symbol.iterator);\n     * // => true\n     *\n     * _.isSymbol('abc');\n     * // => false\n     */\n    function isSymbol(value) {\n      return typeof value == 'symbol' ||\n        (isObjectLike(value) && baseGetTag(value) == symbolTag);\n    }\n\n    /**\n     * Checks if `value` is classified as a typed array.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category Lang\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n     * @example\n     *\n     * _.isTypedArray(new Uint8Array);\n     * // => true\n     *\n     * _.isTypedArray([]);\n     * // => false\n     */\n    var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;\n\n    /**\n     * Checks if `value` is `undefined`.\n     *\n     * @static\n     * @since 0.1.0\n     * @memberOf _\n     * @category Lang\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is `undefined`, else `false`.\n     * @example\n     *\n     * _.isUndefined(void 0);\n     * // => true\n     *\n     * _.isUndefined(null);\n     * // => false\n     */\n    function isUndefined(value) {\n      return value === undefined;\n    }\n\n    /**\n     * Checks if `value` is classified as a `WeakMap` object.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.3.0\n     * @category Lang\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is a weak map, else `false`.\n     * @example\n     *\n     * _.isWeakMap(new WeakMap);\n     * // => true\n     *\n     * _.isWeakMap(new Map);\n     * // => false\n     */\n    function isWeakMap(value) {\n      return isObjectLike(value) && getTag(value) == weakMapTag;\n    }\n\n    /**\n     * Checks if `value` is classified as a `WeakSet` object.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.3.0\n     * @category Lang\n     * @param {*} value The value to check.\n     * @returns {boolean} Returns `true` if `value` is a weak set, else `false`.\n     * @example\n     *\n     * _.isWeakSet(new WeakSet);\n     * // => true\n     *\n     * _.isWeakSet(new Set);\n     * // => false\n     */\n    function isWeakSet(value) {\n      return isObjectLike(value) && baseGetTag(value) == weakSetTag;\n    }\n\n    /**\n     * Checks if `value` is less than `other`.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.9.0\n     * @category Lang\n     * @param {*} value The value to compare.\n     * @param {*} other The other value to compare.\n     * @returns {boolean} Returns `true` if `value` is less than `other`,\n     *  else `false`.\n     * @see _.gt\n     * @example\n     *\n     * _.lt(1, 3);\n     * // => true\n     *\n     * _.lt(3, 3);\n     * // => false\n     *\n     * _.lt(3, 1);\n     * // => false\n     */\n    var lt = createRelationalOperation(baseLt);\n\n    /**\n     * Checks if `value` is less than or equal to `other`.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.9.0\n     * @category Lang\n     * @param {*} value The value to compare.\n     * @param {*} other The other value to compare.\n     * @returns {boolean} Returns `true` if `value` is less than or equal to\n     *  `other`, else `false`.\n     * @see _.gte\n     * @example\n     *\n     * _.lte(1, 3);\n     * // => true\n     *\n     * _.lte(3, 3);\n     * // => true\n     *\n     * _.lte(3, 1);\n     * // => false\n     */\n    var lte = createRelationalOperation(function(value, other) {\n      return value <= other;\n    });\n\n    /**\n     * Converts `value` to an array.\n     *\n     * @static\n     * @since 0.1.0\n     * @memberOf _\n     * @category Lang\n     * @param {*} value The value to convert.\n     * @returns {Array} Returns the converted array.\n     * @example\n     *\n     * _.toArray({ 'a': 1, 'b': 2 });\n     * // => [1, 2]\n     *\n     * _.toArray('abc');\n     * // => ['a', 'b', 'c']\n     *\n     * _.toArray(1);\n     * // => []\n     *\n     * _.toArray(null);\n     * // => []\n     */\n    function toArray(value) {\n      if (!value) {\n        return [];\n      }\n      if (isArrayLike(value)) {\n        return isString(value) ? stringToArray(value) : copyArray(value);\n      }\n      if (symIterator && value[symIterator]) {\n        return iteratorToArray(value[symIterator]());\n      }\n      var tag = getTag(value),\n          func = tag == mapTag ? mapToArray : (tag == setTag ? setToArray : values);\n\n      return func(value);\n    }\n\n    /**\n     * Converts `value` to a finite number.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.12.0\n     * @category Lang\n     * @param {*} value The value to convert.\n     * @returns {number} Returns the converted number.\n     * @example\n     *\n     * _.toFinite(3.2);\n     * // => 3.2\n     *\n     * _.toFinite(Number.MIN_VALUE);\n     * // => 5e-324\n     *\n     * _.toFinite(Infinity);\n     * // => 1.7976931348623157e+308\n     *\n     * _.toFinite('3.2');\n     * // => 3.2\n     */\n    function toFinite(value) {\n      if (!value) {\n        return value === 0 ? value : 0;\n      }\n      value = toNumber(value);\n      if (value === INFINITY || value === -INFINITY) {\n        var sign = (value < 0 ? -1 : 1);\n        return sign * MAX_INTEGER;\n      }\n      return value === value ? value : 0;\n    }\n\n    /**\n     * Converts `value` to an integer.\n     *\n     * **Note:** This method is loosely based on\n     * [`ToInteger`](http://www.ecma-international.org/ecma-262/7.0/#sec-tointeger).\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Lang\n     * @param {*} value The value to convert.\n     * @returns {number} Returns the converted integer.\n     * @example\n     *\n     * _.toInteger(3.2);\n     * // => 3\n     *\n     * _.toInteger(Number.MIN_VALUE);\n     * // => 0\n     *\n     * _.toInteger(Infinity);\n     * // => 1.7976931348623157e+308\n     *\n     * _.toInteger('3.2');\n     * // => 3\n     */\n    function toInteger(value) {\n      var result = toFinite(value),\n          remainder = result % 1;\n\n      return result === result ? (remainder ? result - remainder : result) : 0;\n    }\n\n    /**\n     * Converts `value` to an integer suitable for use as the length of an\n     * array-like object.\n     *\n     * **Note:** This method is based on\n     * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Lang\n     * @param {*} value The value to convert.\n     * @returns {number} Returns the converted integer.\n     * @example\n     *\n     * _.toLength(3.2);\n     * // => 3\n     *\n     * _.toLength(Number.MIN_VALUE);\n     * // => 0\n     *\n     * _.toLength(Infinity);\n     * // => 4294967295\n     *\n     * _.toLength('3.2');\n     * // => 3\n     */\n    function toLength(value) {\n      return value ? baseClamp(toInteger(value), 0, MAX_ARRAY_LENGTH) : 0;\n    }\n\n    /**\n     * Converts `value` to a number.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Lang\n     * @param {*} value The value to process.\n     * @returns {number} Returns the number.\n     * @example\n     *\n     * _.toNumber(3.2);\n     * // => 3.2\n     *\n     * _.toNumber(Number.MIN_VALUE);\n     * // => 5e-324\n     *\n     * _.toNumber(Infinity);\n     * // => Infinity\n     *\n     * _.toNumber('3.2');\n     * // => 3.2\n     */\n    function toNumber(value) {\n      if (typeof value == 'number') {\n        return value;\n      }\n      if (isSymbol(value)) {\n        return NAN;\n      }\n      if (isObject(value)) {\n        var other = typeof value.valueOf == 'function' ? value.valueOf() : value;\n        value = isObject(other) ? (other + '') : other;\n      }\n      if (typeof value != 'string') {\n        return value === 0 ? value : +value;\n      }\n      value = baseTrim(value);\n      var isBinary = reIsBinary.test(value);\n      return (isBinary || reIsOctal.test(value))\n        ? freeParseInt(value.slice(2), isBinary ? 2 : 8)\n        : (reIsBadHex.test(value) ? NAN : +value);\n    }\n\n    /**\n     * Converts `value` to a plain object flattening inherited enumerable string\n     * keyed properties of `value` to own properties of the plain object.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category Lang\n     * @param {*} value The value to convert.\n     * @returns {Object} Returns the converted plain object.\n     * @example\n     *\n     * function Foo() {\n     *   this.b = 2;\n     * }\n     *\n     * Foo.prototype.c = 3;\n     *\n     * _.assign({ 'a': 1 }, new Foo);\n     * // => { 'a': 1, 'b': 2 }\n     *\n     * _.assign({ 'a': 1 }, _.toPlainObject(new Foo));\n     * // => { 'a': 1, 'b': 2, 'c': 3 }\n     */\n    function toPlainObject(value) {\n      return copyObject(value, keysIn(value));\n    }\n\n    /**\n     * Converts `value` to a safe integer. A safe integer can be compared and\n     * represented correctly.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Lang\n     * @param {*} value The value to convert.\n     * @returns {number} Returns the converted integer.\n     * @example\n     *\n     * _.toSafeInteger(3.2);\n     * // => 3\n     *\n     * _.toSafeInteger(Number.MIN_VALUE);\n     * // => 0\n     *\n     * _.toSafeInteger(Infinity);\n     * // => 9007199254740991\n     *\n     * _.toSafeInteger('3.2');\n     * // => 3\n     */\n    function toSafeInteger(value) {\n      return value\n        ? baseClamp(toInteger(value), -MAX_SAFE_INTEGER, MAX_SAFE_INTEGER)\n        : (value === 0 ? value : 0);\n    }\n\n    /**\n     * Converts `value` to a string. An empty string is returned for `null`\n     * and `undefined` values. The sign of `-0` is preserved.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Lang\n     * @param {*} value The value to convert.\n     * @returns {string} Returns the converted string.\n     * @example\n     *\n     * _.toString(null);\n     * // => ''\n     *\n     * _.toString(-0);\n     * // => '-0'\n     *\n     * _.toString([1, 2, 3]);\n     * // => '1,2,3'\n     */\n    function toString(value) {\n      return value == null ? '' : baseToString(value);\n    }\n\n    /*------------------------------------------------------------------------*/\n\n    /**\n     * Assigns own enumerable string keyed properties of source objects to the\n     * destination object. Source objects are applied from left to right.\n     * Subsequent sources overwrite property assignments of previous sources.\n     *\n     * **Note:** This method mutates `object` and is loosely based on\n     * [`Object.assign`](https://mdn.io/Object/assign).\n     *\n     * @static\n     * @memberOf _\n     * @since 0.10.0\n     * @category Object\n     * @param {Object} object The destination object.\n     * @param {...Object} [sources] The source objects.\n     * @returns {Object} Returns `object`.\n     * @see _.assignIn\n     * @example\n     *\n     * function Foo() {\n     *   this.a = 1;\n     * }\n     *\n     * function Bar() {\n     *   this.c = 3;\n     * }\n     *\n     * Foo.prototype.b = 2;\n     * Bar.prototype.d = 4;\n     *\n     * _.assign({ 'a': 0 }, new Foo, new Bar);\n     * // => { 'a': 1, 'c': 3 }\n     */\n    var assign = createAssigner(function(object, source) {\n      if (isPrototype(source) || isArrayLike(source)) {\n        copyObject(source, keys(source), object);\n        return;\n      }\n      for (var key in source) {\n        if (hasOwnProperty.call(source, key)) {\n          assignValue(object, key, source[key]);\n        }\n      }\n    });\n\n    /**\n     * This method is like `_.assign` except that it iterates over own and\n     * inherited source properties.\n     *\n     * **Note:** This method mutates `object`.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @alias extend\n     * @category Object\n     * @param {Object} object The destination object.\n     * @param {...Object} [sources] The source objects.\n     * @returns {Object} Returns `object`.\n     * @see _.assign\n     * @example\n     *\n     * function Foo() {\n     *   this.a = 1;\n     * }\n     *\n     * function Bar() {\n     *   this.c = 3;\n     * }\n     *\n     * Foo.prototype.b = 2;\n     * Bar.prototype.d = 4;\n     *\n     * _.assignIn({ 'a': 0 }, new Foo, new Bar);\n     * // => { 'a': 1, 'b': 2, 'c': 3, 'd': 4 }\n     */\n    var assignIn = createAssigner(function(object, source) {\n      copyObject(source, keysIn(source), object);\n    });\n\n    /**\n     * This method is like `_.assignIn` except that it accepts `customizer`\n     * which is invoked to produce the assigned values. If `customizer` returns\n     * `undefined`, assignment is handled by the method instead. The `customizer`\n     * is invoked with five arguments: (objValue, srcValue, key, object, source).\n     *\n     * **Note:** This method mutates `object`.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @alias extendWith\n     * @category Object\n     * @param {Object} object The destination object.\n     * @param {...Object} sources The source objects.\n     * @param {Function} [customizer] The function to customize assigned values.\n     * @returns {Object} Returns `object`.\n     * @see _.assignWith\n     * @example\n     *\n     * function customizer(objValue, srcValue) {\n     *   return _.isUndefined(objValue) ? srcValue : objValue;\n     * }\n     *\n     * var defaults = _.partialRight(_.assignInWith, customizer);\n     *\n     * defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 });\n     * // => { 'a': 1, 'b': 2 }\n     */\n    var assignInWith = createAssigner(function(object, source, srcIndex, customizer) {\n      copyObject(source, keysIn(source), object, customizer);\n    });\n\n    /**\n     * This method is like `_.assign` except that it accepts `customizer`\n     * which is invoked to produce the assigned values. If `customizer` returns\n     * `undefined`, assignment is handled by the method instead. The `customizer`\n     * is invoked with five arguments: (objValue, srcValue, key, object, source).\n     *\n     * **Note:** This method mutates `object`.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Object\n     * @param {Object} object The destination object.\n     * @param {...Object} sources The source objects.\n     * @param {Function} [customizer] The function to customize assigned values.\n     * @returns {Object} Returns `object`.\n     * @see _.assignInWith\n     * @example\n     *\n     * function customizer(objValue, srcValue) {\n     *   return _.isUndefined(objValue) ? srcValue : objValue;\n     * }\n     *\n     * var defaults = _.partialRight(_.assignWith, customizer);\n     *\n     * defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 });\n     * // => { 'a': 1, 'b': 2 }\n     */\n    var assignWith = createAssigner(function(object, source, srcIndex, customizer) {\n      copyObject(source, keys(source), object, customizer);\n    });\n\n    /**\n     * Creates an array of values corresponding to `paths` of `object`.\n     *\n     * @static\n     * @memberOf _\n     * @since 1.0.0\n     * @category Object\n     * @param {Object} object The object to iterate over.\n     * @param {...(string|string[])} [paths] The property paths to pick.\n     * @returns {Array} Returns the picked values.\n     * @example\n     *\n     * var object = { 'a': [{ 'b': { 'c': 3 } }, 4] };\n     *\n     * _.at(object, ['a[0].b.c', 'a[1]']);\n     * // => [3, 4]\n     */\n    var at = flatRest(baseAt);\n\n    /**\n     * Creates an object that inherits from the `prototype` object. If a\n     * `properties` object is given, its own enumerable string keyed properties\n     * are assigned to the created object.\n     *\n     * @static\n     * @memberOf _\n     * @since 2.3.0\n     * @category Object\n     * @param {Object} prototype The object to inherit from.\n     * @param {Object} [properties] The properties to assign to the object.\n     * @returns {Object} Returns the new object.\n     * @example\n     *\n     * function Shape() {\n     *   this.x = 0;\n     *   this.y = 0;\n     * }\n     *\n     * function Circle() {\n     *   Shape.call(this);\n     * }\n     *\n     * Circle.prototype = _.create(Shape.prototype, {\n     *   'constructor': Circle\n     * });\n     *\n     * var circle = new Circle;\n     * circle instanceof Circle;\n     * // => true\n     *\n     * circle instanceof Shape;\n     * // => true\n     */\n    function create(prototype, properties) {\n      var result = baseCreate(prototype);\n      return properties == null ? result : baseAssign(result, properties);\n    }\n\n    /**\n     * Assigns own and inherited enumerable string keyed properties of source\n     * objects to the destination object for all destination properties that\n     * resolve to `undefined`. Source objects are applied from left to right.\n     * Once a property is set, additional values of the same property are ignored.\n     *\n     * **Note:** This method mutates `object`.\n     *\n     * @static\n     * @since 0.1.0\n     * @memberOf _\n     * @category Object\n     * @param {Object} object The destination object.\n     * @param {...Object} [sources] The source objects.\n     * @returns {Object} Returns `object`.\n     * @see _.defaultsDeep\n     * @example\n     *\n     * _.defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 });\n     * // => { 'a': 1, 'b': 2 }\n     */\n    var defaults = baseRest(function(object, sources) {\n      object = Object(object);\n\n      var index = -1;\n      var length = sources.length;\n      var guard = length > 2 ? sources[2] : undefined;\n\n      if (guard && isIterateeCall(sources[0], sources[1], guard)) {\n        length = 1;\n      }\n\n      while (++index < length) {\n        var source = sources[index];\n        var props = keysIn(source);\n        var propsIndex = -1;\n        var propsLength = props.length;\n\n        while (++propsIndex < propsLength) {\n          var key = props[propsIndex];\n          var value = object[key];\n\n          if (value === undefined ||\n              (eq(value, objectProto[key]) && !hasOwnProperty.call(object, key))) {\n            object[key] = source[key];\n          }\n        }\n      }\n\n      return object;\n    });\n\n    /**\n     * This method is like `_.defaults` except that it recursively assigns\n     * default properties.\n     *\n     * **Note:** This method mutates `object`.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.10.0\n     * @category Object\n     * @param {Object} object The destination object.\n     * @param {...Object} [sources] The source objects.\n     * @returns {Object} Returns `object`.\n     * @see _.defaults\n     * @example\n     *\n     * _.defaultsDeep({ 'a': { 'b': 2 } }, { 'a': { 'b': 1, 'c': 3 } });\n     * // => { 'a': { 'b': 2, 'c': 3 } }\n     */\n    var defaultsDeep = baseRest(function(args) {\n      args.push(undefined, customDefaultsMerge);\n      return apply(mergeWith, undefined, args);\n    });\n\n    /**\n     * This method is like `_.find` except that it returns the key of the first\n     * element `predicate` returns truthy for instead of the element itself.\n     *\n     * @static\n     * @memberOf _\n     * @since 1.1.0\n     * @category Object\n     * @param {Object} object The object to inspect.\n     * @param {Function} [predicate=_.identity] The function invoked per iteration.\n     * @returns {string|undefined} Returns the key of the matched element,\n     *  else `undefined`.\n     * @example\n     *\n     * var users = {\n     *   'barney':  { 'age': 36, 'active': true },\n     *   'fred':    { 'age': 40, 'active': false },\n     *   'pebbles': { 'age': 1,  'active': true }\n     * };\n     *\n     * _.findKey(users, function(o) { return o.age < 40; });\n     * // => 'barney' (iteration order is not guaranteed)\n     *\n     * // The `_.matches` iteratee shorthand.\n     * _.findKey(users, { 'age': 1, 'active': true });\n     * // => 'pebbles'\n     *\n     * // The `_.matchesProperty` iteratee shorthand.\n     * _.findKey(users, ['active', false]);\n     * // => 'fred'\n     *\n     * // The `_.property` iteratee shorthand.\n     * _.findKey(users, 'active');\n     * // => 'barney'\n     */\n    function findKey(object, predicate) {\n      return baseFindKey(object, getIteratee(predicate, 3), baseForOwn);\n    }\n\n    /**\n     * This method is like `_.findKey` except that it iterates over elements of\n     * a collection in the opposite order.\n     *\n     * @static\n     * @memberOf _\n     * @since 2.0.0\n     * @category Object\n     * @param {Object} object The object to inspect.\n     * @param {Function} [predicate=_.identity] The function invoked per iteration.\n     * @returns {string|undefined} Returns the key of the matched element,\n     *  else `undefined`.\n     * @example\n     *\n     * var users = {\n     *   'barney':  { 'age': 36, 'active': true },\n     *   'fred':    { 'age': 40, 'active': false },\n     *   'pebbles': { 'age': 1,  'active': true }\n     * };\n     *\n     * _.findLastKey(users, function(o) { return o.age < 40; });\n     * // => returns 'pebbles' assuming `_.findKey` returns 'barney'\n     *\n     * // The `_.matches` iteratee shorthand.\n     * _.findLastKey(users, { 'age': 36, 'active': true });\n     * // => 'barney'\n     *\n     * // The `_.matchesProperty` iteratee shorthand.\n     * _.findLastKey(users, ['active', false]);\n     * // => 'fred'\n     *\n     * // The `_.property` iteratee shorthand.\n     * _.findLastKey(users, 'active');\n     * // => 'pebbles'\n     */\n    function findLastKey(object, predicate) {\n      return baseFindKey(object, getIteratee(predicate, 3), baseForOwnRight);\n    }\n\n    /**\n     * Iterates over own and inherited enumerable string keyed properties of an\n     * object and invokes `iteratee` for each property. The iteratee is invoked\n     * with three arguments: (value, key, object). Iteratee functions may exit\n     * iteration early by explicitly returning `false`.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.3.0\n     * @category Object\n     * @param {Object} object The object to iterate over.\n     * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n     * @returns {Object} Returns `object`.\n     * @see _.forInRight\n     * @example\n     *\n     * function Foo() {\n     *   this.a = 1;\n     *   this.b = 2;\n     * }\n     *\n     * Foo.prototype.c = 3;\n     *\n     * _.forIn(new Foo, function(value, key) {\n     *   console.log(key);\n     * });\n     * // => Logs 'a', 'b', then 'c' (iteration order is not guaranteed).\n     */\n    function forIn(object, iteratee) {\n      return object == null\n        ? object\n        : baseFor(object, getIteratee(iteratee, 3), keysIn);\n    }\n\n    /**\n     * This method is like `_.forIn` except that it iterates over properties of\n     * `object` in the opposite order.\n     *\n     * @static\n     * @memberOf _\n     * @since 2.0.0\n     * @category Object\n     * @param {Object} object The object to iterate over.\n     * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n     * @returns {Object} Returns `object`.\n     * @see _.forIn\n     * @example\n     *\n     * function Foo() {\n     *   this.a = 1;\n     *   this.b = 2;\n     * }\n     *\n     * Foo.prototype.c = 3;\n     *\n     * _.forInRight(new Foo, function(value, key) {\n     *   console.log(key);\n     * });\n     * // => Logs 'c', 'b', then 'a' assuming `_.forIn` logs 'a', 'b', then 'c'.\n     */\n    function forInRight(object, iteratee) {\n      return object == null\n        ? object\n        : baseForRight(object, getIteratee(iteratee, 3), keysIn);\n    }\n\n    /**\n     * Iterates over own enumerable string keyed properties of an object and\n     * invokes `iteratee` for each property. The iteratee is invoked with three\n     * arguments: (value, key, object). Iteratee functions may exit iteration\n     * early by explicitly returning `false`.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.3.0\n     * @category Object\n     * @param {Object} object The object to iterate over.\n     * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n     * @returns {Object} Returns `object`.\n     * @see _.forOwnRight\n     * @example\n     *\n     * function Foo() {\n     *   this.a = 1;\n     *   this.b = 2;\n     * }\n     *\n     * Foo.prototype.c = 3;\n     *\n     * _.forOwn(new Foo, function(value, key) {\n     *   console.log(key);\n     * });\n     * // => Logs 'a' then 'b' (iteration order is not guaranteed).\n     */\n    function forOwn(object, iteratee) {\n      return object && baseForOwn(object, getIteratee(iteratee, 3));\n    }\n\n    /**\n     * This method is like `_.forOwn` except that it iterates over properties of\n     * `object` in the opposite order.\n     *\n     * @static\n     * @memberOf _\n     * @since 2.0.0\n     * @category Object\n     * @param {Object} object The object to iterate over.\n     * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n     * @returns {Object} Returns `object`.\n     * @see _.forOwn\n     * @example\n     *\n     * function Foo() {\n     *   this.a = 1;\n     *   this.b = 2;\n     * }\n     *\n     * Foo.prototype.c = 3;\n     *\n     * _.forOwnRight(new Foo, function(value, key) {\n     *   console.log(key);\n     * });\n     * // => Logs 'b' then 'a' assuming `_.forOwn` logs 'a' then 'b'.\n     */\n    function forOwnRight(object, iteratee) {\n      return object && baseForOwnRight(object, getIteratee(iteratee, 3));\n    }\n\n    /**\n     * Creates an array of function property names from own enumerable properties\n     * of `object`.\n     *\n     * @static\n     * @since 0.1.0\n     * @memberOf _\n     * @category Object\n     * @param {Object} object The object to inspect.\n     * @returns {Array} Returns the function names.\n     * @see _.functionsIn\n     * @example\n     *\n     * function Foo() {\n     *   this.a = _.constant('a');\n     *   this.b = _.constant('b');\n     * }\n     *\n     * Foo.prototype.c = _.constant('c');\n     *\n     * _.functions(new Foo);\n     * // => ['a', 'b']\n     */\n    function functions(object) {\n      return object == null ? [] : baseFunctions(object, keys(object));\n    }\n\n    /**\n     * Creates an array of function property names from own and inherited\n     * enumerable properties of `object`.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Object\n     * @param {Object} object The object to inspect.\n     * @returns {Array} Returns the function names.\n     * @see _.functions\n     * @example\n     *\n     * function Foo() {\n     *   this.a = _.constant('a');\n     *   this.b = _.constant('b');\n     * }\n     *\n     * Foo.prototype.c = _.constant('c');\n     *\n     * _.functionsIn(new Foo);\n     * // => ['a', 'b', 'c']\n     */\n    function functionsIn(object) {\n      return object == null ? [] : baseFunctions(object, keysIn(object));\n    }\n\n    /**\n     * Gets the value at `path` of `object`. If the resolved value is\n     * `undefined`, the `defaultValue` is returned in its place.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.7.0\n     * @category Object\n     * @param {Object} object The object to query.\n     * @param {Array|string} path The path of the property to get.\n     * @param {*} [defaultValue] The value returned for `undefined` resolved values.\n     * @returns {*} Returns the resolved value.\n     * @example\n     *\n     * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n     *\n     * _.get(object, 'a[0].b.c');\n     * // => 3\n     *\n     * _.get(object, ['a', '0', 'b', 'c']);\n     * // => 3\n     *\n     * _.get(object, 'a.b.c', 'default');\n     * // => 'default'\n     */\n    function get(object, path, defaultValue) {\n      var result = object == null ? undefined : baseGet(object, path);\n      return result === undefined ? defaultValue : result;\n    }\n\n    /**\n     * Checks if `path` is a direct property of `object`.\n     *\n     * @static\n     * @since 0.1.0\n     * @memberOf _\n     * @category Object\n     * @param {Object} object The object to query.\n     * @param {Array|string} path The path to check.\n     * @returns {boolean} Returns `true` if `path` exists, else `false`.\n     * @example\n     *\n     * var object = { 'a': { 'b': 2 } };\n     * var other = _.create({ 'a': _.create({ 'b': 2 }) });\n     *\n     * _.has(object, 'a');\n     * // => true\n     *\n     * _.has(object, 'a.b');\n     * // => true\n     *\n     * _.has(object, ['a', 'b']);\n     * // => true\n     *\n     * _.has(other, 'a');\n     * // => false\n     */\n    function has(object, path) {\n      return object != null && hasPath(object, path, baseHas);\n    }\n\n    /**\n     * Checks if `path` is a direct or inherited property of `object`.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Object\n     * @param {Object} object The object to query.\n     * @param {Array|string} path The path to check.\n     * @returns {boolean} Returns `true` if `path` exists, else `false`.\n     * @example\n     *\n     * var object = _.create({ 'a': _.create({ 'b': 2 }) });\n     *\n     * _.hasIn(object, 'a');\n     * // => true\n     *\n     * _.hasIn(object, 'a.b');\n     * // => true\n     *\n     * _.hasIn(object, ['a', 'b']);\n     * // => true\n     *\n     * _.hasIn(object, 'b');\n     * // => false\n     */\n    function hasIn(object, path) {\n      return object != null && hasPath(object, path, baseHasIn);\n    }\n\n    /**\n     * Creates an object composed of the inverted keys and values of `object`.\n     * If `object` contains duplicate values, subsequent values overwrite\n     * property assignments of previous values.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.7.0\n     * @category Object\n     * @param {Object} object The object to invert.\n     * @returns {Object} Returns the new inverted object.\n     * @example\n     *\n     * var object = { 'a': 1, 'b': 2, 'c': 1 };\n     *\n     * _.invert(object);\n     * // => { '1': 'c', '2': 'b' }\n     */\n    var invert = createInverter(function(result, value, key) {\n      if (value != null &&\n          typeof value.toString != 'function') {\n        value = nativeObjectToString.call(value);\n      }\n\n      result[value] = key;\n    }, constant(identity));\n\n    /**\n     * This method is like `_.invert` except that the inverted object is generated\n     * from the results of running each element of `object` thru `iteratee`. The\n     * corresponding inverted value of each inverted key is an array of keys\n     * responsible for generating the inverted value. The iteratee is invoked\n     * with one argument: (value).\n     *\n     * @static\n     * @memberOf _\n     * @since 4.1.0\n     * @category Object\n     * @param {Object} object The object to invert.\n     * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n     * @returns {Object} Returns the new inverted object.\n     * @example\n     *\n     * var object = { 'a': 1, 'b': 2, 'c': 1 };\n     *\n     * _.invertBy(object);\n     * // => { '1': ['a', 'c'], '2': ['b'] }\n     *\n     * _.invertBy(object, function(value) {\n     *   return 'group' + value;\n     * });\n     * // => { 'group1': ['a', 'c'], 'group2': ['b'] }\n     */\n    var invertBy = createInverter(function(result, value, key) {\n      if (value != null &&\n          typeof value.toString != 'function') {\n        value = nativeObjectToString.call(value);\n      }\n\n      if (hasOwnProperty.call(result, value)) {\n        result[value].push(key);\n      } else {\n        result[value] = [key];\n      }\n    }, getIteratee);\n\n    /**\n     * Invokes the method at `path` of `object`.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Object\n     * @param {Object} object The object to query.\n     * @param {Array|string} path The path of the method to invoke.\n     * @param {...*} [args] The arguments to invoke the method with.\n     * @returns {*} Returns the result of the invoked method.\n     * @example\n     *\n     * var object = { 'a': [{ 'b': { 'c': [1, 2, 3, 4] } }] };\n     *\n     * _.invoke(object, 'a[0].b.c.slice', 1, 3);\n     * // => [2, 3]\n     */\n    var invoke = baseRest(baseInvoke);\n\n    /**\n     * Creates an array of the own enumerable property names of `object`.\n     *\n     * **Note:** Non-object values are coerced to objects. See the\n     * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n     * for more details.\n     *\n     * @static\n     * @since 0.1.0\n     * @memberOf _\n     * @category Object\n     * @param {Object} object The object to query.\n     * @returns {Array} Returns the array of property names.\n     * @example\n     *\n     * function Foo() {\n     *   this.a = 1;\n     *   this.b = 2;\n     * }\n     *\n     * Foo.prototype.c = 3;\n     *\n     * _.keys(new Foo);\n     * // => ['a', 'b'] (iteration order is not guaranteed)\n     *\n     * _.keys('hi');\n     * // => ['0', '1']\n     */\n    function keys(object) {\n      return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);\n    }\n\n    /**\n     * Creates an array of the own and inherited enumerable property names of `object`.\n     *\n     * **Note:** Non-object values are coerced to objects.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category Object\n     * @param {Object} object The object to query.\n     * @returns {Array} Returns the array of property names.\n     * @example\n     *\n     * function Foo() {\n     *   this.a = 1;\n     *   this.b = 2;\n     * }\n     *\n     * Foo.prototype.c = 3;\n     *\n     * _.keysIn(new Foo);\n     * // => ['a', 'b', 'c'] (iteration order is not guaranteed)\n     */\n    function keysIn(object) {\n      return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);\n    }\n\n    /**\n     * The opposite of `_.mapValues`; this method creates an object with the\n     * same values as `object` and keys generated by running each own enumerable\n     * string keyed property of `object` thru `iteratee`. The iteratee is invoked\n     * with three arguments: (value, key, object).\n     *\n     * @static\n     * @memberOf _\n     * @since 3.8.0\n     * @category Object\n     * @param {Object} object The object to iterate over.\n     * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n     * @returns {Object} Returns the new mapped object.\n     * @see _.mapValues\n     * @example\n     *\n     * _.mapKeys({ 'a': 1, 'b': 2 }, function(value, key) {\n     *   return key + value;\n     * });\n     * // => { 'a1': 1, 'b2': 2 }\n     */\n    function mapKeys(object, iteratee) {\n      var result = {};\n      iteratee = getIteratee(iteratee, 3);\n\n      baseForOwn(object, function(value, key, object) {\n        baseAssignValue(result, iteratee(value, key, object), value);\n      });\n      return result;\n    }\n\n    /**\n     * Creates an object with the same keys as `object` and values generated\n     * by running each own enumerable string keyed property of `object` thru\n     * `iteratee`. The iteratee is invoked with three arguments:\n     * (value, key, object).\n     *\n     * @static\n     * @memberOf _\n     * @since 2.4.0\n     * @category Object\n     * @param {Object} object The object to iterate over.\n     * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n     * @returns {Object} Returns the new mapped object.\n     * @see _.mapKeys\n     * @example\n     *\n     * var users = {\n     *   'fred':    { 'user': 'fred',    'age': 40 },\n     *   'pebbles': { 'user': 'pebbles', 'age': 1 }\n     * };\n     *\n     * _.mapValues(users, function(o) { return o.age; });\n     * // => { 'fred': 40, 'pebbles': 1 } (iteration order is not guaranteed)\n     *\n     * // The `_.property` iteratee shorthand.\n     * _.mapValues(users, 'age');\n     * // => { 'fred': 40, 'pebbles': 1 } (iteration order is not guaranteed)\n     */\n    function mapValues(object, iteratee) {\n      var result = {};\n      iteratee = getIteratee(iteratee, 3);\n\n      baseForOwn(object, function(value, key, object) {\n        baseAssignValue(result, key, iteratee(value, key, object));\n      });\n      return result;\n    }\n\n    /**\n     * This method is like `_.assign` except that it recursively merges own and\n     * inherited enumerable string keyed properties of source objects into the\n     * destination object. Source properties that resolve to `undefined` are\n     * skipped if a destination value exists. Array and plain object properties\n     * are merged recursively. Other objects and value types are overridden by\n     * assignment. Source objects are applied from left to right. Subsequent\n     * sources overwrite property assignments of previous sources.\n     *\n     * **Note:** This method mutates `object`.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.5.0\n     * @category Object\n     * @param {Object} object The destination object.\n     * @param {...Object} [sources] The source objects.\n     * @returns {Object} Returns `object`.\n     * @example\n     *\n     * var object = {\n     *   'a': [{ 'b': 2 }, { 'd': 4 }]\n     * };\n     *\n     * var other = {\n     *   'a': [{ 'c': 3 }, { 'e': 5 }]\n     * };\n     *\n     * _.merge(object, other);\n     * // => { 'a': [{ 'b': 2, 'c': 3 }, { 'd': 4, 'e': 5 }] }\n     */\n    var merge = createAssigner(function(object, source, srcIndex) {\n      baseMerge(object, source, srcIndex);\n    });\n\n    /**\n     * This method is like `_.merge` except that it accepts `customizer` which\n     * is invoked to produce the merged values of the destination and source\n     * properties. If `customizer` returns `undefined`, merging is handled by the\n     * method instead. The `customizer` is invoked with six arguments:\n     * (objValue, srcValue, key, object, source, stack).\n     *\n     * **Note:** This method mutates `object`.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Object\n     * @param {Object} object The destination object.\n     * @param {...Object} sources The source objects.\n     * @param {Function} customizer The function to customize assigned values.\n     * @returns {Object} Returns `object`.\n     * @example\n     *\n     * function customizer(objValue, srcValue) {\n     *   if (_.isArray(objValue)) {\n     *     return objValue.concat(srcValue);\n     *   }\n     * }\n     *\n     * var object = { 'a': [1], 'b': [2] };\n     * var other = { 'a': [3], 'b': [4] };\n     *\n     * _.mergeWith(object, other, customizer);\n     * // => { 'a': [1, 3], 'b': [2, 4] }\n     */\n    var mergeWith = createAssigner(function(object, source, srcIndex, customizer) {\n      baseMerge(object, source, srcIndex, customizer);\n    });\n\n    /**\n     * The opposite of `_.pick`; this method creates an object composed of the\n     * own and inherited enumerable property paths of `object` that are not omitted.\n     *\n     * **Note:** This method is considerably slower than `_.pick`.\n     *\n     * @static\n     * @since 0.1.0\n     * @memberOf _\n     * @category Object\n     * @param {Object} object The source object.\n     * @param {...(string|string[])} [paths] The property paths to omit.\n     * @returns {Object} Returns the new object.\n     * @example\n     *\n     * var object = { 'a': 1, 'b': '2', 'c': 3 };\n     *\n     * _.omit(object, ['a', 'c']);\n     * // => { 'b': '2' }\n     */\n    var omit = flatRest(function(object, paths) {\n      var result = {};\n      if (object == null) {\n        return result;\n      }\n      var isDeep = false;\n      paths = arrayMap(paths, function(path) {\n        path = castPath(path, object);\n        isDeep || (isDeep = path.length > 1);\n        return path;\n      });\n      copyObject(object, getAllKeysIn(object), result);\n      if (isDeep) {\n        result = baseClone(result, CLONE_DEEP_FLAG | CLONE_FLAT_FLAG | CLONE_SYMBOLS_FLAG, customOmitClone);\n      }\n      var length = paths.length;\n      while (length--) {\n        baseUnset(result, paths[length]);\n      }\n      return result;\n    });\n\n    /**\n     * The opposite of `_.pickBy`; this method creates an object composed of\n     * the own and inherited enumerable string keyed properties of `object` that\n     * `predicate` doesn't return truthy for. The predicate is invoked with two\n     * arguments: (value, key).\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Object\n     * @param {Object} object The source object.\n     * @param {Function} [predicate=_.identity] The function invoked per property.\n     * @returns {Object} Returns the new object.\n     * @example\n     *\n     * var object = { 'a': 1, 'b': '2', 'c': 3 };\n     *\n     * _.omitBy(object, _.isNumber);\n     * // => { 'b': '2' }\n     */\n    function omitBy(object, predicate) {\n      return pickBy(object, negate(getIteratee(predicate)));\n    }\n\n    /**\n     * Creates an object composed of the picked `object` properties.\n     *\n     * @static\n     * @since 0.1.0\n     * @memberOf _\n     * @category Object\n     * @param {Object} object The source object.\n     * @param {...(string|string[])} [paths] The property paths to pick.\n     * @returns {Object} Returns the new object.\n     * @example\n     *\n     * var object = { 'a': 1, 'b': '2', 'c': 3 };\n     *\n     * _.pick(object, ['a', 'c']);\n     * // => { 'a': 1, 'c': 3 }\n     */\n    var pick = flatRest(function(object, paths) {\n      return object == null ? {} : basePick(object, paths);\n    });\n\n    /**\n     * Creates an object composed of the `object` properties `predicate` returns\n     * truthy for. The predicate is invoked with two arguments: (value, key).\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Object\n     * @param {Object} object The source object.\n     * @param {Function} [predicate=_.identity] The function invoked per property.\n     * @returns {Object} Returns the new object.\n     * @example\n     *\n     * var object = { 'a': 1, 'b': '2', 'c': 3 };\n     *\n     * _.pickBy(object, _.isNumber);\n     * // => { 'a': 1, 'c': 3 }\n     */\n    function pickBy(object, predicate) {\n      if (object == null) {\n        return {};\n      }\n      var props = arrayMap(getAllKeysIn(object), function(prop) {\n        return [prop];\n      });\n      predicate = getIteratee(predicate);\n      return basePickBy(object, props, function(value, path) {\n        return predicate(value, path[0]);\n      });\n    }\n\n    /**\n     * This method is like `_.get` except that if the resolved value is a\n     * function it's invoked with the `this` binding of its parent object and\n     * its result is returned.\n     *\n     * @static\n     * @since 0.1.0\n     * @memberOf _\n     * @category Object\n     * @param {Object} object The object to query.\n     * @param {Array|string} path The path of the property to resolve.\n     * @param {*} [defaultValue] The value returned for `undefined` resolved values.\n     * @returns {*} Returns the resolved value.\n     * @example\n     *\n     * var object = { 'a': [{ 'b': { 'c1': 3, 'c2': _.constant(4) } }] };\n     *\n     * _.result(object, 'a[0].b.c1');\n     * // => 3\n     *\n     * _.result(object, 'a[0].b.c2');\n     * // => 4\n     *\n     * _.result(object, 'a[0].b.c3', 'default');\n     * // => 'default'\n     *\n     * _.result(object, 'a[0].b.c3', _.constant('default'));\n     * // => 'default'\n     */\n    function result(object, path, defaultValue) {\n      path = castPath(path, object);\n\n      var index = -1,\n          length = path.length;\n\n      // Ensure the loop is entered when path is empty.\n      if (!length) {\n        length = 1;\n        object = undefined;\n      }\n      while (++index < length) {\n        var value = object == null ? undefined : object[toKey(path[index])];\n        if (value === undefined) {\n          index = length;\n          value = defaultValue;\n        }\n        object = isFunction(value) ? value.call(object) : value;\n      }\n      return object;\n    }\n\n    /**\n     * Sets the value at `path` of `object`. If a portion of `path` doesn't exist,\n     * it's created. Arrays are created for missing index properties while objects\n     * are created for all other missing properties. Use `_.setWith` to customize\n     * `path` creation.\n     *\n     * **Note:** This method mutates `object`.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.7.0\n     * @category Object\n     * @param {Object} object The object to modify.\n     * @param {Array|string} path The path of the property to set.\n     * @param {*} value The value to set.\n     * @returns {Object} Returns `object`.\n     * @example\n     *\n     * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n     *\n     * _.set(object, 'a[0].b.c', 4);\n     * console.log(object.a[0].b.c);\n     * // => 4\n     *\n     * _.set(object, ['x', '0', 'y', 'z'], 5);\n     * console.log(object.x[0].y.z);\n     * // => 5\n     */\n    function set(object, path, value) {\n      return object == null ? object : baseSet(object, path, value);\n    }\n\n    /**\n     * This method is like `_.set` except that it accepts `customizer` which is\n     * invoked to produce the objects of `path`.  If `customizer` returns `undefined`\n     * path creation is handled by the method instead. The `customizer` is invoked\n     * with three arguments: (nsValue, key, nsObject).\n     *\n     * **Note:** This method mutates `object`.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Object\n     * @param {Object} object The object to modify.\n     * @param {Array|string} path The path of the property to set.\n     * @param {*} value The value to set.\n     * @param {Function} [customizer] The function to customize assigned values.\n     * @returns {Object} Returns `object`.\n     * @example\n     *\n     * var object = {};\n     *\n     * _.setWith(object, '[0][1]', 'a', Object);\n     * // => { '0': { '1': 'a' } }\n     */\n    function setWith(object, path, value, customizer) {\n      customizer = typeof customizer == 'function' ? customizer : undefined;\n      return object == null ? object : baseSet(object, path, value, customizer);\n    }\n\n    /**\n     * Creates an array of own enumerable string keyed-value pairs for `object`\n     * which can be consumed by `_.fromPairs`. If `object` is a map or set, its\n     * entries are returned.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @alias entries\n     * @category Object\n     * @param {Object} object The object to query.\n     * @returns {Array} Returns the key-value pairs.\n     * @example\n     *\n     * function Foo() {\n     *   this.a = 1;\n     *   this.b = 2;\n     * }\n     *\n     * Foo.prototype.c = 3;\n     *\n     * _.toPairs(new Foo);\n     * // => [['a', 1], ['b', 2]] (iteration order is not guaranteed)\n     */\n    var toPairs = createToPairs(keys);\n\n    /**\n     * Creates an array of own and inherited enumerable string keyed-value pairs\n     * for `object` which can be consumed by `_.fromPairs`. If `object` is a map\n     * or set, its entries are returned.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @alias entriesIn\n     * @category Object\n     * @param {Object} object The object to query.\n     * @returns {Array} Returns the key-value pairs.\n     * @example\n     *\n     * function Foo() {\n     *   this.a = 1;\n     *   this.b = 2;\n     * }\n     *\n     * Foo.prototype.c = 3;\n     *\n     * _.toPairsIn(new Foo);\n     * // => [['a', 1], ['b', 2], ['c', 3]] (iteration order is not guaranteed)\n     */\n    var toPairsIn = createToPairs(keysIn);\n\n    /**\n     * An alternative to `_.reduce`; this method transforms `object` to a new\n     * `accumulator` object which is the result of running each of its own\n     * enumerable string keyed properties thru `iteratee`, with each invocation\n     * potentially mutating the `accumulator` object. If `accumulator` is not\n     * provided, a new object with the same `[[Prototype]]` will be used. The\n     * iteratee is invoked with four arguments: (accumulator, value, key, object).\n     * Iteratee functions may exit iteration early by explicitly returning `false`.\n     *\n     * @static\n     * @memberOf _\n     * @since 1.3.0\n     * @category Object\n     * @param {Object} object The object to iterate over.\n     * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n     * @param {*} [accumulator] The custom accumulator value.\n     * @returns {*} Returns the accumulated value.\n     * @example\n     *\n     * _.transform([2, 3, 4], function(result, n) {\n     *   result.push(n *= n);\n     *   return n % 2 == 0;\n     * }, []);\n     * // => [4, 9]\n     *\n     * _.transform({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) {\n     *   (result[value] || (result[value] = [])).push(key);\n     * }, {});\n     * // => { '1': ['a', 'c'], '2': ['b'] }\n     */\n    function transform(object, iteratee, accumulator) {\n      var isArr = isArray(object),\n          isArrLike = isArr || isBuffer(object) || isTypedArray(object);\n\n      iteratee = getIteratee(iteratee, 4);\n      if (accumulator == null) {\n        var Ctor = object && object.constructor;\n        if (isArrLike) {\n          accumulator = isArr ? new Ctor : [];\n        }\n        else if (isObject(object)) {\n          accumulator = isFunction(Ctor) ? baseCreate(getPrototype(object)) : {};\n        }\n        else {\n          accumulator = {};\n        }\n      }\n      (isArrLike ? arrayEach : baseForOwn)(object, function(value, index, object) {\n        return iteratee(accumulator, value, index, object);\n      });\n      return accumulator;\n    }\n\n    /**\n     * Removes the property at `path` of `object`.\n     *\n     * **Note:** This method mutates `object`.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Object\n     * @param {Object} object The object to modify.\n     * @param {Array|string} path The path of the property to unset.\n     * @returns {boolean} Returns `true` if the property is deleted, else `false`.\n     * @example\n     *\n     * var object = { 'a': [{ 'b': { 'c': 7 } }] };\n     * _.unset(object, 'a[0].b.c');\n     * // => true\n     *\n     * console.log(object);\n     * // => { 'a': [{ 'b': {} }] };\n     *\n     * _.unset(object, ['a', '0', 'b', 'c']);\n     * // => true\n     *\n     * console.log(object);\n     * // => { 'a': [{ 'b': {} }] };\n     */\n    function unset(object, path) {\n      return object == null ? true : baseUnset(object, path);\n    }\n\n    /**\n     * This method is like `_.set` except that accepts `updater` to produce the\n     * value to set. Use `_.updateWith` to customize `path` creation. The `updater`\n     * is invoked with one argument: (value).\n     *\n     * **Note:** This method mutates `object`.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.6.0\n     * @category Object\n     * @param {Object} object The object to modify.\n     * @param {Array|string} path The path of the property to set.\n     * @param {Function} updater The function to produce the updated value.\n     * @returns {Object} Returns `object`.\n     * @example\n     *\n     * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n     *\n     * _.update(object, 'a[0].b.c', function(n) { return n * n; });\n     * console.log(object.a[0].b.c);\n     * // => 9\n     *\n     * _.update(object, 'x[0].y.z', function(n) { return n ? n + 1 : 0; });\n     * console.log(object.x[0].y.z);\n     * // => 0\n     */\n    function update(object, path, updater) {\n      return object == null ? object : baseUpdate(object, path, castFunction(updater));\n    }\n\n    /**\n     * This method is like `_.update` except that it accepts `customizer` which is\n     * invoked to produce the objects of `path`.  If `customizer` returns `undefined`\n     * path creation is handled by the method instead. The `customizer` is invoked\n     * with three arguments: (nsValue, key, nsObject).\n     *\n     * **Note:** This method mutates `object`.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.6.0\n     * @category Object\n     * @param {Object} object The object to modify.\n     * @param {Array|string} path The path of the property to set.\n     * @param {Function} updater The function to produce the updated value.\n     * @param {Function} [customizer] The function to customize assigned values.\n     * @returns {Object} Returns `object`.\n     * @example\n     *\n     * var object = {};\n     *\n     * _.updateWith(object, '[0][1]', _.constant('a'), Object);\n     * // => { '0': { '1': 'a' } }\n     */\n    function updateWith(object, path, updater, customizer) {\n      customizer = typeof customizer == 'function' ? customizer : undefined;\n      return object == null ? object : baseUpdate(object, path, castFunction(updater), customizer);\n    }\n\n    /**\n     * Creates an array of the own enumerable string keyed property values of `object`.\n     *\n     * **Note:** Non-object values are coerced to objects.\n     *\n     * @static\n     * @since 0.1.0\n     * @memberOf _\n     * @category Object\n     * @param {Object} object The object to query.\n     * @returns {Array} Returns the array of property values.\n     * @example\n     *\n     * function Foo() {\n     *   this.a = 1;\n     *   this.b = 2;\n     * }\n     *\n     * Foo.prototype.c = 3;\n     *\n     * _.values(new Foo);\n     * // => [1, 2] (iteration order is not guaranteed)\n     *\n     * _.values('hi');\n     * // => ['h', 'i']\n     */\n    function values(object) {\n      return object == null ? [] : baseValues(object, keys(object));\n    }\n\n    /**\n     * Creates an array of the own and inherited enumerable string keyed property\n     * values of `object`.\n     *\n     * **Note:** Non-object values are coerced to objects.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category Object\n     * @param {Object} object The object to query.\n     * @returns {Array} Returns the array of property values.\n     * @example\n     *\n     * function Foo() {\n     *   this.a = 1;\n     *   this.b = 2;\n     * }\n     *\n     * Foo.prototype.c = 3;\n     *\n     * _.valuesIn(new Foo);\n     * // => [1, 2, 3] (iteration order is not guaranteed)\n     */\n    function valuesIn(object) {\n      return object == null ? [] : baseValues(object, keysIn(object));\n    }\n\n    /*------------------------------------------------------------------------*/\n\n    /**\n     * Clamps `number` within the inclusive `lower` and `upper` bounds.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Number\n     * @param {number} number The number to clamp.\n     * @param {number} [lower] The lower bound.\n     * @param {number} upper The upper bound.\n     * @returns {number} Returns the clamped number.\n     * @example\n     *\n     * _.clamp(-10, -5, 5);\n     * // => -5\n     *\n     * _.clamp(10, -5, 5);\n     * // => 5\n     */\n    function clamp(number, lower, upper) {\n      if (upper === undefined) {\n        upper = lower;\n        lower = undefined;\n      }\n      if (upper !== undefined) {\n        upper = toNumber(upper);\n        upper = upper === upper ? upper : 0;\n      }\n      if (lower !== undefined) {\n        lower = toNumber(lower);\n        lower = lower === lower ? lower : 0;\n      }\n      return baseClamp(toNumber(number), lower, upper);\n    }\n\n    /**\n     * Checks if `n` is between `start` and up to, but not including, `end`. If\n     * `end` is not specified, it's set to `start` with `start` then set to `0`.\n     * If `start` is greater than `end` the params are swapped to support\n     * negative ranges.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.3.0\n     * @category Number\n     * @param {number} number The number to check.\n     * @param {number} [start=0] The start of the range.\n     * @param {number} end The end of the range.\n     * @returns {boolean} Returns `true` if `number` is in the range, else `false`.\n     * @see _.range, _.rangeRight\n     * @example\n     *\n     * _.inRange(3, 2, 4);\n     * // => true\n     *\n     * _.inRange(4, 8);\n     * // => true\n     *\n     * _.inRange(4, 2);\n     * // => false\n     *\n     * _.inRange(2, 2);\n     * // => false\n     *\n     * _.inRange(1.2, 2);\n     * // => true\n     *\n     * _.inRange(5.2, 4);\n     * // => false\n     *\n     * _.inRange(-3, -2, -6);\n     * // => true\n     */\n    function inRange(number, start, end) {\n      start = toFinite(start);\n      if (end === undefined) {\n        end = start;\n        start = 0;\n      } else {\n        end = toFinite(end);\n      }\n      number = toNumber(number);\n      return baseInRange(number, start, end);\n    }\n\n    /**\n     * Produces a random number between the inclusive `lower` and `upper` bounds.\n     * If only one argument is provided a number between `0` and the given number\n     * is returned. If `floating` is `true`, or either `lower` or `upper` are\n     * floats, a floating-point number is returned instead of an integer.\n     *\n     * **Note:** JavaScript follows the IEEE-754 standard for resolving\n     * floating-point values which can produce unexpected results.\n     *\n     * @static\n     * @memberOf _\n     * @since 0.7.0\n     * @category Number\n     * @param {number} [lower=0] The lower bound.\n     * @param {number} [upper=1] The upper bound.\n     * @param {boolean} [floating] Specify returning a floating-point number.\n     * @returns {number} Returns the random number.\n     * @example\n     *\n     * _.random(0, 5);\n     * // => an integer between 0 and 5\n     *\n     * _.random(5);\n     * // => also an integer between 0 and 5\n     *\n     * _.random(5, true);\n     * // => a floating-point number between 0 and 5\n     *\n     * _.random(1.2, 5.2);\n     * // => a floating-point number between 1.2 and 5.2\n     */\n    function random(lower, upper, floating) {\n      if (floating && typeof floating != 'boolean' && isIterateeCall(lower, upper, floating)) {\n        upper = floating = undefined;\n      }\n      if (floating === undefined) {\n        if (typeof upper == 'boolean') {\n          floating = upper;\n          upper = undefined;\n        }\n        else if (typeof lower == 'boolean') {\n          floating = lower;\n          lower = undefined;\n        }\n      }\n      if (lower === undefined && upper === undefined) {\n        lower = 0;\n        upper = 1;\n      }\n      else {\n        lower = toFinite(lower);\n        if (upper === undefined) {\n          upper = lower;\n          lower = 0;\n        } else {\n          upper = toFinite(upper);\n        }\n      }\n      if (lower > upper) {\n        var temp = lower;\n        lower = upper;\n        upper = temp;\n      }\n      if (floating || lower % 1 || upper % 1) {\n        var rand = nativeRandom();\n        return nativeMin(lower + (rand * (upper - lower + freeParseFloat('1e-' + ((rand + '').length - 1)))), upper);\n      }\n      return baseRandom(lower, upper);\n    }\n\n    /*------------------------------------------------------------------------*/\n\n    /**\n     * Converts `string` to [camel case](https://en.wikipedia.org/wiki/CamelCase).\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category String\n     * @param {string} [string=''] The string to convert.\n     * @returns {string} Returns the camel cased string.\n     * @example\n     *\n     * _.camelCase('Foo Bar');\n     * // => 'fooBar'\n     *\n     * _.camelCase('--foo-bar--');\n     * // => 'fooBar'\n     *\n     * _.camelCase('__FOO_BAR__');\n     * // => 'fooBar'\n     */\n    var camelCase = createCompounder(function(result, word, index) {\n      word = word.toLowerCase();\n      return result + (index ? capitalize(word) : word);\n    });\n\n    /**\n     * Converts the first character of `string` to upper case and the remaining\n     * to lower case.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category String\n     * @param {string} [string=''] The string to capitalize.\n     * @returns {string} Returns the capitalized string.\n     * @example\n     *\n     * _.capitalize('FRED');\n     * // => 'Fred'\n     */\n    function capitalize(string) {\n      return upperFirst(toString(string).toLowerCase());\n    }\n\n    /**\n     * Deburrs `string` by converting\n     * [Latin-1 Supplement](https://en.wikipedia.org/wiki/Latin-1_Supplement_(Unicode_block)#Character_table)\n     * and [Latin Extended-A](https://en.wikipedia.org/wiki/Latin_Extended-A)\n     * letters to basic Latin letters and removing\n     * [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks).\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category String\n     * @param {string} [string=''] The string to deburr.\n     * @returns {string} Returns the deburred string.\n     * @example\n     *\n     * _.deburr('déjà vu');\n     * // => 'deja vu'\n     */\n    function deburr(string) {\n      string = toString(string);\n      return string && string.replace(reLatin, deburrLetter).replace(reComboMark, '');\n    }\n\n    /**\n     * Checks if `string` ends with the given target string.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category String\n     * @param {string} [string=''] The string to inspect.\n     * @param {string} [target] The string to search for.\n     * @param {number} [position=string.length] The position to search up to.\n     * @returns {boolean} Returns `true` if `string` ends with `target`,\n     *  else `false`.\n     * @example\n     *\n     * _.endsWith('abc', 'c');\n     * // => true\n     *\n     * _.endsWith('abc', 'b');\n     * // => false\n     *\n     * _.endsWith('abc', 'b', 2);\n     * // => true\n     */\n    function endsWith(string, target, position) {\n      string = toString(string);\n      target = baseToString(target);\n\n      var length = string.length;\n      position = position === undefined\n        ? length\n        : baseClamp(toInteger(position), 0, length);\n\n      var end = position;\n      position -= target.length;\n      return position >= 0 && string.slice(position, end) == target;\n    }\n\n    /**\n     * Converts the characters \"&\", \"<\", \">\", '\"', and \"'\" in `string` to their\n     * corresponding HTML entities.\n     *\n     * **Note:** No other characters are escaped. To escape additional\n     * characters use a third-party library like [_he_](https://mths.be/he).\n     *\n     * Though the \">\" character is escaped for symmetry, characters like\n     * \">\" and \"/\" don't need escaping in HTML and have no special meaning\n     * unless they're part of a tag or unquoted attribute value. See\n     * [Mathias Bynens's article](https://mathiasbynens.be/notes/ambiguous-ampersands)\n     * (under \"semi-related fun fact\") for more details.\n     *\n     * When working with HTML you should always\n     * [quote attribute values](http://wonko.com/post/html-escaping) to reduce\n     * XSS vectors.\n     *\n     * @static\n     * @since 0.1.0\n     * @memberOf _\n     * @category String\n     * @param {string} [string=''] The string to escape.\n     * @returns {string} Returns the escaped string.\n     * @example\n     *\n     * _.escape('fred, barney, & pebbles');\n     * // => 'fred, barney, &amp; pebbles'\n     */\n    function escape(string) {\n      string = toString(string);\n      return (string && reHasUnescapedHtml.test(string))\n        ? string.replace(reUnescapedHtml, escapeHtmlChar)\n        : string;\n    }\n\n    /**\n     * Escapes the `RegExp` special characters \"^\", \"$\", \"\\\", \".\", \"*\", \"+\",\n     * \"?\", \"(\", \")\", \"[\", \"]\", \"{\", \"}\", and \"|\" in `string`.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category String\n     * @param {string} [string=''] The string to escape.\n     * @returns {string} Returns the escaped string.\n     * @example\n     *\n     * _.escapeRegExp('[lodash](https://lodash.com/)');\n     * // => '\\[lodash\\]\\(https://lodash\\.com/\\)'\n     */\n    function escapeRegExp(string) {\n      string = toString(string);\n      return (string && reHasRegExpChar.test(string))\n        ? string.replace(reRegExpChar, '\\\\$&')\n        : string;\n    }\n\n    /**\n     * Converts `string` to\n     * [kebab case](https://en.wikipedia.org/wiki/Letter_case#Special_case_styles).\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category String\n     * @param {string} [string=''] The string to convert.\n     * @returns {string} Returns the kebab cased string.\n     * @example\n     *\n     * _.kebabCase('Foo Bar');\n     * // => 'foo-bar'\n     *\n     * _.kebabCase('fooBar');\n     * // => 'foo-bar'\n     *\n     * _.kebabCase('__FOO_BAR__');\n     * // => 'foo-bar'\n     */\n    var kebabCase = createCompounder(function(result, word, index) {\n      return result + (index ? '-' : '') + word.toLowerCase();\n    });\n\n    /**\n     * Converts `string`, as space separated words, to lower case.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category String\n     * @param {string} [string=''] The string to convert.\n     * @returns {string} Returns the lower cased string.\n     * @example\n     *\n     * _.lowerCase('--Foo-Bar--');\n     * // => 'foo bar'\n     *\n     * _.lowerCase('fooBar');\n     * // => 'foo bar'\n     *\n     * _.lowerCase('__FOO_BAR__');\n     * // => 'foo bar'\n     */\n    var lowerCase = createCompounder(function(result, word, index) {\n      return result + (index ? ' ' : '') + word.toLowerCase();\n    });\n\n    /**\n     * Converts the first character of `string` to lower case.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category String\n     * @param {string} [string=''] The string to convert.\n     * @returns {string} Returns the converted string.\n     * @example\n     *\n     * _.lowerFirst('Fred');\n     * // => 'fred'\n     *\n     * _.lowerFirst('FRED');\n     * // => 'fRED'\n     */\n    var lowerFirst = createCaseFirst('toLowerCase');\n\n    /**\n     * Pads `string` on the left and right sides if it's shorter than `length`.\n     * Padding characters are truncated if they can't be evenly divided by `length`.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category String\n     * @param {string} [string=''] The string to pad.\n     * @param {number} [length=0] The padding length.\n     * @param {string} [chars=' '] The string used as padding.\n     * @returns {string} Returns the padded string.\n     * @example\n     *\n     * _.pad('abc', 8);\n     * // => '  abc   '\n     *\n     * _.pad('abc', 8, '_-');\n     * // => '_-abc_-_'\n     *\n     * _.pad('abc', 3);\n     * // => 'abc'\n     */\n    function pad(string, length, chars) {\n      string = toString(string);\n      length = toInteger(length);\n\n      var strLength = length ? stringSize(string) : 0;\n      if (!length || strLength >= length) {\n        return string;\n      }\n      var mid = (length - strLength) / 2;\n      return (\n        createPadding(nativeFloor(mid), chars) +\n        string +\n        createPadding(nativeCeil(mid), chars)\n      );\n    }\n\n    /**\n     * Pads `string` on the right side if it's shorter than `length`. Padding\n     * characters are truncated if they exceed `length`.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category String\n     * @param {string} [string=''] The string to pad.\n     * @param {number} [length=0] The padding length.\n     * @param {string} [chars=' '] The string used as padding.\n     * @returns {string} Returns the padded string.\n     * @example\n     *\n     * _.padEnd('abc', 6);\n     * // => 'abc   '\n     *\n     * _.padEnd('abc', 6, '_-');\n     * // => 'abc_-_'\n     *\n     * _.padEnd('abc', 3);\n     * // => 'abc'\n     */\n    function padEnd(string, length, chars) {\n      string = toString(string);\n      length = toInteger(length);\n\n      var strLength = length ? stringSize(string) : 0;\n      return (length && strLength < length)\n        ? (string + createPadding(length - strLength, chars))\n        : string;\n    }\n\n    /**\n     * Pads `string` on the left side if it's shorter than `length`. Padding\n     * characters are truncated if they exceed `length`.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category String\n     * @param {string} [string=''] The string to pad.\n     * @param {number} [length=0] The padding length.\n     * @param {string} [chars=' '] The string used as padding.\n     * @returns {string} Returns the padded string.\n     * @example\n     *\n     * _.padStart('abc', 6);\n     * // => '   abc'\n     *\n     * _.padStart('abc', 6, '_-');\n     * // => '_-_abc'\n     *\n     * _.padStart('abc', 3);\n     * // => 'abc'\n     */\n    function padStart(string, length, chars) {\n      string = toString(string);\n      length = toInteger(length);\n\n      var strLength = length ? stringSize(string) : 0;\n      return (length && strLength < length)\n        ? (createPadding(length - strLength, chars) + string)\n        : string;\n    }\n\n    /**\n     * Converts `string` to an integer of the specified radix. If `radix` is\n     * `undefined` or `0`, a `radix` of `10` is used unless `value` is a\n     * hexadecimal, in which case a `radix` of `16` is used.\n     *\n     * **Note:** This method aligns with the\n     * [ES5 implementation](https://es5.github.io/#x15.1.2.2) of `parseInt`.\n     *\n     * @static\n     * @memberOf _\n     * @since 1.1.0\n     * @category String\n     * @param {string} string The string to convert.\n     * @param {number} [radix=10] The radix to interpret `value` by.\n     * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n     * @returns {number} Returns the converted integer.\n     * @example\n     *\n     * _.parseInt('08');\n     * // => 8\n     *\n     * _.map(['6', '08', '10'], _.parseInt);\n     * // => [6, 8, 10]\n     */\n    function parseInt(string, radix, guard) {\n      if (guard || radix == null) {\n        radix = 0;\n      } else if (radix) {\n        radix = +radix;\n      }\n      return nativeParseInt(toString(string).replace(reTrimStart, ''), radix || 0);\n    }\n\n    /**\n     * Repeats the given string `n` times.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category String\n     * @param {string} [string=''] The string to repeat.\n     * @param {number} [n=1] The number of times to repeat the string.\n     * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n     * @returns {string} Returns the repeated string.\n     * @example\n     *\n     * _.repeat('*', 3);\n     * // => '***'\n     *\n     * _.repeat('abc', 2);\n     * // => 'abcabc'\n     *\n     * _.repeat('abc', 0);\n     * // => ''\n     */\n    function repeat(string, n, guard) {\n      if ((guard ? isIterateeCall(string, n, guard) : n === undefined)) {\n        n = 1;\n      } else {\n        n = toInteger(n);\n      }\n      return baseRepeat(toString(string), n);\n    }\n\n    /**\n     * Replaces matches for `pattern` in `string` with `replacement`.\n     *\n     * **Note:** This method is based on\n     * [`String#replace`](https://mdn.io/String/replace).\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category String\n     * @param {string} [string=''] The string to modify.\n     * @param {RegExp|string} pattern The pattern to replace.\n     * @param {Function|string} replacement The match replacement.\n     * @returns {string} Returns the modified string.\n     * @example\n     *\n     * _.replace('Hi Fred', 'Fred', 'Barney');\n     * // => 'Hi Barney'\n     */\n    function replace() {\n      var args = arguments,\n          string = toString(args[0]);\n\n      return args.length < 3 ? string : string.replace(args[1], args[2]);\n    }\n\n    /**\n     * Converts `string` to\n     * [snake case](https://en.wikipedia.org/wiki/Snake_case).\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category String\n     * @param {string} [string=''] The string to convert.\n     * @returns {string} Returns the snake cased string.\n     * @example\n     *\n     * _.snakeCase('Foo Bar');\n     * // => 'foo_bar'\n     *\n     * _.snakeCase('fooBar');\n     * // => 'foo_bar'\n     *\n     * _.snakeCase('--FOO-BAR--');\n     * // => 'foo_bar'\n     */\n    var snakeCase = createCompounder(function(result, word, index) {\n      return result + (index ? '_' : '') + word.toLowerCase();\n    });\n\n    /**\n     * Splits `string` by `separator`.\n     *\n     * **Note:** This method is based on\n     * [`String#split`](https://mdn.io/String/split).\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category String\n     * @param {string} [string=''] The string to split.\n     * @param {RegExp|string} separator The separator pattern to split by.\n     * @param {number} [limit] The length to truncate results to.\n     * @returns {Array} Returns the string segments.\n     * @example\n     *\n     * _.split('a-b-c', '-', 2);\n     * // => ['a', 'b']\n     */\n    function split(string, separator, limit) {\n      if (limit && typeof limit != 'number' && isIterateeCall(string, separator, limit)) {\n        separator = limit = undefined;\n      }\n      limit = limit === undefined ? MAX_ARRAY_LENGTH : limit >>> 0;\n      if (!limit) {\n        return [];\n      }\n      string = toString(string);\n      if (string && (\n            typeof separator == 'string' ||\n            (separator != null && !isRegExp(separator))\n          )) {\n        separator = baseToString(separator);\n        if (!separator && hasUnicode(string)) {\n          return castSlice(stringToArray(string), 0, limit);\n        }\n      }\n      return string.split(separator, limit);\n    }\n\n    /**\n     * Converts `string` to\n     * [start case](https://en.wikipedia.org/wiki/Letter_case#Stylistic_or_specialised_usage).\n     *\n     * @static\n     * @memberOf _\n     * @since 3.1.0\n     * @category String\n     * @param {string} [string=''] The string to convert.\n     * @returns {string} Returns the start cased string.\n     * @example\n     *\n     * _.startCase('--foo-bar--');\n     * // => 'Foo Bar'\n     *\n     * _.startCase('fooBar');\n     * // => 'Foo Bar'\n     *\n     * _.startCase('__FOO_BAR__');\n     * // => 'FOO BAR'\n     */\n    var startCase = createCompounder(function(result, word, index) {\n      return result + (index ? ' ' : '') + upperFirst(word);\n    });\n\n    /**\n     * Checks if `string` starts with the given target string.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category String\n     * @param {string} [string=''] The string to inspect.\n     * @param {string} [target] The string to search for.\n     * @param {number} [position=0] The position to search from.\n     * @returns {boolean} Returns `true` if `string` starts with `target`,\n     *  else `false`.\n     * @example\n     *\n     * _.startsWith('abc', 'a');\n     * // => true\n     *\n     * _.startsWith('abc', 'b');\n     * // => false\n     *\n     * _.startsWith('abc', 'b', 1);\n     * // => true\n     */\n    function startsWith(string, target, position) {\n      string = toString(string);\n      position = position == null\n        ? 0\n        : baseClamp(toInteger(position), 0, string.length);\n\n      target = baseToString(target);\n      return string.slice(position, position + target.length) == target;\n    }\n\n    /**\n     * Creates a compiled template function that can interpolate data properties\n     * in \"interpolate\" delimiters, HTML-escape interpolated data properties in\n     * \"escape\" delimiters, and execute JavaScript in \"evaluate\" delimiters. Data\n     * properties may be accessed as free variables in the template. If a setting\n     * object is given, it takes precedence over `_.templateSettings` values.\n     *\n     * **Note:** In the development build `_.template` utilizes\n     * [sourceURLs](http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/#toc-sourceurl)\n     * for easier debugging.\n     *\n     * For more information on precompiling templates see\n     * [lodash's custom builds documentation](https://lodash.com/custom-builds).\n     *\n     * For more information on Chrome extension sandboxes see\n     * [Chrome's extensions documentation](https://developer.chrome.com/extensions/sandboxingEval).\n     *\n     * @static\n     * @since 0.1.0\n     * @memberOf _\n     * @category String\n     * @param {string} [string=''] The template string.\n     * @param {Object} [options={}] The options object.\n     * @param {RegExp} [options.escape=_.templateSettings.escape]\n     *  The HTML \"escape\" delimiter.\n     * @param {RegExp} [options.evaluate=_.templateSettings.evaluate]\n     *  The \"evaluate\" delimiter.\n     * @param {Object} [options.imports=_.templateSettings.imports]\n     *  An object to import into the template as free variables.\n     * @param {RegExp} [options.interpolate=_.templateSettings.interpolate]\n     *  The \"interpolate\" delimiter.\n     * @param {string} [options.sourceURL='lodash.templateSources[n]']\n     *  The sourceURL of the compiled template.\n     * @param {string} [options.variable='obj']\n     *  The data object variable name.\n     * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n     * @returns {Function} Returns the compiled template function.\n     * @example\n     *\n     * // Use the \"interpolate\" delimiter to create a compiled template.\n     * var compiled = _.template('hello <%= user %>!');\n     * compiled({ 'user': 'fred' });\n     * // => 'hello fred!'\n     *\n     * // Use the HTML \"escape\" delimiter to escape data property values.\n     * var compiled = _.template('<b><%- value %></b>');\n     * compiled({ 'value': '<script>' });\n     * // => '<b>&lt;script&gt;</b>'\n     *\n     * // Use the \"evaluate\" delimiter to execute JavaScript and generate HTML.\n     * var compiled = _.template('<% _.forEach(users, function(user) { %><li><%- user %></li><% }); %>');\n     * compiled({ 'users': ['fred', 'barney'] });\n     * // => '<li>fred</li><li>barney</li>'\n     *\n     * // Use the internal `print` function in \"evaluate\" delimiters.\n     * var compiled = _.template('<% print(\"hello \" + user); %>!');\n     * compiled({ 'user': 'barney' });\n     * // => 'hello barney!'\n     *\n     * // Use the ES template literal delimiter as an \"interpolate\" delimiter.\n     * // Disable support by replacing the \"interpolate\" delimiter.\n     * var compiled = _.template('hello ${ user }!');\n     * compiled({ 'user': 'pebbles' });\n     * // => 'hello pebbles!'\n     *\n     * // Use backslashes to treat delimiters as plain text.\n     * var compiled = _.template('<%= \"\\\\<%- value %\\\\>\" %>');\n     * compiled({ 'value': 'ignored' });\n     * // => '<%- value %>'\n     *\n     * // Use the `imports` option to import `jQuery` as `jq`.\n     * var text = '<% jq.each(users, function(user) { %><li><%- user %></li><% }); %>';\n     * var compiled = _.template(text, { 'imports': { 'jq': jQuery } });\n     * compiled({ 'users': ['fred', 'barney'] });\n     * // => '<li>fred</li><li>barney</li>'\n     *\n     * // Use the `sourceURL` option to specify a custom sourceURL for the template.\n     * var compiled = _.template('hello <%= user %>!', { 'sourceURL': '/basic/greeting.jst' });\n     * compiled(data);\n     * // => Find the source of \"greeting.jst\" under the Sources tab or Resources panel of the web inspector.\n     *\n     * // Use the `variable` option to ensure a with-statement isn't used in the compiled template.\n     * var compiled = _.template('hi <%= data.user %>!', { 'variable': 'data' });\n     * compiled.source;\n     * // => function(data) {\n     * //   var __t, __p = '';\n     * //   __p += 'hi ' + ((__t = ( data.user )) == null ? '' : __t) + '!';\n     * //   return __p;\n     * // }\n     *\n     * // Use custom template delimiters.\n     * _.templateSettings.interpolate = /{{([\\s\\S]+?)}}/g;\n     * var compiled = _.template('hello {{ user }}!');\n     * compiled({ 'user': 'mustache' });\n     * // => 'hello mustache!'\n     *\n     * // Use the `source` property to inline compiled templates for meaningful\n     * // line numbers in error messages and stack traces.\n     * fs.writeFileSync(path.join(process.cwd(), 'jst.js'), '\\\n     *   var JST = {\\\n     *     \"main\": ' + _.template(mainText).source + '\\\n     *   };\\\n     * ');\n     */\n    function template(string, options, guard) {\n      // Based on John Resig's `tmpl` implementation\n      // (http://ejohn.org/blog/javascript-micro-templating/)\n      // and Laura Doktorova's doT.js (https://github.com/olado/doT).\n      var settings = lodash.templateSettings;\n\n      if (guard && isIterateeCall(string, options, guard)) {\n        options = undefined;\n      }\n      string = toString(string);\n      options = assignInWith({}, options, settings, customDefaultsAssignIn);\n\n      var imports = assignInWith({}, options.imports, settings.imports, customDefaultsAssignIn),\n          importsKeys = keys(imports),\n          importsValues = baseValues(imports, importsKeys);\n\n      var isEscaping,\n          isEvaluating,\n          index = 0,\n          interpolate = options.interpolate || reNoMatch,\n          source = \"__p += '\";\n\n      // Compile the regexp to match each delimiter.\n      var reDelimiters = RegExp(\n        (options.escape || reNoMatch).source + '|' +\n        interpolate.source + '|' +\n        (interpolate === reInterpolate ? reEsTemplate : reNoMatch).source + '|' +\n        (options.evaluate || reNoMatch).source + '|$'\n      , 'g');\n\n      // Use a sourceURL for easier debugging.\n      // The sourceURL gets injected into the source that's eval-ed, so be careful\n      // to normalize all kinds of whitespace, so e.g. newlines (and unicode versions of it) can't sneak in\n      // and escape the comment, thus injecting code that gets evaled.\n      var sourceURL = '//# sourceURL=' +\n        (hasOwnProperty.call(options, 'sourceURL')\n          ? (options.sourceURL + '').replace(/\\s/g, ' ')\n          : ('lodash.templateSources[' + (++templateCounter) + ']')\n        ) + '\\n';\n\n      string.replace(reDelimiters, function(match, escapeValue, interpolateValue, esTemplateValue, evaluateValue, offset) {\n        interpolateValue || (interpolateValue = esTemplateValue);\n\n        // Escape characters that can't be included in string literals.\n        source += string.slice(index, offset).replace(reUnescapedString, escapeStringChar);\n\n        // Replace delimiters with snippets.\n        if (escapeValue) {\n          isEscaping = true;\n          source += \"' +\\n__e(\" + escapeValue + \") +\\n'\";\n        }\n        if (evaluateValue) {\n          isEvaluating = true;\n          source += \"';\\n\" + evaluateValue + \";\\n__p += '\";\n        }\n        if (interpolateValue) {\n          source += \"' +\\n((__t = (\" + interpolateValue + \")) == null ? '' : __t) +\\n'\";\n        }\n        index = offset + match.length;\n\n        // The JS engine embedded in Adobe products needs `match` returned in\n        // order to produce the correct `offset` value.\n        return match;\n      });\n\n      source += \"';\\n\";\n\n      // If `variable` is not specified wrap a with-statement around the generated\n      // code to add the data object to the top of the scope chain.\n      var variable = hasOwnProperty.call(options, 'variable') && options.variable;\n      if (!variable) {\n        source = 'with (obj) {\\n' + source + '\\n}\\n';\n      }\n      // Throw an error if a forbidden character was found in `variable`, to prevent\n      // potential command injection attacks.\n      else if (reForbiddenIdentifierChars.test(variable)) {\n        throw new Error(INVALID_TEMPL_VAR_ERROR_TEXT);\n      }\n\n      // Cleanup code by stripping empty strings.\n      source = (isEvaluating ? source.replace(reEmptyStringLeading, '') : source)\n        .replace(reEmptyStringMiddle, '$1')\n        .replace(reEmptyStringTrailing, '$1;');\n\n      // Frame code as the function body.\n      source = 'function(' + (variable || 'obj') + ') {\\n' +\n        (variable\n          ? ''\n          : 'obj || (obj = {});\\n'\n        ) +\n        \"var __t, __p = ''\" +\n        (isEscaping\n           ? ', __e = _.escape'\n           : ''\n        ) +\n        (isEvaluating\n          ? ', __j = Array.prototype.join;\\n' +\n            \"function print() { __p += __j.call(arguments, '') }\\n\"\n          : ';\\n'\n        ) +\n        source +\n        'return __p\\n}';\n\n      var result = attempt(function() {\n        return Function(importsKeys, sourceURL + 'return ' + source)\n          .apply(undefined, importsValues);\n      });\n\n      // Provide the compiled function's source by its `toString` method or\n      // the `source` property as a convenience for inlining compiled templates.\n      result.source = source;\n      if (isError(result)) {\n        throw result;\n      }\n      return result;\n    }\n\n    /**\n     * Converts `string`, as a whole, to lower case just like\n     * [String#toLowerCase](https://mdn.io/toLowerCase).\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category String\n     * @param {string} [string=''] The string to convert.\n     * @returns {string} Returns the lower cased string.\n     * @example\n     *\n     * _.toLower('--Foo-Bar--');\n     * // => '--foo-bar--'\n     *\n     * _.toLower('fooBar');\n     * // => 'foobar'\n     *\n     * _.toLower('__FOO_BAR__');\n     * // => '__foo_bar__'\n     */\n    function toLower(value) {\n      return toString(value).toLowerCase();\n    }\n\n    /**\n     * Converts `string`, as a whole, to upper case just like\n     * [String#toUpperCase](https://mdn.io/toUpperCase).\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category String\n     * @param {string} [string=''] The string to convert.\n     * @returns {string} Returns the upper cased string.\n     * @example\n     *\n     * _.toUpper('--foo-bar--');\n     * // => '--FOO-BAR--'\n     *\n     * _.toUpper('fooBar');\n     * // => 'FOOBAR'\n     *\n     * _.toUpper('__foo_bar__');\n     * // => '__FOO_BAR__'\n     */\n    function toUpper(value) {\n      return toString(value).toUpperCase();\n    }\n\n    /**\n     * Removes leading and trailing whitespace or specified characters from `string`.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category String\n     * @param {string} [string=''] The string to trim.\n     * @param {string} [chars=whitespace] The characters to trim.\n     * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n     * @returns {string} Returns the trimmed string.\n     * @example\n     *\n     * _.trim('  abc  ');\n     * // => 'abc'\n     *\n     * _.trim('-_-abc-_-', '_-');\n     * // => 'abc'\n     *\n     * _.map(['  foo  ', '  bar  '], _.trim);\n     * // => ['foo', 'bar']\n     */\n    function trim(string, chars, guard) {\n      string = toString(string);\n      if (string && (guard || chars === undefined)) {\n        return baseTrim(string);\n      }\n      if (!string || !(chars = baseToString(chars))) {\n        return string;\n      }\n      var strSymbols = stringToArray(string),\n          chrSymbols = stringToArray(chars),\n          start = charsStartIndex(strSymbols, chrSymbols),\n          end = charsEndIndex(strSymbols, chrSymbols) + 1;\n\n      return castSlice(strSymbols, start, end).join('');\n    }\n\n    /**\n     * Removes trailing whitespace or specified characters from `string`.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category String\n     * @param {string} [string=''] The string to trim.\n     * @param {string} [chars=whitespace] The characters to trim.\n     * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n     * @returns {string} Returns the trimmed string.\n     * @example\n     *\n     * _.trimEnd('  abc  ');\n     * // => '  abc'\n     *\n     * _.trimEnd('-_-abc-_-', '_-');\n     * // => '-_-abc'\n     */\n    function trimEnd(string, chars, guard) {\n      string = toString(string);\n      if (string && (guard || chars === undefined)) {\n        return string.slice(0, trimmedEndIndex(string) + 1);\n      }\n      if (!string || !(chars = baseToString(chars))) {\n        return string;\n      }\n      var strSymbols = stringToArray(string),\n          end = charsEndIndex(strSymbols, stringToArray(chars)) + 1;\n\n      return castSlice(strSymbols, 0, end).join('');\n    }\n\n    /**\n     * Removes leading whitespace or specified characters from `string`.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category String\n     * @param {string} [string=''] The string to trim.\n     * @param {string} [chars=whitespace] The characters to trim.\n     * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n     * @returns {string} Returns the trimmed string.\n     * @example\n     *\n     * _.trimStart('  abc  ');\n     * // => 'abc  '\n     *\n     * _.trimStart('-_-abc-_-', '_-');\n     * // => 'abc-_-'\n     */\n    function trimStart(string, chars, guard) {\n      string = toString(string);\n      if (string && (guard || chars === undefined)) {\n        return string.replace(reTrimStart, '');\n      }\n      if (!string || !(chars = baseToString(chars))) {\n        return string;\n      }\n      var strSymbols = stringToArray(string),\n          start = charsStartIndex(strSymbols, stringToArray(chars));\n\n      return castSlice(strSymbols, start).join('');\n    }\n\n    /**\n     * Truncates `string` if it's longer than the given maximum string length.\n     * The last characters of the truncated string are replaced with the omission\n     * string which defaults to \"...\".\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category String\n     * @param {string} [string=''] The string to truncate.\n     * @param {Object} [options={}] The options object.\n     * @param {number} [options.length=30] The maximum string length.\n     * @param {string} [options.omission='...'] The string to indicate text is omitted.\n     * @param {RegExp|string} [options.separator] The separator pattern to truncate to.\n     * @returns {string} Returns the truncated string.\n     * @example\n     *\n     * _.truncate('hi-diddly-ho there, neighborino');\n     * // => 'hi-diddly-ho there, neighbo...'\n     *\n     * _.truncate('hi-diddly-ho there, neighborino', {\n     *   'length': 24,\n     *   'separator': ' '\n     * });\n     * // => 'hi-diddly-ho there,...'\n     *\n     * _.truncate('hi-diddly-ho there, neighborino', {\n     *   'length': 24,\n     *   'separator': /,? +/\n     * });\n     * // => 'hi-diddly-ho there...'\n     *\n     * _.truncate('hi-diddly-ho there, neighborino', {\n     *   'omission': ' [...]'\n     * });\n     * // => 'hi-diddly-ho there, neig [...]'\n     */\n    function truncate(string, options) {\n      var length = DEFAULT_TRUNC_LENGTH,\n          omission = DEFAULT_TRUNC_OMISSION;\n\n      if (isObject(options)) {\n        var separator = 'separator' in options ? options.separator : separator;\n        length = 'length' in options ? toInteger(options.length) : length;\n        omission = 'omission' in options ? baseToString(options.omission) : omission;\n      }\n      string = toString(string);\n\n      var strLength = string.length;\n      if (hasUnicode(string)) {\n        var strSymbols = stringToArray(string);\n        strLength = strSymbols.length;\n      }\n      if (length >= strLength) {\n        return string;\n      }\n      var end = length - stringSize(omission);\n      if (end < 1) {\n        return omission;\n      }\n      var result = strSymbols\n        ? castSlice(strSymbols, 0, end).join('')\n        : string.slice(0, end);\n\n      if (separator === undefined) {\n        return result + omission;\n      }\n      if (strSymbols) {\n        end += (result.length - end);\n      }\n      if (isRegExp(separator)) {\n        if (string.slice(end).search(separator)) {\n          var match,\n              substring = result;\n\n          if (!separator.global) {\n            separator = RegExp(separator.source, toString(reFlags.exec(separator)) + 'g');\n          }\n          separator.lastIndex = 0;\n          while ((match = separator.exec(substring))) {\n            var newEnd = match.index;\n          }\n          result = result.slice(0, newEnd === undefined ? end : newEnd);\n        }\n      } else if (string.indexOf(baseToString(separator), end) != end) {\n        var index = result.lastIndexOf(separator);\n        if (index > -1) {\n          result = result.slice(0, index);\n        }\n      }\n      return result + omission;\n    }\n\n    /**\n     * The inverse of `_.escape`; this method converts the HTML entities\n     * `&amp;`, `&lt;`, `&gt;`, `&quot;`, and `&#39;` in `string` to\n     * their corresponding characters.\n     *\n     * **Note:** No other HTML entities are unescaped. To unescape additional\n     * HTML entities use a third-party library like [_he_](https://mths.be/he).\n     *\n     * @static\n     * @memberOf _\n     * @since 0.6.0\n     * @category String\n     * @param {string} [string=''] The string to unescape.\n     * @returns {string} Returns the unescaped string.\n     * @example\n     *\n     * _.unescape('fred, barney, &amp; pebbles');\n     * // => 'fred, barney, & pebbles'\n     */\n    function unescape(string) {\n      string = toString(string);\n      return (string && reHasEscapedHtml.test(string))\n        ? string.replace(reEscapedHtml, unescapeHtmlChar)\n        : string;\n    }\n\n    /**\n     * Converts `string`, as space separated words, to upper case.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category String\n     * @param {string} [string=''] The string to convert.\n     * @returns {string} Returns the upper cased string.\n     * @example\n     *\n     * _.upperCase('--foo-bar');\n     * // => 'FOO BAR'\n     *\n     * _.upperCase('fooBar');\n     * // => 'FOO BAR'\n     *\n     * _.upperCase('__foo_bar__');\n     * // => 'FOO BAR'\n     */\n    var upperCase = createCompounder(function(result, word, index) {\n      return result + (index ? ' ' : '') + word.toUpperCase();\n    });\n\n    /**\n     * Converts the first character of `string` to upper case.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category String\n     * @param {string} [string=''] The string to convert.\n     * @returns {string} Returns the converted string.\n     * @example\n     *\n     * _.upperFirst('fred');\n     * // => 'Fred'\n     *\n     * _.upperFirst('FRED');\n     * // => 'FRED'\n     */\n    var upperFirst = createCaseFirst('toUpperCase');\n\n    /**\n     * Splits `string` into an array of its words.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category String\n     * @param {string} [string=''] The string to inspect.\n     * @param {RegExp|string} [pattern] The pattern to match words.\n     * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n     * @returns {Array} Returns the words of `string`.\n     * @example\n     *\n     * _.words('fred, barney, & pebbles');\n     * // => ['fred', 'barney', 'pebbles']\n     *\n     * _.words('fred, barney, & pebbles', /[^, ]+/g);\n     * // => ['fred', 'barney', '&', 'pebbles']\n     */\n    function words(string, pattern, guard) {\n      string = toString(string);\n      pattern = guard ? undefined : pattern;\n\n      if (pattern === undefined) {\n        return hasUnicodeWord(string) ? unicodeWords(string) : asciiWords(string);\n      }\n      return string.match(pattern) || [];\n    }\n\n    /*------------------------------------------------------------------------*/\n\n    /**\n     * Attempts to invoke `func`, returning either the result or the caught error\n     * object. Any additional arguments are provided to `func` when it's invoked.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category Util\n     * @param {Function} func The function to attempt.\n     * @param {...*} [args] The arguments to invoke `func` with.\n     * @returns {*} Returns the `func` result or error object.\n     * @example\n     *\n     * // Avoid throwing errors for invalid selectors.\n     * var elements = _.attempt(function(selector) {\n     *   return document.querySelectorAll(selector);\n     * }, '>_>');\n     *\n     * if (_.isError(elements)) {\n     *   elements = [];\n     * }\n     */\n    var attempt = baseRest(function(func, args) {\n      try {\n        return apply(func, undefined, args);\n      } catch (e) {\n        return isError(e) ? e : new Error(e);\n      }\n    });\n\n    /**\n     * Binds methods of an object to the object itself, overwriting the existing\n     * method.\n     *\n     * **Note:** This method doesn't set the \"length\" property of bound functions.\n     *\n     * @static\n     * @since 0.1.0\n     * @memberOf _\n     * @category Util\n     * @param {Object} object The object to bind and assign the bound methods to.\n     * @param {...(string|string[])} methodNames The object method names to bind.\n     * @returns {Object} Returns `object`.\n     * @example\n     *\n     * var view = {\n     *   'label': 'docs',\n     *   'click': function() {\n     *     console.log('clicked ' + this.label);\n     *   }\n     * };\n     *\n     * _.bindAll(view, ['click']);\n     * jQuery(element).on('click', view.click);\n     * // => Logs 'clicked docs' when clicked.\n     */\n    var bindAll = flatRest(function(object, methodNames) {\n      arrayEach(methodNames, function(key) {\n        key = toKey(key);\n        baseAssignValue(object, key, bind(object[key], object));\n      });\n      return object;\n    });\n\n    /**\n     * Creates a function that iterates over `pairs` and invokes the corresponding\n     * function of the first predicate to return truthy. The predicate-function\n     * pairs are invoked with the `this` binding and arguments of the created\n     * function.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Util\n     * @param {Array} pairs The predicate-function pairs.\n     * @returns {Function} Returns the new composite function.\n     * @example\n     *\n     * var func = _.cond([\n     *   [_.matches({ 'a': 1 }),           _.constant('matches A')],\n     *   [_.conforms({ 'b': _.isNumber }), _.constant('matches B')],\n     *   [_.stubTrue,                      _.constant('no match')]\n     * ]);\n     *\n     * func({ 'a': 1, 'b': 2 });\n     * // => 'matches A'\n     *\n     * func({ 'a': 0, 'b': 1 });\n     * // => 'matches B'\n     *\n     * func({ 'a': '1', 'b': '2' });\n     * // => 'no match'\n     */\n    function cond(pairs) {\n      var length = pairs == null ? 0 : pairs.length,\n          toIteratee = getIteratee();\n\n      pairs = !length ? [] : arrayMap(pairs, function(pair) {\n        if (typeof pair[1] != 'function') {\n          throw new TypeError(FUNC_ERROR_TEXT);\n        }\n        return [toIteratee(pair[0]), pair[1]];\n      });\n\n      return baseRest(function(args) {\n        var index = -1;\n        while (++index < length) {\n          var pair = pairs[index];\n          if (apply(pair[0], this, args)) {\n            return apply(pair[1], this, args);\n          }\n        }\n      });\n    }\n\n    /**\n     * Creates a function that invokes the predicate properties of `source` with\n     * the corresponding property values of a given object, returning `true` if\n     * all predicates return truthy, else `false`.\n     *\n     * **Note:** The created function is equivalent to `_.conformsTo` with\n     * `source` partially applied.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Util\n     * @param {Object} source The object of property predicates to conform to.\n     * @returns {Function} Returns the new spec function.\n     * @example\n     *\n     * var objects = [\n     *   { 'a': 2, 'b': 1 },\n     *   { 'a': 1, 'b': 2 }\n     * ];\n     *\n     * _.filter(objects, _.conforms({ 'b': function(n) { return n > 1; } }));\n     * // => [{ 'a': 1, 'b': 2 }]\n     */\n    function conforms(source) {\n      return baseConforms(baseClone(source, CLONE_DEEP_FLAG));\n    }\n\n    /**\n     * Creates a function that returns `value`.\n     *\n     * @static\n     * @memberOf _\n     * @since 2.4.0\n     * @category Util\n     * @param {*} value The value to return from the new function.\n     * @returns {Function} Returns the new constant function.\n     * @example\n     *\n     * var objects = _.times(2, _.constant({ 'a': 1 }));\n     *\n     * console.log(objects);\n     * // => [{ 'a': 1 }, { 'a': 1 }]\n     *\n     * console.log(objects[0] === objects[1]);\n     * // => true\n     */\n    function constant(value) {\n      return function() {\n        return value;\n      };\n    }\n\n    /**\n     * Checks `value` to determine whether a default value should be returned in\n     * its place. The `defaultValue` is returned if `value` is `NaN`, `null`,\n     * or `undefined`.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.14.0\n     * @category Util\n     * @param {*} value The value to check.\n     * @param {*} defaultValue The default value.\n     * @returns {*} Returns the resolved value.\n     * @example\n     *\n     * _.defaultTo(1, 10);\n     * // => 1\n     *\n     * _.defaultTo(undefined, 10);\n     * // => 10\n     */\n    function defaultTo(value, defaultValue) {\n      return (value == null || value !== value) ? defaultValue : value;\n    }\n\n    /**\n     * Creates a function that returns the result of invoking the given functions\n     * with the `this` binding of the created function, where each successive\n     * invocation is supplied the return value of the previous.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category Util\n     * @param {...(Function|Function[])} [funcs] The functions to invoke.\n     * @returns {Function} Returns the new composite function.\n     * @see _.flowRight\n     * @example\n     *\n     * function square(n) {\n     *   return n * n;\n     * }\n     *\n     * var addSquare = _.flow([_.add, square]);\n     * addSquare(1, 2);\n     * // => 9\n     */\n    var flow = createFlow();\n\n    /**\n     * This method is like `_.flow` except that it creates a function that\n     * invokes the given functions from right to left.\n     *\n     * @static\n     * @since 3.0.0\n     * @memberOf _\n     * @category Util\n     * @param {...(Function|Function[])} [funcs] The functions to invoke.\n     * @returns {Function} Returns the new composite function.\n     * @see _.flow\n     * @example\n     *\n     * function square(n) {\n     *   return n * n;\n     * }\n     *\n     * var addSquare = _.flowRight([square, _.add]);\n     * addSquare(1, 2);\n     * // => 9\n     */\n    var flowRight = createFlow(true);\n\n    /**\n     * This method returns the first argument it receives.\n     *\n     * @static\n     * @since 0.1.0\n     * @memberOf _\n     * @category Util\n     * @param {*} value Any value.\n     * @returns {*} Returns `value`.\n     * @example\n     *\n     * var object = { 'a': 1 };\n     *\n     * console.log(_.identity(object) === object);\n     * // => true\n     */\n    function identity(value) {\n      return value;\n    }\n\n    /**\n     * Creates a function that invokes `func` with the arguments of the created\n     * function. If `func` is a property name, the created function returns the\n     * property value for a given element. If `func` is an array or object, the\n     * created function returns `true` for elements that contain the equivalent\n     * source properties, otherwise it returns `false`.\n     *\n     * @static\n     * @since 4.0.0\n     * @memberOf _\n     * @category Util\n     * @param {*} [func=_.identity] The value to convert to a callback.\n     * @returns {Function} Returns the callback.\n     * @example\n     *\n     * var users = [\n     *   { 'user': 'barney', 'age': 36, 'active': true },\n     *   { 'user': 'fred',   'age': 40, 'active': false }\n     * ];\n     *\n     * // The `_.matches` iteratee shorthand.\n     * _.filter(users, _.iteratee({ 'user': 'barney', 'active': true }));\n     * // => [{ 'user': 'barney', 'age': 36, 'active': true }]\n     *\n     * // The `_.matchesProperty` iteratee shorthand.\n     * _.filter(users, _.iteratee(['user', 'fred']));\n     * // => [{ 'user': 'fred', 'age': 40 }]\n     *\n     * // The `_.property` iteratee shorthand.\n     * _.map(users, _.iteratee('user'));\n     * // => ['barney', 'fred']\n     *\n     * // Create custom iteratee shorthands.\n     * _.iteratee = _.wrap(_.iteratee, function(iteratee, func) {\n     *   return !_.isRegExp(func) ? iteratee(func) : function(string) {\n     *     return func.test(string);\n     *   };\n     * });\n     *\n     * _.filter(['abc', 'def'], /ef/);\n     * // => ['def']\n     */\n    function iteratee(func) {\n      return baseIteratee(typeof func == 'function' ? func : baseClone(func, CLONE_DEEP_FLAG));\n    }\n\n    /**\n     * Creates a function that performs a partial deep comparison between a given\n     * object and `source`, returning `true` if the given object has equivalent\n     * property values, else `false`.\n     *\n     * **Note:** The created function is equivalent to `_.isMatch` with `source`\n     * partially applied.\n     *\n     * Partial comparisons will match empty array and empty object `source`\n     * values against any array or object value, respectively. See `_.isEqual`\n     * for a list of supported value comparisons.\n     *\n     * **Note:** Multiple values can be checked by combining several matchers\n     * using `_.overSome`\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category Util\n     * @param {Object} source The object of property values to match.\n     * @returns {Function} Returns the new spec function.\n     * @example\n     *\n     * var objects = [\n     *   { 'a': 1, 'b': 2, 'c': 3 },\n     *   { 'a': 4, 'b': 5, 'c': 6 }\n     * ];\n     *\n     * _.filter(objects, _.matches({ 'a': 4, 'c': 6 }));\n     * // => [{ 'a': 4, 'b': 5, 'c': 6 }]\n     *\n     * // Checking for several possible values\n     * _.filter(objects, _.overSome([_.matches({ 'a': 1 }), _.matches({ 'a': 4 })]));\n     * // => [{ 'a': 1, 'b': 2, 'c': 3 }, { 'a': 4, 'b': 5, 'c': 6 }]\n     */\n    function matches(source) {\n      return baseMatches(baseClone(source, CLONE_DEEP_FLAG));\n    }\n\n    /**\n     * Creates a function that performs a partial deep comparison between the\n     * value at `path` of a given object to `srcValue`, returning `true` if the\n     * object value is equivalent, else `false`.\n     *\n     * **Note:** Partial comparisons will match empty array and empty object\n     * `srcValue` values against any array or object value, respectively. See\n     * `_.isEqual` for a list of supported value comparisons.\n     *\n     * **Note:** Multiple values can be checked by combining several matchers\n     * using `_.overSome`\n     *\n     * @static\n     * @memberOf _\n     * @since 3.2.0\n     * @category Util\n     * @param {Array|string} path The path of the property to get.\n     * @param {*} srcValue The value to match.\n     * @returns {Function} Returns the new spec function.\n     * @example\n     *\n     * var objects = [\n     *   { 'a': 1, 'b': 2, 'c': 3 },\n     *   { 'a': 4, 'b': 5, 'c': 6 }\n     * ];\n     *\n     * _.find(objects, _.matchesProperty('a', 4));\n     * // => { 'a': 4, 'b': 5, 'c': 6 }\n     *\n     * // Checking for several possible values\n     * _.filter(objects, _.overSome([_.matchesProperty('a', 1), _.matchesProperty('a', 4)]));\n     * // => [{ 'a': 1, 'b': 2, 'c': 3 }, { 'a': 4, 'b': 5, 'c': 6 }]\n     */\n    function matchesProperty(path, srcValue) {\n      return baseMatchesProperty(path, baseClone(srcValue, CLONE_DEEP_FLAG));\n    }\n\n    /**\n     * Creates a function that invokes the method at `path` of a given object.\n     * Any additional arguments are provided to the invoked method.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.7.0\n     * @category Util\n     * @param {Array|string} path The path of the method to invoke.\n     * @param {...*} [args] The arguments to invoke the method with.\n     * @returns {Function} Returns the new invoker function.\n     * @example\n     *\n     * var objects = [\n     *   { 'a': { 'b': _.constant(2) } },\n     *   { 'a': { 'b': _.constant(1) } }\n     * ];\n     *\n     * _.map(objects, _.method('a.b'));\n     * // => [2, 1]\n     *\n     * _.map(objects, _.method(['a', 'b']));\n     * // => [2, 1]\n     */\n    var method = baseRest(function(path, args) {\n      return function(object) {\n        return baseInvoke(object, path, args);\n      };\n    });\n\n    /**\n     * The opposite of `_.method`; this method creates a function that invokes\n     * the method at a given path of `object`. Any additional arguments are\n     * provided to the invoked method.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.7.0\n     * @category Util\n     * @param {Object} object The object to query.\n     * @param {...*} [args] The arguments to invoke the method with.\n     * @returns {Function} Returns the new invoker function.\n     * @example\n     *\n     * var array = _.times(3, _.constant),\n     *     object = { 'a': array, 'b': array, 'c': array };\n     *\n     * _.map(['a[2]', 'c[0]'], _.methodOf(object));\n     * // => [2, 0]\n     *\n     * _.map([['a', '2'], ['c', '0']], _.methodOf(object));\n     * // => [2, 0]\n     */\n    var methodOf = baseRest(function(object, args) {\n      return function(path) {\n        return baseInvoke(object, path, args);\n      };\n    });\n\n    /**\n     * Adds all own enumerable string keyed function properties of a source\n     * object to the destination object. If `object` is a function, then methods\n     * are added to its prototype as well.\n     *\n     * **Note:** Use `_.runInContext` to create a pristine `lodash` function to\n     * avoid conflicts caused by modifying the original.\n     *\n     * @static\n     * @since 0.1.0\n     * @memberOf _\n     * @category Util\n     * @param {Function|Object} [object=lodash] The destination object.\n     * @param {Object} source The object of functions to add.\n     * @param {Object} [options={}] The options object.\n     * @param {boolean} [options.chain=true] Specify whether mixins are chainable.\n     * @returns {Function|Object} Returns `object`.\n     * @example\n     *\n     * function vowels(string) {\n     *   return _.filter(string, function(v) {\n     *     return /[aeiou]/i.test(v);\n     *   });\n     * }\n     *\n     * _.mixin({ 'vowels': vowels });\n     * _.vowels('fred');\n     * // => ['e']\n     *\n     * _('fred').vowels().value();\n     * // => ['e']\n     *\n     * _.mixin({ 'vowels': vowels }, { 'chain': false });\n     * _('fred').vowels();\n     * // => ['e']\n     */\n    function mixin(object, source, options) {\n      var props = keys(source),\n          methodNames = baseFunctions(source, props);\n\n      if (options == null &&\n          !(isObject(source) && (methodNames.length || !props.length))) {\n        options = source;\n        source = object;\n        object = this;\n        methodNames = baseFunctions(source, keys(source));\n      }\n      var chain = !(isObject(options) && 'chain' in options) || !!options.chain,\n          isFunc = isFunction(object);\n\n      arrayEach(methodNames, function(methodName) {\n        var func = source[methodName];\n        object[methodName] = func;\n        if (isFunc) {\n          object.prototype[methodName] = function() {\n            var chainAll = this.__chain__;\n            if (chain || chainAll) {\n              var result = object(this.__wrapped__),\n                  actions = result.__actions__ = copyArray(this.__actions__);\n\n              actions.push({ 'func': func, 'args': arguments, 'thisArg': object });\n              result.__chain__ = chainAll;\n              return result;\n            }\n            return func.apply(object, arrayPush([this.value()], arguments));\n          };\n        }\n      });\n\n      return object;\n    }\n\n    /**\n     * Reverts the `_` variable to its previous value and returns a reference to\n     * the `lodash` function.\n     *\n     * @static\n     * @since 0.1.0\n     * @memberOf _\n     * @category Util\n     * @returns {Function} Returns the `lodash` function.\n     * @example\n     *\n     * var lodash = _.noConflict();\n     */\n    function noConflict() {\n      if (root._ === this) {\n        root._ = oldDash;\n      }\n      return this;\n    }\n\n    /**\n     * This method returns `undefined`.\n     *\n     * @static\n     * @memberOf _\n     * @since 2.3.0\n     * @category Util\n     * @example\n     *\n     * _.times(2, _.noop);\n     * // => [undefined, undefined]\n     */\n    function noop() {\n      // No operation performed.\n    }\n\n    /**\n     * Creates a function that gets the argument at index `n`. If `n` is negative,\n     * the nth argument from the end is returned.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Util\n     * @param {number} [n=0] The index of the argument to return.\n     * @returns {Function} Returns the new pass-thru function.\n     * @example\n     *\n     * var func = _.nthArg(1);\n     * func('a', 'b', 'c', 'd');\n     * // => 'b'\n     *\n     * var func = _.nthArg(-2);\n     * func('a', 'b', 'c', 'd');\n     * // => 'c'\n     */\n    function nthArg(n) {\n      n = toInteger(n);\n      return baseRest(function(args) {\n        return baseNth(args, n);\n      });\n    }\n\n    /**\n     * Creates a function that invokes `iteratees` with the arguments it receives\n     * and returns their results.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Util\n     * @param {...(Function|Function[])} [iteratees=[_.identity]]\n     *  The iteratees to invoke.\n     * @returns {Function} Returns the new function.\n     * @example\n     *\n     * var func = _.over([Math.max, Math.min]);\n     *\n     * func(1, 2, 3, 4);\n     * // => [4, 1]\n     */\n    var over = createOver(arrayMap);\n\n    /**\n     * Creates a function that checks if **all** of the `predicates` return\n     * truthy when invoked with the arguments it receives.\n     *\n     * Following shorthands are possible for providing predicates.\n     * Pass an `Object` and it will be used as an parameter for `_.matches` to create the predicate.\n     * Pass an `Array` of parameters for `_.matchesProperty` and the predicate will be created using them.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Util\n     * @param {...(Function|Function[])} [predicates=[_.identity]]\n     *  The predicates to check.\n     * @returns {Function} Returns the new function.\n     * @example\n     *\n     * var func = _.overEvery([Boolean, isFinite]);\n     *\n     * func('1');\n     * // => true\n     *\n     * func(null);\n     * // => false\n     *\n     * func(NaN);\n     * // => false\n     */\n    var overEvery = createOver(arrayEvery);\n\n    /**\n     * Creates a function that checks if **any** of the `predicates` return\n     * truthy when invoked with the arguments it receives.\n     *\n     * Following shorthands are possible for providing predicates.\n     * Pass an `Object` and it will be used as an parameter for `_.matches` to create the predicate.\n     * Pass an `Array` of parameters for `_.matchesProperty` and the predicate will be created using them.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Util\n     * @param {...(Function|Function[])} [predicates=[_.identity]]\n     *  The predicates to check.\n     * @returns {Function} Returns the new function.\n     * @example\n     *\n     * var func = _.overSome([Boolean, isFinite]);\n     *\n     * func('1');\n     * // => true\n     *\n     * func(null);\n     * // => true\n     *\n     * func(NaN);\n     * // => false\n     *\n     * var matchesFunc = _.overSome([{ 'a': 1 }, { 'a': 2 }])\n     * var matchesPropertyFunc = _.overSome([['a', 1], ['a', 2]])\n     */\n    var overSome = createOver(arraySome);\n\n    /**\n     * Creates a function that returns the value at `path` of a given object.\n     *\n     * @static\n     * @memberOf _\n     * @since 2.4.0\n     * @category Util\n     * @param {Array|string} path The path of the property to get.\n     * @returns {Function} Returns the new accessor function.\n     * @example\n     *\n     * var objects = [\n     *   { 'a': { 'b': 2 } },\n     *   { 'a': { 'b': 1 } }\n     * ];\n     *\n     * _.map(objects, _.property('a.b'));\n     * // => [2, 1]\n     *\n     * _.map(_.sortBy(objects, _.property(['a', 'b'])), 'a.b');\n     * // => [1, 2]\n     */\n    function property(path) {\n      return isKey(path) ? baseProperty(toKey(path)) : basePropertyDeep(path);\n    }\n\n    /**\n     * The opposite of `_.property`; this method creates a function that returns\n     * the value at a given path of `object`.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.0.0\n     * @category Util\n     * @param {Object} object The object to query.\n     * @returns {Function} Returns the new accessor function.\n     * @example\n     *\n     * var array = [0, 1, 2],\n     *     object = { 'a': array, 'b': array, 'c': array };\n     *\n     * _.map(['a[2]', 'c[0]'], _.propertyOf(object));\n     * // => [2, 0]\n     *\n     * _.map([['a', '2'], ['c', '0']], _.propertyOf(object));\n     * // => [2, 0]\n     */\n    function propertyOf(object) {\n      return function(path) {\n        return object == null ? undefined : baseGet(object, path);\n      };\n    }\n\n    /**\n     * Creates an array of numbers (positive and/or negative) progressing from\n     * `start` up to, but not including, `end`. A step of `-1` is used if a negative\n     * `start` is specified without an `end` or `step`. If `end` is not specified,\n     * it's set to `start` with `start` then set to `0`.\n     *\n     * **Note:** JavaScript follows the IEEE-754 standard for resolving\n     * floating-point values which can produce unexpected results.\n     *\n     * @static\n     * @since 0.1.0\n     * @memberOf _\n     * @category Util\n     * @param {number} [start=0] The start of the range.\n     * @param {number} end The end of the range.\n     * @param {number} [step=1] The value to increment or decrement by.\n     * @returns {Array} Returns the range of numbers.\n     * @see _.inRange, _.rangeRight\n     * @example\n     *\n     * _.range(4);\n     * // => [0, 1, 2, 3]\n     *\n     * _.range(-4);\n     * // => [0, -1, -2, -3]\n     *\n     * _.range(1, 5);\n     * // => [1, 2, 3, 4]\n     *\n     * _.range(0, 20, 5);\n     * // => [0, 5, 10, 15]\n     *\n     * _.range(0, -4, -1);\n     * // => [0, -1, -2, -3]\n     *\n     * _.range(1, 4, 0);\n     * // => [1, 1, 1]\n     *\n     * _.range(0);\n     * // => []\n     */\n    var range = createRange();\n\n    /**\n     * This method is like `_.range` except that it populates values in\n     * descending order.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Util\n     * @param {number} [start=0] The start of the range.\n     * @param {number} end The end of the range.\n     * @param {number} [step=1] The value to increment or decrement by.\n     * @returns {Array} Returns the range of numbers.\n     * @see _.inRange, _.range\n     * @example\n     *\n     * _.rangeRight(4);\n     * // => [3, 2, 1, 0]\n     *\n     * _.rangeRight(-4);\n     * // => [-3, -2, -1, 0]\n     *\n     * _.rangeRight(1, 5);\n     * // => [4, 3, 2, 1]\n     *\n     * _.rangeRight(0, 20, 5);\n     * // => [15, 10, 5, 0]\n     *\n     * _.rangeRight(0, -4, -1);\n     * // => [-3, -2, -1, 0]\n     *\n     * _.rangeRight(1, 4, 0);\n     * // => [1, 1, 1]\n     *\n     * _.rangeRight(0);\n     * // => []\n     */\n    var rangeRight = createRange(true);\n\n    /**\n     * This method returns a new empty array.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.13.0\n     * @category Util\n     * @returns {Array} Returns the new empty array.\n     * @example\n     *\n     * var arrays = _.times(2, _.stubArray);\n     *\n     * console.log(arrays);\n     * // => [[], []]\n     *\n     * console.log(arrays[0] === arrays[1]);\n     * // => false\n     */\n    function stubArray() {\n      return [];\n    }\n\n    /**\n     * This method returns `false`.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.13.0\n     * @category Util\n     * @returns {boolean} Returns `false`.\n     * @example\n     *\n     * _.times(2, _.stubFalse);\n     * // => [false, false]\n     */\n    function stubFalse() {\n      return false;\n    }\n\n    /**\n     * This method returns a new empty object.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.13.0\n     * @category Util\n     * @returns {Object} Returns the new empty object.\n     * @example\n     *\n     * var objects = _.times(2, _.stubObject);\n     *\n     * console.log(objects);\n     * // => [{}, {}]\n     *\n     * console.log(objects[0] === objects[1]);\n     * // => false\n     */\n    function stubObject() {\n      return {};\n    }\n\n    /**\n     * This method returns an empty string.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.13.0\n     * @category Util\n     * @returns {string} Returns the empty string.\n     * @example\n     *\n     * _.times(2, _.stubString);\n     * // => ['', '']\n     */\n    function stubString() {\n      return '';\n    }\n\n    /**\n     * This method returns `true`.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.13.0\n     * @category Util\n     * @returns {boolean} Returns `true`.\n     * @example\n     *\n     * _.times(2, _.stubTrue);\n     * // => [true, true]\n     */\n    function stubTrue() {\n      return true;\n    }\n\n    /**\n     * Invokes the iteratee `n` times, returning an array of the results of\n     * each invocation. The iteratee is invoked with one argument; (index).\n     *\n     * @static\n     * @since 0.1.0\n     * @memberOf _\n     * @category Util\n     * @param {number} n The number of times to invoke `iteratee`.\n     * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n     * @returns {Array} Returns the array of results.\n     * @example\n     *\n     * _.times(3, String);\n     * // => ['0', '1', '2']\n     *\n     *  _.times(4, _.constant(0));\n     * // => [0, 0, 0, 0]\n     */\n    function times(n, iteratee) {\n      n = toInteger(n);\n      if (n < 1 || n > MAX_SAFE_INTEGER) {\n        return [];\n      }\n      var index = MAX_ARRAY_LENGTH,\n          length = nativeMin(n, MAX_ARRAY_LENGTH);\n\n      iteratee = getIteratee(iteratee);\n      n -= MAX_ARRAY_LENGTH;\n\n      var result = baseTimes(length, iteratee);\n      while (++index < n) {\n        iteratee(index);\n      }\n      return result;\n    }\n\n    /**\n     * Converts `value` to a property path array.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Util\n     * @param {*} value The value to convert.\n     * @returns {Array} Returns the new property path array.\n     * @example\n     *\n     * _.toPath('a.b.c');\n     * // => ['a', 'b', 'c']\n     *\n     * _.toPath('a[0].b.c');\n     * // => ['a', '0', 'b', 'c']\n     */\n    function toPath(value) {\n      if (isArray(value)) {\n        return arrayMap(value, toKey);\n      }\n      return isSymbol(value) ? [value] : copyArray(stringToPath(toString(value)));\n    }\n\n    /**\n     * Generates a unique ID. If `prefix` is given, the ID is appended to it.\n     *\n     * @static\n     * @since 0.1.0\n     * @memberOf _\n     * @category Util\n     * @param {string} [prefix=''] The value to prefix the ID with.\n     * @returns {string} Returns the unique ID.\n     * @example\n     *\n     * _.uniqueId('contact_');\n     * // => 'contact_104'\n     *\n     * _.uniqueId();\n     * // => '105'\n     */\n    function uniqueId(prefix) {\n      var id = ++idCounter;\n      return toString(prefix) + id;\n    }\n\n    /*------------------------------------------------------------------------*/\n\n    /**\n     * Adds two numbers.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.4.0\n     * @category Math\n     * @param {number} augend The first number in an addition.\n     * @param {number} addend The second number in an addition.\n     * @returns {number} Returns the total.\n     * @example\n     *\n     * _.add(6, 4);\n     * // => 10\n     */\n    var add = createMathOperation(function(augend, addend) {\n      return augend + addend;\n    }, 0);\n\n    /**\n     * Computes `number` rounded up to `precision`.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.10.0\n     * @category Math\n     * @param {number} number The number to round up.\n     * @param {number} [precision=0] The precision to round up to.\n     * @returns {number} Returns the rounded up number.\n     * @example\n     *\n     * _.ceil(4.006);\n     * // => 5\n     *\n     * _.ceil(6.004, 2);\n     * // => 6.01\n     *\n     * _.ceil(6040, -2);\n     * // => 6100\n     */\n    var ceil = createRound('ceil');\n\n    /**\n     * Divide two numbers.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.7.0\n     * @category Math\n     * @param {number} dividend The first number in a division.\n     * @param {number} divisor The second number in a division.\n     * @returns {number} Returns the quotient.\n     * @example\n     *\n     * _.divide(6, 4);\n     * // => 1.5\n     */\n    var divide = createMathOperation(function(dividend, divisor) {\n      return dividend / divisor;\n    }, 1);\n\n    /**\n     * Computes `number` rounded down to `precision`.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.10.0\n     * @category Math\n     * @param {number} number The number to round down.\n     * @param {number} [precision=0] The precision to round down to.\n     * @returns {number} Returns the rounded down number.\n     * @example\n     *\n     * _.floor(4.006);\n     * // => 4\n     *\n     * _.floor(0.046, 2);\n     * // => 0.04\n     *\n     * _.floor(4060, -2);\n     * // => 4000\n     */\n    var floor = createRound('floor');\n\n    /**\n     * Computes the maximum value of `array`. If `array` is empty or falsey,\n     * `undefined` is returned.\n     *\n     * @static\n     * @since 0.1.0\n     * @memberOf _\n     * @category Math\n     * @param {Array} array The array to iterate over.\n     * @returns {*} Returns the maximum value.\n     * @example\n     *\n     * _.max([4, 2, 8, 6]);\n     * // => 8\n     *\n     * _.max([]);\n     * // => undefined\n     */\n    function max(array) {\n      return (array && array.length)\n        ? baseExtremum(array, identity, baseGt)\n        : undefined;\n    }\n\n    /**\n     * This method is like `_.max` except that it accepts `iteratee` which is\n     * invoked for each element in `array` to generate the criterion by which\n     * the value is ranked. The iteratee is invoked with one argument: (value).\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Math\n     * @param {Array} array The array to iterate over.\n     * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n     * @returns {*} Returns the maximum value.\n     * @example\n     *\n     * var objects = [{ 'n': 1 }, { 'n': 2 }];\n     *\n     * _.maxBy(objects, function(o) { return o.n; });\n     * // => { 'n': 2 }\n     *\n     * // The `_.property` iteratee shorthand.\n     * _.maxBy(objects, 'n');\n     * // => { 'n': 2 }\n     */\n    function maxBy(array, iteratee) {\n      return (array && array.length)\n        ? baseExtremum(array, getIteratee(iteratee, 2), baseGt)\n        : undefined;\n    }\n\n    /**\n     * Computes the mean of the values in `array`.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Math\n     * @param {Array} array The array to iterate over.\n     * @returns {number} Returns the mean.\n     * @example\n     *\n     * _.mean([4, 2, 8, 6]);\n     * // => 5\n     */\n    function mean(array) {\n      return baseMean(array, identity);\n    }\n\n    /**\n     * This method is like `_.mean` except that it accepts `iteratee` which is\n     * invoked for each element in `array` to generate the value to be averaged.\n     * The iteratee is invoked with one argument: (value).\n     *\n     * @static\n     * @memberOf _\n     * @since 4.7.0\n     * @category Math\n     * @param {Array} array The array to iterate over.\n     * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n     * @returns {number} Returns the mean.\n     * @example\n     *\n     * var objects = [{ 'n': 4 }, { 'n': 2 }, { 'n': 8 }, { 'n': 6 }];\n     *\n     * _.meanBy(objects, function(o) { return o.n; });\n     * // => 5\n     *\n     * // The `_.property` iteratee shorthand.\n     * _.meanBy(objects, 'n');\n     * // => 5\n     */\n    function meanBy(array, iteratee) {\n      return baseMean(array, getIteratee(iteratee, 2));\n    }\n\n    /**\n     * Computes the minimum value of `array`. If `array` is empty or falsey,\n     * `undefined` is returned.\n     *\n     * @static\n     * @since 0.1.0\n     * @memberOf _\n     * @category Math\n     * @param {Array} array The array to iterate over.\n     * @returns {*} Returns the minimum value.\n     * @example\n     *\n     * _.min([4, 2, 8, 6]);\n     * // => 2\n     *\n     * _.min([]);\n     * // => undefined\n     */\n    function min(array) {\n      return (array && array.length)\n        ? baseExtremum(array, identity, baseLt)\n        : undefined;\n    }\n\n    /**\n     * This method is like `_.min` except that it accepts `iteratee` which is\n     * invoked for each element in `array` to generate the criterion by which\n     * the value is ranked. The iteratee is invoked with one argument: (value).\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Math\n     * @param {Array} array The array to iterate over.\n     * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n     * @returns {*} Returns the minimum value.\n     * @example\n     *\n     * var objects = [{ 'n': 1 }, { 'n': 2 }];\n     *\n     * _.minBy(objects, function(o) { return o.n; });\n     * // => { 'n': 1 }\n     *\n     * // The `_.property` iteratee shorthand.\n     * _.minBy(objects, 'n');\n     * // => { 'n': 1 }\n     */\n    function minBy(array, iteratee) {\n      return (array && array.length)\n        ? baseExtremum(array, getIteratee(iteratee, 2), baseLt)\n        : undefined;\n    }\n\n    /**\n     * Multiply two numbers.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.7.0\n     * @category Math\n     * @param {number} multiplier The first number in a multiplication.\n     * @param {number} multiplicand The second number in a multiplication.\n     * @returns {number} Returns the product.\n     * @example\n     *\n     * _.multiply(6, 4);\n     * // => 24\n     */\n    var multiply = createMathOperation(function(multiplier, multiplicand) {\n      return multiplier * multiplicand;\n    }, 1);\n\n    /**\n     * Computes `number` rounded to `precision`.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.10.0\n     * @category Math\n     * @param {number} number The number to round.\n     * @param {number} [precision=0] The precision to round to.\n     * @returns {number} Returns the rounded number.\n     * @example\n     *\n     * _.round(4.006);\n     * // => 4\n     *\n     * _.round(4.006, 2);\n     * // => 4.01\n     *\n     * _.round(4060, -2);\n     * // => 4100\n     */\n    var round = createRound('round');\n\n    /**\n     * Subtract two numbers.\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Math\n     * @param {number} minuend The first number in a subtraction.\n     * @param {number} subtrahend The second number in a subtraction.\n     * @returns {number} Returns the difference.\n     * @example\n     *\n     * _.subtract(6, 4);\n     * // => 2\n     */\n    var subtract = createMathOperation(function(minuend, subtrahend) {\n      return minuend - subtrahend;\n    }, 0);\n\n    /**\n     * Computes the sum of the values in `array`.\n     *\n     * @static\n     * @memberOf _\n     * @since 3.4.0\n     * @category Math\n     * @param {Array} array The array to iterate over.\n     * @returns {number} Returns the sum.\n     * @example\n     *\n     * _.sum([4, 2, 8, 6]);\n     * // => 20\n     */\n    function sum(array) {\n      return (array && array.length)\n        ? baseSum(array, identity)\n        : 0;\n    }\n\n    /**\n     * This method is like `_.sum` except that it accepts `iteratee` which is\n     * invoked for each element in `array` to generate the value to be summed.\n     * The iteratee is invoked with one argument: (value).\n     *\n     * @static\n     * @memberOf _\n     * @since 4.0.0\n     * @category Math\n     * @param {Array} array The array to iterate over.\n     * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n     * @returns {number} Returns the sum.\n     * @example\n     *\n     * var objects = [{ 'n': 4 }, { 'n': 2 }, { 'n': 8 }, { 'n': 6 }];\n     *\n     * _.sumBy(objects, function(o) { return o.n; });\n     * // => 20\n     *\n     * // The `_.property` iteratee shorthand.\n     * _.sumBy(objects, 'n');\n     * // => 20\n     */\n    function sumBy(array, iteratee) {\n      return (array && array.length)\n        ? baseSum(array, getIteratee(iteratee, 2))\n        : 0;\n    }\n\n    /*------------------------------------------------------------------------*/\n\n    // Add methods that return wrapped values in chain sequences.\n    lodash.after = after;\n    lodash.ary = ary;\n    lodash.assign = assign;\n    lodash.assignIn = assignIn;\n    lodash.assignInWith = assignInWith;\n    lodash.assignWith = assignWith;\n    lodash.at = at;\n    lodash.before = before;\n    lodash.bind = bind;\n    lodash.bindAll = bindAll;\n    lodash.bindKey = bindKey;\n    lodash.castArray = castArray;\n    lodash.chain = chain;\n    lodash.chunk = chunk;\n    lodash.compact = compact;\n    lodash.concat = concat;\n    lodash.cond = cond;\n    lodash.conforms = conforms;\n    lodash.constant = constant;\n    lodash.countBy = countBy;\n    lodash.create = create;\n    lodash.curry = curry;\n    lodash.curryRight = curryRight;\n    lodash.debounce = debounce;\n    lodash.defaults = defaults;\n    lodash.defaultsDeep = defaultsDeep;\n    lodash.defer = defer;\n    lodash.delay = delay;\n    lodash.difference = difference;\n    lodash.differenceBy = differenceBy;\n    lodash.differenceWith = differenceWith;\n    lodash.drop = drop;\n    lodash.dropRight = dropRight;\n    lodash.dropRightWhile = dropRightWhile;\n    lodash.dropWhile = dropWhile;\n    lodash.fill = fill;\n    lodash.filter = filter;\n    lodash.flatMap = flatMap;\n    lodash.flatMapDeep = flatMapDeep;\n    lodash.flatMapDepth = flatMapDepth;\n    lodash.flatten = flatten;\n    lodash.flattenDeep = flattenDeep;\n    lodash.flattenDepth = flattenDepth;\n    lodash.flip = flip;\n    lodash.flow = flow;\n    lodash.flowRight = flowRight;\n    lodash.fromPairs = fromPairs;\n    lodash.functions = functions;\n    lodash.functionsIn = functionsIn;\n    lodash.groupBy = groupBy;\n    lodash.initial = initial;\n    lodash.intersection = intersection;\n    lodash.intersectionBy = intersectionBy;\n    lodash.intersectionWith = intersectionWith;\n    lodash.invert = invert;\n    lodash.invertBy = invertBy;\n    lodash.invokeMap = invokeMap;\n    lodash.iteratee = iteratee;\n    lodash.keyBy = keyBy;\n    lodash.keys = keys;\n    lodash.keysIn = keysIn;\n    lodash.map = map;\n    lodash.mapKeys = mapKeys;\n    lodash.mapValues = mapValues;\n    lodash.matches = matches;\n    lodash.matchesProperty = matchesProperty;\n    lodash.memoize = memoize;\n    lodash.merge = merge;\n    lodash.mergeWith = mergeWith;\n    lodash.method = method;\n    lodash.methodOf = methodOf;\n    lodash.mixin = mixin;\n    lodash.negate = negate;\n    lodash.nthArg = nthArg;\n    lodash.omit = omit;\n    lodash.omitBy = omitBy;\n    lodash.once = once;\n    lodash.orderBy = orderBy;\n    lodash.over = over;\n    lodash.overArgs = overArgs;\n    lodash.overEvery = overEvery;\n    lodash.overSome = overSome;\n    lodash.partial = partial;\n    lodash.partialRight = partialRight;\n    lodash.partition = partition;\n    lodash.pick = pick;\n    lodash.pickBy = pickBy;\n    lodash.property = property;\n    lodash.propertyOf = propertyOf;\n    lodash.pull = pull;\n    lodash.pullAll = pullAll;\n    lodash.pullAllBy = pullAllBy;\n    lodash.pullAllWith = pullAllWith;\n    lodash.pullAt = pullAt;\n    lodash.range = range;\n    lodash.rangeRight = rangeRight;\n    lodash.rearg = rearg;\n    lodash.reject = reject;\n    lodash.remove = remove;\n    lodash.rest = rest;\n    lodash.reverse = reverse;\n    lodash.sampleSize = sampleSize;\n    lodash.set = set;\n    lodash.setWith = setWith;\n    lodash.shuffle = shuffle;\n    lodash.slice = slice;\n    lodash.sortBy = sortBy;\n    lodash.sortedUniq = sortedUniq;\n    lodash.sortedUniqBy = sortedUniqBy;\n    lodash.split = split;\n    lodash.spread = spread;\n    lodash.tail = tail;\n    lodash.take = take;\n    lodash.takeRight = takeRight;\n    lodash.takeRightWhile = takeRightWhile;\n    lodash.takeWhile = takeWhile;\n    lodash.tap = tap;\n    lodash.throttle = throttle;\n    lodash.thru = thru;\n    lodash.toArray = toArray;\n    lodash.toPairs = toPairs;\n    lodash.toPairsIn = toPairsIn;\n    lodash.toPath = toPath;\n    lodash.toPlainObject = toPlainObject;\n    lodash.transform = transform;\n    lodash.unary = unary;\n    lodash.union = union;\n    lodash.unionBy = unionBy;\n    lodash.unionWith = unionWith;\n    lodash.uniq = uniq;\n    lodash.uniqBy = uniqBy;\n    lodash.uniqWith = uniqWith;\n    lodash.unset = unset;\n    lodash.unzip = unzip;\n    lodash.unzipWith = unzipWith;\n    lodash.update = update;\n    lodash.updateWith = updateWith;\n    lodash.values = values;\n    lodash.valuesIn = valuesIn;\n    lodash.without = without;\n    lodash.words = words;\n    lodash.wrap = wrap;\n    lodash.xor = xor;\n    lodash.xorBy = xorBy;\n    lodash.xorWith = xorWith;\n    lodash.zip = zip;\n    lodash.zipObject = zipObject;\n    lodash.zipObjectDeep = zipObjectDeep;\n    lodash.zipWith = zipWith;\n\n    // Add aliases.\n    lodash.entries = toPairs;\n    lodash.entriesIn = toPairsIn;\n    lodash.extend = assignIn;\n    lodash.extendWith = assignInWith;\n\n    // Add methods to `lodash.prototype`.\n    mixin(lodash, lodash);\n\n    /*------------------------------------------------------------------------*/\n\n    // Add methods that return unwrapped values in chain sequences.\n    lodash.add = add;\n    lodash.attempt = attempt;\n    lodash.camelCase = camelCase;\n    lodash.capitalize = capitalize;\n    lodash.ceil = ceil;\n    lodash.clamp = clamp;\n    lodash.clone = clone;\n    lodash.cloneDeep = cloneDeep;\n    lodash.cloneDeepWith = cloneDeepWith;\n    lodash.cloneWith = cloneWith;\n    lodash.conformsTo = conformsTo;\n    lodash.deburr = deburr;\n    lodash.defaultTo = defaultTo;\n    lodash.divide = divide;\n    lodash.endsWith = endsWith;\n    lodash.eq = eq;\n    lodash.escape = escape;\n    lodash.escapeRegExp = escapeRegExp;\n    lodash.every = every;\n    lodash.find = find;\n    lodash.findIndex = findIndex;\n    lodash.findKey = findKey;\n    lodash.findLast = findLast;\n    lodash.findLastIndex = findLastIndex;\n    lodash.findLastKey = findLastKey;\n    lodash.floor = floor;\n    lodash.forEach = forEach;\n    lodash.forEachRight = forEachRight;\n    lodash.forIn = forIn;\n    lodash.forInRight = forInRight;\n    lodash.forOwn = forOwn;\n    lodash.forOwnRight = forOwnRight;\n    lodash.get = get;\n    lodash.gt = gt;\n    lodash.gte = gte;\n    lodash.has = has;\n    lodash.hasIn = hasIn;\n    lodash.head = head;\n    lodash.identity = identity;\n    lodash.includes = includes;\n    lodash.indexOf = indexOf;\n    lodash.inRange = inRange;\n    lodash.invoke = invoke;\n    lodash.isArguments = isArguments;\n    lodash.isArray = isArray;\n    lodash.isArrayBuffer = isArrayBuffer;\n    lodash.isArrayLike = isArrayLike;\n    lodash.isArrayLikeObject = isArrayLikeObject;\n    lodash.isBoolean = isBoolean;\n    lodash.isBuffer = isBuffer;\n    lodash.isDate = isDate;\n    lodash.isElement = isElement;\n    lodash.isEmpty = isEmpty;\n    lodash.isEqual = isEqual;\n    lodash.isEqualWith = isEqualWith;\n    lodash.isError = isError;\n    lodash.isFinite = isFinite;\n    lodash.isFunction = isFunction;\n    lodash.isInteger = isInteger;\n    lodash.isLength = isLength;\n    lodash.isMap = isMap;\n    lodash.isMatch = isMatch;\n    lodash.isMatchWith = isMatchWith;\n    lodash.isNaN = isNaN;\n    lodash.isNative = isNative;\n    lodash.isNil = isNil;\n    lodash.isNull = isNull;\n    lodash.isNumber = isNumber;\n    lodash.isObject = isObject;\n    lodash.isObjectLike = isObjectLike;\n    lodash.isPlainObject = isPlainObject;\n    lodash.isRegExp = isRegExp;\n    lodash.isSafeInteger = isSafeInteger;\n    lodash.isSet = isSet;\n    lodash.isString = isString;\n    lodash.isSymbol = isSymbol;\n    lodash.isTypedArray = isTypedArray;\n    lodash.isUndefined = isUndefined;\n    lodash.isWeakMap = isWeakMap;\n    lodash.isWeakSet = isWeakSet;\n    lodash.join = join;\n    lodash.kebabCase = kebabCase;\n    lodash.last = last;\n    lodash.lastIndexOf = lastIndexOf;\n    lodash.lowerCase = lowerCase;\n    lodash.lowerFirst = lowerFirst;\n    lodash.lt = lt;\n    lodash.lte = lte;\n    lodash.max = max;\n    lodash.maxBy = maxBy;\n    lodash.mean = mean;\n    lodash.meanBy = meanBy;\n    lodash.min = min;\n    lodash.minBy = minBy;\n    lodash.stubArray = stubArray;\n    lodash.stubFalse = stubFalse;\n    lodash.stubObject = stubObject;\n    lodash.stubString = stubString;\n    lodash.stubTrue = stubTrue;\n    lodash.multiply = multiply;\n    lodash.nth = nth;\n    lodash.noConflict = noConflict;\n    lodash.noop = noop;\n    lodash.now = now;\n    lodash.pad = pad;\n    lodash.padEnd = padEnd;\n    lodash.padStart = padStart;\n    lodash.parseInt = parseInt;\n    lodash.random = random;\n    lodash.reduce = reduce;\n    lodash.reduceRight = reduceRight;\n    lodash.repeat = repeat;\n    lodash.replace = replace;\n    lodash.result = result;\n    lodash.round = round;\n    lodash.runInContext = runInContext;\n    lodash.sample = sample;\n    lodash.size = size;\n    lodash.snakeCase = snakeCase;\n    lodash.some = some;\n    lodash.sortedIndex = sortedIndex;\n    lodash.sortedIndexBy = sortedIndexBy;\n    lodash.sortedIndexOf = sortedIndexOf;\n    lodash.sortedLastIndex = sortedLastIndex;\n    lodash.sortedLastIndexBy = sortedLastIndexBy;\n    lodash.sortedLastIndexOf = sortedLastIndexOf;\n    lodash.startCase = startCase;\n    lodash.startsWith = startsWith;\n    lodash.subtract = subtract;\n    lodash.sum = sum;\n    lodash.sumBy = sumBy;\n    lodash.template = template;\n    lodash.times = times;\n    lodash.toFinite = toFinite;\n    lodash.toInteger = toInteger;\n    lodash.toLength = toLength;\n    lodash.toLower = toLower;\n    lodash.toNumber = toNumber;\n    lodash.toSafeInteger = toSafeInteger;\n    lodash.toString = toString;\n    lodash.toUpper = toUpper;\n    lodash.trim = trim;\n    lodash.trimEnd = trimEnd;\n    lodash.trimStart = trimStart;\n    lodash.truncate = truncate;\n    lodash.unescape = unescape;\n    lodash.uniqueId = uniqueId;\n    lodash.upperCase = upperCase;\n    lodash.upperFirst = upperFirst;\n\n    // Add aliases.\n    lodash.each = forEach;\n    lodash.eachRight = forEachRight;\n    lodash.first = head;\n\n    mixin(lodash, (function() {\n      var source = {};\n      baseForOwn(lodash, function(func, methodName) {\n        if (!hasOwnProperty.call(lodash.prototype, methodName)) {\n          source[methodName] = func;\n        }\n      });\n      return source;\n    }()), { 'chain': false });\n\n    /*------------------------------------------------------------------------*/\n\n    /**\n     * The semantic version number.\n     *\n     * @static\n     * @memberOf _\n     * @type {string}\n     */\n    lodash.VERSION = VERSION;\n\n    // Assign default placeholders.\n    arrayEach(['bind', 'bindKey', 'curry', 'curryRight', 'partial', 'partialRight'], function(methodName) {\n      lodash[methodName].placeholder = lodash;\n    });\n\n    // Add `LazyWrapper` methods for `_.drop` and `_.take` variants.\n    arrayEach(['drop', 'take'], function(methodName, index) {\n      LazyWrapper.prototype[methodName] = function(n) {\n        n = n === undefined ? 1 : nativeMax(toInteger(n), 0);\n\n        var result = (this.__filtered__ && !index)\n          ? new LazyWrapper(this)\n          : this.clone();\n\n        if (result.__filtered__) {\n          result.__takeCount__ = nativeMin(n, result.__takeCount__);\n        } else {\n          result.__views__.push({\n            'size': nativeMin(n, MAX_ARRAY_LENGTH),\n            'type': methodName + (result.__dir__ < 0 ? 'Right' : '')\n          });\n        }\n        return result;\n      };\n\n      LazyWrapper.prototype[methodName + 'Right'] = function(n) {\n        return this.reverse()[methodName](n).reverse();\n      };\n    });\n\n    // Add `LazyWrapper` methods that accept an `iteratee` value.\n    arrayEach(['filter', 'map', 'takeWhile'], function(methodName, index) {\n      var type = index + 1,\n          isFilter = type == LAZY_FILTER_FLAG || type == LAZY_WHILE_FLAG;\n\n      LazyWrapper.prototype[methodName] = function(iteratee) {\n        var result = this.clone();\n        result.__iteratees__.push({\n          'iteratee': getIteratee(iteratee, 3),\n          'type': type\n        });\n        result.__filtered__ = result.__filtered__ || isFilter;\n        return result;\n      };\n    });\n\n    // Add `LazyWrapper` methods for `_.head` and `_.last`.\n    arrayEach(['head', 'last'], function(methodName, index) {\n      var takeName = 'take' + (index ? 'Right' : '');\n\n      LazyWrapper.prototype[methodName] = function() {\n        return this[takeName](1).value()[0];\n      };\n    });\n\n    // Add `LazyWrapper` methods for `_.initial` and `_.tail`.\n    arrayEach(['initial', 'tail'], function(methodName, index) {\n      var dropName = 'drop' + (index ? '' : 'Right');\n\n      LazyWrapper.prototype[methodName] = function() {\n        return this.__filtered__ ? new LazyWrapper(this) : this[dropName](1);\n      };\n    });\n\n    LazyWrapper.prototype.compact = function() {\n      return this.filter(identity);\n    };\n\n    LazyWrapper.prototype.find = function(predicate) {\n      return this.filter(predicate).head();\n    };\n\n    LazyWrapper.prototype.findLast = function(predicate) {\n      return this.reverse().find(predicate);\n    };\n\n    LazyWrapper.prototype.invokeMap = baseRest(function(path, args) {\n      if (typeof path == 'function') {\n        return new LazyWrapper(this);\n      }\n      return this.map(function(value) {\n        return baseInvoke(value, path, args);\n      });\n    });\n\n    LazyWrapper.prototype.reject = function(predicate) {\n      return this.filter(negate(getIteratee(predicate)));\n    };\n\n    LazyWrapper.prototype.slice = function(start, end) {\n      start = toInteger(start);\n\n      var result = this;\n      if (result.__filtered__ && (start > 0 || end < 0)) {\n        return new LazyWrapper(result);\n      }\n      if (start < 0) {\n        result = result.takeRight(-start);\n      } else if (start) {\n        result = result.drop(start);\n      }\n      if (end !== undefined) {\n        end = toInteger(end);\n        result = end < 0 ? result.dropRight(-end) : result.take(end - start);\n      }\n      return result;\n    };\n\n    LazyWrapper.prototype.takeRightWhile = function(predicate) {\n      return this.reverse().takeWhile(predicate).reverse();\n    };\n\n    LazyWrapper.prototype.toArray = function() {\n      return this.take(MAX_ARRAY_LENGTH);\n    };\n\n    // Add `LazyWrapper` methods to `lodash.prototype`.\n    baseForOwn(LazyWrapper.prototype, function(func, methodName) {\n      var checkIteratee = /^(?:filter|find|map|reject)|While$/.test(methodName),\n          isTaker = /^(?:head|last)$/.test(methodName),\n          lodashFunc = lodash[isTaker ? ('take' + (methodName == 'last' ? 'Right' : '')) : methodName],\n          retUnwrapped = isTaker || /^find/.test(methodName);\n\n      if (!lodashFunc) {\n        return;\n      }\n      lodash.prototype[methodName] = function() {\n        var value = this.__wrapped__,\n            args = isTaker ? [1] : arguments,\n            isLazy = value instanceof LazyWrapper,\n            iteratee = args[0],\n            useLazy = isLazy || isArray(value);\n\n        var interceptor = function(value) {\n          var result = lodashFunc.apply(lodash, arrayPush([value], args));\n          return (isTaker && chainAll) ? result[0] : result;\n        };\n\n        if (useLazy && checkIteratee && typeof iteratee == 'function' && iteratee.length != 1) {\n          // Avoid lazy use if the iteratee has a \"length\" value other than `1`.\n          isLazy = useLazy = false;\n        }\n        var chainAll = this.__chain__,\n            isHybrid = !!this.__actions__.length,\n            isUnwrapped = retUnwrapped && !chainAll,\n            onlyLazy = isLazy && !isHybrid;\n\n        if (!retUnwrapped && useLazy) {\n          value = onlyLazy ? value : new LazyWrapper(this);\n          var result = func.apply(value, args);\n          result.__actions__.push({ 'func': thru, 'args': [interceptor], 'thisArg': undefined });\n          return new LodashWrapper(result, chainAll);\n        }\n        if (isUnwrapped && onlyLazy) {\n          return func.apply(this, args);\n        }\n        result = this.thru(interceptor);\n        return isUnwrapped ? (isTaker ? result.value()[0] : result.value()) : result;\n      };\n    });\n\n    // Add `Array` methods to `lodash.prototype`.\n    arrayEach(['pop', 'push', 'shift', 'sort', 'splice', 'unshift'], function(methodName) {\n      var func = arrayProto[methodName],\n          chainName = /^(?:push|sort|unshift)$/.test(methodName) ? 'tap' : 'thru',\n          retUnwrapped = /^(?:pop|shift)$/.test(methodName);\n\n      lodash.prototype[methodName] = function() {\n        var args = arguments;\n        if (retUnwrapped && !this.__chain__) {\n          var value = this.value();\n          return func.apply(isArray(value) ? value : [], args);\n        }\n        return this[chainName](function(value) {\n          return func.apply(isArray(value) ? value : [], args);\n        });\n      };\n    });\n\n    // Map minified method names to their real names.\n    baseForOwn(LazyWrapper.prototype, function(func, methodName) {\n      var lodashFunc = lodash[methodName];\n      if (lodashFunc) {\n        var key = lodashFunc.name + '';\n        if (!hasOwnProperty.call(realNames, key)) {\n          realNames[key] = [];\n        }\n        realNames[key].push({ 'name': methodName, 'func': lodashFunc });\n      }\n    });\n\n    realNames[createHybrid(undefined, WRAP_BIND_KEY_FLAG).name] = [{\n      'name': 'wrapper',\n      'func': undefined\n    }];\n\n    // Add methods to `LazyWrapper`.\n    LazyWrapper.prototype.clone = lazyClone;\n    LazyWrapper.prototype.reverse = lazyReverse;\n    LazyWrapper.prototype.value = lazyValue;\n\n    // Add chain sequence methods to the `lodash` wrapper.\n    lodash.prototype.at = wrapperAt;\n    lodash.prototype.chain = wrapperChain;\n    lodash.prototype.commit = wrapperCommit;\n    lodash.prototype.next = wrapperNext;\n    lodash.prototype.plant = wrapperPlant;\n    lodash.prototype.reverse = wrapperReverse;\n    lodash.prototype.toJSON = lodash.prototype.valueOf = lodash.prototype.value = wrapperValue;\n\n    // Add lazy aliases.\n    lodash.prototype.first = lodash.prototype.head;\n\n    if (symIterator) {\n      lodash.prototype[symIterator] = wrapperToIterator;\n    }\n    return lodash;\n  });\n\n  /*--------------------------------------------------------------------------*/\n\n  // Export lodash.\n  var _ = runInContext();\n\n  // Some AMD build optimizers, like r.js, check for condition patterns like:\n  if (true) {\n    // Expose Lodash on the global object to prevent errors when Lodash is\n    // loaded by a script tag in the presence of an AMD loader.\n    // See http://requirejs.org/docs/errors.html#mismatch for more details.\n    // Use `_.noConflict` to remove Lodash from the global object.\n    root._ = _;\n\n    // Define as an anonymous module so, through path mapping, it can be\n    // referenced as the \"underscore\" module.\n    !(__WEBPACK_AMD_DEFINE_RESULT__ = (function() {\n      return _;\n    }).call(exports, __webpack_require__, exports, module),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n  }\n  // Check for `exports` after `define` in case a build optimizer adds it.\n  else // removed by dead control flow\n{}\n}.call(this));\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/lodash.js?\n}");

/***/ },

/***/ "./node_modules/lodash/memoize.js"
/*!****************************************!*\
  !*** ./node_modules/lodash/memoize.js ***!
  \****************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var MapCache = __webpack_require__(/*! ./_MapCache */ \"./node_modules/lodash/_MapCache.js\");\n\n/** Error message constants. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/**\n * Creates a function that memoizes the result of `func`. If `resolver` is\n * provided, it determines the cache key for storing the result based on the\n * arguments provided to the memoized function. By default, the first argument\n * provided to the memoized function is used as the map cache key. The `func`\n * is invoked with the `this` binding of the memoized function.\n *\n * **Note:** The cache is exposed as the `cache` property on the memoized\n * function. Its creation may be customized by replacing the `_.memoize.Cache`\n * constructor with one whose instances implement the\n * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object)\n * method interface of `clear`, `delete`, `get`, `has`, and `set`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to have its output memoized.\n * @param {Function} [resolver] The function to resolve the cache key.\n * @returns {Function} Returns the new memoized function.\n * @example\n *\n * var object = { 'a': 1, 'b': 2 };\n * var other = { 'c': 3, 'd': 4 };\n *\n * var values = _.memoize(_.values);\n * values(object);\n * // => [1, 2]\n *\n * values(other);\n * // => [3, 4]\n *\n * object.a = 2;\n * values(object);\n * // => [1, 2]\n *\n * // Modify the result cache.\n * values.cache.set(object, ['a', 'b']);\n * values(object);\n * // => ['a', 'b']\n *\n * // Replace `_.memoize.Cache`.\n * _.memoize.Cache = WeakMap;\n */\nfunction memoize(func, resolver) {\n  if (typeof func != 'function' || (resolver != null && typeof resolver != 'function')) {\n    throw new TypeError(FUNC_ERROR_TEXT);\n  }\n  var memoized = function() {\n    var args = arguments,\n        key = resolver ? resolver.apply(this, args) : args[0],\n        cache = memoized.cache;\n\n    if (cache.has(key)) {\n      return cache.get(key);\n    }\n    var result = func.apply(this, args);\n    memoized.cache = cache.set(key, result) || cache;\n    return result;\n  };\n  memoized.cache = new (memoize.Cache || MapCache);\n  return memoized;\n}\n\n// Expose `MapCache`.\nmemoize.Cache = MapCache;\n\nmodule.exports = memoize;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/memoize.js?\n}");

/***/ },

/***/ "./node_modules/lodash/pickBy.js"
/*!***************************************!*\
  !*** ./node_modules/lodash/pickBy.js ***!
  \***************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var arrayMap = __webpack_require__(/*! ./_arrayMap */ \"./node_modules/lodash/_arrayMap.js\"),\n    baseIteratee = __webpack_require__(/*! ./_baseIteratee */ \"./node_modules/lodash/_baseIteratee.js\"),\n    basePickBy = __webpack_require__(/*! ./_basePickBy */ \"./node_modules/lodash/_basePickBy.js\"),\n    getAllKeysIn = __webpack_require__(/*! ./_getAllKeysIn */ \"./node_modules/lodash/_getAllKeysIn.js\");\n\n/**\n * Creates an object composed of the `object` properties `predicate` returns\n * truthy for. The predicate is invoked with two arguments: (value, key).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The source object.\n * @param {Function} [predicate=_.identity] The function invoked per property.\n * @returns {Object} Returns the new object.\n * @example\n *\n * var object = { 'a': 1, 'b': '2', 'c': 3 };\n *\n * _.pickBy(object, _.isNumber);\n * // => { 'a': 1, 'c': 3 }\n */\nfunction pickBy(object, predicate) {\n  if (object == null) {\n    return {};\n  }\n  var props = arrayMap(getAllKeysIn(object), function(prop) {\n    return [prop];\n  });\n  predicate = baseIteratee(predicate);\n  return basePickBy(object, props, function(value, path) {\n    return predicate(value, path[0]);\n  });\n}\n\nmodule.exports = pickBy;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/pickBy.js?\n}");

/***/ },

/***/ "./node_modules/lodash/property.js"
/*!*****************************************!*\
  !*** ./node_modules/lodash/property.js ***!
  \*****************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var baseProperty = __webpack_require__(/*! ./_baseProperty */ \"./node_modules/lodash/_baseProperty.js\"),\n    basePropertyDeep = __webpack_require__(/*! ./_basePropertyDeep */ \"./node_modules/lodash/_basePropertyDeep.js\"),\n    isKey = __webpack_require__(/*! ./_isKey */ \"./node_modules/lodash/_isKey.js\"),\n    toKey = __webpack_require__(/*! ./_toKey */ \"./node_modules/lodash/_toKey.js\");\n\n/**\n * Creates a function that returns the value at `path` of a given object.\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Util\n * @param {Array|string} path The path of the property to get.\n * @returns {Function} Returns the new accessor function.\n * @example\n *\n * var objects = [\n *   { 'a': { 'b': 2 } },\n *   { 'a': { 'b': 1 } }\n * ];\n *\n * _.map(objects, _.property('a.b'));\n * // => [2, 1]\n *\n * _.map(_.sortBy(objects, _.property(['a', 'b'])), 'a.b');\n * // => [1, 2]\n */\nfunction property(path) {\n  return isKey(path) ? baseProperty(toKey(path)) : basePropertyDeep(path);\n}\n\nmodule.exports = property;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/property.js?\n}");

/***/ },

/***/ "./node_modules/lodash/stubArray.js"
/*!******************************************!*\
  !*** ./node_modules/lodash/stubArray.js ***!
  \******************************************/
(module) {

eval("{/**\n * This method returns a new empty array.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {Array} Returns the new empty array.\n * @example\n *\n * var arrays = _.times(2, _.stubArray);\n *\n * console.log(arrays);\n * // => [[], []]\n *\n * console.log(arrays[0] === arrays[1]);\n * // => false\n */\nfunction stubArray() {\n  return [];\n}\n\nmodule.exports = stubArray;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/stubArray.js?\n}");

/***/ },

/***/ "./node_modules/lodash/stubFalse.js"
/*!******************************************!*\
  !*** ./node_modules/lodash/stubFalse.js ***!
  \******************************************/
(module) {

eval("{/**\n * This method returns `false`.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {boolean} Returns `false`.\n * @example\n *\n * _.times(2, _.stubFalse);\n * // => [false, false]\n */\nfunction stubFalse() {\n  return false;\n}\n\nmodule.exports = stubFalse;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/stubFalse.js?\n}");

/***/ },

/***/ "./node_modules/lodash/toString.js"
/*!*****************************************!*\
  !*** ./node_modules/lodash/toString.js ***!
  \*****************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{var baseToString = __webpack_require__(/*! ./_baseToString */ \"./node_modules/lodash/_baseToString.js\");\n\n/**\n * Converts `value` to a string. An empty string is returned for `null`\n * and `undefined` values. The sign of `-0` is preserved.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n * @example\n *\n * _.toString(null);\n * // => ''\n *\n * _.toString(-0);\n * // => '-0'\n *\n * _.toString([1, 2, 3]);\n * // => '1,2,3'\n */\nfunction toString(value) {\n  return value == null ? '' : baseToString(value);\n}\n\nmodule.exports = toString;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lodash/toString.js?\n}");

/***/ },

/***/ "./node_modules/lottie-web/build/player/lottie.js"
/*!********************************************************!*\
  !*** ./node_modules/lottie-web/build/player/lottie.js ***!
  \********************************************************/
(module, exports, __webpack_require__) {

eval("{(typeof document !== \"undefined\") && (typeof navigator !== \"undefined\") && (function (global, factory) {\n   true ? module.exports = factory() :\n  0;\n})(this, (function () { 'use strict';\n\n  var svgNS = 'http://www.w3.org/2000/svg';\n  var locationHref = '';\n  var _useWebWorker = false;\n  var initialDefaultFrame = -999999;\n  var setWebWorker = function setWebWorker(flag) {\n    _useWebWorker = !!flag;\n  };\n  var getWebWorker = function getWebWorker() {\n    return _useWebWorker;\n  };\n  var setLocationHref = function setLocationHref(value) {\n    locationHref = value;\n  };\n  var getLocationHref = function getLocationHref() {\n    return locationHref;\n  };\n\n  function createTag(type) {\n    // return {appendChild:function(){},setAttribute:function(){},style:{}}\n    return document.createElement(type);\n  }\n\n  function extendPrototype(sources, destination) {\n    var i;\n    var len = sources.length;\n    var sourcePrototype;\n    for (i = 0; i < len; i += 1) {\n      sourcePrototype = sources[i].prototype;\n      for (var attr in sourcePrototype) {\n        if (Object.prototype.hasOwnProperty.call(sourcePrototype, attr)) destination.prototype[attr] = sourcePrototype[attr];\n      }\n    }\n  }\n  function getDescriptor(object, prop) {\n    return Object.getOwnPropertyDescriptor(object, prop);\n  }\n  function createProxyFunction(prototype) {\n    function ProxyFunction() {}\n    ProxyFunction.prototype = prototype;\n    return ProxyFunction;\n  }\n\n  // import Howl from '../../3rd_party/howler';\n\n  var audioControllerFactory = function () {\n    function AudioController(audioFactory) {\n      this.audios = [];\n      this.audioFactory = audioFactory;\n      this._volume = 1;\n      this._isMuted = false;\n    }\n    AudioController.prototype = {\n      addAudio: function addAudio(audio) {\n        this.audios.push(audio);\n      },\n      pause: function pause() {\n        var i;\n        var len = this.audios.length;\n        for (i = 0; i < len; i += 1) {\n          this.audios[i].pause();\n        }\n      },\n      resume: function resume() {\n        var i;\n        var len = this.audios.length;\n        for (i = 0; i < len; i += 1) {\n          this.audios[i].resume();\n        }\n      },\n      setRate: function setRate(rateValue) {\n        var i;\n        var len = this.audios.length;\n        for (i = 0; i < len; i += 1) {\n          this.audios[i].setRate(rateValue);\n        }\n      },\n      createAudio: function createAudio(assetPath) {\n        if (this.audioFactory) {\n          return this.audioFactory(assetPath);\n        }\n        if (window.Howl) {\n          return new window.Howl({\n            src: [assetPath]\n          });\n        }\n        return {\n          isPlaying: false,\n          play: function play() {\n            this.isPlaying = true;\n          },\n          seek: function seek() {\n            this.isPlaying = false;\n          },\n          playing: function playing() {},\n          rate: function rate() {},\n          setVolume: function setVolume() {}\n        };\n      },\n      setAudioFactory: function setAudioFactory(audioFactory) {\n        this.audioFactory = audioFactory;\n      },\n      setVolume: function setVolume(value) {\n        this._volume = value;\n        this._updateVolume();\n      },\n      mute: function mute() {\n        this._isMuted = true;\n        this._updateVolume();\n      },\n      unmute: function unmute() {\n        this._isMuted = false;\n        this._updateVolume();\n      },\n      getVolume: function getVolume() {\n        return this._volume;\n      },\n      _updateVolume: function _updateVolume() {\n        var i;\n        var len = this.audios.length;\n        for (i = 0; i < len; i += 1) {\n          this.audios[i].volume(this._volume * (this._isMuted ? 0 : 1));\n        }\n      }\n    };\n    return function () {\n      return new AudioController();\n    };\n  }();\n\n  var createTypedArray = function () {\n    function createRegularArray(type, len) {\n      var i = 0;\n      var arr = [];\n      var value;\n      switch (type) {\n        case 'int16':\n        case 'uint8c':\n          value = 1;\n          break;\n        default:\n          value = 1.1;\n          break;\n      }\n      for (i = 0; i < len; i += 1) {\n        arr.push(value);\n      }\n      return arr;\n    }\n    function createTypedArrayFactory(type, len) {\n      if (type === 'float32') {\n        return new Float32Array(len);\n      }\n      if (type === 'int16') {\n        return new Int16Array(len);\n      }\n      if (type === 'uint8c') {\n        return new Uint8ClampedArray(len);\n      }\n      return createRegularArray(type, len);\n    }\n    if (typeof Uint8ClampedArray === 'function' && typeof Float32Array === 'function') {\n      return createTypedArrayFactory;\n    }\n    return createRegularArray;\n  }();\n  function createSizedArray(len) {\n    return Array.apply(null, {\n      length: len\n    });\n  }\n\n  function _typeof$6(o) { \"@babel/helpers - typeof\"; return _typeof$6 = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof$6(o); }\n  var subframeEnabled = true;\n  var expressionsPlugin = null;\n  var expressionsInterfaces = null;\n  var idPrefix$1 = '';\n  var isSafari = /^((?!chrome|android).)*safari/i.test(navigator.userAgent);\n  var _shouldRoundValues = false;\n  var bmPow = Math.pow;\n  var bmSqrt = Math.sqrt;\n  var bmFloor = Math.floor;\n  var bmMax = Math.max;\n  var bmMin = Math.min;\n  var BMMath = {};\n  (function () {\n    var propertyNames = ['abs', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atanh', 'atan2', 'ceil', 'cbrt', 'expm1', 'clz32', 'cos', 'cosh', 'exp', 'floor', 'fround', 'hypot', 'imul', 'log', 'log1p', 'log2', 'log10', 'max', 'min', 'pow', 'random', 'round', 'sign', 'sin', 'sinh', 'sqrt', 'tan', 'tanh', 'trunc', 'E', 'LN10', 'LN2', 'LOG10E', 'LOG2E', 'PI', 'SQRT1_2', 'SQRT2'];\n    var i;\n    var len = propertyNames.length;\n    for (i = 0; i < len; i += 1) {\n      BMMath[propertyNames[i]] = Math[propertyNames[i]];\n    }\n  })();\n  function ProjectInterface$1() {\n    return {};\n  }\n  BMMath.random = Math.random;\n  BMMath.abs = function (val) {\n    var tOfVal = _typeof$6(val);\n    if (tOfVal === 'object' && val.length) {\n      var absArr = createSizedArray(val.length);\n      var i;\n      var len = val.length;\n      for (i = 0; i < len; i += 1) {\n        absArr[i] = Math.abs(val[i]);\n      }\n      return absArr;\n    }\n    return Math.abs(val);\n  };\n  var defaultCurveSegments = 150;\n  var degToRads = Math.PI / 180;\n  var roundCorner = 0.5519;\n  function roundValues(flag) {\n    _shouldRoundValues = !!flag;\n  }\n  function bmRnd(value) {\n    if (_shouldRoundValues) {\n      return Math.round(value);\n    }\n    return value;\n  }\n  function styleDiv(element) {\n    element.style.position = 'absolute';\n    element.style.top = 0;\n    element.style.left = 0;\n    element.style.display = 'block';\n    element.style.transformOrigin = '0 0';\n    element.style.webkitTransformOrigin = '0 0';\n    element.style.backfaceVisibility = 'visible';\n    element.style.webkitBackfaceVisibility = 'visible';\n    element.style.transformStyle = 'preserve-3d';\n    element.style.webkitTransformStyle = 'preserve-3d';\n    element.style.mozTransformStyle = 'preserve-3d';\n  }\n  function BMEnterFrameEvent(type, currentTime, totalTime, frameMultiplier) {\n    this.type = type;\n    this.currentTime = currentTime;\n    this.totalTime = totalTime;\n    this.direction = frameMultiplier < 0 ? -1 : 1;\n  }\n  function BMCompleteEvent(type, frameMultiplier) {\n    this.type = type;\n    this.direction = frameMultiplier < 0 ? -1 : 1;\n  }\n  function BMCompleteLoopEvent(type, totalLoops, currentLoop, frameMultiplier) {\n    this.type = type;\n    this.currentLoop = currentLoop;\n    this.totalLoops = totalLoops;\n    this.direction = frameMultiplier < 0 ? -1 : 1;\n  }\n  function BMSegmentStartEvent(type, firstFrame, totalFrames) {\n    this.type = type;\n    this.firstFrame = firstFrame;\n    this.totalFrames = totalFrames;\n  }\n  function BMDestroyEvent(type, target) {\n    this.type = type;\n    this.target = target;\n  }\n  function BMRenderFrameErrorEvent(nativeError, currentTime) {\n    this.type = 'renderFrameError';\n    this.nativeError = nativeError;\n    this.currentTime = currentTime;\n  }\n  function BMConfigErrorEvent(nativeError) {\n    this.type = 'configError';\n    this.nativeError = nativeError;\n  }\n  function BMAnimationConfigErrorEvent(type, nativeError) {\n    this.type = type;\n    this.nativeError = nativeError;\n  }\n  var createElementID = function () {\n    var _count = 0;\n    return function createID() {\n      _count += 1;\n      return idPrefix$1 + '__lottie_element_' + _count;\n    };\n  }();\n  function HSVtoRGB(h, s, v) {\n    var r;\n    var g;\n    var b;\n    var i;\n    var f;\n    var p;\n    var q;\n    var t;\n    i = Math.floor(h * 6);\n    f = h * 6 - i;\n    p = v * (1 - s);\n    q = v * (1 - f * s);\n    t = v * (1 - (1 - f) * s);\n    switch (i % 6) {\n      case 0:\n        r = v;\n        g = t;\n        b = p;\n        break;\n      case 1:\n        r = q;\n        g = v;\n        b = p;\n        break;\n      case 2:\n        r = p;\n        g = v;\n        b = t;\n        break;\n      case 3:\n        r = p;\n        g = q;\n        b = v;\n        break;\n      case 4:\n        r = t;\n        g = p;\n        b = v;\n        break;\n      case 5:\n        r = v;\n        g = p;\n        b = q;\n        break;\n      default:\n        break;\n    }\n    return [r, g, b];\n  }\n  function RGBtoHSV(r, g, b) {\n    var max = Math.max(r, g, b);\n    var min = Math.min(r, g, b);\n    var d = max - min;\n    var h;\n    var s = max === 0 ? 0 : d / max;\n    var v = max / 255;\n    switch (max) {\n      case min:\n        h = 0;\n        break;\n      case r:\n        h = g - b + d * (g < b ? 6 : 0);\n        h /= 6 * d;\n        break;\n      case g:\n        h = b - r + d * 2;\n        h /= 6 * d;\n        break;\n      case b:\n        h = r - g + d * 4;\n        h /= 6 * d;\n        break;\n      default:\n        break;\n    }\n    return [h, s, v];\n  }\n  function addSaturationToRGB(color, offset) {\n    var hsv = RGBtoHSV(color[0] * 255, color[1] * 255, color[2] * 255);\n    hsv[1] += offset;\n    if (hsv[1] > 1) {\n      hsv[1] = 1;\n    } else if (hsv[1] <= 0) {\n      hsv[1] = 0;\n    }\n    return HSVtoRGB(hsv[0], hsv[1], hsv[2]);\n  }\n  function addBrightnessToRGB(color, offset) {\n    var hsv = RGBtoHSV(color[0] * 255, color[1] * 255, color[2] * 255);\n    hsv[2] += offset;\n    if (hsv[2] > 1) {\n      hsv[2] = 1;\n    } else if (hsv[2] < 0) {\n      hsv[2] = 0;\n    }\n    return HSVtoRGB(hsv[0], hsv[1], hsv[2]);\n  }\n  function addHueToRGB(color, offset) {\n    var hsv = RGBtoHSV(color[0] * 255, color[1] * 255, color[2] * 255);\n    hsv[0] += offset / 360;\n    if (hsv[0] > 1) {\n      hsv[0] -= 1;\n    } else if (hsv[0] < 0) {\n      hsv[0] += 1;\n    }\n    return HSVtoRGB(hsv[0], hsv[1], hsv[2]);\n  }\n  var rgbToHex = function () {\n    var colorMap = [];\n    var i;\n    var hex;\n    for (i = 0; i < 256; i += 1) {\n      hex = i.toString(16);\n      colorMap[i] = hex.length === 1 ? '0' + hex : hex;\n    }\n    return function (r, g, b) {\n      if (r < 0) {\n        r = 0;\n      }\n      if (g < 0) {\n        g = 0;\n      }\n      if (b < 0) {\n        b = 0;\n      }\n      return '#' + colorMap[r] + colorMap[g] + colorMap[b];\n    };\n  }();\n  var setSubframeEnabled = function setSubframeEnabled(flag) {\n    subframeEnabled = !!flag;\n  };\n  var getSubframeEnabled = function getSubframeEnabled() {\n    return subframeEnabled;\n  };\n  var setExpressionsPlugin = function setExpressionsPlugin(value) {\n    expressionsPlugin = value;\n  };\n  var getExpressionsPlugin = function getExpressionsPlugin() {\n    return expressionsPlugin;\n  };\n  var setExpressionInterfaces = function setExpressionInterfaces(value) {\n    expressionsInterfaces = value;\n  };\n  var getExpressionInterfaces = function getExpressionInterfaces() {\n    return expressionsInterfaces;\n  };\n  var setDefaultCurveSegments = function setDefaultCurveSegments(value) {\n    defaultCurveSegments = value;\n  };\n  var getDefaultCurveSegments = function getDefaultCurveSegments() {\n    return defaultCurveSegments;\n  };\n  var setIdPrefix = function setIdPrefix(value) {\n    idPrefix$1 = value;\n  };\n  var getIdPrefix = function getIdPrefix() {\n    return idPrefix$1;\n  };\n\n  function createNS(type) {\n    // return {appendChild:function(){},setAttribute:function(){},style:{}}\n    return document.createElementNS(svgNS, type);\n  }\n\n  function _typeof$5(o) { \"@babel/helpers - typeof\"; return _typeof$5 = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof$5(o); }\n  var dataManager = function () {\n    var _counterId = 1;\n    var processes = [];\n    var workerFn;\n    var workerInstance;\n    var workerProxy = {\n      onmessage: function onmessage() {},\n      postMessage: function postMessage(path) {\n        workerFn({\n          data: path\n        });\n      }\n    };\n    var _workerSelf = {\n      postMessage: function postMessage(data) {\n        workerProxy.onmessage({\n          data: data\n        });\n      }\n    };\n    function createWorker(fn) {\n      if (window.Worker && window.Blob && getWebWorker()) {\n        var blob = new Blob(['var _workerSelf = self; self.onmessage = ', fn.toString()], {\n          type: 'text/javascript'\n        });\n        // var blob = new Blob(['self.onmessage = ', fn.toString()], { type: 'text/javascript' });\n        var url = URL.createObjectURL(blob);\n        return new Worker(url);\n      }\n      workerFn = fn;\n      return workerProxy;\n    }\n    function setupWorker() {\n      if (!workerInstance) {\n        workerInstance = createWorker(function workerStart(e) {\n          function dataFunctionManager() {\n            function completeLayers(layers, comps) {\n              var layerData;\n              var i;\n              var len = layers.length;\n              var j;\n              var jLen;\n              var k;\n              var kLen;\n              for (i = 0; i < len; i += 1) {\n                layerData = layers[i];\n                if ('ks' in layerData && !layerData.completed) {\n                  layerData.completed = true;\n                  if (layerData.hasMask) {\n                    var maskProps = layerData.masksProperties;\n                    jLen = maskProps.length;\n                    for (j = 0; j < jLen; j += 1) {\n                      if (maskProps[j].pt.k.i) {\n                        convertPathsToAbsoluteValues(maskProps[j].pt.k);\n                      } else {\n                        kLen = maskProps[j].pt.k.length;\n                        for (k = 0; k < kLen; k += 1) {\n                          if (maskProps[j].pt.k[k].s) {\n                            convertPathsToAbsoluteValues(maskProps[j].pt.k[k].s[0]);\n                          }\n                          if (maskProps[j].pt.k[k].e) {\n                            convertPathsToAbsoluteValues(maskProps[j].pt.k[k].e[0]);\n                          }\n                        }\n                      }\n                    }\n                  }\n                  if (layerData.ty === 0) {\n                    layerData.layers = findCompLayers(layerData.refId, comps);\n                    completeLayers(layerData.layers, comps);\n                  } else if (layerData.ty === 4) {\n                    completeShapes(layerData.shapes);\n                  } else if (layerData.ty === 5) {\n                    completeText(layerData);\n                  }\n                }\n              }\n            }\n            function completeChars(chars, assets) {\n              if (chars) {\n                var i = 0;\n                var len = chars.length;\n                for (i = 0; i < len; i += 1) {\n                  if (chars[i].t === 1) {\n                    // var compData = findComp(chars[i].data.refId, assets);\n                    chars[i].data.layers = findCompLayers(chars[i].data.refId, assets);\n                    // chars[i].data.ip = 0;\n                    // chars[i].data.op = 99999;\n                    // chars[i].data.st = 0;\n                    // chars[i].data.sr = 1;\n                    // chars[i].w = compData.w;\n                    // chars[i].data.ks = {\n                    //   a: { k: [0, 0, 0], a: 0 },\n                    //   p: { k: [0, -compData.h, 0], a: 0 },\n                    //   r: { k: 0, a: 0 },\n                    //   s: { k: [100, 100], a: 0 },\n                    //   o: { k: 100, a: 0 },\n                    // };\n                    completeLayers(chars[i].data.layers, assets);\n                  }\n                }\n              }\n            }\n            function findComp(id, comps) {\n              var i = 0;\n              var len = comps.length;\n              while (i < len) {\n                if (comps[i].id === id) {\n                  return comps[i];\n                }\n                i += 1;\n              }\n              return null;\n            }\n            function findCompLayers(id, comps) {\n              var comp = findComp(id, comps);\n              if (comp) {\n                if (!comp.layers.__used) {\n                  comp.layers.__used = true;\n                  return comp.layers;\n                }\n                return JSON.parse(JSON.stringify(comp.layers));\n              }\n              return null;\n            }\n            function completeShapes(arr) {\n              var i;\n              var len = arr.length;\n              var j;\n              var jLen;\n              for (i = len - 1; i >= 0; i -= 1) {\n                if (arr[i].ty === 'sh') {\n                  if (arr[i].ks.k.i) {\n                    convertPathsToAbsoluteValues(arr[i].ks.k);\n                  } else {\n                    jLen = arr[i].ks.k.length;\n                    for (j = 0; j < jLen; j += 1) {\n                      if (arr[i].ks.k[j].s) {\n                        convertPathsToAbsoluteValues(arr[i].ks.k[j].s[0]);\n                      }\n                      if (arr[i].ks.k[j].e) {\n                        convertPathsToAbsoluteValues(arr[i].ks.k[j].e[0]);\n                      }\n                    }\n                  }\n                } else if (arr[i].ty === 'gr') {\n                  completeShapes(arr[i].it);\n                }\n              }\n            }\n            function convertPathsToAbsoluteValues(path) {\n              var i;\n              var len = path.i.length;\n              for (i = 0; i < len; i += 1) {\n                path.i[i][0] += path.v[i][0];\n                path.i[i][1] += path.v[i][1];\n                path.o[i][0] += path.v[i][0];\n                path.o[i][1] += path.v[i][1];\n              }\n            }\n            function checkVersion(minimum, animVersionString) {\n              var animVersion = animVersionString ? animVersionString.split('.') : [100, 100, 100];\n              if (minimum[0] > animVersion[0]) {\n                return true;\n              }\n              if (animVersion[0] > minimum[0]) {\n                return false;\n              }\n              if (minimum[1] > animVersion[1]) {\n                return true;\n              }\n              if (animVersion[1] > minimum[1]) {\n                return false;\n              }\n              if (minimum[2] > animVersion[2]) {\n                return true;\n              }\n              if (animVersion[2] > minimum[2]) {\n                return false;\n              }\n              return null;\n            }\n            var checkText = function () {\n              var minimumVersion = [4, 4, 14];\n              function updateTextLayer(textLayer) {\n                var documentData = textLayer.t.d;\n                textLayer.t.d = {\n                  k: [{\n                    s: documentData,\n                    t: 0\n                  }]\n                };\n              }\n              function iterateLayers(layers) {\n                var i;\n                var len = layers.length;\n                for (i = 0; i < len; i += 1) {\n                  if (layers[i].ty === 5) {\n                    updateTextLayer(layers[i]);\n                  }\n                }\n              }\n              return function (animationData) {\n                if (checkVersion(minimumVersion, animationData.v)) {\n                  iterateLayers(animationData.layers);\n                  if (animationData.assets) {\n                    var i;\n                    var len = animationData.assets.length;\n                    for (i = 0; i < len; i += 1) {\n                      if (animationData.assets[i].layers) {\n                        iterateLayers(animationData.assets[i].layers);\n                      }\n                    }\n                  }\n                }\n              };\n            }();\n            var checkChars = function () {\n              var minimumVersion = [4, 7, 99];\n              return function (animationData) {\n                if (animationData.chars && !checkVersion(minimumVersion, animationData.v)) {\n                  var i;\n                  var len = animationData.chars.length;\n                  for (i = 0; i < len; i += 1) {\n                    var charData = animationData.chars[i];\n                    if (charData.data && charData.data.shapes) {\n                      completeShapes(charData.data.shapes);\n                      charData.data.ip = 0;\n                      charData.data.op = 99999;\n                      charData.data.st = 0;\n                      charData.data.sr = 1;\n                      charData.data.ks = {\n                        p: {\n                          k: [0, 0],\n                          a: 0\n                        },\n                        s: {\n                          k: [100, 100],\n                          a: 0\n                        },\n                        a: {\n                          k: [0, 0],\n                          a: 0\n                        },\n                        r: {\n                          k: 0,\n                          a: 0\n                        },\n                        o: {\n                          k: 100,\n                          a: 0\n                        }\n                      };\n                      if (!animationData.chars[i].t) {\n                        charData.data.shapes.push({\n                          ty: 'no'\n                        });\n                        charData.data.shapes[0].it.push({\n                          p: {\n                            k: [0, 0],\n                            a: 0\n                          },\n                          s: {\n                            k: [100, 100],\n                            a: 0\n                          },\n                          a: {\n                            k: [0, 0],\n                            a: 0\n                          },\n                          r: {\n                            k: 0,\n                            a: 0\n                          },\n                          o: {\n                            k: 100,\n                            a: 0\n                          },\n                          sk: {\n                            k: 0,\n                            a: 0\n                          },\n                          sa: {\n                            k: 0,\n                            a: 0\n                          },\n                          ty: 'tr'\n                        });\n                      }\n                    }\n                  }\n                }\n              };\n            }();\n            var checkPathProperties = function () {\n              var minimumVersion = [5, 7, 15];\n              function updateTextLayer(textLayer) {\n                var pathData = textLayer.t.p;\n                if (typeof pathData.a === 'number') {\n                  pathData.a = {\n                    a: 0,\n                    k: pathData.a\n                  };\n                }\n                if (typeof pathData.p === 'number') {\n                  pathData.p = {\n                    a: 0,\n                    k: pathData.p\n                  };\n                }\n                if (typeof pathData.r === 'number') {\n                  pathData.r = {\n                    a: 0,\n                    k: pathData.r\n                  };\n                }\n              }\n              function iterateLayers(layers) {\n                var i;\n                var len = layers.length;\n                for (i = 0; i < len; i += 1) {\n                  if (layers[i].ty === 5) {\n                    updateTextLayer(layers[i]);\n                  }\n                }\n              }\n              return function (animationData) {\n                if (checkVersion(minimumVersion, animationData.v)) {\n                  iterateLayers(animationData.layers);\n                  if (animationData.assets) {\n                    var i;\n                    var len = animationData.assets.length;\n                    for (i = 0; i < len; i += 1) {\n                      if (animationData.assets[i].layers) {\n                        iterateLayers(animationData.assets[i].layers);\n                      }\n                    }\n                  }\n                }\n              };\n            }();\n            var checkColors = function () {\n              var minimumVersion = [4, 1, 9];\n              function iterateShapes(shapes) {\n                var i;\n                var len = shapes.length;\n                var j;\n                var jLen;\n                for (i = 0; i < len; i += 1) {\n                  if (shapes[i].ty === 'gr') {\n                    iterateShapes(shapes[i].it);\n                  } else if (shapes[i].ty === 'fl' || shapes[i].ty === 'st') {\n                    if (shapes[i].c.k && shapes[i].c.k[0].i) {\n                      jLen = shapes[i].c.k.length;\n                      for (j = 0; j < jLen; j += 1) {\n                        if (shapes[i].c.k[j].s) {\n                          shapes[i].c.k[j].s[0] /= 255;\n                          shapes[i].c.k[j].s[1] /= 255;\n                          shapes[i].c.k[j].s[2] /= 255;\n                          shapes[i].c.k[j].s[3] /= 255;\n                        }\n                        if (shapes[i].c.k[j].e) {\n                          shapes[i].c.k[j].e[0] /= 255;\n                          shapes[i].c.k[j].e[1] /= 255;\n                          shapes[i].c.k[j].e[2] /= 255;\n                          shapes[i].c.k[j].e[3] /= 255;\n                        }\n                      }\n                    } else {\n                      shapes[i].c.k[0] /= 255;\n                      shapes[i].c.k[1] /= 255;\n                      shapes[i].c.k[2] /= 255;\n                      shapes[i].c.k[3] /= 255;\n                    }\n                  }\n                }\n              }\n              function iterateLayers(layers) {\n                var i;\n                var len = layers.length;\n                for (i = 0; i < len; i += 1) {\n                  if (layers[i].ty === 4) {\n                    iterateShapes(layers[i].shapes);\n                  }\n                }\n              }\n              return function (animationData) {\n                if (checkVersion(minimumVersion, animationData.v)) {\n                  iterateLayers(animationData.layers);\n                  if (animationData.assets) {\n                    var i;\n                    var len = animationData.assets.length;\n                    for (i = 0; i < len; i += 1) {\n                      if (animationData.assets[i].layers) {\n                        iterateLayers(animationData.assets[i].layers);\n                      }\n                    }\n                  }\n                }\n              };\n            }();\n            var checkShapes = function () {\n              var minimumVersion = [4, 4, 18];\n              function completeClosingShapes(arr) {\n                var i;\n                var len = arr.length;\n                var j;\n                var jLen;\n                for (i = len - 1; i >= 0; i -= 1) {\n                  if (arr[i].ty === 'sh') {\n                    if (arr[i].ks.k.i) {\n                      arr[i].ks.k.c = arr[i].closed;\n                    } else {\n                      jLen = arr[i].ks.k.length;\n                      for (j = 0; j < jLen; j += 1) {\n                        if (arr[i].ks.k[j].s) {\n                          arr[i].ks.k[j].s[0].c = arr[i].closed;\n                        }\n                        if (arr[i].ks.k[j].e) {\n                          arr[i].ks.k[j].e[0].c = arr[i].closed;\n                        }\n                      }\n                    }\n                  } else if (arr[i].ty === 'gr') {\n                    completeClosingShapes(arr[i].it);\n                  }\n                }\n              }\n              function iterateLayers(layers) {\n                var layerData;\n                var i;\n                var len = layers.length;\n                var j;\n                var jLen;\n                var k;\n                var kLen;\n                for (i = 0; i < len; i += 1) {\n                  layerData = layers[i];\n                  if (layerData.hasMask) {\n                    var maskProps = layerData.masksProperties;\n                    jLen = maskProps.length;\n                    for (j = 0; j < jLen; j += 1) {\n                      if (maskProps[j].pt.k.i) {\n                        maskProps[j].pt.k.c = maskProps[j].cl;\n                      } else {\n                        kLen = maskProps[j].pt.k.length;\n                        for (k = 0; k < kLen; k += 1) {\n                          if (maskProps[j].pt.k[k].s) {\n                            maskProps[j].pt.k[k].s[0].c = maskProps[j].cl;\n                          }\n                          if (maskProps[j].pt.k[k].e) {\n                            maskProps[j].pt.k[k].e[0].c = maskProps[j].cl;\n                          }\n                        }\n                      }\n                    }\n                  }\n                  if (layerData.ty === 4) {\n                    completeClosingShapes(layerData.shapes);\n                  }\n                }\n              }\n              return function (animationData) {\n                if (checkVersion(minimumVersion, animationData.v)) {\n                  iterateLayers(animationData.layers);\n                  if (animationData.assets) {\n                    var i;\n                    var len = animationData.assets.length;\n                    for (i = 0; i < len; i += 1) {\n                      if (animationData.assets[i].layers) {\n                        iterateLayers(animationData.assets[i].layers);\n                      }\n                    }\n                  }\n                }\n              };\n            }();\n            function completeData(animationData) {\n              if (animationData.__complete) {\n                return;\n              }\n              checkColors(animationData);\n              checkText(animationData);\n              checkChars(animationData);\n              checkPathProperties(animationData);\n              checkShapes(animationData);\n              completeLayers(animationData.layers, animationData.assets);\n              completeChars(animationData.chars, animationData.assets);\n              animationData.__complete = true;\n            }\n            function completeText(data) {\n              if (data.t.a.length === 0 && !('m' in data.t.p)) {\n                // data.singleShape = true;\n              }\n            }\n            var moduleOb = {};\n            moduleOb.completeData = completeData;\n            moduleOb.checkColors = checkColors;\n            moduleOb.checkChars = checkChars;\n            moduleOb.checkPathProperties = checkPathProperties;\n            moduleOb.checkShapes = checkShapes;\n            moduleOb.completeLayers = completeLayers;\n            return moduleOb;\n          }\n          if (!_workerSelf.dataManager) {\n            _workerSelf.dataManager = dataFunctionManager();\n          }\n          if (!_workerSelf.assetLoader) {\n            _workerSelf.assetLoader = function () {\n              function formatResponse(xhr) {\n                // using typeof doubles the time of execution of this method,\n                // so if available, it's better to use the header to validate the type\n                var contentTypeHeader = xhr.getResponseHeader('content-type');\n                if (contentTypeHeader && xhr.responseType === 'json' && contentTypeHeader.indexOf('json') !== -1) {\n                  return xhr.response;\n                }\n                if (xhr.response && _typeof$5(xhr.response) === 'object') {\n                  return xhr.response;\n                }\n                if (xhr.response && typeof xhr.response === 'string') {\n                  return JSON.parse(xhr.response);\n                }\n                if (xhr.responseText) {\n                  return JSON.parse(xhr.responseText);\n                }\n                return null;\n              }\n              function loadAsset(path, fullPath, callback, errorCallback) {\n                var response;\n                var xhr = new XMLHttpRequest();\n                // set responseType after calling open or IE will break.\n                try {\n                  // This crashes on Android WebView prior to KitKat\n                  xhr.responseType = 'json';\n                } catch (err) {} // eslint-disable-line no-empty\n                xhr.onreadystatechange = function () {\n                  if (xhr.readyState === 4) {\n                    if (xhr.status === 200) {\n                      response = formatResponse(xhr);\n                      callback(response);\n                    } else {\n                      try {\n                        response = formatResponse(xhr);\n                        callback(response);\n                      } catch (err) {\n                        if (errorCallback) {\n                          errorCallback(err);\n                        }\n                      }\n                    }\n                  }\n                };\n                try {\n                  // Hack to workaround banner validation\n                  xhr.open(['G', 'E', 'T'].join(''), path, true);\n                } catch (error) {\n                  // Hack to workaround banner validation\n                  xhr.open(['G', 'E', 'T'].join(''), fullPath + '/' + path, true);\n                }\n                xhr.send();\n              }\n              return {\n                load: loadAsset\n              };\n            }();\n          }\n          if (e.data.type === 'loadAnimation') {\n            _workerSelf.assetLoader.load(e.data.path, e.data.fullPath, function (data) {\n              _workerSelf.dataManager.completeData(data);\n              _workerSelf.postMessage({\n                id: e.data.id,\n                payload: data,\n                status: 'success'\n              });\n            }, function () {\n              _workerSelf.postMessage({\n                id: e.data.id,\n                status: 'error'\n              });\n            });\n          } else if (e.data.type === 'complete') {\n            var animation = e.data.animation;\n            _workerSelf.dataManager.completeData(animation);\n            _workerSelf.postMessage({\n              id: e.data.id,\n              payload: animation,\n              status: 'success'\n            });\n          } else if (e.data.type === 'loadData') {\n            _workerSelf.assetLoader.load(e.data.path, e.data.fullPath, function (data) {\n              _workerSelf.postMessage({\n                id: e.data.id,\n                payload: data,\n                status: 'success'\n              });\n            }, function () {\n              _workerSelf.postMessage({\n                id: e.data.id,\n                status: 'error'\n              });\n            });\n          }\n        });\n        workerInstance.onmessage = function (event) {\n          var data = event.data;\n          var id = data.id;\n          var process = processes[id];\n          processes[id] = null;\n          if (data.status === 'success') {\n            process.onComplete(data.payload);\n          } else if (process.onError) {\n            process.onError();\n          }\n        };\n      }\n    }\n    function createProcess(onComplete, onError) {\n      _counterId += 1;\n      var id = 'processId_' + _counterId;\n      processes[id] = {\n        onComplete: onComplete,\n        onError: onError\n      };\n      return id;\n    }\n    function loadAnimation(path, onComplete, onError) {\n      setupWorker();\n      var processId = createProcess(onComplete, onError);\n      workerInstance.postMessage({\n        type: 'loadAnimation',\n        path: path,\n        fullPath: window.location.origin + window.location.pathname,\n        id: processId\n      });\n    }\n    function loadData(path, onComplete, onError) {\n      setupWorker();\n      var processId = createProcess(onComplete, onError);\n      workerInstance.postMessage({\n        type: 'loadData',\n        path: path,\n        fullPath: window.location.origin + window.location.pathname,\n        id: processId\n      });\n    }\n    function completeAnimation(anim, onComplete, onError) {\n      setupWorker();\n      var processId = createProcess(onComplete, onError);\n      workerInstance.postMessage({\n        type: 'complete',\n        animation: anim,\n        id: processId\n      });\n    }\n    return {\n      loadAnimation: loadAnimation,\n      loadData: loadData,\n      completeAnimation: completeAnimation\n    };\n  }();\n\n  var ImagePreloader = function () {\n    var proxyImage = function () {\n      var canvas = createTag('canvas');\n      canvas.width = 1;\n      canvas.height = 1;\n      var ctx = canvas.getContext('2d');\n      ctx.fillStyle = 'rgba(0,0,0,0)';\n      ctx.fillRect(0, 0, 1, 1);\n      return canvas;\n    }();\n    function imageLoaded() {\n      this.loadedAssets += 1;\n      if (this.loadedAssets === this.totalImages && this.loadedFootagesCount === this.totalFootages) {\n        if (this.imagesLoadedCb) {\n          this.imagesLoadedCb(null);\n        }\n      }\n    }\n    function footageLoaded() {\n      this.loadedFootagesCount += 1;\n      if (this.loadedAssets === this.totalImages && this.loadedFootagesCount === this.totalFootages) {\n        if (this.imagesLoadedCb) {\n          this.imagesLoadedCb(null);\n        }\n      }\n    }\n    function getAssetsPath(assetData, assetsPath, originalPath) {\n      var path = '';\n      if (assetData.e) {\n        path = assetData.p;\n      } else if (assetsPath) {\n        var imagePath = assetData.p;\n        if (imagePath.indexOf('images/') !== -1) {\n          imagePath = imagePath.split('/')[1];\n        }\n        path = assetsPath + imagePath;\n      } else {\n        path = originalPath;\n        path += assetData.u ? assetData.u : '';\n        path += assetData.p;\n      }\n      return path;\n    }\n    function testImageLoaded(img) {\n      var _count = 0;\n      var intervalId = setInterval(function () {\n        var box = img.getBBox();\n        if (box.width || _count > 500) {\n          this._imageLoaded();\n          clearInterval(intervalId);\n        }\n        _count += 1;\n      }.bind(this), 50);\n    }\n    function createImageData(assetData) {\n      var path = getAssetsPath(assetData, this.assetsPath, this.path);\n      var img = createNS('image');\n      if (isSafari) {\n        this.testImageLoaded(img);\n      } else {\n        img.addEventListener('load', this._imageLoaded, false);\n      }\n      img.addEventListener('error', function () {\n        ob.img = proxyImage;\n        this._imageLoaded();\n      }.bind(this), false);\n      img.setAttributeNS('http://www.w3.org/1999/xlink', 'href', path);\n      if (this._elementHelper.append) {\n        this._elementHelper.append(img);\n      } else {\n        this._elementHelper.appendChild(img);\n      }\n      var ob = {\n        img: img,\n        assetData: assetData\n      };\n      return ob;\n    }\n    function createImgData(assetData) {\n      var path = getAssetsPath(assetData, this.assetsPath, this.path);\n      var img = createTag('img');\n      img.crossOrigin = 'anonymous';\n      img.addEventListener('load', this._imageLoaded, false);\n      img.addEventListener('error', function () {\n        ob.img = proxyImage;\n        this._imageLoaded();\n      }.bind(this), false);\n      img.src = path;\n      var ob = {\n        img: img,\n        assetData: assetData\n      };\n      return ob;\n    }\n    function createFootageData(data) {\n      var ob = {\n        assetData: data\n      };\n      var path = getAssetsPath(data, this.assetsPath, this.path);\n      dataManager.loadData(path, function (footageData) {\n        ob.img = footageData;\n        this._footageLoaded();\n      }.bind(this), function () {\n        ob.img = {};\n        this._footageLoaded();\n      }.bind(this));\n      return ob;\n    }\n    function loadAssets(assets, cb) {\n      this.imagesLoadedCb = cb;\n      var i;\n      var len = assets.length;\n      for (i = 0; i < len; i += 1) {\n        if (!assets[i].layers) {\n          if (!assets[i].t || assets[i].t === 'seq') {\n            this.totalImages += 1;\n            this.images.push(this._createImageData(assets[i]));\n          } else if (assets[i].t === 3) {\n            this.totalFootages += 1;\n            this.images.push(this.createFootageData(assets[i]));\n          }\n        }\n      }\n    }\n    function setPath(path) {\n      this.path = path || '';\n    }\n    function setAssetsPath(path) {\n      this.assetsPath = path || '';\n    }\n    function getAsset(assetData) {\n      var i = 0;\n      var len = this.images.length;\n      while (i < len) {\n        if (this.images[i].assetData === assetData) {\n          return this.images[i].img;\n        }\n        i += 1;\n      }\n      return null;\n    }\n    function destroy() {\n      this.imagesLoadedCb = null;\n      this.images.length = 0;\n    }\n    function loadedImages() {\n      return this.totalImages === this.loadedAssets;\n    }\n    function loadedFootages() {\n      return this.totalFootages === this.loadedFootagesCount;\n    }\n    function setCacheType(type, elementHelper) {\n      if (type === 'svg') {\n        this._elementHelper = elementHelper;\n        this._createImageData = this.createImageData.bind(this);\n      } else {\n        this._createImageData = this.createImgData.bind(this);\n      }\n    }\n    function ImagePreloaderFactory() {\n      this._imageLoaded = imageLoaded.bind(this);\n      this._footageLoaded = footageLoaded.bind(this);\n      this.testImageLoaded = testImageLoaded.bind(this);\n      this.createFootageData = createFootageData.bind(this);\n      this.assetsPath = '';\n      this.path = '';\n      this.totalImages = 0;\n      this.totalFootages = 0;\n      this.loadedAssets = 0;\n      this.loadedFootagesCount = 0;\n      this.imagesLoadedCb = null;\n      this.images = [];\n    }\n    ImagePreloaderFactory.prototype = {\n      loadAssets: loadAssets,\n      setAssetsPath: setAssetsPath,\n      setPath: setPath,\n      loadedImages: loadedImages,\n      loadedFootages: loadedFootages,\n      destroy: destroy,\n      getAsset: getAsset,\n      createImgData: createImgData,\n      createImageData: createImageData,\n      imageLoaded: imageLoaded,\n      footageLoaded: footageLoaded,\n      setCacheType: setCacheType\n    };\n    return ImagePreloaderFactory;\n  }();\n\n  function BaseEvent() {}\n  BaseEvent.prototype = {\n    triggerEvent: function triggerEvent(eventName, args) {\n      if (this._cbs[eventName]) {\n        var callbacks = this._cbs[eventName];\n        for (var i = 0; i < callbacks.length; i += 1) {\n          callbacks[i](args);\n        }\n      }\n    },\n    addEventListener: function addEventListener(eventName, callback) {\n      if (!this._cbs[eventName]) {\n        this._cbs[eventName] = [];\n      }\n      this._cbs[eventName].push(callback);\n      return function () {\n        this.removeEventListener(eventName, callback);\n      }.bind(this);\n    },\n    removeEventListener: function removeEventListener(eventName, callback) {\n      if (!callback) {\n        this._cbs[eventName] = null;\n      } else if (this._cbs[eventName]) {\n        var i = 0;\n        var len = this._cbs[eventName].length;\n        while (i < len) {\n          if (this._cbs[eventName][i] === callback) {\n            this._cbs[eventName].splice(i, 1);\n            i -= 1;\n            len -= 1;\n          }\n          i += 1;\n        }\n        if (!this._cbs[eventName].length) {\n          this._cbs[eventName] = null;\n        }\n      }\n    }\n  };\n\n  var markerParser = function () {\n    function parsePayloadLines(payload) {\n      var lines = payload.split('\\r\\n');\n      var keys = {};\n      var line;\n      var keysCount = 0;\n      for (var i = 0; i < lines.length; i += 1) {\n        line = lines[i].split(':');\n        if (line.length === 2) {\n          keys[line[0]] = line[1].trim();\n          keysCount += 1;\n        }\n      }\n      if (keysCount === 0) {\n        throw new Error();\n      }\n      return keys;\n    }\n    return function (_markers) {\n      var markers = [];\n      for (var i = 0; i < _markers.length; i += 1) {\n        var _marker = _markers[i];\n        var markerData = {\n          time: _marker.tm,\n          duration: _marker.dr\n        };\n        try {\n          markerData.payload = JSON.parse(_markers[i].cm);\n        } catch (_) {\n          try {\n            markerData.payload = parsePayloadLines(_markers[i].cm);\n          } catch (__) {\n            markerData.payload = {\n              name: _markers[i].cm\n            };\n          }\n        }\n        markers.push(markerData);\n      }\n      return markers;\n    };\n  }();\n\n  var ProjectInterface = function () {\n    function registerComposition(comp) {\n      this.compositions.push(comp);\n    }\n    return function () {\n      function _thisProjectFunction(name) {\n        var i = 0;\n        var len = this.compositions.length;\n        while (i < len) {\n          if (this.compositions[i].data && this.compositions[i].data.nm === name) {\n            if (this.compositions[i].prepareFrame && this.compositions[i].data.xt) {\n              this.compositions[i].prepareFrame(this.currentFrame);\n            }\n            return this.compositions[i].compInterface;\n          }\n          i += 1;\n        }\n        return null;\n      }\n      _thisProjectFunction.compositions = [];\n      _thisProjectFunction.currentFrame = 0;\n      _thisProjectFunction.registerComposition = registerComposition;\n      return _thisProjectFunction;\n    };\n  }();\n\n  var renderers = {};\n  var registerRenderer = function registerRenderer(key, value) {\n    renderers[key] = value;\n  };\n  function getRenderer(key) {\n    return renderers[key];\n  }\n  function getRegisteredRenderer() {\n    // Returns canvas by default for compatibility\n    if (renderers.canvas) {\n      return 'canvas';\n    }\n    // Returns any renderer that is registered\n    for (var key in renderers) {\n      if (renderers[key]) {\n        return key;\n      }\n    }\n    return '';\n  }\n\n  function _typeof$4(o) { \"@babel/helpers - typeof\"; return _typeof$4 = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof$4(o); }\n  var AnimationItem = function AnimationItem() {\n    this._cbs = [];\n    this.name = '';\n    this.path = '';\n    this.isLoaded = false;\n    this.currentFrame = 0;\n    this.currentRawFrame = 0;\n    this.firstFrame = 0;\n    this.totalFrames = 0;\n    this.frameRate = 0;\n    this.frameMult = 0;\n    this.playSpeed = 1;\n    this.playDirection = 1;\n    this.playCount = 0;\n    this.animationData = {};\n    this.assets = [];\n    this.isPaused = true;\n    this.autoplay = false;\n    this.loop = true;\n    this.renderer = null;\n    this.animationID = createElementID();\n    this.assetsPath = '';\n    this.timeCompleted = 0;\n    this.segmentPos = 0;\n    this.isSubframeEnabled = getSubframeEnabled();\n    this.segments = [];\n    this._idle = true;\n    this._completedLoop = false;\n    this.projectInterface = ProjectInterface();\n    this.imagePreloader = new ImagePreloader();\n    this.audioController = audioControllerFactory();\n    this.markers = [];\n    this.configAnimation = this.configAnimation.bind(this);\n    this.onSetupError = this.onSetupError.bind(this);\n    this.onSegmentComplete = this.onSegmentComplete.bind(this);\n    this.drawnFrameEvent = new BMEnterFrameEvent('drawnFrame', 0, 0, 0);\n    this.expressionsPlugin = getExpressionsPlugin();\n  };\n  extendPrototype([BaseEvent], AnimationItem);\n  AnimationItem.prototype.setParams = function (params) {\n    if (params.wrapper || params.container) {\n      this.wrapper = params.wrapper || params.container;\n    }\n    var animType = 'svg';\n    if (params.animType) {\n      animType = params.animType;\n    } else if (params.renderer) {\n      animType = params.renderer;\n    }\n    var RendererClass = getRenderer(animType);\n    this.renderer = new RendererClass(this, params.rendererSettings);\n    this.imagePreloader.setCacheType(animType, this.renderer.globalData.defs);\n    this.renderer.setProjectInterface(this.projectInterface);\n    this.animType = animType;\n    if (params.loop === '' || params.loop === null || params.loop === undefined || params.loop === true) {\n      this.loop = true;\n    } else if (params.loop === false) {\n      this.loop = false;\n    } else {\n      this.loop = parseInt(params.loop, 10);\n    }\n    this.autoplay = 'autoplay' in params ? params.autoplay : true;\n    this.name = params.name ? params.name : '';\n    this.autoloadSegments = Object.prototype.hasOwnProperty.call(params, 'autoloadSegments') ? params.autoloadSegments : true;\n    this.assetsPath = params.assetsPath;\n    this.initialSegment = params.initialSegment;\n    if (params.audioFactory) {\n      this.audioController.setAudioFactory(params.audioFactory);\n    }\n    if (params.animationData) {\n      this.setupAnimation(params.animationData);\n    } else if (params.path) {\n      if (params.path.lastIndexOf('\\\\') !== -1) {\n        this.path = params.path.substr(0, params.path.lastIndexOf('\\\\') + 1);\n      } else {\n        this.path = params.path.substr(0, params.path.lastIndexOf('/') + 1);\n      }\n      this.fileName = params.path.substr(params.path.lastIndexOf('/') + 1);\n      this.fileName = this.fileName.substr(0, this.fileName.lastIndexOf('.json'));\n      dataManager.loadAnimation(params.path, this.configAnimation, this.onSetupError);\n    }\n  };\n  AnimationItem.prototype.onSetupError = function () {\n    this.trigger('data_failed');\n  };\n  AnimationItem.prototype.setupAnimation = function (data) {\n    dataManager.completeAnimation(data, this.configAnimation);\n  };\n  AnimationItem.prototype.setData = function (wrapper, animationData) {\n    if (animationData) {\n      if (_typeof$4(animationData) !== 'object') {\n        animationData = JSON.parse(animationData);\n      }\n    }\n    var params = {\n      wrapper: wrapper,\n      animationData: animationData\n    };\n    var wrapperAttributes = wrapper.attributes;\n    params.path = wrapperAttributes.getNamedItem('data-animation-path') // eslint-disable-line no-nested-ternary\n    ? wrapperAttributes.getNamedItem('data-animation-path').value : wrapperAttributes.getNamedItem('data-bm-path') // eslint-disable-line no-nested-ternary\n    ? wrapperAttributes.getNamedItem('data-bm-path').value : wrapperAttributes.getNamedItem('bm-path') ? wrapperAttributes.getNamedItem('bm-path').value : '';\n    params.animType = wrapperAttributes.getNamedItem('data-anim-type') // eslint-disable-line no-nested-ternary\n    ? wrapperAttributes.getNamedItem('data-anim-type').value : wrapperAttributes.getNamedItem('data-bm-type') // eslint-disable-line no-nested-ternary\n    ? wrapperAttributes.getNamedItem('data-bm-type').value : wrapperAttributes.getNamedItem('bm-type') // eslint-disable-line no-nested-ternary\n    ? wrapperAttributes.getNamedItem('bm-type').value : wrapperAttributes.getNamedItem('data-bm-renderer') // eslint-disable-line no-nested-ternary\n    ? wrapperAttributes.getNamedItem('data-bm-renderer').value : wrapperAttributes.getNamedItem('bm-renderer') ? wrapperAttributes.getNamedItem('bm-renderer').value : getRegisteredRenderer() || 'canvas';\n    var loop = wrapperAttributes.getNamedItem('data-anim-loop') // eslint-disable-line no-nested-ternary\n    ? wrapperAttributes.getNamedItem('data-anim-loop').value : wrapperAttributes.getNamedItem('data-bm-loop') // eslint-disable-line no-nested-ternary\n    ? wrapperAttributes.getNamedItem('data-bm-loop').value : wrapperAttributes.getNamedItem('bm-loop') ? wrapperAttributes.getNamedItem('bm-loop').value : '';\n    if (loop === 'false') {\n      params.loop = false;\n    } else if (loop === 'true') {\n      params.loop = true;\n    } else if (loop !== '') {\n      params.loop = parseInt(loop, 10);\n    }\n    var autoplay = wrapperAttributes.getNamedItem('data-anim-autoplay') // eslint-disable-line no-nested-ternary\n    ? wrapperAttributes.getNamedItem('data-anim-autoplay').value : wrapperAttributes.getNamedItem('data-bm-autoplay') // eslint-disable-line no-nested-ternary\n    ? wrapperAttributes.getNamedItem('data-bm-autoplay').value : wrapperAttributes.getNamedItem('bm-autoplay') ? wrapperAttributes.getNamedItem('bm-autoplay').value : true;\n    params.autoplay = autoplay !== 'false';\n    params.name = wrapperAttributes.getNamedItem('data-name') // eslint-disable-line no-nested-ternary\n    ? wrapperAttributes.getNamedItem('data-name').value : wrapperAttributes.getNamedItem('data-bm-name') // eslint-disable-line no-nested-ternary\n    ? wrapperAttributes.getNamedItem('data-bm-name').value : wrapperAttributes.getNamedItem('bm-name') ? wrapperAttributes.getNamedItem('bm-name').value : '';\n    var prerender = wrapperAttributes.getNamedItem('data-anim-prerender') // eslint-disable-line no-nested-ternary\n    ? wrapperAttributes.getNamedItem('data-anim-prerender').value : wrapperAttributes.getNamedItem('data-bm-prerender') // eslint-disable-line no-nested-ternary\n    ? wrapperAttributes.getNamedItem('data-bm-prerender').value : wrapperAttributes.getNamedItem('bm-prerender') ? wrapperAttributes.getNamedItem('bm-prerender').value : '';\n    if (prerender === 'false') {\n      params.prerender = false;\n    }\n    if (!params.path) {\n      this.trigger('destroy');\n    } else {\n      this.setParams(params);\n    }\n  };\n  AnimationItem.prototype.includeLayers = function (data) {\n    if (data.op > this.animationData.op) {\n      this.animationData.op = data.op;\n      this.totalFrames = Math.floor(data.op - this.animationData.ip);\n    }\n    var layers = this.animationData.layers;\n    var i;\n    var len = layers.length;\n    var newLayers = data.layers;\n    var j;\n    var jLen = newLayers.length;\n    for (j = 0; j < jLen; j += 1) {\n      i = 0;\n      while (i < len) {\n        if (layers[i].id === newLayers[j].id) {\n          layers[i] = newLayers[j];\n          break;\n        }\n        i += 1;\n      }\n    }\n    if (data.chars || data.fonts) {\n      this.renderer.globalData.fontManager.addChars(data.chars);\n      this.renderer.globalData.fontManager.addFonts(data.fonts, this.renderer.globalData.defs);\n    }\n    if (data.assets) {\n      len = data.assets.length;\n      for (i = 0; i < len; i += 1) {\n        this.animationData.assets.push(data.assets[i]);\n      }\n    }\n    this.animationData.__complete = false;\n    dataManager.completeAnimation(this.animationData, this.onSegmentComplete);\n  };\n  AnimationItem.prototype.onSegmentComplete = function (data) {\n    this.animationData = data;\n    var expressionsPlugin = getExpressionsPlugin();\n    if (expressionsPlugin) {\n      expressionsPlugin.initExpressions(this);\n    }\n    this.loadNextSegment();\n  };\n  AnimationItem.prototype.loadNextSegment = function () {\n    var segments = this.animationData.segments;\n    if (!segments || segments.length === 0 || !this.autoloadSegments) {\n      this.trigger('data_ready');\n      this.timeCompleted = this.totalFrames;\n      return;\n    }\n    var segment = segments.shift();\n    this.timeCompleted = segment.time * this.frameRate;\n    var segmentPath = this.path + this.fileName + '_' + this.segmentPos + '.json';\n    this.segmentPos += 1;\n    dataManager.loadData(segmentPath, this.includeLayers.bind(this), function () {\n      this.trigger('data_failed');\n    }.bind(this));\n  };\n  AnimationItem.prototype.loadSegments = function () {\n    var segments = this.animationData.segments;\n    if (!segments) {\n      this.timeCompleted = this.totalFrames;\n    }\n    this.loadNextSegment();\n  };\n  AnimationItem.prototype.imagesLoaded = function () {\n    this.trigger('loaded_images');\n    this.checkLoaded();\n  };\n  AnimationItem.prototype.preloadImages = function () {\n    this.imagePreloader.setAssetsPath(this.assetsPath);\n    this.imagePreloader.setPath(this.path);\n    this.imagePreloader.loadAssets(this.animationData.assets, this.imagesLoaded.bind(this));\n  };\n  AnimationItem.prototype.configAnimation = function (animData) {\n    if (!this.renderer) {\n      return;\n    }\n    try {\n      this.animationData = animData;\n      if (this.initialSegment) {\n        this.totalFrames = Math.floor(this.initialSegment[1] - this.initialSegment[0]);\n        this.firstFrame = Math.round(this.initialSegment[0]);\n      } else {\n        this.totalFrames = Math.floor(this.animationData.op - this.animationData.ip);\n        this.firstFrame = Math.round(this.animationData.ip);\n      }\n      this.renderer.configAnimation(animData);\n      if (!animData.assets) {\n        animData.assets = [];\n      }\n      this.assets = this.animationData.assets;\n      this.frameRate = this.animationData.fr;\n      this.frameMult = this.animationData.fr / 1000;\n      this.renderer.searchExtraCompositions(animData.assets);\n      this.markers = markerParser(animData.markers || []);\n      this.trigger('config_ready');\n      this.preloadImages();\n      this.loadSegments();\n      this.updaFrameModifier();\n      this.waitForFontsLoaded();\n      if (this.isPaused) {\n        this.audioController.pause();\n      }\n    } catch (error) {\n      this.triggerConfigError(error);\n    }\n  };\n  AnimationItem.prototype.waitForFontsLoaded = function () {\n    if (!this.renderer) {\n      return;\n    }\n    if (this.renderer.globalData.fontManager.isLoaded) {\n      this.checkLoaded();\n    } else {\n      setTimeout(this.waitForFontsLoaded.bind(this), 20);\n    }\n  };\n  AnimationItem.prototype.checkLoaded = function () {\n    if (!this.isLoaded && this.renderer.globalData.fontManager.isLoaded && (this.imagePreloader.loadedImages() || this.renderer.rendererType !== 'canvas') && this.imagePreloader.loadedFootages()) {\n      this.isLoaded = true;\n      var expressionsPlugin = getExpressionsPlugin();\n      if (expressionsPlugin) {\n        expressionsPlugin.initExpressions(this);\n      }\n      this.renderer.initItems();\n      setTimeout(function () {\n        this.trigger('DOMLoaded');\n      }.bind(this), 0);\n      this.gotoFrame();\n      if (this.autoplay) {\n        this.play();\n      }\n    }\n  };\n  AnimationItem.prototype.resize = function (width, height) {\n    // Adding this validation for backwards compatibility in case an event object was being passed down\n    var _width = typeof width === 'number' ? width : undefined;\n    var _height = typeof height === 'number' ? height : undefined;\n    this.renderer.updateContainerSize(_width, _height);\n  };\n  AnimationItem.prototype.setSubframe = function (flag) {\n    this.isSubframeEnabled = !!flag;\n  };\n  AnimationItem.prototype.gotoFrame = function () {\n    this.currentFrame = this.isSubframeEnabled ? this.currentRawFrame : ~~this.currentRawFrame; // eslint-disable-line no-bitwise\n\n    if (this.timeCompleted !== this.totalFrames && this.currentFrame > this.timeCompleted) {\n      this.currentFrame = this.timeCompleted;\n    }\n    this.trigger('enterFrame');\n    this.renderFrame();\n    this.trigger('drawnFrame');\n  };\n  AnimationItem.prototype.renderFrame = function () {\n    if (this.isLoaded === false || !this.renderer) {\n      return;\n    }\n    try {\n      if (this.expressionsPlugin) {\n        this.expressionsPlugin.resetFrame();\n      }\n      this.renderer.renderFrame(this.currentFrame + this.firstFrame);\n    } catch (error) {\n      this.triggerRenderFrameError(error);\n    }\n  };\n  AnimationItem.prototype.play = function (name) {\n    if (name && this.name !== name) {\n      return;\n    }\n    if (this.isPaused === true) {\n      this.isPaused = false;\n      this.trigger('_play');\n      this.audioController.resume();\n      if (this._idle) {\n        this._idle = false;\n        this.trigger('_active');\n      }\n    }\n  };\n  AnimationItem.prototype.pause = function (name) {\n    if (name && this.name !== name) {\n      return;\n    }\n    if (this.isPaused === false) {\n      this.isPaused = true;\n      this.trigger('_pause');\n      this._idle = true;\n      this.trigger('_idle');\n      this.audioController.pause();\n    }\n  };\n  AnimationItem.prototype.togglePause = function (name) {\n    if (name && this.name !== name) {\n      return;\n    }\n    if (this.isPaused === true) {\n      this.play();\n    } else {\n      this.pause();\n    }\n  };\n  AnimationItem.prototype.stop = function (name) {\n    if (name && this.name !== name) {\n      return;\n    }\n    this.pause();\n    this.playCount = 0;\n    this._completedLoop = false;\n    this.setCurrentRawFrameValue(0);\n  };\n  AnimationItem.prototype.getMarkerData = function (markerName) {\n    var marker;\n    for (var i = 0; i < this.markers.length; i += 1) {\n      marker = this.markers[i];\n      if (marker.payload && marker.payload.name === markerName) {\n        return marker;\n      }\n    }\n    return null;\n  };\n  AnimationItem.prototype.goToAndStop = function (value, isFrame, name) {\n    if (name && this.name !== name) {\n      return;\n    }\n    var numValue = Number(value);\n    if (isNaN(numValue)) {\n      var marker = this.getMarkerData(value);\n      if (marker) {\n        this.goToAndStop(marker.time, true);\n      }\n    } else if (isFrame) {\n      this.setCurrentRawFrameValue(value);\n    } else {\n      this.setCurrentRawFrameValue(value * this.frameModifier);\n    }\n    this.pause();\n  };\n  AnimationItem.prototype.goToAndPlay = function (value, isFrame, name) {\n    if (name && this.name !== name) {\n      return;\n    }\n    var numValue = Number(value);\n    if (isNaN(numValue)) {\n      var marker = this.getMarkerData(value);\n      if (marker) {\n        if (!marker.duration) {\n          this.goToAndStop(marker.time, true);\n        } else {\n          this.playSegments([marker.time, marker.time + marker.duration], true);\n        }\n      }\n    } else {\n      this.goToAndStop(numValue, isFrame, name);\n    }\n    this.play();\n  };\n  AnimationItem.prototype.advanceTime = function (value) {\n    if (this.isPaused === true || this.isLoaded === false) {\n      return;\n    }\n    var nextValue = this.currentRawFrame + value * this.frameModifier;\n    var _isComplete = false;\n    // Checking if nextValue > totalFrames - 1 for addressing non looping and looping animations.\n    // If animation won't loop, it should stop at totalFrames - 1. If it will loop it should complete the last frame and then loop.\n    if (nextValue >= this.totalFrames - 1 && this.frameModifier > 0) {\n      if (!this.loop || this.playCount === this.loop) {\n        if (!this.checkSegments(nextValue > this.totalFrames ? nextValue % this.totalFrames : 0)) {\n          _isComplete = true;\n          nextValue = this.totalFrames - 1;\n        }\n      } else if (nextValue >= this.totalFrames) {\n        this.playCount += 1;\n        if (!this.checkSegments(nextValue % this.totalFrames)) {\n          this.setCurrentRawFrameValue(nextValue % this.totalFrames);\n          this._completedLoop = true;\n          this.trigger('loopComplete');\n        }\n      } else {\n        this.setCurrentRawFrameValue(nextValue);\n      }\n    } else if (nextValue < 0) {\n      if (!this.checkSegments(nextValue % this.totalFrames)) {\n        if (this.loop && !(this.playCount-- <= 0 && this.loop !== true)) {\n          // eslint-disable-line no-plusplus\n          this.setCurrentRawFrameValue(this.totalFrames + nextValue % this.totalFrames);\n          if (!this._completedLoop) {\n            this._completedLoop = true;\n          } else {\n            this.trigger('loopComplete');\n          }\n        } else {\n          _isComplete = true;\n          nextValue = 0;\n        }\n      }\n    } else {\n      this.setCurrentRawFrameValue(nextValue);\n    }\n    if (_isComplete) {\n      this.setCurrentRawFrameValue(nextValue);\n      this.pause();\n      this.trigger('complete');\n    }\n  };\n  AnimationItem.prototype.adjustSegment = function (arr, offset) {\n    this.playCount = 0;\n    if (arr[1] < arr[0]) {\n      if (this.frameModifier > 0) {\n        if (this.playSpeed < 0) {\n          this.setSpeed(-this.playSpeed);\n        } else {\n          this.setDirection(-1);\n        }\n      }\n      this.totalFrames = arr[0] - arr[1];\n      this.timeCompleted = this.totalFrames;\n      this.firstFrame = arr[1];\n      this.setCurrentRawFrameValue(this.totalFrames - 0.001 - offset);\n    } else if (arr[1] > arr[0]) {\n      if (this.frameModifier < 0) {\n        if (this.playSpeed < 0) {\n          this.setSpeed(-this.playSpeed);\n        } else {\n          this.setDirection(1);\n        }\n      }\n      this.totalFrames = arr[1] - arr[0];\n      this.timeCompleted = this.totalFrames;\n      this.firstFrame = arr[0];\n      this.setCurrentRawFrameValue(0.001 + offset);\n    }\n    this.trigger('segmentStart');\n  };\n  AnimationItem.prototype.setSegment = function (init, end) {\n    var pendingFrame = -1;\n    if (this.isPaused) {\n      if (this.currentRawFrame + this.firstFrame < init) {\n        pendingFrame = init;\n      } else if (this.currentRawFrame + this.firstFrame > end) {\n        pendingFrame = end - init;\n      }\n    }\n    this.firstFrame = init;\n    this.totalFrames = end - init;\n    this.timeCompleted = this.totalFrames;\n    if (pendingFrame !== -1) {\n      this.goToAndStop(pendingFrame, true);\n    }\n  };\n  AnimationItem.prototype.playSegments = function (arr, forceFlag) {\n    if (forceFlag) {\n      this.segments.length = 0;\n    }\n    if (_typeof$4(arr[0]) === 'object') {\n      var i;\n      var len = arr.length;\n      for (i = 0; i < len; i += 1) {\n        this.segments.push(arr[i]);\n      }\n    } else {\n      this.segments.push(arr);\n    }\n    if (this.segments.length && forceFlag) {\n      this.adjustSegment(this.segments.shift(), 0);\n    }\n    if (this.isPaused) {\n      this.play();\n    }\n  };\n  AnimationItem.prototype.resetSegments = function (forceFlag) {\n    this.segments.length = 0;\n    this.segments.push([this.animationData.ip, this.animationData.op]);\n    if (forceFlag) {\n      this.checkSegments(0);\n    }\n  };\n  AnimationItem.prototype.checkSegments = function (offset) {\n    if (this.segments.length) {\n      this.adjustSegment(this.segments.shift(), offset);\n      return true;\n    }\n    return false;\n  };\n  AnimationItem.prototype.destroy = function (name) {\n    if (name && this.name !== name || !this.renderer) {\n      return;\n    }\n    this.renderer.destroy();\n    this.imagePreloader.destroy();\n    this.trigger('destroy');\n    this._cbs = null;\n    this.onEnterFrame = null;\n    this.onLoopComplete = null;\n    this.onComplete = null;\n    this.onSegmentStart = null;\n    this.onDestroy = null;\n    this.renderer = null;\n    this.expressionsPlugin = null;\n    this.imagePreloader = null;\n    this.projectInterface = null;\n  };\n  AnimationItem.prototype.setCurrentRawFrameValue = function (value) {\n    this.currentRawFrame = value;\n    this.gotoFrame();\n  };\n  AnimationItem.prototype.setSpeed = function (val) {\n    this.playSpeed = val;\n    this.updaFrameModifier();\n  };\n  AnimationItem.prototype.setDirection = function (val) {\n    this.playDirection = val < 0 ? -1 : 1;\n    this.updaFrameModifier();\n  };\n  AnimationItem.prototype.setLoop = function (isLooping) {\n    this.loop = isLooping;\n  };\n  AnimationItem.prototype.setVolume = function (val, name) {\n    if (name && this.name !== name) {\n      return;\n    }\n    this.audioController.setVolume(val);\n  };\n  AnimationItem.prototype.getVolume = function () {\n    return this.audioController.getVolume();\n  };\n  AnimationItem.prototype.mute = function (name) {\n    if (name && this.name !== name) {\n      return;\n    }\n    this.audioController.mute();\n  };\n  AnimationItem.prototype.unmute = function (name) {\n    if (name && this.name !== name) {\n      return;\n    }\n    this.audioController.unmute();\n  };\n  AnimationItem.prototype.updaFrameModifier = function () {\n    this.frameModifier = this.frameMult * this.playSpeed * this.playDirection;\n    this.audioController.setRate(this.playSpeed * this.playDirection);\n  };\n  AnimationItem.prototype.getPath = function () {\n    return this.path;\n  };\n  AnimationItem.prototype.getAssetsPath = function (assetData) {\n    var path = '';\n    if (assetData.e) {\n      path = assetData.p;\n    } else if (this.assetsPath) {\n      var imagePath = assetData.p;\n      if (imagePath.indexOf('images/') !== -1) {\n        imagePath = imagePath.split('/')[1];\n      }\n      path = this.assetsPath + imagePath;\n    } else {\n      path = this.path;\n      path += assetData.u ? assetData.u : '';\n      path += assetData.p;\n    }\n    return path;\n  };\n  AnimationItem.prototype.getAssetData = function (id) {\n    var i = 0;\n    var len = this.assets.length;\n    while (i < len) {\n      if (id === this.assets[i].id) {\n        return this.assets[i];\n      }\n      i += 1;\n    }\n    return null;\n  };\n  AnimationItem.prototype.hide = function () {\n    this.renderer.hide();\n  };\n  AnimationItem.prototype.show = function () {\n    this.renderer.show();\n  };\n  AnimationItem.prototype.getDuration = function (isFrame) {\n    return isFrame ? this.totalFrames : this.totalFrames / this.frameRate;\n  };\n  AnimationItem.prototype.updateDocumentData = function (path, documentData, index) {\n    try {\n      var element = this.renderer.getElementByPath(path);\n      element.updateDocumentData(documentData, index);\n    } catch (error) {\n      // TODO: decide how to handle catch case\n    }\n  };\n  AnimationItem.prototype.trigger = function (name) {\n    if (this._cbs && this._cbs[name]) {\n      switch (name) {\n        case 'enterFrame':\n          this.triggerEvent(name, new BMEnterFrameEvent(name, this.currentFrame, this.totalFrames, this.frameModifier));\n          break;\n        case 'drawnFrame':\n          this.drawnFrameEvent.currentTime = this.currentFrame;\n          this.drawnFrameEvent.totalTime = this.totalFrames;\n          this.drawnFrameEvent.direction = this.frameModifier;\n          this.triggerEvent(name, this.drawnFrameEvent);\n          break;\n        case 'loopComplete':\n          this.triggerEvent(name, new BMCompleteLoopEvent(name, this.loop, this.playCount, this.frameMult));\n          break;\n        case 'complete':\n          this.triggerEvent(name, new BMCompleteEvent(name, this.frameMult));\n          break;\n        case 'segmentStart':\n          this.triggerEvent(name, new BMSegmentStartEvent(name, this.firstFrame, this.totalFrames));\n          break;\n        case 'destroy':\n          this.triggerEvent(name, new BMDestroyEvent(name, this));\n          break;\n        default:\n          this.triggerEvent(name);\n      }\n    }\n    if (name === 'enterFrame' && this.onEnterFrame) {\n      this.onEnterFrame.call(this, new BMEnterFrameEvent(name, this.currentFrame, this.totalFrames, this.frameMult));\n    }\n    if (name === 'loopComplete' && this.onLoopComplete) {\n      this.onLoopComplete.call(this, new BMCompleteLoopEvent(name, this.loop, this.playCount, this.frameMult));\n    }\n    if (name === 'complete' && this.onComplete) {\n      this.onComplete.call(this, new BMCompleteEvent(name, this.frameMult));\n    }\n    if (name === 'segmentStart' && this.onSegmentStart) {\n      this.onSegmentStart.call(this, new BMSegmentStartEvent(name, this.firstFrame, this.totalFrames));\n    }\n    if (name === 'destroy' && this.onDestroy) {\n      this.onDestroy.call(this, new BMDestroyEvent(name, this));\n    }\n  };\n  AnimationItem.prototype.triggerRenderFrameError = function (nativeError) {\n    var error = new BMRenderFrameErrorEvent(nativeError, this.currentFrame);\n    this.triggerEvent('error', error);\n    if (this.onError) {\n      this.onError.call(this, error);\n    }\n  };\n  AnimationItem.prototype.triggerConfigError = function (nativeError) {\n    var error = new BMConfigErrorEvent(nativeError, this.currentFrame);\n    this.triggerEvent('error', error);\n    if (this.onError) {\n      this.onError.call(this, error);\n    }\n  };\n\n  var animationManager = function () {\n    var moduleOb = {};\n    var registeredAnimations = [];\n    var initTime = 0;\n    var len = 0;\n    var playingAnimationsNum = 0;\n    var _stopped = true;\n    var _isFrozen = false;\n    function removeElement(ev) {\n      var i = 0;\n      var animItem = ev.target;\n      while (i < len) {\n        if (registeredAnimations[i].animation === animItem) {\n          registeredAnimations.splice(i, 1);\n          i -= 1;\n          len -= 1;\n          if (!animItem.isPaused) {\n            subtractPlayingCount();\n          }\n        }\n        i += 1;\n      }\n    }\n    function registerAnimation(element, animationData) {\n      if (!element) {\n        return null;\n      }\n      var i = 0;\n      while (i < len) {\n        if (registeredAnimations[i].elem === element && registeredAnimations[i].elem !== null) {\n          return registeredAnimations[i].animation;\n        }\n        i += 1;\n      }\n      var animItem = new AnimationItem();\n      setupAnimation(animItem, element);\n      animItem.setData(element, animationData);\n      return animItem;\n    }\n    function getRegisteredAnimations() {\n      var i;\n      var lenAnims = registeredAnimations.length;\n      var animations = [];\n      for (i = 0; i < lenAnims; i += 1) {\n        animations.push(registeredAnimations[i].animation);\n      }\n      return animations;\n    }\n    function addPlayingCount() {\n      playingAnimationsNum += 1;\n      activate();\n    }\n    function subtractPlayingCount() {\n      playingAnimationsNum -= 1;\n    }\n    function setupAnimation(animItem, element) {\n      animItem.addEventListener('destroy', removeElement);\n      animItem.addEventListener('_active', addPlayingCount);\n      animItem.addEventListener('_idle', subtractPlayingCount);\n      registeredAnimations.push({\n        elem: element,\n        animation: animItem\n      });\n      len += 1;\n    }\n    function loadAnimation(params) {\n      var animItem = new AnimationItem();\n      setupAnimation(animItem, null);\n      animItem.setParams(params);\n      return animItem;\n    }\n    function setSpeed(val, animation) {\n      var i;\n      for (i = 0; i < len; i += 1) {\n        registeredAnimations[i].animation.setSpeed(val, animation);\n      }\n    }\n    function setDirection(val, animation) {\n      var i;\n      for (i = 0; i < len; i += 1) {\n        registeredAnimations[i].animation.setDirection(val, animation);\n      }\n    }\n    function play(animation) {\n      var i;\n      for (i = 0; i < len; i += 1) {\n        registeredAnimations[i].animation.play(animation);\n      }\n    }\n    function resume(nowTime) {\n      var elapsedTime = nowTime - initTime;\n      var i;\n      for (i = 0; i < len; i += 1) {\n        registeredAnimations[i].animation.advanceTime(elapsedTime);\n      }\n      initTime = nowTime;\n      if (playingAnimationsNum && !_isFrozen) {\n        window.requestAnimationFrame(resume);\n      } else {\n        _stopped = true;\n      }\n    }\n    function first(nowTime) {\n      initTime = nowTime;\n      window.requestAnimationFrame(resume);\n    }\n    function pause(animation) {\n      var i;\n      for (i = 0; i < len; i += 1) {\n        registeredAnimations[i].animation.pause(animation);\n      }\n    }\n    function goToAndStop(value, isFrame, animation) {\n      var i;\n      for (i = 0; i < len; i += 1) {\n        registeredAnimations[i].animation.goToAndStop(value, isFrame, animation);\n      }\n    }\n    function stop(animation) {\n      var i;\n      for (i = 0; i < len; i += 1) {\n        registeredAnimations[i].animation.stop(animation);\n      }\n    }\n    function togglePause(animation) {\n      var i;\n      for (i = 0; i < len; i += 1) {\n        registeredAnimations[i].animation.togglePause(animation);\n      }\n    }\n    function destroy(animation) {\n      var i;\n      for (i = len - 1; i >= 0; i -= 1) {\n        registeredAnimations[i].animation.destroy(animation);\n      }\n    }\n    function searchAnimations(animationData, standalone, renderer) {\n      var animElements = [].concat([].slice.call(document.getElementsByClassName('lottie')), [].slice.call(document.getElementsByClassName('bodymovin')));\n      var i;\n      var lenAnims = animElements.length;\n      for (i = 0; i < lenAnims; i += 1) {\n        if (renderer) {\n          animElements[i].setAttribute('data-bm-type', renderer);\n        }\n        registerAnimation(animElements[i], animationData);\n      }\n      if (standalone && lenAnims === 0) {\n        if (!renderer) {\n          renderer = 'svg';\n        }\n        var body = document.getElementsByTagName('body')[0];\n        body.innerText = '';\n        var div = createTag('div');\n        div.style.width = '100%';\n        div.style.height = '100%';\n        div.setAttribute('data-bm-type', renderer);\n        body.appendChild(div);\n        registerAnimation(div, animationData);\n      }\n    }\n    function resize() {\n      var i;\n      for (i = 0; i < len; i += 1) {\n        registeredAnimations[i].animation.resize();\n      }\n    }\n    function activate() {\n      if (!_isFrozen && playingAnimationsNum) {\n        if (_stopped) {\n          window.requestAnimationFrame(first);\n          _stopped = false;\n        }\n      }\n    }\n    function freeze() {\n      _isFrozen = true;\n    }\n    function unfreeze() {\n      _isFrozen = false;\n      activate();\n    }\n    function setVolume(val, animation) {\n      var i;\n      for (i = 0; i < len; i += 1) {\n        registeredAnimations[i].animation.setVolume(val, animation);\n      }\n    }\n    function mute(animation) {\n      var i;\n      for (i = 0; i < len; i += 1) {\n        registeredAnimations[i].animation.mute(animation);\n      }\n    }\n    function unmute(animation) {\n      var i;\n      for (i = 0; i < len; i += 1) {\n        registeredAnimations[i].animation.unmute(animation);\n      }\n    }\n    moduleOb.registerAnimation = registerAnimation;\n    moduleOb.loadAnimation = loadAnimation;\n    moduleOb.setSpeed = setSpeed;\n    moduleOb.setDirection = setDirection;\n    moduleOb.play = play;\n    moduleOb.pause = pause;\n    moduleOb.stop = stop;\n    moduleOb.togglePause = togglePause;\n    moduleOb.searchAnimations = searchAnimations;\n    moduleOb.resize = resize;\n    // moduleOb.start = start;\n    moduleOb.goToAndStop = goToAndStop;\n    moduleOb.destroy = destroy;\n    moduleOb.freeze = freeze;\n    moduleOb.unfreeze = unfreeze;\n    moduleOb.setVolume = setVolume;\n    moduleOb.mute = mute;\n    moduleOb.unmute = unmute;\n    moduleOb.getRegisteredAnimations = getRegisteredAnimations;\n    return moduleOb;\n  }();\n\n  /* eslint-disable */\n  var BezierFactory = function () {\n    /**\n       * BezierEasing - use bezier curve for transition easing function\n       * by Gaëtan Renaudeau 2014 - 2015 – MIT License\n       *\n       * Credits: is based on Firefox's nsSMILKeySpline.cpp\n       * Usage:\n       * var spline = BezierEasing([ 0.25, 0.1, 0.25, 1.0 ])\n       * spline.get(x) => returns the easing value | x must be in [0, 1] range\n       *\n       */\n\n    var ob = {};\n    ob.getBezierEasing = getBezierEasing;\n    var beziers = {};\n    function getBezierEasing(a, b, c, d, nm) {\n      var str = nm || ('bez_' + a + '_' + b + '_' + c + '_' + d).replace(/\\./g, 'p');\n      if (beziers[str]) {\n        return beziers[str];\n      }\n      var bezEasing = new BezierEasing([a, b, c, d]);\n      beziers[str] = bezEasing;\n      return bezEasing;\n    }\n\n    // These values are established by empiricism with tests (tradeoff: performance VS precision)\n    var NEWTON_ITERATIONS = 4;\n    var NEWTON_MIN_SLOPE = 0.001;\n    var SUBDIVISION_PRECISION = 0.0000001;\n    var SUBDIVISION_MAX_ITERATIONS = 10;\n    var kSplineTableSize = 11;\n    var kSampleStepSize = 1.0 / (kSplineTableSize - 1.0);\n    var float32ArraySupported = typeof Float32Array === 'function';\n    function A(aA1, aA2) {\n      return 1.0 - 3.0 * aA2 + 3.0 * aA1;\n    }\n    function B(aA1, aA2) {\n      return 3.0 * aA2 - 6.0 * aA1;\n    }\n    function C(aA1) {\n      return 3.0 * aA1;\n    }\n\n    // Returns x(t) given t, x1, and x2, or y(t) given t, y1, and y2.\n    function calcBezier(aT, aA1, aA2) {\n      return ((A(aA1, aA2) * aT + B(aA1, aA2)) * aT + C(aA1)) * aT;\n    }\n\n    // Returns dx/dt given t, x1, and x2, or dy/dt given t, y1, and y2.\n    function getSlope(aT, aA1, aA2) {\n      return 3.0 * A(aA1, aA2) * aT * aT + 2.0 * B(aA1, aA2) * aT + C(aA1);\n    }\n    function binarySubdivide(aX, aA, aB, mX1, mX2) {\n      var currentX,\n        currentT,\n        i = 0;\n      do {\n        currentT = aA + (aB - aA) / 2.0;\n        currentX = calcBezier(currentT, mX1, mX2) - aX;\n        if (currentX > 0.0) {\n          aB = currentT;\n        } else {\n          aA = currentT;\n        }\n      } while (Math.abs(currentX) > SUBDIVISION_PRECISION && ++i < SUBDIVISION_MAX_ITERATIONS);\n      return currentT;\n    }\n    function newtonRaphsonIterate(aX, aGuessT, mX1, mX2) {\n      for (var i = 0; i < NEWTON_ITERATIONS; ++i) {\n        var currentSlope = getSlope(aGuessT, mX1, mX2);\n        if (currentSlope === 0.0) return aGuessT;\n        var currentX = calcBezier(aGuessT, mX1, mX2) - aX;\n        aGuessT -= currentX / currentSlope;\n      }\n      return aGuessT;\n    }\n\n    /**\n       * points is an array of [ mX1, mY1, mX2, mY2 ]\n       */\n    function BezierEasing(points) {\n      this._p = points;\n      this._mSampleValues = float32ArraySupported ? new Float32Array(kSplineTableSize) : new Array(kSplineTableSize);\n      this._precomputed = false;\n      this.get = this.get.bind(this);\n    }\n    BezierEasing.prototype = {\n      get: function get(x) {\n        var mX1 = this._p[0],\n          mY1 = this._p[1],\n          mX2 = this._p[2],\n          mY2 = this._p[3];\n        if (!this._precomputed) this._precompute();\n        if (mX1 === mY1 && mX2 === mY2) return x; // linear\n        // Because JavaScript number are imprecise, we should guarantee the extremes are right.\n        if (x === 0) return 0;\n        if (x === 1) return 1;\n        return calcBezier(this._getTForX(x), mY1, mY2);\n      },\n      // Private part\n\n      _precompute: function _precompute() {\n        var mX1 = this._p[0],\n          mY1 = this._p[1],\n          mX2 = this._p[2],\n          mY2 = this._p[3];\n        this._precomputed = true;\n        if (mX1 !== mY1 || mX2 !== mY2) {\n          this._calcSampleValues();\n        }\n      },\n      _calcSampleValues: function _calcSampleValues() {\n        var mX1 = this._p[0],\n          mX2 = this._p[2];\n        for (var i = 0; i < kSplineTableSize; ++i) {\n          this._mSampleValues[i] = calcBezier(i * kSampleStepSize, mX1, mX2);\n        }\n      },\n      /**\n           * getTForX chose the fastest heuristic to determine the percentage value precisely from a given X projection.\n           */\n      _getTForX: function _getTForX(aX) {\n        var mX1 = this._p[0],\n          mX2 = this._p[2],\n          mSampleValues = this._mSampleValues;\n        var intervalStart = 0.0;\n        var currentSample = 1;\n        var lastSample = kSplineTableSize - 1;\n        for (; currentSample !== lastSample && mSampleValues[currentSample] <= aX; ++currentSample) {\n          intervalStart += kSampleStepSize;\n        }\n        --currentSample;\n\n        // Interpolate to provide an initial guess for t\n        var dist = (aX - mSampleValues[currentSample]) / (mSampleValues[currentSample + 1] - mSampleValues[currentSample]);\n        var guessForT = intervalStart + dist * kSampleStepSize;\n        var initialSlope = getSlope(guessForT, mX1, mX2);\n        if (initialSlope >= NEWTON_MIN_SLOPE) {\n          return newtonRaphsonIterate(aX, guessForT, mX1, mX2);\n        }\n        if (initialSlope === 0.0) {\n          return guessForT;\n        }\n        return binarySubdivide(aX, intervalStart, intervalStart + kSampleStepSize, mX1, mX2);\n      }\n    };\n    return ob;\n  }();\n\n  var pooling = function () {\n    function _double(arr) {\n      return arr.concat(createSizedArray(arr.length));\n    }\n    return {\n      \"double\": _double\n    };\n  }();\n\n  var poolFactory = function () {\n    return function (initialLength, _create, _release) {\n      var _length = 0;\n      var _maxLength = initialLength;\n      var pool = createSizedArray(_maxLength);\n      var ob = {\n        newElement: newElement,\n        release: release\n      };\n      function newElement() {\n        var element;\n        if (_length) {\n          _length -= 1;\n          element = pool[_length];\n        } else {\n          element = _create();\n        }\n        return element;\n      }\n      function release(element) {\n        if (_length === _maxLength) {\n          pool = pooling[\"double\"](pool);\n          _maxLength *= 2;\n        }\n        if (_release) {\n          _release(element);\n        }\n        pool[_length] = element;\n        _length += 1;\n      }\n      return ob;\n    };\n  }();\n\n  var bezierLengthPool = function () {\n    function create() {\n      return {\n        addedLength: 0,\n        percents: createTypedArray('float32', getDefaultCurveSegments()),\n        lengths: createTypedArray('float32', getDefaultCurveSegments())\n      };\n    }\n    return poolFactory(8, create);\n  }();\n\n  var segmentsLengthPool = function () {\n    function create() {\n      return {\n        lengths: [],\n        totalLength: 0\n      };\n    }\n    function release(element) {\n      var i;\n      var len = element.lengths.length;\n      for (i = 0; i < len; i += 1) {\n        bezierLengthPool.release(element.lengths[i]);\n      }\n      element.lengths.length = 0;\n    }\n    return poolFactory(8, create, release);\n  }();\n\n  function bezFunction() {\n    var math = Math;\n    function pointOnLine2D(x1, y1, x2, y2, x3, y3) {\n      var det1 = x1 * y2 + y1 * x3 + x2 * y3 - x3 * y2 - y3 * x1 - x2 * y1;\n      return det1 > -0.001 && det1 < 0.001;\n    }\n    function pointOnLine3D(x1, y1, z1, x2, y2, z2, x3, y3, z3) {\n      if (z1 === 0 && z2 === 0 && z3 === 0) {\n        return pointOnLine2D(x1, y1, x2, y2, x3, y3);\n      }\n      var dist1 = math.sqrt(math.pow(x2 - x1, 2) + math.pow(y2 - y1, 2) + math.pow(z2 - z1, 2));\n      var dist2 = math.sqrt(math.pow(x3 - x1, 2) + math.pow(y3 - y1, 2) + math.pow(z3 - z1, 2));\n      var dist3 = math.sqrt(math.pow(x3 - x2, 2) + math.pow(y3 - y2, 2) + math.pow(z3 - z2, 2));\n      var diffDist;\n      if (dist1 > dist2) {\n        if (dist1 > dist3) {\n          diffDist = dist1 - dist2 - dist3;\n        } else {\n          diffDist = dist3 - dist2 - dist1;\n        }\n      } else if (dist3 > dist2) {\n        diffDist = dist3 - dist2 - dist1;\n      } else {\n        diffDist = dist2 - dist1 - dist3;\n      }\n      return diffDist > -0.0001 && diffDist < 0.0001;\n    }\n    var getBezierLength = function () {\n      return function (pt1, pt2, pt3, pt4) {\n        var curveSegments = getDefaultCurveSegments();\n        var k;\n        var i;\n        var len;\n        var ptCoord;\n        var perc;\n        var addedLength = 0;\n        var ptDistance;\n        var point = [];\n        var lastPoint = [];\n        var lengthData = bezierLengthPool.newElement();\n        len = pt3.length;\n        for (k = 0; k < curveSegments; k += 1) {\n          perc = k / (curveSegments - 1);\n          ptDistance = 0;\n          for (i = 0; i < len; i += 1) {\n            ptCoord = bmPow(1 - perc, 3) * pt1[i] + 3 * bmPow(1 - perc, 2) * perc * pt3[i] + 3 * (1 - perc) * bmPow(perc, 2) * pt4[i] + bmPow(perc, 3) * pt2[i];\n            point[i] = ptCoord;\n            if (lastPoint[i] !== null) {\n              ptDistance += bmPow(point[i] - lastPoint[i], 2);\n            }\n            lastPoint[i] = point[i];\n          }\n          if (ptDistance) {\n            ptDistance = bmSqrt(ptDistance);\n            addedLength += ptDistance;\n          }\n          lengthData.percents[k] = perc;\n          lengthData.lengths[k] = addedLength;\n        }\n        lengthData.addedLength = addedLength;\n        return lengthData;\n      };\n    }();\n    function getSegmentsLength(shapeData) {\n      var segmentsLength = segmentsLengthPool.newElement();\n      var closed = shapeData.c;\n      var pathV = shapeData.v;\n      var pathO = shapeData.o;\n      var pathI = shapeData.i;\n      var i;\n      var len = shapeData._length;\n      var lengths = segmentsLength.lengths;\n      var totalLength = 0;\n      for (i = 0; i < len - 1; i += 1) {\n        lengths[i] = getBezierLength(pathV[i], pathV[i + 1], pathO[i], pathI[i + 1]);\n        totalLength += lengths[i].addedLength;\n      }\n      if (closed && len) {\n        lengths[i] = getBezierLength(pathV[i], pathV[0], pathO[i], pathI[0]);\n        totalLength += lengths[i].addedLength;\n      }\n      segmentsLength.totalLength = totalLength;\n      return segmentsLength;\n    }\n    function BezierData(length) {\n      this.segmentLength = 0;\n      this.points = new Array(length);\n    }\n    function PointData(partial, point) {\n      this.partialLength = partial;\n      this.point = point;\n    }\n    var buildBezierData = function () {\n      var storedData = {};\n      return function (pt1, pt2, pt3, pt4) {\n        var bezierName = (pt1[0] + '_' + pt1[1] + '_' + pt2[0] + '_' + pt2[1] + '_' + pt3[0] + '_' + pt3[1] + '_' + pt4[0] + '_' + pt4[1]).replace(/\\./g, 'p');\n        if (!storedData[bezierName]) {\n          var curveSegments = getDefaultCurveSegments();\n          var k;\n          var i;\n          var len;\n          var ptCoord;\n          var perc;\n          var addedLength = 0;\n          var ptDistance;\n          var point;\n          var lastPoint = null;\n          if (pt1.length === 2 && (pt1[0] !== pt2[0] || pt1[1] !== pt2[1]) && pointOnLine2D(pt1[0], pt1[1], pt2[0], pt2[1], pt1[0] + pt3[0], pt1[1] + pt3[1]) && pointOnLine2D(pt1[0], pt1[1], pt2[0], pt2[1], pt2[0] + pt4[0], pt2[1] + pt4[1])) {\n            curveSegments = 2;\n          }\n          var bezierData = new BezierData(curveSegments);\n          len = pt3.length;\n          for (k = 0; k < curveSegments; k += 1) {\n            point = createSizedArray(len);\n            perc = k / (curveSegments - 1);\n            ptDistance = 0;\n            for (i = 0; i < len; i += 1) {\n              ptCoord = bmPow(1 - perc, 3) * pt1[i] + 3 * bmPow(1 - perc, 2) * perc * (pt1[i] + pt3[i]) + 3 * (1 - perc) * bmPow(perc, 2) * (pt2[i] + pt4[i]) + bmPow(perc, 3) * pt2[i];\n              point[i] = ptCoord;\n              if (lastPoint !== null) {\n                ptDistance += bmPow(point[i] - lastPoint[i], 2);\n              }\n            }\n            ptDistance = bmSqrt(ptDistance);\n            addedLength += ptDistance;\n            bezierData.points[k] = new PointData(ptDistance, point);\n            lastPoint = point;\n          }\n          bezierData.segmentLength = addedLength;\n          storedData[bezierName] = bezierData;\n        }\n        return storedData[bezierName];\n      };\n    }();\n    function getDistancePerc(perc, bezierData) {\n      var percents = bezierData.percents;\n      var lengths = bezierData.lengths;\n      var len = percents.length;\n      var initPos = bmFloor((len - 1) * perc);\n      var lengthPos = perc * bezierData.addedLength;\n      var lPerc = 0;\n      if (initPos === len - 1 || initPos === 0 || lengthPos === lengths[initPos]) {\n        return percents[initPos];\n      }\n      var dir = lengths[initPos] > lengthPos ? -1 : 1;\n      var flag = true;\n      while (flag) {\n        if (lengths[initPos] <= lengthPos && lengths[initPos + 1] > lengthPos) {\n          lPerc = (lengthPos - lengths[initPos]) / (lengths[initPos + 1] - lengths[initPos]);\n          flag = false;\n        } else {\n          initPos += dir;\n        }\n        if (initPos < 0 || initPos >= len - 1) {\n          // FIX for TypedArrays that don't store floating point values with enough accuracy\n          if (initPos === len - 1) {\n            return percents[initPos];\n          }\n          flag = false;\n        }\n      }\n      return percents[initPos] + (percents[initPos + 1] - percents[initPos]) * lPerc;\n    }\n    function getPointInSegment(pt1, pt2, pt3, pt4, percent, bezierData) {\n      var t1 = getDistancePerc(percent, bezierData);\n      var u1 = 1 - t1;\n      var ptX = math.round((u1 * u1 * u1 * pt1[0] + (t1 * u1 * u1 + u1 * t1 * u1 + u1 * u1 * t1) * pt3[0] + (t1 * t1 * u1 + u1 * t1 * t1 + t1 * u1 * t1) * pt4[0] + t1 * t1 * t1 * pt2[0]) * 1000) / 1000;\n      var ptY = math.round((u1 * u1 * u1 * pt1[1] + (t1 * u1 * u1 + u1 * t1 * u1 + u1 * u1 * t1) * pt3[1] + (t1 * t1 * u1 + u1 * t1 * t1 + t1 * u1 * t1) * pt4[1] + t1 * t1 * t1 * pt2[1]) * 1000) / 1000;\n      return [ptX, ptY];\n    }\n    var bezierSegmentPoints = createTypedArray('float32', 8);\n    function getNewSegment(pt1, pt2, pt3, pt4, startPerc, endPerc, bezierData) {\n      if (startPerc < 0) {\n        startPerc = 0;\n      } else if (startPerc > 1) {\n        startPerc = 1;\n      }\n      var t0 = getDistancePerc(startPerc, bezierData);\n      endPerc = endPerc > 1 ? 1 : endPerc;\n      var t1 = getDistancePerc(endPerc, bezierData);\n      var i;\n      var len = pt1.length;\n      var u0 = 1 - t0;\n      var u1 = 1 - t1;\n      var u0u0u0 = u0 * u0 * u0;\n      var t0u0u0_3 = t0 * u0 * u0 * 3; // eslint-disable-line camelcase\n      var t0t0u0_3 = t0 * t0 * u0 * 3; // eslint-disable-line camelcase\n      var t0t0t0 = t0 * t0 * t0;\n      //\n      var u0u0u1 = u0 * u0 * u1;\n      var t0u0u1_3 = t0 * u0 * u1 + u0 * t0 * u1 + u0 * u0 * t1; // eslint-disable-line camelcase\n      var t0t0u1_3 = t0 * t0 * u1 + u0 * t0 * t1 + t0 * u0 * t1; // eslint-disable-line camelcase\n      var t0t0t1 = t0 * t0 * t1;\n      //\n      var u0u1u1 = u0 * u1 * u1;\n      var t0u1u1_3 = t0 * u1 * u1 + u0 * t1 * u1 + u0 * u1 * t1; // eslint-disable-line camelcase\n      var t0t1u1_3 = t0 * t1 * u1 + u0 * t1 * t1 + t0 * u1 * t1; // eslint-disable-line camelcase\n      var t0t1t1 = t0 * t1 * t1;\n      //\n      var u1u1u1 = u1 * u1 * u1;\n      var t1u1u1_3 = t1 * u1 * u1 + u1 * t1 * u1 + u1 * u1 * t1; // eslint-disable-line camelcase\n      var t1t1u1_3 = t1 * t1 * u1 + u1 * t1 * t1 + t1 * u1 * t1; // eslint-disable-line camelcase\n      var t1t1t1 = t1 * t1 * t1;\n      for (i = 0; i < len; i += 1) {\n        bezierSegmentPoints[i * 4] = math.round((u0u0u0 * pt1[i] + t0u0u0_3 * pt3[i] + t0t0u0_3 * pt4[i] + t0t0t0 * pt2[i]) * 1000) / 1000; // eslint-disable-line camelcase\n        bezierSegmentPoints[i * 4 + 1] = math.round((u0u0u1 * pt1[i] + t0u0u1_3 * pt3[i] + t0t0u1_3 * pt4[i] + t0t0t1 * pt2[i]) * 1000) / 1000; // eslint-disable-line camelcase\n        bezierSegmentPoints[i * 4 + 2] = math.round((u0u1u1 * pt1[i] + t0u1u1_3 * pt3[i] + t0t1u1_3 * pt4[i] + t0t1t1 * pt2[i]) * 1000) / 1000; // eslint-disable-line camelcase\n        bezierSegmentPoints[i * 4 + 3] = math.round((u1u1u1 * pt1[i] + t1u1u1_3 * pt3[i] + t1t1u1_3 * pt4[i] + t1t1t1 * pt2[i]) * 1000) / 1000; // eslint-disable-line camelcase\n      }\n      return bezierSegmentPoints;\n    }\n    return {\n      getSegmentsLength: getSegmentsLength,\n      getNewSegment: getNewSegment,\n      getPointInSegment: getPointInSegment,\n      buildBezierData: buildBezierData,\n      pointOnLine2D: pointOnLine2D,\n      pointOnLine3D: pointOnLine3D\n    };\n  }\n  var bez = bezFunction();\n\n  var initFrame = initialDefaultFrame;\n  var mathAbs = Math.abs;\n  function interpolateValue(frameNum, caching) {\n    var offsetTime = this.offsetTime;\n    var newValue;\n    if (this.propType === 'multidimensional') {\n      newValue = createTypedArray('float32', this.pv.length);\n    }\n    var iterationIndex = caching.lastIndex;\n    var i = iterationIndex;\n    var len = this.keyframes.length - 1;\n    var flag = true;\n    var keyData;\n    var nextKeyData;\n    var keyframeMetadata;\n    while (flag) {\n      keyData = this.keyframes[i];\n      nextKeyData = this.keyframes[i + 1];\n      if (i === len - 1 && frameNum >= nextKeyData.t - offsetTime) {\n        if (keyData.h) {\n          keyData = nextKeyData;\n        }\n        iterationIndex = 0;\n        break;\n      }\n      if (nextKeyData.t - offsetTime > frameNum) {\n        iterationIndex = i;\n        break;\n      }\n      if (i < len - 1) {\n        i += 1;\n      } else {\n        iterationIndex = 0;\n        flag = false;\n      }\n    }\n    keyframeMetadata = this.keyframesMetadata[i] || {};\n    var k;\n    var kLen;\n    var perc;\n    var jLen;\n    var j;\n    var fnc;\n    var nextKeyTime = nextKeyData.t - offsetTime;\n    var keyTime = keyData.t - offsetTime;\n    var endValue;\n    if (keyData.to) {\n      if (!keyframeMetadata.bezierData) {\n        keyframeMetadata.bezierData = bez.buildBezierData(keyData.s, nextKeyData.s || keyData.e, keyData.to, keyData.ti);\n      }\n      var bezierData = keyframeMetadata.bezierData;\n      if (frameNum >= nextKeyTime || frameNum < keyTime) {\n        var ind = frameNum >= nextKeyTime ? bezierData.points.length - 1 : 0;\n        kLen = bezierData.points[ind].point.length;\n        for (k = 0; k < kLen; k += 1) {\n          newValue[k] = bezierData.points[ind].point[k];\n        }\n        // caching._lastKeyframeIndex = -1;\n      } else {\n        if (keyframeMetadata.__fnct) {\n          fnc = keyframeMetadata.__fnct;\n        } else {\n          fnc = BezierFactory.getBezierEasing(keyData.o.x, keyData.o.y, keyData.i.x, keyData.i.y, keyData.n).get;\n          keyframeMetadata.__fnct = fnc;\n        }\n        perc = fnc((frameNum - keyTime) / (nextKeyTime - keyTime));\n        var distanceInLine = bezierData.segmentLength * perc;\n        var segmentPerc;\n        var addedLength = caching.lastFrame < frameNum && caching._lastKeyframeIndex === i ? caching._lastAddedLength : 0;\n        j = caching.lastFrame < frameNum && caching._lastKeyframeIndex === i ? caching._lastPoint : 0;\n        flag = true;\n        jLen = bezierData.points.length;\n        while (flag) {\n          addedLength += bezierData.points[j].partialLength;\n          if (distanceInLine === 0 || perc === 0 || j === bezierData.points.length - 1) {\n            kLen = bezierData.points[j].point.length;\n            for (k = 0; k < kLen; k += 1) {\n              newValue[k] = bezierData.points[j].point[k];\n            }\n            break;\n          } else if (distanceInLine >= addedLength && distanceInLine < addedLength + bezierData.points[j + 1].partialLength) {\n            segmentPerc = (distanceInLine - addedLength) / bezierData.points[j + 1].partialLength;\n            kLen = bezierData.points[j].point.length;\n            for (k = 0; k < kLen; k += 1) {\n              newValue[k] = bezierData.points[j].point[k] + (bezierData.points[j + 1].point[k] - bezierData.points[j].point[k]) * segmentPerc;\n            }\n            break;\n          }\n          if (j < jLen - 1) {\n            j += 1;\n          } else {\n            flag = false;\n          }\n        }\n        caching._lastPoint = j;\n        caching._lastAddedLength = addedLength - bezierData.points[j].partialLength;\n        caching._lastKeyframeIndex = i;\n      }\n    } else {\n      var outX;\n      var outY;\n      var inX;\n      var inY;\n      var keyValue;\n      len = keyData.s.length;\n      endValue = nextKeyData.s || keyData.e;\n      if (this.sh && keyData.h !== 1) {\n        if (frameNum >= nextKeyTime) {\n          newValue[0] = endValue[0];\n          newValue[1] = endValue[1];\n          newValue[2] = endValue[2];\n        } else if (frameNum <= keyTime) {\n          newValue[0] = keyData.s[0];\n          newValue[1] = keyData.s[1];\n          newValue[2] = keyData.s[2];\n        } else {\n          var quatStart = createQuaternion(keyData.s);\n          var quatEnd = createQuaternion(endValue);\n          var time = (frameNum - keyTime) / (nextKeyTime - keyTime);\n          quaternionToEuler(newValue, slerp(quatStart, quatEnd, time));\n        }\n      } else {\n        for (i = 0; i < len; i += 1) {\n          if (keyData.h !== 1) {\n            if (frameNum >= nextKeyTime) {\n              perc = 1;\n            } else if (frameNum < keyTime) {\n              perc = 0;\n            } else {\n              if (keyData.o.x.constructor === Array) {\n                if (!keyframeMetadata.__fnct) {\n                  keyframeMetadata.__fnct = [];\n                }\n                if (!keyframeMetadata.__fnct[i]) {\n                  outX = keyData.o.x[i] === undefined ? keyData.o.x[0] : keyData.o.x[i];\n                  outY = keyData.o.y[i] === undefined ? keyData.o.y[0] : keyData.o.y[i];\n                  inX = keyData.i.x[i] === undefined ? keyData.i.x[0] : keyData.i.x[i];\n                  inY = keyData.i.y[i] === undefined ? keyData.i.y[0] : keyData.i.y[i];\n                  fnc = BezierFactory.getBezierEasing(outX, outY, inX, inY).get;\n                  keyframeMetadata.__fnct[i] = fnc;\n                } else {\n                  fnc = keyframeMetadata.__fnct[i];\n                }\n              } else if (!keyframeMetadata.__fnct) {\n                outX = keyData.o.x;\n                outY = keyData.o.y;\n                inX = keyData.i.x;\n                inY = keyData.i.y;\n                fnc = BezierFactory.getBezierEasing(outX, outY, inX, inY).get;\n                keyData.keyframeMetadata = fnc;\n              } else {\n                fnc = keyframeMetadata.__fnct;\n              }\n              perc = fnc((frameNum - keyTime) / (nextKeyTime - keyTime));\n            }\n          }\n          endValue = nextKeyData.s || keyData.e;\n          keyValue = keyData.h === 1 ? keyData.s[i] : keyData.s[i] + (endValue[i] - keyData.s[i]) * perc;\n          if (this.propType === 'multidimensional') {\n            newValue[i] = keyValue;\n          } else {\n            newValue = keyValue;\n          }\n        }\n      }\n    }\n    caching.lastIndex = iterationIndex;\n    return newValue;\n  }\n\n  // based on @Toji's https://github.com/toji/gl-matrix/\n  function slerp(a, b, t) {\n    var out = [];\n    var ax = a[0];\n    var ay = a[1];\n    var az = a[2];\n    var aw = a[3];\n    var bx = b[0];\n    var by = b[1];\n    var bz = b[2];\n    var bw = b[3];\n    var omega;\n    var cosom;\n    var sinom;\n    var scale0;\n    var scale1;\n    cosom = ax * bx + ay * by + az * bz + aw * bw;\n    if (cosom < 0.0) {\n      cosom = -cosom;\n      bx = -bx;\n      by = -by;\n      bz = -bz;\n      bw = -bw;\n    }\n    if (1.0 - cosom > 0.000001) {\n      omega = Math.acos(cosom);\n      sinom = Math.sin(omega);\n      scale0 = Math.sin((1.0 - t) * omega) / sinom;\n      scale1 = Math.sin(t * omega) / sinom;\n    } else {\n      scale0 = 1.0 - t;\n      scale1 = t;\n    }\n    out[0] = scale0 * ax + scale1 * bx;\n    out[1] = scale0 * ay + scale1 * by;\n    out[2] = scale0 * az + scale1 * bz;\n    out[3] = scale0 * aw + scale1 * bw;\n    return out;\n  }\n  function quaternionToEuler(out, quat) {\n    var qx = quat[0];\n    var qy = quat[1];\n    var qz = quat[2];\n    var qw = quat[3];\n    var heading = Math.atan2(2 * qy * qw - 2 * qx * qz, 1 - 2 * qy * qy - 2 * qz * qz);\n    var attitude = Math.asin(2 * qx * qy + 2 * qz * qw);\n    var bank = Math.atan2(2 * qx * qw - 2 * qy * qz, 1 - 2 * qx * qx - 2 * qz * qz);\n    out[0] = heading / degToRads;\n    out[1] = attitude / degToRads;\n    out[2] = bank / degToRads;\n  }\n  function createQuaternion(values) {\n    var heading = values[0] * degToRads;\n    var attitude = values[1] * degToRads;\n    var bank = values[2] * degToRads;\n    var c1 = Math.cos(heading / 2);\n    var c2 = Math.cos(attitude / 2);\n    var c3 = Math.cos(bank / 2);\n    var s1 = Math.sin(heading / 2);\n    var s2 = Math.sin(attitude / 2);\n    var s3 = Math.sin(bank / 2);\n    var w = c1 * c2 * c3 - s1 * s2 * s3;\n    var x = s1 * s2 * c3 + c1 * c2 * s3;\n    var y = s1 * c2 * c3 + c1 * s2 * s3;\n    var z = c1 * s2 * c3 - s1 * c2 * s3;\n    return [x, y, z, w];\n  }\n  function getValueAtCurrentTime() {\n    var frameNum = this.comp.renderedFrame - this.offsetTime;\n    var initTime = this.keyframes[0].t - this.offsetTime;\n    var endTime = this.keyframes[this.keyframes.length - 1].t - this.offsetTime;\n    if (!(frameNum === this._caching.lastFrame || this._caching.lastFrame !== initFrame && (this._caching.lastFrame >= endTime && frameNum >= endTime || this._caching.lastFrame < initTime && frameNum < initTime))) {\n      if (this._caching.lastFrame >= frameNum) {\n        this._caching._lastKeyframeIndex = -1;\n        this._caching.lastIndex = 0;\n      }\n      var renderResult = this.interpolateValue(frameNum, this._caching);\n      this.pv = renderResult;\n    }\n    this._caching.lastFrame = frameNum;\n    return this.pv;\n  }\n  function setVValue(val) {\n    var multipliedValue;\n    if (this.propType === 'unidimensional') {\n      multipliedValue = val * this.mult;\n      if (mathAbs(this.v - multipliedValue) > 0.00001) {\n        this.v = multipliedValue;\n        this._mdf = true;\n      }\n    } else {\n      var i = 0;\n      var len = this.v.length;\n      while (i < len) {\n        multipliedValue = val[i] * this.mult;\n        if (mathAbs(this.v[i] - multipliedValue) > 0.00001) {\n          this.v[i] = multipliedValue;\n          this._mdf = true;\n        }\n        i += 1;\n      }\n    }\n  }\n  function processEffectsSequence() {\n    if (this.elem.globalData.frameId === this.frameId || !this.effectsSequence.length) {\n      return;\n    }\n    if (this.lock) {\n      this.setVValue(this.pv);\n      return;\n    }\n    this.lock = true;\n    this._mdf = this._isFirstFrame;\n    var i;\n    var len = this.effectsSequence.length;\n    var finalValue = this.kf ? this.pv : this.data.k;\n    for (i = 0; i < len; i += 1) {\n      finalValue = this.effectsSequence[i](finalValue);\n    }\n    this.setVValue(finalValue);\n    this._isFirstFrame = false;\n    this.lock = false;\n    this.frameId = this.elem.globalData.frameId;\n  }\n  function addEffect(effectFunction) {\n    this.effectsSequence.push(effectFunction);\n    this.container.addDynamicProperty(this);\n  }\n  function ValueProperty(elem, data, mult, container) {\n    this.propType = 'unidimensional';\n    this.mult = mult || 1;\n    this.data = data;\n    this.v = mult ? data.k * mult : data.k;\n    this.pv = data.k;\n    this._mdf = false;\n    this.elem = elem;\n    this.container = container;\n    this.comp = elem.comp;\n    this.k = false;\n    this.kf = false;\n    this.vel = 0;\n    this.effectsSequence = [];\n    this._isFirstFrame = true;\n    this.getValue = processEffectsSequence;\n    this.setVValue = setVValue;\n    this.addEffect = addEffect;\n  }\n  function MultiDimensionalProperty(elem, data, mult, container) {\n    this.propType = 'multidimensional';\n    this.mult = mult || 1;\n    this.data = data;\n    this._mdf = false;\n    this.elem = elem;\n    this.container = container;\n    this.comp = elem.comp;\n    this.k = false;\n    this.kf = false;\n    this.frameId = -1;\n    var i;\n    var len = data.k.length;\n    this.v = createTypedArray('float32', len);\n    this.pv = createTypedArray('float32', len);\n    this.vel = createTypedArray('float32', len);\n    for (i = 0; i < len; i += 1) {\n      this.v[i] = data.k[i] * this.mult;\n      this.pv[i] = data.k[i];\n    }\n    this._isFirstFrame = true;\n    this.effectsSequence = [];\n    this.getValue = processEffectsSequence;\n    this.setVValue = setVValue;\n    this.addEffect = addEffect;\n  }\n  function KeyframedValueProperty(elem, data, mult, container) {\n    this.propType = 'unidimensional';\n    this.keyframes = data.k;\n    this.keyframesMetadata = [];\n    this.offsetTime = elem.data.st;\n    this.frameId = -1;\n    this._caching = {\n      lastFrame: initFrame,\n      lastIndex: 0,\n      value: 0,\n      _lastKeyframeIndex: -1\n    };\n    this.k = true;\n    this.kf = true;\n    this.data = data;\n    this.mult = mult || 1;\n    this.elem = elem;\n    this.container = container;\n    this.comp = elem.comp;\n    this.v = initFrame;\n    this.pv = initFrame;\n    this._isFirstFrame = true;\n    this.getValue = processEffectsSequence;\n    this.setVValue = setVValue;\n    this.interpolateValue = interpolateValue;\n    this.effectsSequence = [getValueAtCurrentTime.bind(this)];\n    this.addEffect = addEffect;\n  }\n  function KeyframedMultidimensionalProperty(elem, data, mult, container) {\n    this.propType = 'multidimensional';\n    var i;\n    var len = data.k.length;\n    var s;\n    var e;\n    var to;\n    var ti;\n    for (i = 0; i < len - 1; i += 1) {\n      if (data.k[i].to && data.k[i].s && data.k[i + 1] && data.k[i + 1].s) {\n        s = data.k[i].s;\n        e = data.k[i + 1].s;\n        to = data.k[i].to;\n        ti = data.k[i].ti;\n        if (s.length === 2 && !(s[0] === e[0] && s[1] === e[1]) && bez.pointOnLine2D(s[0], s[1], e[0], e[1], s[0] + to[0], s[1] + to[1]) && bez.pointOnLine2D(s[0], s[1], e[0], e[1], e[0] + ti[0], e[1] + ti[1]) || s.length === 3 && !(s[0] === e[0] && s[1] === e[1] && s[2] === e[2]) && bez.pointOnLine3D(s[0], s[1], s[2], e[0], e[1], e[2], s[0] + to[0], s[1] + to[1], s[2] + to[2]) && bez.pointOnLine3D(s[0], s[1], s[2], e[0], e[1], e[2], e[0] + ti[0], e[1] + ti[1], e[2] + ti[2])) {\n          data.k[i].to = null;\n          data.k[i].ti = null;\n        }\n        if (s[0] === e[0] && s[1] === e[1] && to[0] === 0 && to[1] === 0 && ti[0] === 0 && ti[1] === 0) {\n          if (s.length === 2 || s[2] === e[2] && to[2] === 0 && ti[2] === 0) {\n            data.k[i].to = null;\n            data.k[i].ti = null;\n          }\n        }\n      }\n    }\n    this.effectsSequence = [getValueAtCurrentTime.bind(this)];\n    this.data = data;\n    this.keyframes = data.k;\n    this.keyframesMetadata = [];\n    this.offsetTime = elem.data.st;\n    this.k = true;\n    this.kf = true;\n    this._isFirstFrame = true;\n    this.mult = mult || 1;\n    this.elem = elem;\n    this.container = container;\n    this.comp = elem.comp;\n    this.getValue = processEffectsSequence;\n    this.setVValue = setVValue;\n    this.interpolateValue = interpolateValue;\n    this.frameId = -1;\n    var arrLen = data.k[0].s.length;\n    this.v = createTypedArray('float32', arrLen);\n    this.pv = createTypedArray('float32', arrLen);\n    for (i = 0; i < arrLen; i += 1) {\n      this.v[i] = initFrame;\n      this.pv[i] = initFrame;\n    }\n    this._caching = {\n      lastFrame: initFrame,\n      lastIndex: 0,\n      value: createTypedArray('float32', arrLen)\n    };\n    this.addEffect = addEffect;\n  }\n  var PropertyFactory = function () {\n    function getProp(elem, data, type, mult, container) {\n      if (data.sid) {\n        data = elem.globalData.slotManager.getProp(data);\n      }\n      var p;\n      if (!data.k.length) {\n        p = new ValueProperty(elem, data, mult, container);\n      } else if (typeof data.k[0] === 'number') {\n        p = new MultiDimensionalProperty(elem, data, mult, container);\n      } else {\n        switch (type) {\n          case 0:\n            p = new KeyframedValueProperty(elem, data, mult, container);\n            break;\n          case 1:\n            p = new KeyframedMultidimensionalProperty(elem, data, mult, container);\n            break;\n          default:\n            break;\n        }\n      }\n      if (p.effectsSequence.length) {\n        container.addDynamicProperty(p);\n      }\n      return p;\n    }\n    var ob = {\n      getProp: getProp\n    };\n    return ob;\n  }();\n\n  function DynamicPropertyContainer() {}\n  DynamicPropertyContainer.prototype = {\n    addDynamicProperty: function addDynamicProperty(prop) {\n      if (this.dynamicProperties.indexOf(prop) === -1) {\n        this.dynamicProperties.push(prop);\n        this.container.addDynamicProperty(this);\n        this._isAnimated = true;\n      }\n    },\n    iterateDynamicProperties: function iterateDynamicProperties() {\n      this._mdf = false;\n      var i;\n      var len = this.dynamicProperties.length;\n      for (i = 0; i < len; i += 1) {\n        this.dynamicProperties[i].getValue();\n        if (this.dynamicProperties[i]._mdf) {\n          this._mdf = true;\n        }\n      }\n    },\n    initDynamicPropertyContainer: function initDynamicPropertyContainer(container) {\n      this.container = container;\n      this.dynamicProperties = [];\n      this._mdf = false;\n      this._isAnimated = false;\n    }\n  };\n\n  var pointPool = function () {\n    function create() {\n      return createTypedArray('float32', 2);\n    }\n    return poolFactory(8, create);\n  }();\n\n  function ShapePath() {\n    this.c = false;\n    this._length = 0;\n    this._maxLength = 8;\n    this.v = createSizedArray(this._maxLength);\n    this.o = createSizedArray(this._maxLength);\n    this.i = createSizedArray(this._maxLength);\n  }\n  ShapePath.prototype.setPathData = function (closed, len) {\n    this.c = closed;\n    this.setLength(len);\n    var i = 0;\n    while (i < len) {\n      this.v[i] = pointPool.newElement();\n      this.o[i] = pointPool.newElement();\n      this.i[i] = pointPool.newElement();\n      i += 1;\n    }\n  };\n  ShapePath.prototype.setLength = function (len) {\n    while (this._maxLength < len) {\n      this.doubleArrayLength();\n    }\n    this._length = len;\n  };\n  ShapePath.prototype.doubleArrayLength = function () {\n    this.v = this.v.concat(createSizedArray(this._maxLength));\n    this.i = this.i.concat(createSizedArray(this._maxLength));\n    this.o = this.o.concat(createSizedArray(this._maxLength));\n    this._maxLength *= 2;\n  };\n  ShapePath.prototype.setXYAt = function (x, y, type, pos, replace) {\n    var arr;\n    this._length = Math.max(this._length, pos + 1);\n    if (this._length >= this._maxLength) {\n      this.doubleArrayLength();\n    }\n    switch (type) {\n      case 'v':\n        arr = this.v;\n        break;\n      case 'i':\n        arr = this.i;\n        break;\n      case 'o':\n        arr = this.o;\n        break;\n      default:\n        arr = [];\n        break;\n    }\n    if (!arr[pos] || arr[pos] && !replace) {\n      arr[pos] = pointPool.newElement();\n    }\n    arr[pos][0] = x;\n    arr[pos][1] = y;\n  };\n  ShapePath.prototype.setTripleAt = function (vX, vY, oX, oY, iX, iY, pos, replace) {\n    this.setXYAt(vX, vY, 'v', pos, replace);\n    this.setXYAt(oX, oY, 'o', pos, replace);\n    this.setXYAt(iX, iY, 'i', pos, replace);\n  };\n  ShapePath.prototype.reverse = function () {\n    var newPath = new ShapePath();\n    newPath.setPathData(this.c, this._length);\n    var vertices = this.v;\n    var outPoints = this.o;\n    var inPoints = this.i;\n    var init = 0;\n    if (this.c) {\n      newPath.setTripleAt(vertices[0][0], vertices[0][1], inPoints[0][0], inPoints[0][1], outPoints[0][0], outPoints[0][1], 0, false);\n      init = 1;\n    }\n    var cnt = this._length - 1;\n    var len = this._length;\n    var i;\n    for (i = init; i < len; i += 1) {\n      newPath.setTripleAt(vertices[cnt][0], vertices[cnt][1], inPoints[cnt][0], inPoints[cnt][1], outPoints[cnt][0], outPoints[cnt][1], i, false);\n      cnt -= 1;\n    }\n    return newPath;\n  };\n  ShapePath.prototype.length = function () {\n    return this._length;\n  };\n\n  var shapePool = function () {\n    function create() {\n      return new ShapePath();\n    }\n    function release(shapePath) {\n      var len = shapePath._length;\n      var i;\n      for (i = 0; i < len; i += 1) {\n        pointPool.release(shapePath.v[i]);\n        pointPool.release(shapePath.i[i]);\n        pointPool.release(shapePath.o[i]);\n        shapePath.v[i] = null;\n        shapePath.i[i] = null;\n        shapePath.o[i] = null;\n      }\n      shapePath._length = 0;\n      shapePath.c = false;\n    }\n    function clone(shape) {\n      var cloned = factory.newElement();\n      var i;\n      var len = shape._length === undefined ? shape.v.length : shape._length;\n      cloned.setLength(len);\n      cloned.c = shape.c;\n      for (i = 0; i < len; i += 1) {\n        cloned.setTripleAt(shape.v[i][0], shape.v[i][1], shape.o[i][0], shape.o[i][1], shape.i[i][0], shape.i[i][1], i);\n      }\n      return cloned;\n    }\n    var factory = poolFactory(4, create, release);\n    factory.clone = clone;\n    return factory;\n  }();\n\n  function ShapeCollection() {\n    this._length = 0;\n    this._maxLength = 4;\n    this.shapes = createSizedArray(this._maxLength);\n  }\n  ShapeCollection.prototype.addShape = function (shapeData) {\n    if (this._length === this._maxLength) {\n      this.shapes = this.shapes.concat(createSizedArray(this._maxLength));\n      this._maxLength *= 2;\n    }\n    this.shapes[this._length] = shapeData;\n    this._length += 1;\n  };\n  ShapeCollection.prototype.releaseShapes = function () {\n    var i;\n    for (i = 0; i < this._length; i += 1) {\n      shapePool.release(this.shapes[i]);\n    }\n    this._length = 0;\n  };\n\n  var shapeCollectionPool = function () {\n    var ob = {\n      newShapeCollection: newShapeCollection,\n      release: release\n    };\n    var _length = 0;\n    var _maxLength = 4;\n    var pool = createSizedArray(_maxLength);\n    function newShapeCollection() {\n      var shapeCollection;\n      if (_length) {\n        _length -= 1;\n        shapeCollection = pool[_length];\n      } else {\n        shapeCollection = new ShapeCollection();\n      }\n      return shapeCollection;\n    }\n    function release(shapeCollection) {\n      var i;\n      var len = shapeCollection._length;\n      for (i = 0; i < len; i += 1) {\n        shapePool.release(shapeCollection.shapes[i]);\n      }\n      shapeCollection._length = 0;\n      if (_length === _maxLength) {\n        pool = pooling[\"double\"](pool);\n        _maxLength *= 2;\n      }\n      pool[_length] = shapeCollection;\n      _length += 1;\n    }\n    return ob;\n  }();\n\n  var ShapePropertyFactory = function () {\n    var initFrame = -999999;\n    function interpolateShape(frameNum, previousValue, caching) {\n      var iterationIndex = caching.lastIndex;\n      var keyPropS;\n      var keyPropE;\n      var isHold;\n      var j;\n      var k;\n      var jLen;\n      var kLen;\n      var perc;\n      var vertexValue;\n      var kf = this.keyframes;\n      if (frameNum < kf[0].t - this.offsetTime) {\n        keyPropS = kf[0].s[0];\n        isHold = true;\n        iterationIndex = 0;\n      } else if (frameNum >= kf[kf.length - 1].t - this.offsetTime) {\n        keyPropS = kf[kf.length - 1].s ? kf[kf.length - 1].s[0] : kf[kf.length - 2].e[0];\n        /* if(kf[kf.length - 1].s){\n                  keyPropS = kf[kf.length - 1].s[0];\n              }else{\n                  keyPropS = kf[kf.length - 2].e[0];\n              } */\n        isHold = true;\n      } else {\n        var i = iterationIndex;\n        var len = kf.length - 1;\n        var flag = true;\n        var keyData;\n        var nextKeyData;\n        var keyframeMetadata;\n        while (flag) {\n          keyData = kf[i];\n          nextKeyData = kf[i + 1];\n          if (nextKeyData.t - this.offsetTime > frameNum) {\n            break;\n          }\n          if (i < len - 1) {\n            i += 1;\n          } else {\n            flag = false;\n          }\n        }\n        keyframeMetadata = this.keyframesMetadata[i] || {};\n        isHold = keyData.h === 1;\n        iterationIndex = i;\n        if (!isHold) {\n          if (frameNum >= nextKeyData.t - this.offsetTime) {\n            perc = 1;\n          } else if (frameNum < keyData.t - this.offsetTime) {\n            perc = 0;\n          } else {\n            var fnc;\n            if (keyframeMetadata.__fnct) {\n              fnc = keyframeMetadata.__fnct;\n            } else {\n              fnc = BezierFactory.getBezierEasing(keyData.o.x, keyData.o.y, keyData.i.x, keyData.i.y).get;\n              keyframeMetadata.__fnct = fnc;\n            }\n            perc = fnc((frameNum - (keyData.t - this.offsetTime)) / (nextKeyData.t - this.offsetTime - (keyData.t - this.offsetTime)));\n          }\n          keyPropE = nextKeyData.s ? nextKeyData.s[0] : keyData.e[0];\n        }\n        keyPropS = keyData.s[0];\n      }\n      jLen = previousValue._length;\n      kLen = keyPropS.i[0].length;\n      caching.lastIndex = iterationIndex;\n      for (j = 0; j < jLen; j += 1) {\n        for (k = 0; k < kLen; k += 1) {\n          vertexValue = isHold ? keyPropS.i[j][k] : keyPropS.i[j][k] + (keyPropE.i[j][k] - keyPropS.i[j][k]) * perc;\n          previousValue.i[j][k] = vertexValue;\n          vertexValue = isHold ? keyPropS.o[j][k] : keyPropS.o[j][k] + (keyPropE.o[j][k] - keyPropS.o[j][k]) * perc;\n          previousValue.o[j][k] = vertexValue;\n          vertexValue = isHold ? keyPropS.v[j][k] : keyPropS.v[j][k] + (keyPropE.v[j][k] - keyPropS.v[j][k]) * perc;\n          previousValue.v[j][k] = vertexValue;\n        }\n      }\n    }\n    function interpolateShapeCurrentTime() {\n      var frameNum = this.comp.renderedFrame - this.offsetTime;\n      var initTime = this.keyframes[0].t - this.offsetTime;\n      var endTime = this.keyframes[this.keyframes.length - 1].t - this.offsetTime;\n      var lastFrame = this._caching.lastFrame;\n      if (!(lastFrame !== initFrame && (lastFrame < initTime && frameNum < initTime || lastFrame > endTime && frameNum > endTime))) {\n        /// /\n        this._caching.lastIndex = lastFrame < frameNum ? this._caching.lastIndex : 0;\n        this.interpolateShape(frameNum, this.pv, this._caching);\n        /// /\n      }\n      this._caching.lastFrame = frameNum;\n      return this.pv;\n    }\n    function resetShape() {\n      this.paths = this.localShapeCollection;\n    }\n    function shapesEqual(shape1, shape2) {\n      if (shape1._length !== shape2._length || shape1.c !== shape2.c) {\n        return false;\n      }\n      var i;\n      var len = shape1._length;\n      for (i = 0; i < len; i += 1) {\n        if (shape1.v[i][0] !== shape2.v[i][0] || shape1.v[i][1] !== shape2.v[i][1] || shape1.o[i][0] !== shape2.o[i][0] || shape1.o[i][1] !== shape2.o[i][1] || shape1.i[i][0] !== shape2.i[i][0] || shape1.i[i][1] !== shape2.i[i][1]) {\n          return false;\n        }\n      }\n      return true;\n    }\n    function setVValue(newPath) {\n      if (!shapesEqual(this.v, newPath)) {\n        this.v = shapePool.clone(newPath);\n        this.localShapeCollection.releaseShapes();\n        this.localShapeCollection.addShape(this.v);\n        this._mdf = true;\n        this.paths = this.localShapeCollection;\n      }\n    }\n    function processEffectsSequence() {\n      if (this.elem.globalData.frameId === this.frameId) {\n        return;\n      }\n      if (!this.effectsSequence.length) {\n        this._mdf = false;\n        return;\n      }\n      if (this.lock) {\n        this.setVValue(this.pv);\n        return;\n      }\n      this.lock = true;\n      this._mdf = false;\n      var finalValue;\n      if (this.kf) {\n        finalValue = this.pv;\n      } else if (this.data.ks) {\n        finalValue = this.data.ks.k;\n      } else {\n        finalValue = this.data.pt.k;\n      }\n      var i;\n      var len = this.effectsSequence.length;\n      for (i = 0; i < len; i += 1) {\n        finalValue = this.effectsSequence[i](finalValue);\n      }\n      this.setVValue(finalValue);\n      this.lock = false;\n      this.frameId = this.elem.globalData.frameId;\n    }\n    function ShapeProperty(elem, data, type) {\n      this.propType = 'shape';\n      this.comp = elem.comp;\n      this.container = elem;\n      this.elem = elem;\n      this.data = data;\n      this.k = false;\n      this.kf = false;\n      this._mdf = false;\n      var pathData = type === 3 ? data.pt.k : data.ks.k;\n      this.v = shapePool.clone(pathData);\n      this.pv = shapePool.clone(this.v);\n      this.localShapeCollection = shapeCollectionPool.newShapeCollection();\n      this.paths = this.localShapeCollection;\n      this.paths.addShape(this.v);\n      this.reset = resetShape;\n      this.effectsSequence = [];\n    }\n    function addEffect(effectFunction) {\n      this.effectsSequence.push(effectFunction);\n      this.container.addDynamicProperty(this);\n    }\n    ShapeProperty.prototype.interpolateShape = interpolateShape;\n    ShapeProperty.prototype.getValue = processEffectsSequence;\n    ShapeProperty.prototype.setVValue = setVValue;\n    ShapeProperty.prototype.addEffect = addEffect;\n    function KeyframedShapeProperty(elem, data, type) {\n      this.propType = 'shape';\n      this.comp = elem.comp;\n      this.elem = elem;\n      this.container = elem;\n      this.offsetTime = elem.data.st;\n      this.keyframes = type === 3 ? data.pt.k : data.ks.k;\n      this.keyframesMetadata = [];\n      this.k = true;\n      this.kf = true;\n      var len = this.keyframes[0].s[0].i.length;\n      this.v = shapePool.newElement();\n      this.v.setPathData(this.keyframes[0].s[0].c, len);\n      this.pv = shapePool.clone(this.v);\n      this.localShapeCollection = shapeCollectionPool.newShapeCollection();\n      this.paths = this.localShapeCollection;\n      this.paths.addShape(this.v);\n      this.lastFrame = initFrame;\n      this.reset = resetShape;\n      this._caching = {\n        lastFrame: initFrame,\n        lastIndex: 0\n      };\n      this.effectsSequence = [interpolateShapeCurrentTime.bind(this)];\n    }\n    KeyframedShapeProperty.prototype.getValue = processEffectsSequence;\n    KeyframedShapeProperty.prototype.interpolateShape = interpolateShape;\n    KeyframedShapeProperty.prototype.setVValue = setVValue;\n    KeyframedShapeProperty.prototype.addEffect = addEffect;\n    var EllShapeProperty = function () {\n      var cPoint = roundCorner;\n      function EllShapePropertyFactory(elem, data) {\n        this.v = shapePool.newElement();\n        this.v.setPathData(true, 4);\n        this.localShapeCollection = shapeCollectionPool.newShapeCollection();\n        this.paths = this.localShapeCollection;\n        this.localShapeCollection.addShape(this.v);\n        this.d = data.d;\n        this.elem = elem;\n        this.comp = elem.comp;\n        this.frameId = -1;\n        this.initDynamicPropertyContainer(elem);\n        this.p = PropertyFactory.getProp(elem, data.p, 1, 0, this);\n        this.s = PropertyFactory.getProp(elem, data.s, 1, 0, this);\n        if (this.dynamicProperties.length) {\n          this.k = true;\n        } else {\n          this.k = false;\n          this.convertEllToPath();\n        }\n      }\n      EllShapePropertyFactory.prototype = {\n        reset: resetShape,\n        getValue: function getValue() {\n          if (this.elem.globalData.frameId === this.frameId) {\n            return;\n          }\n          this.frameId = this.elem.globalData.frameId;\n          this.iterateDynamicProperties();\n          if (this._mdf) {\n            this.convertEllToPath();\n          }\n        },\n        convertEllToPath: function convertEllToPath() {\n          var p0 = this.p.v[0];\n          var p1 = this.p.v[1];\n          var s0 = this.s.v[0] / 2;\n          var s1 = this.s.v[1] / 2;\n          var _cw = this.d !== 3;\n          var _v = this.v;\n          _v.v[0][0] = p0;\n          _v.v[0][1] = p1 - s1;\n          _v.v[1][0] = _cw ? p0 + s0 : p0 - s0;\n          _v.v[1][1] = p1;\n          _v.v[2][0] = p0;\n          _v.v[2][1] = p1 + s1;\n          _v.v[3][0] = _cw ? p0 - s0 : p0 + s0;\n          _v.v[3][1] = p1;\n          _v.i[0][0] = _cw ? p0 - s0 * cPoint : p0 + s0 * cPoint;\n          _v.i[0][1] = p1 - s1;\n          _v.i[1][0] = _cw ? p0 + s0 : p0 - s0;\n          _v.i[1][1] = p1 - s1 * cPoint;\n          _v.i[2][0] = _cw ? p0 + s0 * cPoint : p0 - s0 * cPoint;\n          _v.i[2][1] = p1 + s1;\n          _v.i[3][0] = _cw ? p0 - s0 : p0 + s0;\n          _v.i[3][1] = p1 + s1 * cPoint;\n          _v.o[0][0] = _cw ? p0 + s0 * cPoint : p0 - s0 * cPoint;\n          _v.o[0][1] = p1 - s1;\n          _v.o[1][0] = _cw ? p0 + s0 : p0 - s0;\n          _v.o[1][1] = p1 + s1 * cPoint;\n          _v.o[2][0] = _cw ? p0 - s0 * cPoint : p0 + s0 * cPoint;\n          _v.o[2][1] = p1 + s1;\n          _v.o[3][0] = _cw ? p0 - s0 : p0 + s0;\n          _v.o[3][1] = p1 - s1 * cPoint;\n        }\n      };\n      extendPrototype([DynamicPropertyContainer], EllShapePropertyFactory);\n      return EllShapePropertyFactory;\n    }();\n    var StarShapeProperty = function () {\n      function StarShapePropertyFactory(elem, data) {\n        this.v = shapePool.newElement();\n        this.v.setPathData(true, 0);\n        this.elem = elem;\n        this.comp = elem.comp;\n        this.data = data;\n        this.frameId = -1;\n        this.d = data.d;\n        this.initDynamicPropertyContainer(elem);\n        if (data.sy === 1) {\n          this.ir = PropertyFactory.getProp(elem, data.ir, 0, 0, this);\n          this.is = PropertyFactory.getProp(elem, data.is, 0, 0.01, this);\n          this.convertToPath = this.convertStarToPath;\n        } else {\n          this.convertToPath = this.convertPolygonToPath;\n        }\n        this.pt = PropertyFactory.getProp(elem, data.pt, 0, 0, this);\n        this.p = PropertyFactory.getProp(elem, data.p, 1, 0, this);\n        this.r = PropertyFactory.getProp(elem, data.r, 0, degToRads, this);\n        this.or = PropertyFactory.getProp(elem, data.or, 0, 0, this);\n        this.os = PropertyFactory.getProp(elem, data.os, 0, 0.01, this);\n        this.localShapeCollection = shapeCollectionPool.newShapeCollection();\n        this.localShapeCollection.addShape(this.v);\n        this.paths = this.localShapeCollection;\n        if (this.dynamicProperties.length) {\n          this.k = true;\n        } else {\n          this.k = false;\n          this.convertToPath();\n        }\n      }\n      StarShapePropertyFactory.prototype = {\n        reset: resetShape,\n        getValue: function getValue() {\n          if (this.elem.globalData.frameId === this.frameId) {\n            return;\n          }\n          this.frameId = this.elem.globalData.frameId;\n          this.iterateDynamicProperties();\n          if (this._mdf) {\n            this.convertToPath();\n          }\n        },\n        convertStarToPath: function convertStarToPath() {\n          var numPts = Math.floor(this.pt.v) * 2;\n          var angle = Math.PI * 2 / numPts;\n          /* this.v.v.length = numPts;\n                  this.v.i.length = numPts;\n                  this.v.o.length = numPts; */\n          var longFlag = true;\n          var longRad = this.or.v;\n          var shortRad = this.ir.v;\n          var longRound = this.os.v;\n          var shortRound = this.is.v;\n          var longPerimSegment = 2 * Math.PI * longRad / (numPts * 2);\n          var shortPerimSegment = 2 * Math.PI * shortRad / (numPts * 2);\n          var i;\n          var rad;\n          var roundness;\n          var perimSegment;\n          var currentAng = -Math.PI / 2;\n          currentAng += this.r.v;\n          var dir = this.data.d === 3 ? -1 : 1;\n          this.v._length = 0;\n          for (i = 0; i < numPts; i += 1) {\n            rad = longFlag ? longRad : shortRad;\n            roundness = longFlag ? longRound : shortRound;\n            perimSegment = longFlag ? longPerimSegment : shortPerimSegment;\n            var x = rad * Math.cos(currentAng);\n            var y = rad * Math.sin(currentAng);\n            var ox = x === 0 && y === 0 ? 0 : y / Math.sqrt(x * x + y * y);\n            var oy = x === 0 && y === 0 ? 0 : -x / Math.sqrt(x * x + y * y);\n            x += +this.p.v[0];\n            y += +this.p.v[1];\n            this.v.setTripleAt(x, y, x - ox * perimSegment * roundness * dir, y - oy * perimSegment * roundness * dir, x + ox * perimSegment * roundness * dir, y + oy * perimSegment * roundness * dir, i, true);\n\n            /* this.v.v[i] = [x,y];\n                      this.v.i[i] = [x+ox*perimSegment*roundness*dir,y+oy*perimSegment*roundness*dir];\n                      this.v.o[i] = [x-ox*perimSegment*roundness*dir,y-oy*perimSegment*roundness*dir];\n                      this.v._length = numPts; */\n            longFlag = !longFlag;\n            currentAng += angle * dir;\n          }\n        },\n        convertPolygonToPath: function convertPolygonToPath() {\n          var numPts = Math.floor(this.pt.v);\n          var angle = Math.PI * 2 / numPts;\n          var rad = this.or.v;\n          var roundness = this.os.v;\n          var perimSegment = 2 * Math.PI * rad / (numPts * 4);\n          var i;\n          var currentAng = -Math.PI * 0.5;\n          var dir = this.data.d === 3 ? -1 : 1;\n          currentAng += this.r.v;\n          this.v._length = 0;\n          for (i = 0; i < numPts; i += 1) {\n            var x = rad * Math.cos(currentAng);\n            var y = rad * Math.sin(currentAng);\n            var ox = x === 0 && y === 0 ? 0 : y / Math.sqrt(x * x + y * y);\n            var oy = x === 0 && y === 0 ? 0 : -x / Math.sqrt(x * x + y * y);\n            x += +this.p.v[0];\n            y += +this.p.v[1];\n            this.v.setTripleAt(x, y, x - ox * perimSegment * roundness * dir, y - oy * perimSegment * roundness * dir, x + ox * perimSegment * roundness * dir, y + oy * perimSegment * roundness * dir, i, true);\n            currentAng += angle * dir;\n          }\n          this.paths.length = 0;\n          this.paths[0] = this.v;\n        }\n      };\n      extendPrototype([DynamicPropertyContainer], StarShapePropertyFactory);\n      return StarShapePropertyFactory;\n    }();\n    var RectShapeProperty = function () {\n      function RectShapePropertyFactory(elem, data) {\n        this.v = shapePool.newElement();\n        this.v.c = true;\n        this.localShapeCollection = shapeCollectionPool.newShapeCollection();\n        this.localShapeCollection.addShape(this.v);\n        this.paths = this.localShapeCollection;\n        this.elem = elem;\n        this.comp = elem.comp;\n        this.frameId = -1;\n        this.d = data.d;\n        this.initDynamicPropertyContainer(elem);\n        this.p = PropertyFactory.getProp(elem, data.p, 1, 0, this);\n        this.s = PropertyFactory.getProp(elem, data.s, 1, 0, this);\n        this.r = PropertyFactory.getProp(elem, data.r, 0, 0, this);\n        if (this.dynamicProperties.length) {\n          this.k = true;\n        } else {\n          this.k = false;\n          this.convertRectToPath();\n        }\n      }\n      RectShapePropertyFactory.prototype = {\n        convertRectToPath: function convertRectToPath() {\n          var p0 = this.p.v[0];\n          var p1 = this.p.v[1];\n          var v0 = this.s.v[0] / 2;\n          var v1 = this.s.v[1] / 2;\n          var round = bmMin(v0, v1, this.r.v);\n          var cPoint = round * (1 - roundCorner);\n          this.v._length = 0;\n          if (this.d === 2 || this.d === 1) {\n            this.v.setTripleAt(p0 + v0, p1 - v1 + round, p0 + v0, p1 - v1 + round, p0 + v0, p1 - v1 + cPoint, 0, true);\n            this.v.setTripleAt(p0 + v0, p1 + v1 - round, p0 + v0, p1 + v1 - cPoint, p0 + v0, p1 + v1 - round, 1, true);\n            if (round !== 0) {\n              this.v.setTripleAt(p0 + v0 - round, p1 + v1, p0 + v0 - round, p1 + v1, p0 + v0 - cPoint, p1 + v1, 2, true);\n              this.v.setTripleAt(p0 - v0 + round, p1 + v1, p0 - v0 + cPoint, p1 + v1, p0 - v0 + round, p1 + v1, 3, true);\n              this.v.setTripleAt(p0 - v0, p1 + v1 - round, p0 - v0, p1 + v1 - round, p0 - v0, p1 + v1 - cPoint, 4, true);\n              this.v.setTripleAt(p0 - v0, p1 - v1 + round, p0 - v0, p1 - v1 + cPoint, p0 - v0, p1 - v1 + round, 5, true);\n              this.v.setTripleAt(p0 - v0 + round, p1 - v1, p0 - v0 + round, p1 - v1, p0 - v0 + cPoint, p1 - v1, 6, true);\n              this.v.setTripleAt(p0 + v0 - round, p1 - v1, p0 + v0 - cPoint, p1 - v1, p0 + v0 - round, p1 - v1, 7, true);\n            } else {\n              this.v.setTripleAt(p0 - v0, p1 + v1, p0 - v0 + cPoint, p1 + v1, p0 - v0, p1 + v1, 2);\n              this.v.setTripleAt(p0 - v0, p1 - v1, p0 - v0, p1 - v1 + cPoint, p0 - v0, p1 - v1, 3);\n            }\n          } else {\n            this.v.setTripleAt(p0 + v0, p1 - v1 + round, p0 + v0, p1 - v1 + cPoint, p0 + v0, p1 - v1 + round, 0, true);\n            if (round !== 0) {\n              this.v.setTripleAt(p0 + v0 - round, p1 - v1, p0 + v0 - round, p1 - v1, p0 + v0 - cPoint, p1 - v1, 1, true);\n              this.v.setTripleAt(p0 - v0 + round, p1 - v1, p0 - v0 + cPoint, p1 - v1, p0 - v0 + round, p1 - v1, 2, true);\n              this.v.setTripleAt(p0 - v0, p1 - v1 + round, p0 - v0, p1 - v1 + round, p0 - v0, p1 - v1 + cPoint, 3, true);\n              this.v.setTripleAt(p0 - v0, p1 + v1 - round, p0 - v0, p1 + v1 - cPoint, p0 - v0, p1 + v1 - round, 4, true);\n              this.v.setTripleAt(p0 - v0 + round, p1 + v1, p0 - v0 + round, p1 + v1, p0 - v0 + cPoint, p1 + v1, 5, true);\n              this.v.setTripleAt(p0 + v0 - round, p1 + v1, p0 + v0 - cPoint, p1 + v1, p0 + v0 - round, p1 + v1, 6, true);\n              this.v.setTripleAt(p0 + v0, p1 + v1 - round, p0 + v0, p1 + v1 - round, p0 + v0, p1 + v1 - cPoint, 7, true);\n            } else {\n              this.v.setTripleAt(p0 - v0, p1 - v1, p0 - v0 + cPoint, p1 - v1, p0 - v0, p1 - v1, 1, true);\n              this.v.setTripleAt(p0 - v0, p1 + v1, p0 - v0, p1 + v1 - cPoint, p0 - v0, p1 + v1, 2, true);\n              this.v.setTripleAt(p0 + v0, p1 + v1, p0 + v0 - cPoint, p1 + v1, p0 + v0, p1 + v1, 3, true);\n            }\n          }\n        },\n        getValue: function getValue() {\n          if (this.elem.globalData.frameId === this.frameId) {\n            return;\n          }\n          this.frameId = this.elem.globalData.frameId;\n          this.iterateDynamicProperties();\n          if (this._mdf) {\n            this.convertRectToPath();\n          }\n        },\n        reset: resetShape\n      };\n      extendPrototype([DynamicPropertyContainer], RectShapePropertyFactory);\n      return RectShapePropertyFactory;\n    }();\n    function getShapeProp(elem, data, type) {\n      var prop;\n      if (type === 3 || type === 4) {\n        var dataProp = type === 3 ? data.pt : data.ks;\n        var keys = dataProp.k;\n        if (keys.length) {\n          prop = new KeyframedShapeProperty(elem, data, type);\n        } else {\n          prop = new ShapeProperty(elem, data, type);\n        }\n      } else if (type === 5) {\n        prop = new RectShapeProperty(elem, data);\n      } else if (type === 6) {\n        prop = new EllShapeProperty(elem, data);\n      } else if (type === 7) {\n        prop = new StarShapeProperty(elem, data);\n      }\n      if (prop.k) {\n        elem.addDynamicProperty(prop);\n      }\n      return prop;\n    }\n    function getConstructorFunction() {\n      return ShapeProperty;\n    }\n    function getKeyframedConstructorFunction() {\n      return KeyframedShapeProperty;\n    }\n    var ob = {};\n    ob.getShapeProp = getShapeProp;\n    ob.getConstructorFunction = getConstructorFunction;\n    ob.getKeyframedConstructorFunction = getKeyframedConstructorFunction;\n    return ob;\n  }();\n\n  /*!\n   Transformation Matrix v2.0\n   (c) Epistemex 2014-2015\n   www.epistemex.com\n   By Ken Fyrstenberg\n   Contributions by leeoniya.\n   License: MIT, header required.\n   */\n\n  /**\n   * 2D transformation matrix object initialized with identity matrix.\n   *\n   * The matrix can synchronize a canvas context by supplying the context\n   * as an argument, or later apply current absolute transform to an\n   * existing context.\n   *\n   * All values are handled as floating point values.\n   *\n   * @param {CanvasRenderingContext2D} [context] - Optional context to sync with Matrix\n   * @prop {number} a - scale x\n   * @prop {number} b - shear y\n   * @prop {number} c - shear x\n   * @prop {number} d - scale y\n   * @prop {number} e - translate x\n   * @prop {number} f - translate y\n   * @prop {CanvasRenderingContext2D|null} [context=null] - set or get current canvas context\n   * @constructor\n   */\n\n  var Matrix = function () {\n    var _cos = Math.cos;\n    var _sin = Math.sin;\n    var _tan = Math.tan;\n    var _rnd = Math.round;\n    function reset() {\n      this.props[0] = 1;\n      this.props[1] = 0;\n      this.props[2] = 0;\n      this.props[3] = 0;\n      this.props[4] = 0;\n      this.props[5] = 1;\n      this.props[6] = 0;\n      this.props[7] = 0;\n      this.props[8] = 0;\n      this.props[9] = 0;\n      this.props[10] = 1;\n      this.props[11] = 0;\n      this.props[12] = 0;\n      this.props[13] = 0;\n      this.props[14] = 0;\n      this.props[15] = 1;\n      return this;\n    }\n    function rotate(angle) {\n      if (angle === 0) {\n        return this;\n      }\n      var mCos = _cos(angle);\n      var mSin = _sin(angle);\n      return this._t(mCos, -mSin, 0, 0, mSin, mCos, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);\n    }\n    function rotateX(angle) {\n      if (angle === 0) {\n        return this;\n      }\n      var mCos = _cos(angle);\n      var mSin = _sin(angle);\n      return this._t(1, 0, 0, 0, 0, mCos, -mSin, 0, 0, mSin, mCos, 0, 0, 0, 0, 1);\n    }\n    function rotateY(angle) {\n      if (angle === 0) {\n        return this;\n      }\n      var mCos = _cos(angle);\n      var mSin = _sin(angle);\n      return this._t(mCos, 0, mSin, 0, 0, 1, 0, 0, -mSin, 0, mCos, 0, 0, 0, 0, 1);\n    }\n    function rotateZ(angle) {\n      if (angle === 0) {\n        return this;\n      }\n      var mCos = _cos(angle);\n      var mSin = _sin(angle);\n      return this._t(mCos, -mSin, 0, 0, mSin, mCos, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);\n    }\n    function shear(sx, sy) {\n      return this._t(1, sy, sx, 1, 0, 0);\n    }\n    function skew(ax, ay) {\n      return this.shear(_tan(ax), _tan(ay));\n    }\n    function skewFromAxis(ax, angle) {\n      var mCos = _cos(angle);\n      var mSin = _sin(angle);\n      return this._t(mCos, mSin, 0, 0, -mSin, mCos, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)._t(1, 0, 0, 0, _tan(ax), 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)._t(mCos, -mSin, 0, 0, mSin, mCos, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);\n      // return this._t(mCos, mSin, -mSin, mCos, 0, 0)._t(1, 0, _tan(ax), 1, 0, 0)._t(mCos, -mSin, mSin, mCos, 0, 0);\n    }\n    function scale(sx, sy, sz) {\n      if (!sz && sz !== 0) {\n        sz = 1;\n      }\n      if (sx === 1 && sy === 1 && sz === 1) {\n        return this;\n      }\n      return this._t(sx, 0, 0, 0, 0, sy, 0, 0, 0, 0, sz, 0, 0, 0, 0, 1);\n    }\n    function setTransform(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p) {\n      this.props[0] = a;\n      this.props[1] = b;\n      this.props[2] = c;\n      this.props[3] = d;\n      this.props[4] = e;\n      this.props[5] = f;\n      this.props[6] = g;\n      this.props[7] = h;\n      this.props[8] = i;\n      this.props[9] = j;\n      this.props[10] = k;\n      this.props[11] = l;\n      this.props[12] = m;\n      this.props[13] = n;\n      this.props[14] = o;\n      this.props[15] = p;\n      return this;\n    }\n    function translate(tx, ty, tz) {\n      tz = tz || 0;\n      if (tx !== 0 || ty !== 0 || tz !== 0) {\n        return this._t(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, tx, ty, tz, 1);\n      }\n      return this;\n    }\n    function transform(a2, b2, c2, d2, e2, f2, g2, h2, i2, j2, k2, l2, m2, n2, o2, p2) {\n      var _p = this.props;\n      if (a2 === 1 && b2 === 0 && c2 === 0 && d2 === 0 && e2 === 0 && f2 === 1 && g2 === 0 && h2 === 0 && i2 === 0 && j2 === 0 && k2 === 1 && l2 === 0) {\n        // NOTE: commenting this condition because TurboFan deoptimizes code when present\n        // if(m2 !== 0 || n2 !== 0 || o2 !== 0){\n        _p[12] = _p[12] * a2 + _p[15] * m2;\n        _p[13] = _p[13] * f2 + _p[15] * n2;\n        _p[14] = _p[14] * k2 + _p[15] * o2;\n        _p[15] *= p2;\n        // }\n        this._identityCalculated = false;\n        return this;\n      }\n      var a1 = _p[0];\n      var b1 = _p[1];\n      var c1 = _p[2];\n      var d1 = _p[3];\n      var e1 = _p[4];\n      var f1 = _p[5];\n      var g1 = _p[6];\n      var h1 = _p[7];\n      var i1 = _p[8];\n      var j1 = _p[9];\n      var k1 = _p[10];\n      var l1 = _p[11];\n      var m1 = _p[12];\n      var n1 = _p[13];\n      var o1 = _p[14];\n      var p1 = _p[15];\n\n      /* matrix order (canvas compatible):\n           * ace\n           * bdf\n           * 001\n           */\n      _p[0] = a1 * a2 + b1 * e2 + c1 * i2 + d1 * m2;\n      _p[1] = a1 * b2 + b1 * f2 + c1 * j2 + d1 * n2;\n      _p[2] = a1 * c2 + b1 * g2 + c1 * k2 + d1 * o2;\n      _p[3] = a1 * d2 + b1 * h2 + c1 * l2 + d1 * p2;\n      _p[4] = e1 * a2 + f1 * e2 + g1 * i2 + h1 * m2;\n      _p[5] = e1 * b2 + f1 * f2 + g1 * j2 + h1 * n2;\n      _p[6] = e1 * c2 + f1 * g2 + g1 * k2 + h1 * o2;\n      _p[7] = e1 * d2 + f1 * h2 + g1 * l2 + h1 * p2;\n      _p[8] = i1 * a2 + j1 * e2 + k1 * i2 + l1 * m2;\n      _p[9] = i1 * b2 + j1 * f2 + k1 * j2 + l1 * n2;\n      _p[10] = i1 * c2 + j1 * g2 + k1 * k2 + l1 * o2;\n      _p[11] = i1 * d2 + j1 * h2 + k1 * l2 + l1 * p2;\n      _p[12] = m1 * a2 + n1 * e2 + o1 * i2 + p1 * m2;\n      _p[13] = m1 * b2 + n1 * f2 + o1 * j2 + p1 * n2;\n      _p[14] = m1 * c2 + n1 * g2 + o1 * k2 + p1 * o2;\n      _p[15] = m1 * d2 + n1 * h2 + o1 * l2 + p1 * p2;\n      this._identityCalculated = false;\n      return this;\n    }\n    function multiply(matrix) {\n      var matrixProps = matrix.props;\n      return this.transform(matrixProps[0], matrixProps[1], matrixProps[2], matrixProps[3], matrixProps[4], matrixProps[5], matrixProps[6], matrixProps[7], matrixProps[8], matrixProps[9], matrixProps[10], matrixProps[11], matrixProps[12], matrixProps[13], matrixProps[14], matrixProps[15]);\n    }\n    function isIdentity() {\n      if (!this._identityCalculated) {\n        this._identity = !(this.props[0] !== 1 || this.props[1] !== 0 || this.props[2] !== 0 || this.props[3] !== 0 || this.props[4] !== 0 || this.props[5] !== 1 || this.props[6] !== 0 || this.props[7] !== 0 || this.props[8] !== 0 || this.props[9] !== 0 || this.props[10] !== 1 || this.props[11] !== 0 || this.props[12] !== 0 || this.props[13] !== 0 || this.props[14] !== 0 || this.props[15] !== 1);\n        this._identityCalculated = true;\n      }\n      return this._identity;\n    }\n    function equals(matr) {\n      var i = 0;\n      while (i < 16) {\n        if (matr.props[i] !== this.props[i]) {\n          return false;\n        }\n        i += 1;\n      }\n      return true;\n    }\n    function clone(matr) {\n      var i;\n      for (i = 0; i < 16; i += 1) {\n        matr.props[i] = this.props[i];\n      }\n      return matr;\n    }\n    function cloneFromProps(props) {\n      var i;\n      for (i = 0; i < 16; i += 1) {\n        this.props[i] = props[i];\n      }\n    }\n    function applyToPoint(x, y, z) {\n      return {\n        x: x * this.props[0] + y * this.props[4] + z * this.props[8] + this.props[12],\n        y: x * this.props[1] + y * this.props[5] + z * this.props[9] + this.props[13],\n        z: x * this.props[2] + y * this.props[6] + z * this.props[10] + this.props[14]\n      };\n      /* return {\n           x: x * me.a + y * me.c + me.e,\n           y: x * me.b + y * me.d + me.f\n           }; */\n    }\n    function applyToX(x, y, z) {\n      return x * this.props[0] + y * this.props[4] + z * this.props[8] + this.props[12];\n    }\n    function applyToY(x, y, z) {\n      return x * this.props[1] + y * this.props[5] + z * this.props[9] + this.props[13];\n    }\n    function applyToZ(x, y, z) {\n      return x * this.props[2] + y * this.props[6] + z * this.props[10] + this.props[14];\n    }\n    function getInverseMatrix() {\n      var determinant = this.props[0] * this.props[5] - this.props[1] * this.props[4];\n      var a = this.props[5] / determinant;\n      var b = -this.props[1] / determinant;\n      var c = -this.props[4] / determinant;\n      var d = this.props[0] / determinant;\n      var e = (this.props[4] * this.props[13] - this.props[5] * this.props[12]) / determinant;\n      var f = -(this.props[0] * this.props[13] - this.props[1] * this.props[12]) / determinant;\n      var inverseMatrix = new Matrix();\n      inverseMatrix.props[0] = a;\n      inverseMatrix.props[1] = b;\n      inverseMatrix.props[4] = c;\n      inverseMatrix.props[5] = d;\n      inverseMatrix.props[12] = e;\n      inverseMatrix.props[13] = f;\n      return inverseMatrix;\n    }\n    function inversePoint(pt) {\n      var inverseMatrix = this.getInverseMatrix();\n      return inverseMatrix.applyToPointArray(pt[0], pt[1], pt[2] || 0);\n    }\n    function inversePoints(pts) {\n      var i;\n      var len = pts.length;\n      var retPts = [];\n      for (i = 0; i < len; i += 1) {\n        retPts[i] = inversePoint(pts[i]);\n      }\n      return retPts;\n    }\n    function applyToTriplePoints(pt1, pt2, pt3) {\n      var arr = createTypedArray('float32', 6);\n      if (this.isIdentity()) {\n        arr[0] = pt1[0];\n        arr[1] = pt1[1];\n        arr[2] = pt2[0];\n        arr[3] = pt2[1];\n        arr[4] = pt3[0];\n        arr[5] = pt3[1];\n      } else {\n        var p0 = this.props[0];\n        var p1 = this.props[1];\n        var p4 = this.props[4];\n        var p5 = this.props[5];\n        var p12 = this.props[12];\n        var p13 = this.props[13];\n        arr[0] = pt1[0] * p0 + pt1[1] * p4 + p12;\n        arr[1] = pt1[0] * p1 + pt1[1] * p5 + p13;\n        arr[2] = pt2[0] * p0 + pt2[1] * p4 + p12;\n        arr[3] = pt2[0] * p1 + pt2[1] * p5 + p13;\n        arr[4] = pt3[0] * p0 + pt3[1] * p4 + p12;\n        arr[5] = pt3[0] * p1 + pt3[1] * p5 + p13;\n      }\n      return arr;\n    }\n    function applyToPointArray(x, y, z) {\n      var arr;\n      if (this.isIdentity()) {\n        arr = [x, y, z];\n      } else {\n        arr = [x * this.props[0] + y * this.props[4] + z * this.props[8] + this.props[12], x * this.props[1] + y * this.props[5] + z * this.props[9] + this.props[13], x * this.props[2] + y * this.props[6] + z * this.props[10] + this.props[14]];\n      }\n      return arr;\n    }\n    function applyToPointStringified(x, y) {\n      if (this.isIdentity()) {\n        return x + ',' + y;\n      }\n      var _p = this.props;\n      return Math.round((x * _p[0] + y * _p[4] + _p[12]) * 100) / 100 + ',' + Math.round((x * _p[1] + y * _p[5] + _p[13]) * 100) / 100;\n    }\n    function toCSS() {\n      // Doesn't make much sense to add this optimization. If it is an identity matrix, it's very likely this will get called only once since it won't be keyframed.\n      /* if(this.isIdentity()) {\n              return '';\n          } */\n      var i = 0;\n      var props = this.props;\n      var cssValue = 'matrix3d(';\n      var v = 10000;\n      while (i < 16) {\n        cssValue += _rnd(props[i] * v) / v;\n        cssValue += i === 15 ? ')' : ',';\n        i += 1;\n      }\n      return cssValue;\n    }\n    function roundMatrixProperty(val) {\n      var v = 10000;\n      if (val < 0.000001 && val > 0 || val > -0.000001 && val < 0) {\n        return _rnd(val * v) / v;\n      }\n      return val;\n    }\n    function to2dCSS() {\n      // Doesn't make much sense to add this optimization. If it is an identity matrix, it's very likely this will get called only once since it won't be keyframed.\n      /* if(this.isIdentity()) {\n              return '';\n          } */\n      var props = this.props;\n      var _a = roundMatrixProperty(props[0]);\n      var _b = roundMatrixProperty(props[1]);\n      var _c = roundMatrixProperty(props[4]);\n      var _d = roundMatrixProperty(props[5]);\n      var _e = roundMatrixProperty(props[12]);\n      var _f = roundMatrixProperty(props[13]);\n      return 'matrix(' + _a + ',' + _b + ',' + _c + ',' + _d + ',' + _e + ',' + _f + ')';\n    }\n    return function () {\n      this.reset = reset;\n      this.rotate = rotate;\n      this.rotateX = rotateX;\n      this.rotateY = rotateY;\n      this.rotateZ = rotateZ;\n      this.skew = skew;\n      this.skewFromAxis = skewFromAxis;\n      this.shear = shear;\n      this.scale = scale;\n      this.setTransform = setTransform;\n      this.translate = translate;\n      this.transform = transform;\n      this.multiply = multiply;\n      this.applyToPoint = applyToPoint;\n      this.applyToX = applyToX;\n      this.applyToY = applyToY;\n      this.applyToZ = applyToZ;\n      this.applyToPointArray = applyToPointArray;\n      this.applyToTriplePoints = applyToTriplePoints;\n      this.applyToPointStringified = applyToPointStringified;\n      this.toCSS = toCSS;\n      this.to2dCSS = to2dCSS;\n      this.clone = clone;\n      this.cloneFromProps = cloneFromProps;\n      this.equals = equals;\n      this.inversePoints = inversePoints;\n      this.inversePoint = inversePoint;\n      this.getInverseMatrix = getInverseMatrix;\n      this._t = this.transform;\n      this.isIdentity = isIdentity;\n      this._identity = true;\n      this._identityCalculated = false;\n      this.props = createTypedArray('float32', 16);\n      this.reset();\n    };\n  }();\n\n  function _typeof$3(o) { \"@babel/helpers - typeof\"; return _typeof$3 = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof$3(o); }\n  var lottie = {};\n  var standalone = '__[STANDALONE]__';\n  var animationData = '__[ANIMATIONDATA]__';\n  var renderer = '';\n  function setLocation(href) {\n    setLocationHref(href);\n  }\n  function searchAnimations() {\n    if (standalone === true) {\n      animationManager.searchAnimations(animationData, standalone, renderer);\n    } else {\n      animationManager.searchAnimations();\n    }\n  }\n  function setSubframeRendering(flag) {\n    setSubframeEnabled(flag);\n  }\n  function setPrefix(prefix) {\n    setIdPrefix(prefix);\n  }\n  function loadAnimation(params) {\n    if (standalone === true) {\n      params.animationData = JSON.parse(animationData);\n    }\n    return animationManager.loadAnimation(params);\n  }\n  function setQuality(value) {\n    if (typeof value === 'string') {\n      switch (value) {\n        case 'high':\n          setDefaultCurveSegments(200);\n          break;\n        default:\n        case 'medium':\n          setDefaultCurveSegments(50);\n          break;\n        case 'low':\n          setDefaultCurveSegments(10);\n          break;\n      }\n    } else if (!isNaN(value) && value > 1) {\n      setDefaultCurveSegments(value);\n    }\n    if (getDefaultCurveSegments() >= 50) {\n      roundValues(false);\n    } else {\n      roundValues(true);\n    }\n  }\n  function inBrowser() {\n    return typeof navigator !== 'undefined';\n  }\n  function installPlugin(type, plugin) {\n    if (type === 'expressions') {\n      setExpressionsPlugin(plugin);\n    }\n  }\n  function getFactory(name) {\n    switch (name) {\n      case 'propertyFactory':\n        return PropertyFactory;\n      case 'shapePropertyFactory':\n        return ShapePropertyFactory;\n      case 'matrix':\n        return Matrix;\n      default:\n        return null;\n    }\n  }\n  lottie.play = animationManager.play;\n  lottie.pause = animationManager.pause;\n  lottie.setLocationHref = setLocation;\n  lottie.togglePause = animationManager.togglePause;\n  lottie.setSpeed = animationManager.setSpeed;\n  lottie.setDirection = animationManager.setDirection;\n  lottie.stop = animationManager.stop;\n  lottie.searchAnimations = searchAnimations;\n  lottie.registerAnimation = animationManager.registerAnimation;\n  lottie.loadAnimation = loadAnimation;\n  lottie.setSubframeRendering = setSubframeRendering;\n  lottie.resize = animationManager.resize;\n  // lottie.start = start;\n  lottie.goToAndStop = animationManager.goToAndStop;\n  lottie.destroy = animationManager.destroy;\n  lottie.setQuality = setQuality;\n  lottie.inBrowser = inBrowser;\n  lottie.installPlugin = installPlugin;\n  lottie.freeze = animationManager.freeze;\n  lottie.unfreeze = animationManager.unfreeze;\n  lottie.setVolume = animationManager.setVolume;\n  lottie.mute = animationManager.mute;\n  lottie.unmute = animationManager.unmute;\n  lottie.getRegisteredAnimations = animationManager.getRegisteredAnimations;\n  lottie.useWebWorker = setWebWorker;\n  lottie.setIDPrefix = setPrefix;\n  lottie.__getFactory = getFactory;\n  lottie.version = '5.13.0';\n  function checkReady() {\n    if (document.readyState === 'complete') {\n      clearInterval(readyStateCheckInterval);\n      searchAnimations();\n    }\n  }\n  function getQueryVariable(variable) {\n    var vars = queryString.split('&');\n    for (var i = 0; i < vars.length; i += 1) {\n      var pair = vars[i].split('=');\n      if (decodeURIComponent(pair[0]) == variable) {\n        // eslint-disable-line eqeqeq\n        return decodeURIComponent(pair[1]);\n      }\n    }\n    return null;\n  }\n  var queryString = '';\n  if (standalone) {\n    var scripts = document.getElementsByTagName('script');\n    var index = scripts.length - 1;\n    var myScript = scripts[index] || {\n      src: ''\n    };\n    queryString = myScript.src ? myScript.src.replace(/^[^\\?]+\\??/, '') : ''; // eslint-disable-line no-useless-escape\n    renderer = getQueryVariable('renderer');\n  }\n  var readyStateCheckInterval = setInterval(checkReady, 100);\n\n  // this adds bodymovin to the window object for backwards compatibility\n  try {\n    if (!(( false ? 0 : _typeof$3(exports)) === 'object' && \"object\" !== 'undefined') && !( true && __webpack_require__.amdO) // eslint-disable-line no-undef\n    ) // removed by dead control flow\n{}\n  } catch (err) {\n    //\n  }\n\n  var ShapeModifiers = function () {\n    var ob = {};\n    var modifiers = {};\n    ob.registerModifier = registerModifier;\n    ob.getModifier = getModifier;\n    function registerModifier(nm, factory) {\n      if (!modifiers[nm]) {\n        modifiers[nm] = factory;\n      }\n    }\n    function getModifier(nm, elem, data) {\n      return new modifiers[nm](elem, data);\n    }\n    return ob;\n  }();\n  function ShapeModifier() {}\n  ShapeModifier.prototype.initModifierProperties = function () {};\n  ShapeModifier.prototype.addShapeToModifier = function () {};\n  ShapeModifier.prototype.addShape = function (data) {\n    if (!this.closed) {\n      // Adding shape to dynamic properties. It covers the case where a shape has no effects applied, to reset it's _mdf state on every tick.\n      data.sh.container.addDynamicProperty(data.sh);\n      var shapeData = {\n        shape: data.sh,\n        data: data,\n        localShapeCollection: shapeCollectionPool.newShapeCollection()\n      };\n      this.shapes.push(shapeData);\n      this.addShapeToModifier(shapeData);\n      if (this._isAnimated) {\n        data.setAsAnimated();\n      }\n    }\n  };\n  ShapeModifier.prototype.init = function (elem, data) {\n    this.shapes = [];\n    this.elem = elem;\n    this.initDynamicPropertyContainer(elem);\n    this.initModifierProperties(elem, data);\n    this.frameId = initialDefaultFrame;\n    this.closed = false;\n    this.k = false;\n    if (this.dynamicProperties.length) {\n      this.k = true;\n    } else {\n      this.getValue(true);\n    }\n  };\n  ShapeModifier.prototype.processKeys = function () {\n    if (this.elem.globalData.frameId === this.frameId) {\n      return;\n    }\n    this.frameId = this.elem.globalData.frameId;\n    this.iterateDynamicProperties();\n  };\n  extendPrototype([DynamicPropertyContainer], ShapeModifier);\n\n  function TrimModifier() {}\n  extendPrototype([ShapeModifier], TrimModifier);\n  TrimModifier.prototype.initModifierProperties = function (elem, data) {\n    this.s = PropertyFactory.getProp(elem, data.s, 0, 0.01, this);\n    this.e = PropertyFactory.getProp(elem, data.e, 0, 0.01, this);\n    this.o = PropertyFactory.getProp(elem, data.o, 0, 0, this);\n    this.sValue = 0;\n    this.eValue = 0;\n    this.getValue = this.processKeys;\n    this.m = data.m;\n    this._isAnimated = !!this.s.effectsSequence.length || !!this.e.effectsSequence.length || !!this.o.effectsSequence.length;\n  };\n  TrimModifier.prototype.addShapeToModifier = function (shapeData) {\n    shapeData.pathsData = [];\n  };\n  TrimModifier.prototype.calculateShapeEdges = function (s, e, shapeLength, addedLength, totalModifierLength) {\n    var segments = [];\n    if (e <= 1) {\n      segments.push({\n        s: s,\n        e: e\n      });\n    } else if (s >= 1) {\n      segments.push({\n        s: s - 1,\n        e: e - 1\n      });\n    } else {\n      segments.push({\n        s: s,\n        e: 1\n      });\n      segments.push({\n        s: 0,\n        e: e - 1\n      });\n    }\n    var shapeSegments = [];\n    var i;\n    var len = segments.length;\n    var segmentOb;\n    for (i = 0; i < len; i += 1) {\n      segmentOb = segments[i];\n      if (!(segmentOb.e * totalModifierLength < addedLength || segmentOb.s * totalModifierLength > addedLength + shapeLength)) {\n        var shapeS;\n        var shapeE;\n        if (segmentOb.s * totalModifierLength <= addedLength) {\n          shapeS = 0;\n        } else {\n          shapeS = (segmentOb.s * totalModifierLength - addedLength) / shapeLength;\n        }\n        if (segmentOb.e * totalModifierLength >= addedLength + shapeLength) {\n          shapeE = 1;\n        } else {\n          shapeE = (segmentOb.e * totalModifierLength - addedLength) / shapeLength;\n        }\n        shapeSegments.push([shapeS, shapeE]);\n      }\n    }\n    if (!shapeSegments.length) {\n      shapeSegments.push([0, 0]);\n    }\n    return shapeSegments;\n  };\n  TrimModifier.prototype.releasePathsData = function (pathsData) {\n    var i;\n    var len = pathsData.length;\n    for (i = 0; i < len; i += 1) {\n      segmentsLengthPool.release(pathsData[i]);\n    }\n    pathsData.length = 0;\n    return pathsData;\n  };\n  TrimModifier.prototype.processShapes = function (_isFirstFrame) {\n    var s;\n    var e;\n    if (this._mdf || _isFirstFrame) {\n      var o = this.o.v % 360 / 360;\n      if (o < 0) {\n        o += 1;\n      }\n      if (this.s.v > 1) {\n        s = 1 + o;\n      } else if (this.s.v < 0) {\n        s = 0 + o;\n      } else {\n        s = this.s.v + o;\n      }\n      if (this.e.v > 1) {\n        e = 1 + o;\n      } else if (this.e.v < 0) {\n        e = 0 + o;\n      } else {\n        e = this.e.v + o;\n      }\n      if (s > e) {\n        var _s = s;\n        s = e;\n        e = _s;\n      }\n      s = Math.round(s * 10000) * 0.0001;\n      e = Math.round(e * 10000) * 0.0001;\n      this.sValue = s;\n      this.eValue = e;\n    } else {\n      s = this.sValue;\n      e = this.eValue;\n    }\n    var shapePaths;\n    var i;\n    var len = this.shapes.length;\n    var j;\n    var jLen;\n    var pathsData;\n    var pathData;\n    var totalShapeLength;\n    var totalModifierLength = 0;\n    if (e === s) {\n      for (i = 0; i < len; i += 1) {\n        this.shapes[i].localShapeCollection.releaseShapes();\n        this.shapes[i].shape._mdf = true;\n        this.shapes[i].shape.paths = this.shapes[i].localShapeCollection;\n        if (this._mdf) {\n          this.shapes[i].pathsData.length = 0;\n        }\n      }\n    } else if (!(e === 1 && s === 0 || e === 0 && s === 1)) {\n      var segments = [];\n      var shapeData;\n      var localShapeCollection;\n      for (i = 0; i < len; i += 1) {\n        shapeData = this.shapes[i];\n        // if shape hasn't changed and trim properties haven't changed, cached previous path can be used\n        if (!shapeData.shape._mdf && !this._mdf && !_isFirstFrame && this.m !== 2) {\n          shapeData.shape.paths = shapeData.localShapeCollection;\n        } else {\n          shapePaths = shapeData.shape.paths;\n          jLen = shapePaths._length;\n          totalShapeLength = 0;\n          if (!shapeData.shape._mdf && shapeData.pathsData.length) {\n            totalShapeLength = shapeData.totalShapeLength;\n          } else {\n            pathsData = this.releasePathsData(shapeData.pathsData);\n            for (j = 0; j < jLen; j += 1) {\n              pathData = bez.getSegmentsLength(shapePaths.shapes[j]);\n              pathsData.push(pathData);\n              totalShapeLength += pathData.totalLength;\n            }\n            shapeData.totalShapeLength = totalShapeLength;\n            shapeData.pathsData = pathsData;\n          }\n          totalModifierLength += totalShapeLength;\n          shapeData.shape._mdf = true;\n        }\n      }\n      var shapeS = s;\n      var shapeE = e;\n      var addedLength = 0;\n      var edges;\n      for (i = len - 1; i >= 0; i -= 1) {\n        shapeData = this.shapes[i];\n        if (shapeData.shape._mdf) {\n          localShapeCollection = shapeData.localShapeCollection;\n          localShapeCollection.releaseShapes();\n          // if m === 2 means paths are trimmed individually so edges need to be found for this specific shape relative to whoel group\n          if (this.m === 2 && len > 1) {\n            edges = this.calculateShapeEdges(s, e, shapeData.totalShapeLength, addedLength, totalModifierLength);\n            addedLength += shapeData.totalShapeLength;\n          } else {\n            edges = [[shapeS, shapeE]];\n          }\n          jLen = edges.length;\n          for (j = 0; j < jLen; j += 1) {\n            shapeS = edges[j][0];\n            shapeE = edges[j][1];\n            segments.length = 0;\n            if (shapeE <= 1) {\n              segments.push({\n                s: shapeData.totalShapeLength * shapeS,\n                e: shapeData.totalShapeLength * shapeE\n              });\n            } else if (shapeS >= 1) {\n              segments.push({\n                s: shapeData.totalShapeLength * (shapeS - 1),\n                e: shapeData.totalShapeLength * (shapeE - 1)\n              });\n            } else {\n              segments.push({\n                s: shapeData.totalShapeLength * shapeS,\n                e: shapeData.totalShapeLength\n              });\n              segments.push({\n                s: 0,\n                e: shapeData.totalShapeLength * (shapeE - 1)\n              });\n            }\n            var newShapesData = this.addShapes(shapeData, segments[0]);\n            if (segments[0].s !== segments[0].e) {\n              if (segments.length > 1) {\n                var lastShapeInCollection = shapeData.shape.paths.shapes[shapeData.shape.paths._length - 1];\n                if (lastShapeInCollection.c) {\n                  var lastShape = newShapesData.pop();\n                  this.addPaths(newShapesData, localShapeCollection);\n                  newShapesData = this.addShapes(shapeData, segments[1], lastShape);\n                } else {\n                  this.addPaths(newShapesData, localShapeCollection);\n                  newShapesData = this.addShapes(shapeData, segments[1]);\n                }\n              }\n              this.addPaths(newShapesData, localShapeCollection);\n            }\n          }\n          shapeData.shape.paths = localShapeCollection;\n        }\n      }\n    } else if (this._mdf) {\n      for (i = 0; i < len; i += 1) {\n        // Releasign Trim Cached paths data when no trim applied in case shapes are modified inbetween.\n        // Don't remove this even if it's losing cached info.\n        this.shapes[i].pathsData.length = 0;\n        this.shapes[i].shape._mdf = true;\n      }\n    }\n  };\n  TrimModifier.prototype.addPaths = function (newPaths, localShapeCollection) {\n    var i;\n    var len = newPaths.length;\n    for (i = 0; i < len; i += 1) {\n      localShapeCollection.addShape(newPaths[i]);\n    }\n  };\n  TrimModifier.prototype.addSegment = function (pt1, pt2, pt3, pt4, shapePath, pos, newShape) {\n    shapePath.setXYAt(pt2[0], pt2[1], 'o', pos);\n    shapePath.setXYAt(pt3[0], pt3[1], 'i', pos + 1);\n    if (newShape) {\n      shapePath.setXYAt(pt1[0], pt1[1], 'v', pos);\n    }\n    shapePath.setXYAt(pt4[0], pt4[1], 'v', pos + 1);\n  };\n  TrimModifier.prototype.addSegmentFromArray = function (points, shapePath, pos, newShape) {\n    shapePath.setXYAt(points[1], points[5], 'o', pos);\n    shapePath.setXYAt(points[2], points[6], 'i', pos + 1);\n    if (newShape) {\n      shapePath.setXYAt(points[0], points[4], 'v', pos);\n    }\n    shapePath.setXYAt(points[3], points[7], 'v', pos + 1);\n  };\n  TrimModifier.prototype.addShapes = function (shapeData, shapeSegment, shapePath) {\n    var pathsData = shapeData.pathsData;\n    var shapePaths = shapeData.shape.paths.shapes;\n    var i;\n    var len = shapeData.shape.paths._length;\n    var j;\n    var jLen;\n    var addedLength = 0;\n    var currentLengthData;\n    var segmentCount;\n    var lengths;\n    var segment;\n    var shapes = [];\n    var initPos;\n    var newShape = true;\n    if (!shapePath) {\n      shapePath = shapePool.newElement();\n      segmentCount = 0;\n      initPos = 0;\n    } else {\n      segmentCount = shapePath._length;\n      initPos = shapePath._length;\n    }\n    shapes.push(shapePath);\n    for (i = 0; i < len; i += 1) {\n      lengths = pathsData[i].lengths;\n      shapePath.c = shapePaths[i].c;\n      jLen = shapePaths[i].c ? lengths.length : lengths.length + 1;\n      for (j = 1; j < jLen; j += 1) {\n        currentLengthData = lengths[j - 1];\n        if (addedLength + currentLengthData.addedLength < shapeSegment.s) {\n          addedLength += currentLengthData.addedLength;\n          shapePath.c = false;\n        } else if (addedLength > shapeSegment.e) {\n          shapePath.c = false;\n          break;\n        } else {\n          if (shapeSegment.s <= addedLength && shapeSegment.e >= addedLength + currentLengthData.addedLength) {\n            this.addSegment(shapePaths[i].v[j - 1], shapePaths[i].o[j - 1], shapePaths[i].i[j], shapePaths[i].v[j], shapePath, segmentCount, newShape);\n            newShape = false;\n          } else {\n            segment = bez.getNewSegment(shapePaths[i].v[j - 1], shapePaths[i].v[j], shapePaths[i].o[j - 1], shapePaths[i].i[j], (shapeSegment.s - addedLength) / currentLengthData.addedLength, (shapeSegment.e - addedLength) / currentLengthData.addedLength, lengths[j - 1]);\n            this.addSegmentFromArray(segment, shapePath, segmentCount, newShape);\n            // this.addSegment(segment.pt1, segment.pt3, segment.pt4, segment.pt2, shapePath, segmentCount, newShape);\n            newShape = false;\n            shapePath.c = false;\n          }\n          addedLength += currentLengthData.addedLength;\n          segmentCount += 1;\n        }\n      }\n      if (shapePaths[i].c && lengths.length) {\n        currentLengthData = lengths[j - 1];\n        if (addedLength <= shapeSegment.e) {\n          var segmentLength = lengths[j - 1].addedLength;\n          if (shapeSegment.s <= addedLength && shapeSegment.e >= addedLength + segmentLength) {\n            this.addSegment(shapePaths[i].v[j - 1], shapePaths[i].o[j - 1], shapePaths[i].i[0], shapePaths[i].v[0], shapePath, segmentCount, newShape);\n            newShape = false;\n          } else {\n            segment = bez.getNewSegment(shapePaths[i].v[j - 1], shapePaths[i].v[0], shapePaths[i].o[j - 1], shapePaths[i].i[0], (shapeSegment.s - addedLength) / segmentLength, (shapeSegment.e - addedLength) / segmentLength, lengths[j - 1]);\n            this.addSegmentFromArray(segment, shapePath, segmentCount, newShape);\n            // this.addSegment(segment.pt1, segment.pt3, segment.pt4, segment.pt2, shapePath, segmentCount, newShape);\n            newShape = false;\n            shapePath.c = false;\n          }\n        } else {\n          shapePath.c = false;\n        }\n        addedLength += currentLengthData.addedLength;\n        segmentCount += 1;\n      }\n      if (shapePath._length) {\n        shapePath.setXYAt(shapePath.v[initPos][0], shapePath.v[initPos][1], 'i', initPos);\n        shapePath.setXYAt(shapePath.v[shapePath._length - 1][0], shapePath.v[shapePath._length - 1][1], 'o', shapePath._length - 1);\n      }\n      if (addedLength > shapeSegment.e) {\n        break;\n      }\n      if (i < len - 1) {\n        shapePath = shapePool.newElement();\n        newShape = true;\n        shapes.push(shapePath);\n        segmentCount = 0;\n      }\n    }\n    return shapes;\n  };\n\n  function PuckerAndBloatModifier() {}\n  extendPrototype([ShapeModifier], PuckerAndBloatModifier);\n  PuckerAndBloatModifier.prototype.initModifierProperties = function (elem, data) {\n    this.getValue = this.processKeys;\n    this.amount = PropertyFactory.getProp(elem, data.a, 0, null, this);\n    this._isAnimated = !!this.amount.effectsSequence.length;\n  };\n  PuckerAndBloatModifier.prototype.processPath = function (path, amount) {\n    var percent = amount / 100;\n    var centerPoint = [0, 0];\n    var pathLength = path._length;\n    var i = 0;\n    for (i = 0; i < pathLength; i += 1) {\n      centerPoint[0] += path.v[i][0];\n      centerPoint[1] += path.v[i][1];\n    }\n    centerPoint[0] /= pathLength;\n    centerPoint[1] /= pathLength;\n    var clonedPath = shapePool.newElement();\n    clonedPath.c = path.c;\n    var vX;\n    var vY;\n    var oX;\n    var oY;\n    var iX;\n    var iY;\n    for (i = 0; i < pathLength; i += 1) {\n      vX = path.v[i][0] + (centerPoint[0] - path.v[i][0]) * percent;\n      vY = path.v[i][1] + (centerPoint[1] - path.v[i][1]) * percent;\n      oX = path.o[i][0] + (centerPoint[0] - path.o[i][0]) * -percent;\n      oY = path.o[i][1] + (centerPoint[1] - path.o[i][1]) * -percent;\n      iX = path.i[i][0] + (centerPoint[0] - path.i[i][0]) * -percent;\n      iY = path.i[i][1] + (centerPoint[1] - path.i[i][1]) * -percent;\n      clonedPath.setTripleAt(vX, vY, oX, oY, iX, iY, i);\n    }\n    return clonedPath;\n  };\n  PuckerAndBloatModifier.prototype.processShapes = function (_isFirstFrame) {\n    var shapePaths;\n    var i;\n    var len = this.shapes.length;\n    var j;\n    var jLen;\n    var amount = this.amount.v;\n    if (amount !== 0) {\n      var shapeData;\n      var localShapeCollection;\n      for (i = 0; i < len; i += 1) {\n        shapeData = this.shapes[i];\n        localShapeCollection = shapeData.localShapeCollection;\n        if (!(!shapeData.shape._mdf && !this._mdf && !_isFirstFrame)) {\n          localShapeCollection.releaseShapes();\n          shapeData.shape._mdf = true;\n          shapePaths = shapeData.shape.paths.shapes;\n          jLen = shapeData.shape.paths._length;\n          for (j = 0; j < jLen; j += 1) {\n            localShapeCollection.addShape(this.processPath(shapePaths[j], amount));\n          }\n        }\n        shapeData.shape.paths = shapeData.localShapeCollection;\n      }\n    }\n    if (!this.dynamicProperties.length) {\n      this._mdf = false;\n    }\n  };\n\n  var TransformPropertyFactory = function () {\n    var defaultVector = [0, 0];\n    function applyToMatrix(mat) {\n      var _mdf = this._mdf;\n      this.iterateDynamicProperties();\n      this._mdf = this._mdf || _mdf;\n      if (this.a) {\n        mat.translate(-this.a.v[0], -this.a.v[1], this.a.v[2]);\n      }\n      if (this.s) {\n        mat.scale(this.s.v[0], this.s.v[1], this.s.v[2]);\n      }\n      if (this.sk) {\n        mat.skewFromAxis(-this.sk.v, this.sa.v);\n      }\n      if (this.r) {\n        mat.rotate(-this.r.v);\n      } else {\n        mat.rotateZ(-this.rz.v).rotateY(this.ry.v).rotateX(this.rx.v).rotateZ(-this.or.v[2]).rotateY(this.or.v[1]).rotateX(this.or.v[0]);\n      }\n      if (this.data.p.s) {\n        if (this.data.p.z) {\n          mat.translate(this.px.v, this.py.v, -this.pz.v);\n        } else {\n          mat.translate(this.px.v, this.py.v, 0);\n        }\n      } else {\n        mat.translate(this.p.v[0], this.p.v[1], -this.p.v[2]);\n      }\n    }\n    function processKeys(forceRender) {\n      if (this.elem.globalData.frameId === this.frameId) {\n        return;\n      }\n      if (this._isDirty) {\n        this.precalculateMatrix();\n        this._isDirty = false;\n      }\n      this.iterateDynamicProperties();\n      if (this._mdf || forceRender) {\n        var frameRate;\n        this.v.cloneFromProps(this.pre.props);\n        if (this.appliedTransformations < 1) {\n          this.v.translate(-this.a.v[0], -this.a.v[1], this.a.v[2]);\n        }\n        if (this.appliedTransformations < 2) {\n          this.v.scale(this.s.v[0], this.s.v[1], this.s.v[2]);\n        }\n        if (this.sk && this.appliedTransformations < 3) {\n          this.v.skewFromAxis(-this.sk.v, this.sa.v);\n        }\n        if (this.r && this.appliedTransformations < 4) {\n          this.v.rotate(-this.r.v);\n        } else if (!this.r && this.appliedTransformations < 4) {\n          this.v.rotateZ(-this.rz.v).rotateY(this.ry.v).rotateX(this.rx.v).rotateZ(-this.or.v[2]).rotateY(this.or.v[1]).rotateX(this.or.v[0]);\n        }\n        if (this.autoOriented) {\n          var v1;\n          var v2;\n          frameRate = this.elem.globalData.frameRate;\n          if (this.p && this.p.keyframes && this.p.getValueAtTime) {\n            if (this.p._caching.lastFrame + this.p.offsetTime <= this.p.keyframes[0].t) {\n              v1 = this.p.getValueAtTime((this.p.keyframes[0].t + 0.01) / frameRate, 0);\n              v2 = this.p.getValueAtTime(this.p.keyframes[0].t / frameRate, 0);\n            } else if (this.p._caching.lastFrame + this.p.offsetTime >= this.p.keyframes[this.p.keyframes.length - 1].t) {\n              v1 = this.p.getValueAtTime(this.p.keyframes[this.p.keyframes.length - 1].t / frameRate, 0);\n              v2 = this.p.getValueAtTime((this.p.keyframes[this.p.keyframes.length - 1].t - 0.05) / frameRate, 0);\n            } else {\n              v1 = this.p.pv;\n              v2 = this.p.getValueAtTime((this.p._caching.lastFrame + this.p.offsetTime - 0.01) / frameRate, this.p.offsetTime);\n            }\n          } else if (this.px && this.px.keyframes && this.py.keyframes && this.px.getValueAtTime && this.py.getValueAtTime) {\n            v1 = [];\n            v2 = [];\n            var px = this.px;\n            var py = this.py;\n            if (px._caching.lastFrame + px.offsetTime <= px.keyframes[0].t) {\n              v1[0] = px.getValueAtTime((px.keyframes[0].t + 0.01) / frameRate, 0);\n              v1[1] = py.getValueAtTime((py.keyframes[0].t + 0.01) / frameRate, 0);\n              v2[0] = px.getValueAtTime(px.keyframes[0].t / frameRate, 0);\n              v2[1] = py.getValueAtTime(py.keyframes[0].t / frameRate, 0);\n            } else if (px._caching.lastFrame + px.offsetTime >= px.keyframes[px.keyframes.length - 1].t) {\n              v1[0] = px.getValueAtTime(px.keyframes[px.keyframes.length - 1].t / frameRate, 0);\n              v1[1] = py.getValueAtTime(py.keyframes[py.keyframes.length - 1].t / frameRate, 0);\n              v2[0] = px.getValueAtTime((px.keyframes[px.keyframes.length - 1].t - 0.01) / frameRate, 0);\n              v2[1] = py.getValueAtTime((py.keyframes[py.keyframes.length - 1].t - 0.01) / frameRate, 0);\n            } else {\n              v1 = [px.pv, py.pv];\n              v2[0] = px.getValueAtTime((px._caching.lastFrame + px.offsetTime - 0.01) / frameRate, px.offsetTime);\n              v2[1] = py.getValueAtTime((py._caching.lastFrame + py.offsetTime - 0.01) / frameRate, py.offsetTime);\n            }\n          } else {\n            v2 = defaultVector;\n            v1 = v2;\n          }\n          this.v.rotate(-Math.atan2(v1[1] - v2[1], v1[0] - v2[0]));\n        }\n        if (this.data.p && this.data.p.s) {\n          if (this.data.p.z) {\n            this.v.translate(this.px.v, this.py.v, -this.pz.v);\n          } else {\n            this.v.translate(this.px.v, this.py.v, 0);\n          }\n        } else {\n          this.v.translate(this.p.v[0], this.p.v[1], -this.p.v[2]);\n        }\n      }\n      this.frameId = this.elem.globalData.frameId;\n    }\n    function precalculateMatrix() {\n      this.appliedTransformations = 0;\n      this.pre.reset();\n      if (!this.a.effectsSequence.length) {\n        this.pre.translate(-this.a.v[0], -this.a.v[1], this.a.v[2]);\n        this.appliedTransformations = 1;\n      } else {\n        return;\n      }\n      if (!this.s.effectsSequence.length) {\n        this.pre.scale(this.s.v[0], this.s.v[1], this.s.v[2]);\n        this.appliedTransformations = 2;\n      } else {\n        return;\n      }\n      if (this.sk) {\n        if (!this.sk.effectsSequence.length && !this.sa.effectsSequence.length) {\n          this.pre.skewFromAxis(-this.sk.v, this.sa.v);\n          this.appliedTransformations = 3;\n        } else {\n          return;\n        }\n      }\n      if (this.r) {\n        if (!this.r.effectsSequence.length) {\n          this.pre.rotate(-this.r.v);\n          this.appliedTransformations = 4;\n        }\n      } else if (!this.rz.effectsSequence.length && !this.ry.effectsSequence.length && !this.rx.effectsSequence.length && !this.or.effectsSequence.length) {\n        this.pre.rotateZ(-this.rz.v).rotateY(this.ry.v).rotateX(this.rx.v).rotateZ(-this.or.v[2]).rotateY(this.or.v[1]).rotateX(this.or.v[0]);\n        this.appliedTransformations = 4;\n      }\n    }\n    function autoOrient() {\n      //\n      // var prevP = this.getValueAtTime();\n    }\n    function addDynamicProperty(prop) {\n      this._addDynamicProperty(prop);\n      this.elem.addDynamicProperty(prop);\n      this._isDirty = true;\n    }\n    function TransformProperty(elem, data, container) {\n      this.elem = elem;\n      this.frameId = -1;\n      this.propType = 'transform';\n      this.data = data;\n      this.v = new Matrix();\n      // Precalculated matrix with non animated properties\n      this.pre = new Matrix();\n      this.appliedTransformations = 0;\n      this.initDynamicPropertyContainer(container || elem);\n      if (data.p && data.p.s) {\n        this.px = PropertyFactory.getProp(elem, data.p.x, 0, 0, this);\n        this.py = PropertyFactory.getProp(elem, data.p.y, 0, 0, this);\n        if (data.p.z) {\n          this.pz = PropertyFactory.getProp(elem, data.p.z, 0, 0, this);\n        }\n      } else {\n        this.p = PropertyFactory.getProp(elem, data.p || {\n          k: [0, 0, 0]\n        }, 1, 0, this);\n      }\n      if (data.rx) {\n        this.rx = PropertyFactory.getProp(elem, data.rx, 0, degToRads, this);\n        this.ry = PropertyFactory.getProp(elem, data.ry, 0, degToRads, this);\n        this.rz = PropertyFactory.getProp(elem, data.rz, 0, degToRads, this);\n        if (data.or.k[0].ti) {\n          var i;\n          var len = data.or.k.length;\n          for (i = 0; i < len; i += 1) {\n            data.or.k[i].to = null;\n            data.or.k[i].ti = null;\n          }\n        }\n        this.or = PropertyFactory.getProp(elem, data.or, 1, degToRads, this);\n        // sh Indicates it needs to be capped between -180 and 180\n        this.or.sh = true;\n      } else {\n        this.r = PropertyFactory.getProp(elem, data.r || {\n          k: 0\n        }, 0, degToRads, this);\n      }\n      if (data.sk) {\n        this.sk = PropertyFactory.getProp(elem, data.sk, 0, degToRads, this);\n        this.sa = PropertyFactory.getProp(elem, data.sa, 0, degToRads, this);\n      }\n      this.a = PropertyFactory.getProp(elem, data.a || {\n        k: [0, 0, 0]\n      }, 1, 0, this);\n      this.s = PropertyFactory.getProp(elem, data.s || {\n        k: [100, 100, 100]\n      }, 1, 0.01, this);\n      // Opacity is not part of the transform properties, that's why it won't use this.dynamicProperties. That way transforms won't get updated if opacity changes.\n      if (data.o) {\n        this.o = PropertyFactory.getProp(elem, data.o, 0, 0.01, elem);\n      } else {\n        this.o = {\n          _mdf: false,\n          v: 1\n        };\n      }\n      this._isDirty = true;\n      if (!this.dynamicProperties.length) {\n        this.getValue(true);\n      }\n    }\n    TransformProperty.prototype = {\n      applyToMatrix: applyToMatrix,\n      getValue: processKeys,\n      precalculateMatrix: precalculateMatrix,\n      autoOrient: autoOrient\n    };\n    extendPrototype([DynamicPropertyContainer], TransformProperty);\n    TransformProperty.prototype.addDynamicProperty = addDynamicProperty;\n    TransformProperty.prototype._addDynamicProperty = DynamicPropertyContainer.prototype.addDynamicProperty;\n    function getTransformProperty(elem, data, container) {\n      return new TransformProperty(elem, data, container);\n    }\n    return {\n      getTransformProperty: getTransformProperty\n    };\n  }();\n\n  function RepeaterModifier() {}\n  extendPrototype([ShapeModifier], RepeaterModifier);\n  RepeaterModifier.prototype.initModifierProperties = function (elem, data) {\n    this.getValue = this.processKeys;\n    this.c = PropertyFactory.getProp(elem, data.c, 0, null, this);\n    this.o = PropertyFactory.getProp(elem, data.o, 0, null, this);\n    this.tr = TransformPropertyFactory.getTransformProperty(elem, data.tr, this);\n    this.so = PropertyFactory.getProp(elem, data.tr.so, 0, 0.01, this);\n    this.eo = PropertyFactory.getProp(elem, data.tr.eo, 0, 0.01, this);\n    this.data = data;\n    if (!this.dynamicProperties.length) {\n      this.getValue(true);\n    }\n    this._isAnimated = !!this.dynamicProperties.length;\n    this.pMatrix = new Matrix();\n    this.rMatrix = new Matrix();\n    this.sMatrix = new Matrix();\n    this.tMatrix = new Matrix();\n    this.matrix = new Matrix();\n  };\n  RepeaterModifier.prototype.applyTransforms = function (pMatrix, rMatrix, sMatrix, transform, perc, inv) {\n    var dir = inv ? -1 : 1;\n    var scaleX = transform.s.v[0] + (1 - transform.s.v[0]) * (1 - perc);\n    var scaleY = transform.s.v[1] + (1 - transform.s.v[1]) * (1 - perc);\n    pMatrix.translate(transform.p.v[0] * dir * perc, transform.p.v[1] * dir * perc, transform.p.v[2]);\n    rMatrix.translate(-transform.a.v[0], -transform.a.v[1], transform.a.v[2]);\n    rMatrix.rotate(-transform.r.v * dir * perc);\n    rMatrix.translate(transform.a.v[0], transform.a.v[1], transform.a.v[2]);\n    sMatrix.translate(-transform.a.v[0], -transform.a.v[1], transform.a.v[2]);\n    sMatrix.scale(inv ? 1 / scaleX : scaleX, inv ? 1 / scaleY : scaleY);\n    sMatrix.translate(transform.a.v[0], transform.a.v[1], transform.a.v[2]);\n  };\n  RepeaterModifier.prototype.init = function (elem, arr, pos, elemsData) {\n    this.elem = elem;\n    this.arr = arr;\n    this.pos = pos;\n    this.elemsData = elemsData;\n    this._currentCopies = 0;\n    this._elements = [];\n    this._groups = [];\n    this.frameId = -1;\n    this.initDynamicPropertyContainer(elem);\n    this.initModifierProperties(elem, arr[pos]);\n    while (pos > 0) {\n      pos -= 1;\n      // this._elements.unshift(arr.splice(pos,1)[0]);\n      this._elements.unshift(arr[pos]);\n    }\n    if (this.dynamicProperties.length) {\n      this.k = true;\n    } else {\n      this.getValue(true);\n    }\n  };\n  RepeaterModifier.prototype.resetElements = function (elements) {\n    var i;\n    var len = elements.length;\n    for (i = 0; i < len; i += 1) {\n      elements[i]._processed = false;\n      if (elements[i].ty === 'gr') {\n        this.resetElements(elements[i].it);\n      }\n    }\n  };\n  RepeaterModifier.prototype.cloneElements = function (elements) {\n    var newElements = JSON.parse(JSON.stringify(elements));\n    this.resetElements(newElements);\n    return newElements;\n  };\n  RepeaterModifier.prototype.changeGroupRender = function (elements, renderFlag) {\n    var i;\n    var len = elements.length;\n    for (i = 0; i < len; i += 1) {\n      elements[i]._render = renderFlag;\n      if (elements[i].ty === 'gr') {\n        this.changeGroupRender(elements[i].it, renderFlag);\n      }\n    }\n  };\n  RepeaterModifier.prototype.processShapes = function (_isFirstFrame) {\n    var items;\n    var itemsTransform;\n    var i;\n    var dir;\n    var cont;\n    var hasReloaded = false;\n    if (this._mdf || _isFirstFrame) {\n      var copies = Math.ceil(this.c.v);\n      if (this._groups.length < copies) {\n        while (this._groups.length < copies) {\n          var group = {\n            it: this.cloneElements(this._elements),\n            ty: 'gr'\n          };\n          group.it.push({\n            a: {\n              a: 0,\n              ix: 1,\n              k: [0, 0]\n            },\n            nm: 'Transform',\n            o: {\n              a: 0,\n              ix: 7,\n              k: 100\n            },\n            p: {\n              a: 0,\n              ix: 2,\n              k: [0, 0]\n            },\n            r: {\n              a: 1,\n              ix: 6,\n              k: [{\n                s: 0,\n                e: 0,\n                t: 0\n              }, {\n                s: 0,\n                e: 0,\n                t: 1\n              }]\n            },\n            s: {\n              a: 0,\n              ix: 3,\n              k: [100, 100]\n            },\n            sa: {\n              a: 0,\n              ix: 5,\n              k: 0\n            },\n            sk: {\n              a: 0,\n              ix: 4,\n              k: 0\n            },\n            ty: 'tr'\n          });\n          this.arr.splice(0, 0, group);\n          this._groups.splice(0, 0, group);\n          this._currentCopies += 1;\n        }\n        this.elem.reloadShapes();\n        hasReloaded = true;\n      }\n      cont = 0;\n      var renderFlag;\n      for (i = 0; i <= this._groups.length - 1; i += 1) {\n        renderFlag = cont < copies;\n        this._groups[i]._render = renderFlag;\n        this.changeGroupRender(this._groups[i].it, renderFlag);\n        if (!renderFlag) {\n          var elems = this.elemsData[i].it;\n          var transformData = elems[elems.length - 1];\n          if (transformData.transform.op.v !== 0) {\n            transformData.transform.op._mdf = true;\n            transformData.transform.op.v = 0;\n          } else {\n            transformData.transform.op._mdf = false;\n          }\n        }\n        cont += 1;\n      }\n      this._currentCopies = copies;\n      /// /\n\n      var offset = this.o.v;\n      var offsetModulo = offset % 1;\n      var roundOffset = offset > 0 ? Math.floor(offset) : Math.ceil(offset);\n      var pProps = this.pMatrix.props;\n      var rProps = this.rMatrix.props;\n      var sProps = this.sMatrix.props;\n      this.pMatrix.reset();\n      this.rMatrix.reset();\n      this.sMatrix.reset();\n      this.tMatrix.reset();\n      this.matrix.reset();\n      var iteration = 0;\n      if (offset > 0) {\n        while (iteration < roundOffset) {\n          this.applyTransforms(this.pMatrix, this.rMatrix, this.sMatrix, this.tr, 1, false);\n          iteration += 1;\n        }\n        if (offsetModulo) {\n          this.applyTransforms(this.pMatrix, this.rMatrix, this.sMatrix, this.tr, offsetModulo, false);\n          iteration += offsetModulo;\n        }\n      } else if (offset < 0) {\n        while (iteration > roundOffset) {\n          this.applyTransforms(this.pMatrix, this.rMatrix, this.sMatrix, this.tr, 1, true);\n          iteration -= 1;\n        }\n        if (offsetModulo) {\n          this.applyTransforms(this.pMatrix, this.rMatrix, this.sMatrix, this.tr, -offsetModulo, true);\n          iteration -= offsetModulo;\n        }\n      }\n      i = this.data.m === 1 ? 0 : this._currentCopies - 1;\n      dir = this.data.m === 1 ? 1 : -1;\n      cont = this._currentCopies;\n      var j;\n      var jLen;\n      while (cont) {\n        items = this.elemsData[i].it;\n        itemsTransform = items[items.length - 1].transform.mProps.v.props;\n        jLen = itemsTransform.length;\n        items[items.length - 1].transform.mProps._mdf = true;\n        items[items.length - 1].transform.op._mdf = true;\n        items[items.length - 1].transform.op.v = this._currentCopies === 1 ? this.so.v : this.so.v + (this.eo.v - this.so.v) * (i / (this._currentCopies - 1));\n        if (iteration !== 0) {\n          if (i !== 0 && dir === 1 || i !== this._currentCopies - 1 && dir === -1) {\n            this.applyTransforms(this.pMatrix, this.rMatrix, this.sMatrix, this.tr, 1, false);\n          }\n          this.matrix.transform(rProps[0], rProps[1], rProps[2], rProps[3], rProps[4], rProps[5], rProps[6], rProps[7], rProps[8], rProps[9], rProps[10], rProps[11], rProps[12], rProps[13], rProps[14], rProps[15]);\n          this.matrix.transform(sProps[0], sProps[1], sProps[2], sProps[3], sProps[4], sProps[5], sProps[6], sProps[7], sProps[8], sProps[9], sProps[10], sProps[11], sProps[12], sProps[13], sProps[14], sProps[15]);\n          this.matrix.transform(pProps[0], pProps[1], pProps[2], pProps[3], pProps[4], pProps[5], pProps[6], pProps[7], pProps[8], pProps[9], pProps[10], pProps[11], pProps[12], pProps[13], pProps[14], pProps[15]);\n          for (j = 0; j < jLen; j += 1) {\n            itemsTransform[j] = this.matrix.props[j];\n          }\n          this.matrix.reset();\n        } else {\n          this.matrix.reset();\n          for (j = 0; j < jLen; j += 1) {\n            itemsTransform[j] = this.matrix.props[j];\n          }\n        }\n        iteration += 1;\n        cont -= 1;\n        i += dir;\n      }\n    } else {\n      cont = this._currentCopies;\n      i = 0;\n      dir = 1;\n      while (cont) {\n        items = this.elemsData[i].it;\n        itemsTransform = items[items.length - 1].transform.mProps.v.props;\n        items[items.length - 1].transform.mProps._mdf = false;\n        items[items.length - 1].transform.op._mdf = false;\n        cont -= 1;\n        i += dir;\n      }\n    }\n    return hasReloaded;\n  };\n  RepeaterModifier.prototype.addShape = function () {};\n\n  function RoundCornersModifier() {}\n  extendPrototype([ShapeModifier], RoundCornersModifier);\n  RoundCornersModifier.prototype.initModifierProperties = function (elem, data) {\n    this.getValue = this.processKeys;\n    this.rd = PropertyFactory.getProp(elem, data.r, 0, null, this);\n    this._isAnimated = !!this.rd.effectsSequence.length;\n  };\n  RoundCornersModifier.prototype.processPath = function (path, round) {\n    var clonedPath = shapePool.newElement();\n    clonedPath.c = path.c;\n    var i;\n    var len = path._length;\n    var currentV;\n    var currentI;\n    var currentO;\n    var closerV;\n    var distance;\n    var newPosPerc;\n    var index = 0;\n    var vX;\n    var vY;\n    var oX;\n    var oY;\n    var iX;\n    var iY;\n    for (i = 0; i < len; i += 1) {\n      currentV = path.v[i];\n      currentO = path.o[i];\n      currentI = path.i[i];\n      if (currentV[0] === currentO[0] && currentV[1] === currentO[1] && currentV[0] === currentI[0] && currentV[1] === currentI[1]) {\n        if ((i === 0 || i === len - 1) && !path.c) {\n          clonedPath.setTripleAt(currentV[0], currentV[1], currentO[0], currentO[1], currentI[0], currentI[1], index);\n          /* clonedPath.v[index] = currentV;\n                  clonedPath.o[index] = currentO;\n                  clonedPath.i[index] = currentI; */\n          index += 1;\n        } else {\n          if (i === 0) {\n            closerV = path.v[len - 1];\n          } else {\n            closerV = path.v[i - 1];\n          }\n          distance = Math.sqrt(Math.pow(currentV[0] - closerV[0], 2) + Math.pow(currentV[1] - closerV[1], 2));\n          newPosPerc = distance ? Math.min(distance / 2, round) / distance : 0;\n          iX = currentV[0] + (closerV[0] - currentV[0]) * newPosPerc;\n          vX = iX;\n          iY = currentV[1] - (currentV[1] - closerV[1]) * newPosPerc;\n          vY = iY;\n          oX = vX - (vX - currentV[0]) * roundCorner;\n          oY = vY - (vY - currentV[1]) * roundCorner;\n          clonedPath.setTripleAt(vX, vY, oX, oY, iX, iY, index);\n          index += 1;\n          if (i === len - 1) {\n            closerV = path.v[0];\n          } else {\n            closerV = path.v[i + 1];\n          }\n          distance = Math.sqrt(Math.pow(currentV[0] - closerV[0], 2) + Math.pow(currentV[1] - closerV[1], 2));\n          newPosPerc = distance ? Math.min(distance / 2, round) / distance : 0;\n          oX = currentV[0] + (closerV[0] - currentV[0]) * newPosPerc;\n          vX = oX;\n          oY = currentV[1] + (closerV[1] - currentV[1]) * newPosPerc;\n          vY = oY;\n          iX = vX - (vX - currentV[0]) * roundCorner;\n          iY = vY - (vY - currentV[1]) * roundCorner;\n          clonedPath.setTripleAt(vX, vY, oX, oY, iX, iY, index);\n          index += 1;\n        }\n      } else {\n        clonedPath.setTripleAt(path.v[i][0], path.v[i][1], path.o[i][0], path.o[i][1], path.i[i][0], path.i[i][1], index);\n        index += 1;\n      }\n    }\n    return clonedPath;\n  };\n  RoundCornersModifier.prototype.processShapes = function (_isFirstFrame) {\n    var shapePaths;\n    var i;\n    var len = this.shapes.length;\n    var j;\n    var jLen;\n    var rd = this.rd.v;\n    if (rd !== 0) {\n      var shapeData;\n      var localShapeCollection;\n      for (i = 0; i < len; i += 1) {\n        shapeData = this.shapes[i];\n        localShapeCollection = shapeData.localShapeCollection;\n        if (!(!shapeData.shape._mdf && !this._mdf && !_isFirstFrame)) {\n          localShapeCollection.releaseShapes();\n          shapeData.shape._mdf = true;\n          shapePaths = shapeData.shape.paths.shapes;\n          jLen = shapeData.shape.paths._length;\n          for (j = 0; j < jLen; j += 1) {\n            localShapeCollection.addShape(this.processPath(shapePaths[j], rd));\n          }\n        }\n        shapeData.shape.paths = shapeData.localShapeCollection;\n      }\n    }\n    if (!this.dynamicProperties.length) {\n      this._mdf = false;\n    }\n  };\n\n  function floatEqual(a, b) {\n    return Math.abs(a - b) * 100000 <= Math.min(Math.abs(a), Math.abs(b));\n  }\n  function floatZero(f) {\n    return Math.abs(f) <= 0.00001;\n  }\n  function lerp(p0, p1, amount) {\n    return p0 * (1 - amount) + p1 * amount;\n  }\n  function lerpPoint(p0, p1, amount) {\n    return [lerp(p0[0], p1[0], amount), lerp(p0[1], p1[1], amount)];\n  }\n  function quadRoots(a, b, c) {\n    // no root\n    if (a === 0) return [];\n    var s = b * b - 4 * a * c;\n    // Complex roots\n    if (s < 0) return [];\n    var singleRoot = -b / (2 * a);\n    // 1 root\n    if (s === 0) return [singleRoot];\n    var delta = Math.sqrt(s) / (2 * a);\n    // 2 roots\n    return [singleRoot - delta, singleRoot + delta];\n  }\n  function polynomialCoefficients(p0, p1, p2, p3) {\n    return [-p0 + 3 * p1 - 3 * p2 + p3, 3 * p0 - 6 * p1 + 3 * p2, -3 * p0 + 3 * p1, p0];\n  }\n  function singlePoint(p) {\n    return new PolynomialBezier(p, p, p, p, false);\n  }\n  function PolynomialBezier(p0, p1, p2, p3, linearize) {\n    if (linearize && pointEqual(p0, p1)) {\n      p1 = lerpPoint(p0, p3, 1 / 3);\n    }\n    if (linearize && pointEqual(p2, p3)) {\n      p2 = lerpPoint(p0, p3, 2 / 3);\n    }\n    var coeffx = polynomialCoefficients(p0[0], p1[0], p2[0], p3[0]);\n    var coeffy = polynomialCoefficients(p0[1], p1[1], p2[1], p3[1]);\n    this.a = [coeffx[0], coeffy[0]];\n    this.b = [coeffx[1], coeffy[1]];\n    this.c = [coeffx[2], coeffy[2]];\n    this.d = [coeffx[3], coeffy[3]];\n    this.points = [p0, p1, p2, p3];\n  }\n  PolynomialBezier.prototype.point = function (t) {\n    return [((this.a[0] * t + this.b[0]) * t + this.c[0]) * t + this.d[0], ((this.a[1] * t + this.b[1]) * t + this.c[1]) * t + this.d[1]];\n  };\n  PolynomialBezier.prototype.derivative = function (t) {\n    return [(3 * t * this.a[0] + 2 * this.b[0]) * t + this.c[0], (3 * t * this.a[1] + 2 * this.b[1]) * t + this.c[1]];\n  };\n  PolynomialBezier.prototype.tangentAngle = function (t) {\n    var p = this.derivative(t);\n    return Math.atan2(p[1], p[0]);\n  };\n  PolynomialBezier.prototype.normalAngle = function (t) {\n    var p = this.derivative(t);\n    return Math.atan2(p[0], p[1]);\n  };\n  PolynomialBezier.prototype.inflectionPoints = function () {\n    var denom = this.a[1] * this.b[0] - this.a[0] * this.b[1];\n    if (floatZero(denom)) return [];\n    var tcusp = -0.5 * (this.a[1] * this.c[0] - this.a[0] * this.c[1]) / denom;\n    var square = tcusp * tcusp - 1 / 3 * (this.b[1] * this.c[0] - this.b[0] * this.c[1]) / denom;\n    if (square < 0) return [];\n    var root = Math.sqrt(square);\n    if (floatZero(root)) {\n      if (root > 0 && root < 1) return [tcusp];\n      return [];\n    }\n    return [tcusp - root, tcusp + root].filter(function (r) {\n      return r > 0 && r < 1;\n    });\n  };\n  PolynomialBezier.prototype.split = function (t) {\n    if (t <= 0) return [singlePoint(this.points[0]), this];\n    if (t >= 1) return [this, singlePoint(this.points[this.points.length - 1])];\n    var p10 = lerpPoint(this.points[0], this.points[1], t);\n    var p11 = lerpPoint(this.points[1], this.points[2], t);\n    var p12 = lerpPoint(this.points[2], this.points[3], t);\n    var p20 = lerpPoint(p10, p11, t);\n    var p21 = lerpPoint(p11, p12, t);\n    var p3 = lerpPoint(p20, p21, t);\n    return [new PolynomialBezier(this.points[0], p10, p20, p3, true), new PolynomialBezier(p3, p21, p12, this.points[3], true)];\n  };\n  function extrema(bez, comp) {\n    var min = bez.points[0][comp];\n    var max = bez.points[bez.points.length - 1][comp];\n    if (min > max) {\n      var e = max;\n      max = min;\n      min = e;\n    }\n    // Derivative roots to find min/max\n    var f = quadRoots(3 * bez.a[comp], 2 * bez.b[comp], bez.c[comp]);\n    for (var i = 0; i < f.length; i += 1) {\n      if (f[i] > 0 && f[i] < 1) {\n        var val = bez.point(f[i])[comp];\n        if (val < min) min = val;else if (val > max) max = val;\n      }\n    }\n    return {\n      min: min,\n      max: max\n    };\n  }\n  PolynomialBezier.prototype.bounds = function () {\n    return {\n      x: extrema(this, 0),\n      y: extrema(this, 1)\n    };\n  };\n  PolynomialBezier.prototype.boundingBox = function () {\n    var bounds = this.bounds();\n    return {\n      left: bounds.x.min,\n      right: bounds.x.max,\n      top: bounds.y.min,\n      bottom: bounds.y.max,\n      width: bounds.x.max - bounds.x.min,\n      height: bounds.y.max - bounds.y.min,\n      cx: (bounds.x.max + bounds.x.min) / 2,\n      cy: (bounds.y.max + bounds.y.min) / 2\n    };\n  };\n  function intersectData(bez, t1, t2) {\n    var box = bez.boundingBox();\n    return {\n      cx: box.cx,\n      cy: box.cy,\n      width: box.width,\n      height: box.height,\n      bez: bez,\n      t: (t1 + t2) / 2,\n      t1: t1,\n      t2: t2\n    };\n  }\n  function splitData(data) {\n    var split = data.bez.split(0.5);\n    return [intersectData(split[0], data.t1, data.t), intersectData(split[1], data.t, data.t2)];\n  }\n  function boxIntersect(b1, b2) {\n    return Math.abs(b1.cx - b2.cx) * 2 < b1.width + b2.width && Math.abs(b1.cy - b2.cy) * 2 < b1.height + b2.height;\n  }\n  function intersectsImpl(d1, d2, depth, tolerance, intersections, maxRecursion) {\n    if (!boxIntersect(d1, d2)) return;\n    if (depth >= maxRecursion || d1.width <= tolerance && d1.height <= tolerance && d2.width <= tolerance && d2.height <= tolerance) {\n      intersections.push([d1.t, d2.t]);\n      return;\n    }\n    var d1s = splitData(d1);\n    var d2s = splitData(d2);\n    intersectsImpl(d1s[0], d2s[0], depth + 1, tolerance, intersections, maxRecursion);\n    intersectsImpl(d1s[0], d2s[1], depth + 1, tolerance, intersections, maxRecursion);\n    intersectsImpl(d1s[1], d2s[0], depth + 1, tolerance, intersections, maxRecursion);\n    intersectsImpl(d1s[1], d2s[1], depth + 1, tolerance, intersections, maxRecursion);\n  }\n  PolynomialBezier.prototype.intersections = function (other, tolerance, maxRecursion) {\n    if (tolerance === undefined) tolerance = 2;\n    if (maxRecursion === undefined) maxRecursion = 7;\n    var intersections = [];\n    intersectsImpl(intersectData(this, 0, 1), intersectData(other, 0, 1), 0, tolerance, intersections, maxRecursion);\n    return intersections;\n  };\n  PolynomialBezier.shapeSegment = function (shapePath, index) {\n    var nextIndex = (index + 1) % shapePath.length();\n    return new PolynomialBezier(shapePath.v[index], shapePath.o[index], shapePath.i[nextIndex], shapePath.v[nextIndex], true);\n  };\n  PolynomialBezier.shapeSegmentInverted = function (shapePath, index) {\n    var nextIndex = (index + 1) % shapePath.length();\n    return new PolynomialBezier(shapePath.v[nextIndex], shapePath.i[nextIndex], shapePath.o[index], shapePath.v[index], true);\n  };\n  function crossProduct(a, b) {\n    return [a[1] * b[2] - a[2] * b[1], a[2] * b[0] - a[0] * b[2], a[0] * b[1] - a[1] * b[0]];\n  }\n  function lineIntersection(start1, end1, start2, end2) {\n    var v1 = [start1[0], start1[1], 1];\n    var v2 = [end1[0], end1[1], 1];\n    var v3 = [start2[0], start2[1], 1];\n    var v4 = [end2[0], end2[1], 1];\n    var r = crossProduct(crossProduct(v1, v2), crossProduct(v3, v4));\n    if (floatZero(r[2])) return null;\n    return [r[0] / r[2], r[1] / r[2]];\n  }\n  function polarOffset(p, angle, length) {\n    return [p[0] + Math.cos(angle) * length, p[1] - Math.sin(angle) * length];\n  }\n  function pointDistance(p1, p2) {\n    return Math.hypot(p1[0] - p2[0], p1[1] - p2[1]);\n  }\n  function pointEqual(p1, p2) {\n    return floatEqual(p1[0], p2[0]) && floatEqual(p1[1], p2[1]);\n  }\n\n  function ZigZagModifier() {}\n  extendPrototype([ShapeModifier], ZigZagModifier);\n  ZigZagModifier.prototype.initModifierProperties = function (elem, data) {\n    this.getValue = this.processKeys;\n    this.amplitude = PropertyFactory.getProp(elem, data.s, 0, null, this);\n    this.frequency = PropertyFactory.getProp(elem, data.r, 0, null, this);\n    this.pointsType = PropertyFactory.getProp(elem, data.pt, 0, null, this);\n    this._isAnimated = this.amplitude.effectsSequence.length !== 0 || this.frequency.effectsSequence.length !== 0 || this.pointsType.effectsSequence.length !== 0;\n  };\n  function setPoint(outputBezier, point, angle, direction, amplitude, outAmplitude, inAmplitude) {\n    var angO = angle - Math.PI / 2;\n    var angI = angle + Math.PI / 2;\n    var px = point[0] + Math.cos(angle) * direction * amplitude;\n    var py = point[1] - Math.sin(angle) * direction * amplitude;\n    outputBezier.setTripleAt(px, py, px + Math.cos(angO) * outAmplitude, py - Math.sin(angO) * outAmplitude, px + Math.cos(angI) * inAmplitude, py - Math.sin(angI) * inAmplitude, outputBezier.length());\n  }\n  function getPerpendicularVector(pt1, pt2) {\n    var vector = [pt2[0] - pt1[0], pt2[1] - pt1[1]];\n    var rot = -Math.PI * 0.5;\n    var rotatedVector = [Math.cos(rot) * vector[0] - Math.sin(rot) * vector[1], Math.sin(rot) * vector[0] + Math.cos(rot) * vector[1]];\n    return rotatedVector;\n  }\n  function getProjectingAngle(path, cur) {\n    var prevIndex = cur === 0 ? path.length() - 1 : cur - 1;\n    var nextIndex = (cur + 1) % path.length();\n    var prevPoint = path.v[prevIndex];\n    var nextPoint = path.v[nextIndex];\n    var pVector = getPerpendicularVector(prevPoint, nextPoint);\n    return Math.atan2(0, 1) - Math.atan2(pVector[1], pVector[0]);\n  }\n  function zigZagCorner(outputBezier, path, cur, amplitude, frequency, pointType, direction) {\n    var angle = getProjectingAngle(path, cur);\n    var point = path.v[cur % path._length];\n    var prevPoint = path.v[cur === 0 ? path._length - 1 : cur - 1];\n    var nextPoint = path.v[(cur + 1) % path._length];\n    var prevDist = pointType === 2 ? Math.sqrt(Math.pow(point[0] - prevPoint[0], 2) + Math.pow(point[1] - prevPoint[1], 2)) : 0;\n    var nextDist = pointType === 2 ? Math.sqrt(Math.pow(point[0] - nextPoint[0], 2) + Math.pow(point[1] - nextPoint[1], 2)) : 0;\n    setPoint(outputBezier, path.v[cur % path._length], angle, direction, amplitude, nextDist / ((frequency + 1) * 2), prevDist / ((frequency + 1) * 2), pointType);\n  }\n  function zigZagSegment(outputBezier, segment, amplitude, frequency, pointType, direction) {\n    for (var i = 0; i < frequency; i += 1) {\n      var t = (i + 1) / (frequency + 1);\n      var dist = pointType === 2 ? Math.sqrt(Math.pow(segment.points[3][0] - segment.points[0][0], 2) + Math.pow(segment.points[3][1] - segment.points[0][1], 2)) : 0;\n      var angle = segment.normalAngle(t);\n      var point = segment.point(t);\n      setPoint(outputBezier, point, angle, direction, amplitude, dist / ((frequency + 1) * 2), dist / ((frequency + 1) * 2), pointType);\n      direction = -direction;\n    }\n    return direction;\n  }\n  ZigZagModifier.prototype.processPath = function (path, amplitude, frequency, pointType) {\n    var count = path._length;\n    var clonedPath = shapePool.newElement();\n    clonedPath.c = path.c;\n    if (!path.c) {\n      count -= 1;\n    }\n    if (count === 0) return clonedPath;\n    var direction = -1;\n    var segment = PolynomialBezier.shapeSegment(path, 0);\n    zigZagCorner(clonedPath, path, 0, amplitude, frequency, pointType, direction);\n    for (var i = 0; i < count; i += 1) {\n      direction = zigZagSegment(clonedPath, segment, amplitude, frequency, pointType, -direction);\n      if (i === count - 1 && !path.c) {\n        segment = null;\n      } else {\n        segment = PolynomialBezier.shapeSegment(path, (i + 1) % count);\n      }\n      zigZagCorner(clonedPath, path, i + 1, amplitude, frequency, pointType, direction);\n    }\n    return clonedPath;\n  };\n  ZigZagModifier.prototype.processShapes = function (_isFirstFrame) {\n    var shapePaths;\n    var i;\n    var len = this.shapes.length;\n    var j;\n    var jLen;\n    var amplitude = this.amplitude.v;\n    var frequency = Math.max(0, Math.round(this.frequency.v));\n    var pointType = this.pointsType.v;\n    if (amplitude !== 0) {\n      var shapeData;\n      var localShapeCollection;\n      for (i = 0; i < len; i += 1) {\n        shapeData = this.shapes[i];\n        localShapeCollection = shapeData.localShapeCollection;\n        if (!(!shapeData.shape._mdf && !this._mdf && !_isFirstFrame)) {\n          localShapeCollection.releaseShapes();\n          shapeData.shape._mdf = true;\n          shapePaths = shapeData.shape.paths.shapes;\n          jLen = shapeData.shape.paths._length;\n          for (j = 0; j < jLen; j += 1) {\n            localShapeCollection.addShape(this.processPath(shapePaths[j], amplitude, frequency, pointType));\n          }\n        }\n        shapeData.shape.paths = shapeData.localShapeCollection;\n      }\n    }\n    if (!this.dynamicProperties.length) {\n      this._mdf = false;\n    }\n  };\n\n  function linearOffset(p1, p2, amount) {\n    var angle = Math.atan2(p2[0] - p1[0], p2[1] - p1[1]);\n    return [polarOffset(p1, angle, amount), polarOffset(p2, angle, amount)];\n  }\n  function offsetSegment(segment, amount) {\n    var p0;\n    var p1a;\n    var p1b;\n    var p2b;\n    var p2a;\n    var p3;\n    var e;\n    e = linearOffset(segment.points[0], segment.points[1], amount);\n    p0 = e[0];\n    p1a = e[1];\n    e = linearOffset(segment.points[1], segment.points[2], amount);\n    p1b = e[0];\n    p2b = e[1];\n    e = linearOffset(segment.points[2], segment.points[3], amount);\n    p2a = e[0];\n    p3 = e[1];\n    var p1 = lineIntersection(p0, p1a, p1b, p2b);\n    if (p1 === null) p1 = p1a;\n    var p2 = lineIntersection(p2a, p3, p1b, p2b);\n    if (p2 === null) p2 = p2a;\n    return new PolynomialBezier(p0, p1, p2, p3);\n  }\n  function joinLines(outputBezier, seg1, seg2, lineJoin, miterLimit) {\n    var p0 = seg1.points[3];\n    var p1 = seg2.points[0];\n\n    // Bevel\n    if (lineJoin === 3) return p0;\n\n    // Connected, they don't need a joint\n    if (pointEqual(p0, p1)) return p0;\n\n    // Round\n    if (lineJoin === 2) {\n      var angleOut = -seg1.tangentAngle(1);\n      var angleIn = -seg2.tangentAngle(0) + Math.PI;\n      var center = lineIntersection(p0, polarOffset(p0, angleOut + Math.PI / 2, 100), p1, polarOffset(p1, angleOut + Math.PI / 2, 100));\n      var radius = center ? pointDistance(center, p0) : pointDistance(p0, p1) / 2;\n      var tan = polarOffset(p0, angleOut, 2 * radius * roundCorner);\n      outputBezier.setXYAt(tan[0], tan[1], 'o', outputBezier.length() - 1);\n      tan = polarOffset(p1, angleIn, 2 * radius * roundCorner);\n      outputBezier.setTripleAt(p1[0], p1[1], p1[0], p1[1], tan[0], tan[1], outputBezier.length());\n      return p1;\n    }\n\n    // Miter\n    var t0 = pointEqual(p0, seg1.points[2]) ? seg1.points[0] : seg1.points[2];\n    var t1 = pointEqual(p1, seg2.points[1]) ? seg2.points[3] : seg2.points[1];\n    var intersection = lineIntersection(t0, p0, p1, t1);\n    if (intersection && pointDistance(intersection, p0) < miterLimit) {\n      outputBezier.setTripleAt(intersection[0], intersection[1], intersection[0], intersection[1], intersection[0], intersection[1], outputBezier.length());\n      return intersection;\n    }\n    return p0;\n  }\n  function getIntersection(a, b) {\n    var intersect = a.intersections(b);\n    if (intersect.length && floatEqual(intersect[0][0], 1)) intersect.shift();\n    if (intersect.length) return intersect[0];\n    return null;\n  }\n  function pruneSegmentIntersection(a, b) {\n    var outa = a.slice();\n    var outb = b.slice();\n    var intersect = getIntersection(a[a.length - 1], b[0]);\n    if (intersect) {\n      outa[a.length - 1] = a[a.length - 1].split(intersect[0])[0];\n      outb[0] = b[0].split(intersect[1])[1];\n    }\n    if (a.length > 1 && b.length > 1) {\n      intersect = getIntersection(a[0], b[b.length - 1]);\n      if (intersect) {\n        return [[a[0].split(intersect[0])[0]], [b[b.length - 1].split(intersect[1])[1]]];\n      }\n    }\n    return [outa, outb];\n  }\n  function pruneIntersections(segments) {\n    var e;\n    for (var i = 1; i < segments.length; i += 1) {\n      e = pruneSegmentIntersection(segments[i - 1], segments[i]);\n      segments[i - 1] = e[0];\n      segments[i] = e[1];\n    }\n    if (segments.length > 1) {\n      e = pruneSegmentIntersection(segments[segments.length - 1], segments[0]);\n      segments[segments.length - 1] = e[0];\n      segments[0] = e[1];\n    }\n    return segments;\n  }\n  function offsetSegmentSplit(segment, amount) {\n    /*\n      We split each bezier segment into smaller pieces based\n      on inflection points, this ensures the control point\n      polygon is convex.\n       (A cubic bezier can have none, one, or two inflection points)\n    */\n    var flex = segment.inflectionPoints();\n    var left;\n    var right;\n    var split;\n    var mid;\n    if (flex.length === 0) {\n      return [offsetSegment(segment, amount)];\n    }\n    if (flex.length === 1 || floatEqual(flex[1], 1)) {\n      split = segment.split(flex[0]);\n      left = split[0];\n      right = split[1];\n      return [offsetSegment(left, amount), offsetSegment(right, amount)];\n    }\n    split = segment.split(flex[0]);\n    left = split[0];\n    var t = (flex[1] - flex[0]) / (1 - flex[0]);\n    split = split[1].split(t);\n    mid = split[0];\n    right = split[1];\n    return [offsetSegment(left, amount), offsetSegment(mid, amount), offsetSegment(right, amount)];\n  }\n  function OffsetPathModifier() {}\n  extendPrototype([ShapeModifier], OffsetPathModifier);\n  OffsetPathModifier.prototype.initModifierProperties = function (elem, data) {\n    this.getValue = this.processKeys;\n    this.amount = PropertyFactory.getProp(elem, data.a, 0, null, this);\n    this.miterLimit = PropertyFactory.getProp(elem, data.ml, 0, null, this);\n    this.lineJoin = data.lj;\n    this._isAnimated = this.amount.effectsSequence.length !== 0;\n  };\n  OffsetPathModifier.prototype.processPath = function (inputBezier, amount, lineJoin, miterLimit) {\n    var outputBezier = shapePool.newElement();\n    outputBezier.c = inputBezier.c;\n    var count = inputBezier.length();\n    if (!inputBezier.c) {\n      count -= 1;\n    }\n    var i;\n    var j;\n    var segment;\n    var multiSegments = [];\n    for (i = 0; i < count; i += 1) {\n      segment = PolynomialBezier.shapeSegment(inputBezier, i);\n      multiSegments.push(offsetSegmentSplit(segment, amount));\n    }\n    if (!inputBezier.c) {\n      for (i = count - 1; i >= 0; i -= 1) {\n        segment = PolynomialBezier.shapeSegmentInverted(inputBezier, i);\n        multiSegments.push(offsetSegmentSplit(segment, amount));\n      }\n    }\n    multiSegments = pruneIntersections(multiSegments);\n\n    // Add bezier segments to the output and apply line joints\n    var lastPoint = null;\n    var lastSeg = null;\n    for (i = 0; i < multiSegments.length; i += 1) {\n      var multiSegment = multiSegments[i];\n      if (lastSeg) lastPoint = joinLines(outputBezier, lastSeg, multiSegment[0], lineJoin, miterLimit);\n      lastSeg = multiSegment[multiSegment.length - 1];\n      for (j = 0; j < multiSegment.length; j += 1) {\n        segment = multiSegment[j];\n        if (lastPoint && pointEqual(segment.points[0], lastPoint)) {\n          outputBezier.setXYAt(segment.points[1][0], segment.points[1][1], 'o', outputBezier.length() - 1);\n        } else {\n          outputBezier.setTripleAt(segment.points[0][0], segment.points[0][1], segment.points[1][0], segment.points[1][1], segment.points[0][0], segment.points[0][1], outputBezier.length());\n        }\n        outputBezier.setTripleAt(segment.points[3][0], segment.points[3][1], segment.points[3][0], segment.points[3][1], segment.points[2][0], segment.points[2][1], outputBezier.length());\n        lastPoint = segment.points[3];\n      }\n    }\n    if (multiSegments.length) joinLines(outputBezier, lastSeg, multiSegments[0][0], lineJoin, miterLimit);\n    return outputBezier;\n  };\n  OffsetPathModifier.prototype.processShapes = function (_isFirstFrame) {\n    var shapePaths;\n    var i;\n    var len = this.shapes.length;\n    var j;\n    var jLen;\n    var amount = this.amount.v;\n    var miterLimit = this.miterLimit.v;\n    var lineJoin = this.lineJoin;\n    if (amount !== 0) {\n      var shapeData;\n      var localShapeCollection;\n      for (i = 0; i < len; i += 1) {\n        shapeData = this.shapes[i];\n        localShapeCollection = shapeData.localShapeCollection;\n        if (!(!shapeData.shape._mdf && !this._mdf && !_isFirstFrame)) {\n          localShapeCollection.releaseShapes();\n          shapeData.shape._mdf = true;\n          shapePaths = shapeData.shape.paths.shapes;\n          jLen = shapeData.shape.paths._length;\n          for (j = 0; j < jLen; j += 1) {\n            localShapeCollection.addShape(this.processPath(shapePaths[j], amount, lineJoin, miterLimit));\n          }\n        }\n        shapeData.shape.paths = shapeData.localShapeCollection;\n      }\n    }\n    if (!this.dynamicProperties.length) {\n      this._mdf = false;\n    }\n  };\n\n  function getFontProperties(fontData) {\n    var styles = fontData.fStyle ? fontData.fStyle.split(' ') : [];\n    var fWeight = 'normal';\n    var fStyle = 'normal';\n    var len = styles.length;\n    var styleName;\n    for (var i = 0; i < len; i += 1) {\n      styleName = styles[i].toLowerCase();\n      switch (styleName) {\n        case 'italic':\n          fStyle = 'italic';\n          break;\n        case 'bold':\n          fWeight = '700';\n          break;\n        case 'black':\n          fWeight = '900';\n          break;\n        case 'medium':\n          fWeight = '500';\n          break;\n        case 'regular':\n        case 'normal':\n          fWeight = '400';\n          break;\n        case 'light':\n        case 'thin':\n          fWeight = '200';\n          break;\n        default:\n          break;\n      }\n    }\n    return {\n      style: fStyle,\n      weight: fontData.fWeight || fWeight\n    };\n  }\n\n  var FontManager = function () {\n    var maxWaitingTime = 5000;\n    var emptyChar = {\n      w: 0,\n      size: 0,\n      shapes: [],\n      data: {\n        shapes: []\n      }\n    };\n    var combinedCharacters = [];\n    // Hindi characters\n    combinedCharacters = combinedCharacters.concat([2304, 2305, 2306, 2307, 2362, 2363, 2364, 2364, 2366, 2367, 2368, 2369, 2370, 2371, 2372, 2373, 2374, 2375, 2376, 2377, 2378, 2379, 2380, 2381, 2382, 2383, 2387, 2388, 2389, 2390, 2391, 2402, 2403]);\n    var BLACK_FLAG_CODE_POINT = 127988;\n    var CANCEL_TAG_CODE_POINT = 917631;\n    var A_TAG_CODE_POINT = 917601;\n    var Z_TAG_CODE_POINT = 917626;\n    var VARIATION_SELECTOR_16_CODE_POINT = 65039;\n    var ZERO_WIDTH_JOINER_CODE_POINT = 8205;\n    var REGIONAL_CHARACTER_A_CODE_POINT = 127462;\n    var REGIONAL_CHARACTER_Z_CODE_POINT = 127487;\n    var surrogateModifiers = ['d83cdffb', 'd83cdffc', 'd83cdffd', 'd83cdffe', 'd83cdfff'];\n    function trimFontOptions(font) {\n      var familyArray = font.split(',');\n      var i;\n      var len = familyArray.length;\n      var enabledFamilies = [];\n      for (i = 0; i < len; i += 1) {\n        if (familyArray[i] !== 'sans-serif' && familyArray[i] !== 'monospace') {\n          enabledFamilies.push(familyArray[i]);\n        }\n      }\n      return enabledFamilies.join(',');\n    }\n    function setUpNode(font, family) {\n      var parentNode = createTag('span');\n      // Node is invisible to screen readers.\n      parentNode.setAttribute('aria-hidden', true);\n      parentNode.style.fontFamily = family;\n      var node = createTag('span');\n      // Characters that vary significantly among different fonts\n      node.innerText = 'giItT1WQy@!-/#';\n      // Visible - so we can measure it - but not on the screen\n      parentNode.style.position = 'absolute';\n      parentNode.style.left = '-10000px';\n      parentNode.style.top = '-10000px';\n      // Large font size makes even subtle changes obvious\n      parentNode.style.fontSize = '300px';\n      // Reset any font properties\n      parentNode.style.fontVariant = 'normal';\n      parentNode.style.fontStyle = 'normal';\n      parentNode.style.fontWeight = 'normal';\n      parentNode.style.letterSpacing = '0';\n      parentNode.appendChild(node);\n      document.body.appendChild(parentNode);\n\n      // Remember width with no applied web font\n      var width = node.offsetWidth;\n      node.style.fontFamily = trimFontOptions(font) + ', ' + family;\n      return {\n        node: node,\n        w: width,\n        parent: parentNode\n      };\n    }\n    function checkLoadedFonts() {\n      var i;\n      var len = this.fonts.length;\n      var node;\n      var w;\n      var loadedCount = len;\n      for (i = 0; i < len; i += 1) {\n        if (this.fonts[i].loaded) {\n          loadedCount -= 1;\n        } else if (this.fonts[i].fOrigin === 'n' || this.fonts[i].origin === 0) {\n          this.fonts[i].loaded = true;\n        } else {\n          node = this.fonts[i].monoCase.node;\n          w = this.fonts[i].monoCase.w;\n          if (node.offsetWidth !== w) {\n            loadedCount -= 1;\n            this.fonts[i].loaded = true;\n          } else {\n            node = this.fonts[i].sansCase.node;\n            w = this.fonts[i].sansCase.w;\n            if (node.offsetWidth !== w) {\n              loadedCount -= 1;\n              this.fonts[i].loaded = true;\n            }\n          }\n          if (this.fonts[i].loaded) {\n            this.fonts[i].sansCase.parent.parentNode.removeChild(this.fonts[i].sansCase.parent);\n            this.fonts[i].monoCase.parent.parentNode.removeChild(this.fonts[i].monoCase.parent);\n          }\n        }\n      }\n      if (loadedCount !== 0 && Date.now() - this.initTime < maxWaitingTime) {\n        setTimeout(this.checkLoadedFontsBinded, 20);\n      } else {\n        setTimeout(this.setIsLoadedBinded, 10);\n      }\n    }\n    function createHelper(fontData, def) {\n      var engine = document.body && def ? 'svg' : 'canvas';\n      var helper;\n      var fontProps = getFontProperties(fontData);\n      if (engine === 'svg') {\n        var tHelper = createNS('text');\n        tHelper.style.fontSize = '100px';\n        // tHelper.style.fontFamily = fontData.fFamily;\n        tHelper.setAttribute('font-family', fontData.fFamily);\n        tHelper.setAttribute('font-style', fontProps.style);\n        tHelper.setAttribute('font-weight', fontProps.weight);\n        tHelper.textContent = '1';\n        if (fontData.fClass) {\n          tHelper.style.fontFamily = 'inherit';\n          tHelper.setAttribute('class', fontData.fClass);\n        } else {\n          tHelper.style.fontFamily = fontData.fFamily;\n        }\n        def.appendChild(tHelper);\n        helper = tHelper;\n      } else {\n        var tCanvasHelper = new OffscreenCanvas(500, 500).getContext('2d');\n        tCanvasHelper.font = fontProps.style + ' ' + fontProps.weight + ' 100px ' + fontData.fFamily;\n        helper = tCanvasHelper;\n      }\n      function measure(text) {\n        if (engine === 'svg') {\n          helper.textContent = text;\n          return helper.getComputedTextLength();\n        }\n        return helper.measureText(text).width;\n      }\n      return {\n        measureText: measure\n      };\n    }\n    function addFonts(fontData, defs) {\n      if (!fontData) {\n        this.isLoaded = true;\n        return;\n      }\n      if (this.chars) {\n        this.isLoaded = true;\n        this.fonts = fontData.list;\n        return;\n      }\n      if (!document.body) {\n        this.isLoaded = true;\n        fontData.list.forEach(function (data) {\n          data.helper = createHelper(data);\n          data.cache = {};\n        });\n        this.fonts = fontData.list;\n        return;\n      }\n      var fontArr = fontData.list;\n      var i;\n      var len = fontArr.length;\n      var _pendingFonts = len;\n      for (i = 0; i < len; i += 1) {\n        var shouldLoadFont = true;\n        var loadedSelector;\n        var j;\n        fontArr[i].loaded = false;\n        fontArr[i].monoCase = setUpNode(fontArr[i].fFamily, 'monospace');\n        fontArr[i].sansCase = setUpNode(fontArr[i].fFamily, 'sans-serif');\n        if (!fontArr[i].fPath) {\n          fontArr[i].loaded = true;\n          _pendingFonts -= 1;\n        } else if (fontArr[i].fOrigin === 'p' || fontArr[i].origin === 3) {\n          loadedSelector = document.querySelectorAll('style[f-forigin=\"p\"][f-family=\"' + fontArr[i].fFamily + '\"], style[f-origin=\"3\"][f-family=\"' + fontArr[i].fFamily + '\"]');\n          if (loadedSelector.length > 0) {\n            shouldLoadFont = false;\n          }\n          if (shouldLoadFont) {\n            var s = createTag('style');\n            s.setAttribute('f-forigin', fontArr[i].fOrigin);\n            s.setAttribute('f-origin', fontArr[i].origin);\n            s.setAttribute('f-family', fontArr[i].fFamily);\n            s.type = 'text/css';\n            s.innerText = '@font-face {font-family: ' + fontArr[i].fFamily + \"; font-style: normal; src: url('\" + fontArr[i].fPath + \"');}\";\n            defs.appendChild(s);\n          }\n        } else if (fontArr[i].fOrigin === 'g' || fontArr[i].origin === 1) {\n          loadedSelector = document.querySelectorAll('link[f-forigin=\"g\"], link[f-origin=\"1\"]');\n          for (j = 0; j < loadedSelector.length; j += 1) {\n            if (loadedSelector[j].href.indexOf(fontArr[i].fPath) !== -1) {\n              // Font is already loaded\n              shouldLoadFont = false;\n            }\n          }\n          if (shouldLoadFont) {\n            var l = createTag('link');\n            l.setAttribute('f-forigin', fontArr[i].fOrigin);\n            l.setAttribute('f-origin', fontArr[i].origin);\n            l.type = 'text/css';\n            l.rel = 'stylesheet';\n            l.href = fontArr[i].fPath;\n            document.body.appendChild(l);\n          }\n        } else if (fontArr[i].fOrigin === 't' || fontArr[i].origin === 2) {\n          loadedSelector = document.querySelectorAll('script[f-forigin=\"t\"], script[f-origin=\"2\"]');\n          for (j = 0; j < loadedSelector.length; j += 1) {\n            if (fontArr[i].fPath === loadedSelector[j].src) {\n              // Font is already loaded\n              shouldLoadFont = false;\n            }\n          }\n          if (shouldLoadFont) {\n            var sc = createTag('link');\n            sc.setAttribute('f-forigin', fontArr[i].fOrigin);\n            sc.setAttribute('f-origin', fontArr[i].origin);\n            sc.setAttribute('rel', 'stylesheet');\n            sc.setAttribute('href', fontArr[i].fPath);\n            defs.appendChild(sc);\n          }\n        }\n        fontArr[i].helper = createHelper(fontArr[i], defs);\n        fontArr[i].cache = {};\n        this.fonts.push(fontArr[i]);\n      }\n      if (_pendingFonts === 0) {\n        this.isLoaded = true;\n      } else {\n        // On some cases even if the font is loaded, it won't load correctly when measuring text on canvas.\n        // Adding this timeout seems to fix it\n        setTimeout(this.checkLoadedFonts.bind(this), 100);\n      }\n    }\n    function addChars(chars) {\n      if (!chars) {\n        return;\n      }\n      if (!this.chars) {\n        this.chars = [];\n      }\n      var i;\n      var len = chars.length;\n      var j;\n      var jLen = this.chars.length;\n      var found;\n      for (i = 0; i < len; i += 1) {\n        j = 0;\n        found = false;\n        while (j < jLen) {\n          if (this.chars[j].style === chars[i].style && this.chars[j].fFamily === chars[i].fFamily && this.chars[j].ch === chars[i].ch) {\n            found = true;\n          }\n          j += 1;\n        }\n        if (!found) {\n          this.chars.push(chars[i]);\n          jLen += 1;\n        }\n      }\n    }\n    function getCharData(_char, style, font) {\n      var i = 0;\n      var len = this.chars.length;\n      while (i < len) {\n        if (this.chars[i].ch === _char && this.chars[i].style === style && this.chars[i].fFamily === font) {\n          return this.chars[i];\n        }\n        i += 1;\n      }\n      if ((typeof _char === 'string' && _char.charCodeAt(0) !== 13 || !_char) && console && console.warn // eslint-disable-line no-console\n      && !this._warned) {\n        this._warned = true;\n        console.warn('Missing character from exported characters list: ', _char, style, font); // eslint-disable-line no-console\n      }\n      return emptyChar;\n    }\n    function measureText(_char2, fontName, size) {\n      var fontData = this.getFontByName(fontName);\n      // Using the char instead of char.charCodeAt(0)\n      // to avoid collisions between equal chars\n      var index = _char2;\n      if (!fontData.cache[index]) {\n        var tHelper = fontData.helper;\n        if (_char2 === ' ') {\n          var doubleSize = tHelper.measureText('|' + _char2 + '|');\n          var singleSize = tHelper.measureText('||');\n          fontData.cache[index] = (doubleSize - singleSize) / 100;\n        } else {\n          fontData.cache[index] = tHelper.measureText(_char2) / 100;\n        }\n      }\n      return fontData.cache[index] * size;\n    }\n    function getFontByName(name) {\n      var i = 0;\n      var len = this.fonts.length;\n      while (i < len) {\n        if (this.fonts[i].fName === name) {\n          return this.fonts[i];\n        }\n        i += 1;\n      }\n      return this.fonts[0];\n    }\n    function getCodePoint(string) {\n      var codePoint = 0;\n      var first = string.charCodeAt(0);\n      if (first >= 0xD800 && first <= 0xDBFF) {\n        var second = string.charCodeAt(1);\n        if (second >= 0xDC00 && second <= 0xDFFF) {\n          codePoint = (first - 0xD800) * 0x400 + second - 0xDC00 + 0x10000;\n        }\n      }\n      return codePoint;\n    }\n\n    // Skin tone modifiers\n    function isModifier(firstCharCode, secondCharCode) {\n      var sum = firstCharCode.toString(16) + secondCharCode.toString(16);\n      return surrogateModifiers.indexOf(sum) !== -1;\n    }\n    function isZeroWidthJoiner(charCode) {\n      return charCode === ZERO_WIDTH_JOINER_CODE_POINT;\n    }\n\n    // This codepoint may change the appearance of the preceding character.\n    // If that is a symbol, dingbat or emoji, U+FE0F forces it to be rendered\n    // as a colorful image as compared to a monochrome text variant.\n    function isVariationSelector(charCode) {\n      return charCode === VARIATION_SELECTOR_16_CODE_POINT;\n    }\n\n    // The regional indicator symbols are a set of 26 alphabetic Unicode\n    /// characters (A–Z) intended to be used to encode ISO 3166-1 alpha-2\n    // two-letter country codes in a way that allows optional special treatment.\n    function isRegionalCode(string) {\n      var codePoint = getCodePoint(string);\n      if (codePoint >= REGIONAL_CHARACTER_A_CODE_POINT && codePoint <= REGIONAL_CHARACTER_Z_CODE_POINT) {\n        return true;\n      }\n      return false;\n    }\n\n    // Some Emoji implementations represent combinations of\n    // two “regional indicator” letters as a single flag symbol.\n    function isFlagEmoji(string) {\n      return isRegionalCode(string.substr(0, 2)) && isRegionalCode(string.substr(2, 2));\n    }\n    function isCombinedCharacter(_char3) {\n      return combinedCharacters.indexOf(_char3) !== -1;\n    }\n\n    // Regional flags start with a BLACK_FLAG_CODE_POINT\n    // folowed by 5 chars in the TAG range\n    // and end with a CANCEL_TAG_CODE_POINT\n    function isRegionalFlag(text, index) {\n      var codePoint = getCodePoint(text.substr(index, 2));\n      if (codePoint !== BLACK_FLAG_CODE_POINT) {\n        return false;\n      }\n      var count = 0;\n      index += 2;\n      while (count < 5) {\n        codePoint = getCodePoint(text.substr(index, 2));\n        if (codePoint < A_TAG_CODE_POINT || codePoint > Z_TAG_CODE_POINT) {\n          return false;\n        }\n        count += 1;\n        index += 2;\n      }\n      return getCodePoint(text.substr(index, 2)) === CANCEL_TAG_CODE_POINT;\n    }\n    function setIsLoaded() {\n      this.isLoaded = true;\n    }\n    var Font = function Font() {\n      this.fonts = [];\n      this.chars = null;\n      this.typekitLoaded = 0;\n      this.isLoaded = false;\n      this._warned = false;\n      this.initTime = Date.now();\n      this.setIsLoadedBinded = this.setIsLoaded.bind(this);\n      this.checkLoadedFontsBinded = this.checkLoadedFonts.bind(this);\n    };\n    Font.isModifier = isModifier;\n    Font.isZeroWidthJoiner = isZeroWidthJoiner;\n    Font.isFlagEmoji = isFlagEmoji;\n    Font.isRegionalCode = isRegionalCode;\n    Font.isCombinedCharacter = isCombinedCharacter;\n    Font.isRegionalFlag = isRegionalFlag;\n    Font.isVariationSelector = isVariationSelector;\n    Font.BLACK_FLAG_CODE_POINT = BLACK_FLAG_CODE_POINT;\n    var fontPrototype = {\n      addChars: addChars,\n      addFonts: addFonts,\n      getCharData: getCharData,\n      getFontByName: getFontByName,\n      measureText: measureText,\n      checkLoadedFonts: checkLoadedFonts,\n      setIsLoaded: setIsLoaded\n    };\n    Font.prototype = fontPrototype;\n    return Font;\n  }();\n\n  function SlotManager(animationData) {\n    this.animationData = animationData;\n  }\n  SlotManager.prototype.getProp = function (data) {\n    if (this.animationData.slots && this.animationData.slots[data.sid]) {\n      return Object.assign(data, this.animationData.slots[data.sid].p);\n    }\n    return data;\n  };\n  function slotFactory(animationData) {\n    return new SlotManager(animationData);\n  }\n\n  function RenderableElement() {}\n  RenderableElement.prototype = {\n    initRenderable: function initRenderable() {\n      // layer's visibility related to inpoint and outpoint. Rename isVisible to isInRange\n      this.isInRange = false;\n      // layer's display state\n      this.hidden = false;\n      // If layer's transparency equals 0, it can be hidden\n      this.isTransparent = false;\n      // list of animated components\n      this.renderableComponents = [];\n    },\n    addRenderableComponent: function addRenderableComponent(component) {\n      if (this.renderableComponents.indexOf(component) === -1) {\n        this.renderableComponents.push(component);\n      }\n    },\n    removeRenderableComponent: function removeRenderableComponent(component) {\n      if (this.renderableComponents.indexOf(component) !== -1) {\n        this.renderableComponents.splice(this.renderableComponents.indexOf(component), 1);\n      }\n    },\n    prepareRenderableFrame: function prepareRenderableFrame(num) {\n      this.checkLayerLimits(num);\n    },\n    checkTransparency: function checkTransparency() {\n      if (this.finalTransform.mProp.o.v <= 0) {\n        if (!this.isTransparent && this.globalData.renderConfig.hideOnTransparent) {\n          this.isTransparent = true;\n          this.hide();\n        }\n      } else if (this.isTransparent) {\n        this.isTransparent = false;\n        this.show();\n      }\n    },\n    /**\n       * @function\n       * Initializes frame related properties.\n       *\n       * @param {number} num\n       * current frame number in Layer's time\n       *\n       */\n    checkLayerLimits: function checkLayerLimits(num) {\n      if (this.data.ip - this.data.st <= num && this.data.op - this.data.st > num) {\n        if (this.isInRange !== true) {\n          this.globalData._mdf = true;\n          this._mdf = true;\n          this.isInRange = true;\n          this.show();\n        }\n      } else if (this.isInRange !== false) {\n        this.globalData._mdf = true;\n        this.isInRange = false;\n        this.hide();\n      }\n    },\n    renderRenderable: function renderRenderable() {\n      var i;\n      var len = this.renderableComponents.length;\n      for (i = 0; i < len; i += 1) {\n        this.renderableComponents[i].renderFrame(this._isFirstFrame);\n      }\n      /* this.maskManager.renderFrame(this.finalTransform.mat);\n          this.renderableEffectsManager.renderFrame(this._isFirstFrame); */\n    },\n    sourceRectAtTime: function sourceRectAtTime() {\n      return {\n        top: 0,\n        left: 0,\n        width: 100,\n        height: 100\n      };\n    },\n    getLayerSize: function getLayerSize() {\n      if (this.data.ty === 5) {\n        return {\n          w: this.data.textData.width,\n          h: this.data.textData.height\n        };\n      }\n      return {\n        w: this.data.width,\n        h: this.data.height\n      };\n    }\n  };\n\n  var getBlendMode = function () {\n    var blendModeEnums = {\n      0: 'source-over',\n      1: 'multiply',\n      2: 'screen',\n      3: 'overlay',\n      4: 'darken',\n      5: 'lighten',\n      6: 'color-dodge',\n      7: 'color-burn',\n      8: 'hard-light',\n      9: 'soft-light',\n      10: 'difference',\n      11: 'exclusion',\n      12: 'hue',\n      13: 'saturation',\n      14: 'color',\n      15: 'luminosity'\n    };\n    return function (mode) {\n      return blendModeEnums[mode] || '';\n    };\n  }();\n\n  function SliderEffect(data, elem, container) {\n    this.p = PropertyFactory.getProp(elem, data.v, 0, 0, container);\n  }\n  function AngleEffect(data, elem, container) {\n    this.p = PropertyFactory.getProp(elem, data.v, 0, 0, container);\n  }\n  function ColorEffect(data, elem, container) {\n    this.p = PropertyFactory.getProp(elem, data.v, 1, 0, container);\n  }\n  function PointEffect(data, elem, container) {\n    this.p = PropertyFactory.getProp(elem, data.v, 1, 0, container);\n  }\n  function LayerIndexEffect(data, elem, container) {\n    this.p = PropertyFactory.getProp(elem, data.v, 0, 0, container);\n  }\n  function MaskIndexEffect(data, elem, container) {\n    this.p = PropertyFactory.getProp(elem, data.v, 0, 0, container);\n  }\n  function CheckboxEffect(data, elem, container) {\n    this.p = PropertyFactory.getProp(elem, data.v, 0, 0, container);\n  }\n  function NoValueEffect() {\n    this.p = {};\n  }\n\n  function EffectsManager(data, element) {\n    var effects = data.ef || [];\n    this.effectElements = [];\n    var i;\n    var len = effects.length;\n    var effectItem;\n    for (i = 0; i < len; i += 1) {\n      effectItem = new GroupEffect(effects[i], element);\n      this.effectElements.push(effectItem);\n    }\n  }\n  function GroupEffect(data, element) {\n    this.init(data, element);\n  }\n  extendPrototype([DynamicPropertyContainer], GroupEffect);\n  GroupEffect.prototype.getValue = GroupEffect.prototype.iterateDynamicProperties;\n  GroupEffect.prototype.init = function (data, element) {\n    this.data = data;\n    this.effectElements = [];\n    this.initDynamicPropertyContainer(element);\n    var i;\n    var len = this.data.ef.length;\n    var eff;\n    var effects = this.data.ef;\n    for (i = 0; i < len; i += 1) {\n      eff = null;\n      switch (effects[i].ty) {\n        case 0:\n          eff = new SliderEffect(effects[i], element, this);\n          break;\n        case 1:\n          eff = new AngleEffect(effects[i], element, this);\n          break;\n        case 2:\n          eff = new ColorEffect(effects[i], element, this);\n          break;\n        case 3:\n          eff = new PointEffect(effects[i], element, this);\n          break;\n        case 4:\n        case 7:\n          eff = new CheckboxEffect(effects[i], element, this);\n          break;\n        case 10:\n          eff = new LayerIndexEffect(effects[i], element, this);\n          break;\n        case 11:\n          eff = new MaskIndexEffect(effects[i], element, this);\n          break;\n        case 5:\n          eff = new EffectsManager(effects[i], element, this);\n          break;\n        // case 6:\n        default:\n          eff = new NoValueEffect(effects[i], element, this);\n          break;\n      }\n      if (eff) {\n        this.effectElements.push(eff);\n      }\n    }\n  };\n\n  function BaseElement() {}\n  BaseElement.prototype = {\n    checkMasks: function checkMasks() {\n      if (!this.data.hasMask) {\n        return false;\n      }\n      var i = 0;\n      var len = this.data.masksProperties.length;\n      while (i < len) {\n        if (this.data.masksProperties[i].mode !== 'n' && this.data.masksProperties[i].cl !== false) {\n          return true;\n        }\n        i += 1;\n      }\n      return false;\n    },\n    initExpressions: function initExpressions() {\n      var expressionsInterfaces = getExpressionInterfaces();\n      if (!expressionsInterfaces) {\n        return;\n      }\n      var LayerExpressionInterface = expressionsInterfaces('layer');\n      var EffectsExpressionInterface = expressionsInterfaces('effects');\n      var ShapeExpressionInterface = expressionsInterfaces('shape');\n      var TextExpressionInterface = expressionsInterfaces('text');\n      var CompExpressionInterface = expressionsInterfaces('comp');\n      this.layerInterface = LayerExpressionInterface(this);\n      if (this.data.hasMask && this.maskManager) {\n        this.layerInterface.registerMaskInterface(this.maskManager);\n      }\n      var effectsInterface = EffectsExpressionInterface.createEffectsInterface(this, this.layerInterface);\n      this.layerInterface.registerEffectsInterface(effectsInterface);\n      if (this.data.ty === 0 || this.data.xt) {\n        this.compInterface = CompExpressionInterface(this);\n      } else if (this.data.ty === 4) {\n        this.layerInterface.shapeInterface = ShapeExpressionInterface(this.shapesData, this.itemsData, this.layerInterface);\n        this.layerInterface.content = this.layerInterface.shapeInterface;\n      } else if (this.data.ty === 5) {\n        this.layerInterface.textInterface = TextExpressionInterface(this);\n        this.layerInterface.text = this.layerInterface.textInterface;\n      }\n    },\n    setBlendMode: function setBlendMode() {\n      var blendModeValue = getBlendMode(this.data.bm);\n      var elem = this.baseElement || this.layerElement;\n      elem.style['mix-blend-mode'] = blendModeValue;\n    },\n    initBaseData: function initBaseData(data, globalData, comp) {\n      this.globalData = globalData;\n      this.comp = comp;\n      this.data = data;\n      this.layerId = createElementID();\n\n      // Stretch factor for old animations missing this property.\n      if (!this.data.sr) {\n        this.data.sr = 1;\n      }\n      // effects manager\n      this.effectsManager = new EffectsManager(this.data, this, this.dynamicProperties);\n    },\n    getType: function getType() {\n      return this.type;\n    },\n    sourceRectAtTime: function sourceRectAtTime() {}\n  };\n\n  /**\n   * @file\n   * Handles element's layer frame update.\n   * Checks layer in point and out point\n   *\n   */\n\n  function FrameElement() {}\n  FrameElement.prototype = {\n    /**\n       * @function\n       * Initializes frame related properties.\n       *\n       */\n    initFrame: function initFrame() {\n      // set to true when inpoint is rendered\n      this._isFirstFrame = false;\n      // list of animated properties\n      this.dynamicProperties = [];\n      // If layer has been modified in current tick this will be true\n      this._mdf = false;\n    },\n    /**\n       * @function\n       * Calculates all dynamic values\n       *\n       * @param {number} num\n       * current frame number in Layer's time\n       * @param {boolean} isVisible\n       * if layers is currently in range\n       *\n       */\n    prepareProperties: function prepareProperties(num, isVisible) {\n      var i;\n      var len = this.dynamicProperties.length;\n      for (i = 0; i < len; i += 1) {\n        if (isVisible || this._isParent && this.dynamicProperties[i].propType === 'transform') {\n          this.dynamicProperties[i].getValue();\n          if (this.dynamicProperties[i]._mdf) {\n            this.globalData._mdf = true;\n            this._mdf = true;\n          }\n        }\n      }\n    },\n    addDynamicProperty: function addDynamicProperty(prop) {\n      if (this.dynamicProperties.indexOf(prop) === -1) {\n        this.dynamicProperties.push(prop);\n      }\n    }\n  };\n\n  function FootageElement(data, globalData, comp) {\n    this.initFrame();\n    this.initRenderable();\n    this.assetData = globalData.getAssetData(data.refId);\n    this.footageData = globalData.imageLoader.getAsset(this.assetData);\n    this.initBaseData(data, globalData, comp);\n  }\n  FootageElement.prototype.prepareFrame = function () {};\n  extendPrototype([RenderableElement, BaseElement, FrameElement], FootageElement);\n  FootageElement.prototype.getBaseElement = function () {\n    return null;\n  };\n  FootageElement.prototype.renderFrame = function () {};\n  FootageElement.prototype.destroy = function () {};\n  FootageElement.prototype.initExpressions = function () {\n    var expressionsInterfaces = getExpressionInterfaces();\n    if (!expressionsInterfaces) {\n      return;\n    }\n    var FootageInterface = expressionsInterfaces('footage');\n    this.layerInterface = FootageInterface(this);\n  };\n  FootageElement.prototype.getFootageData = function () {\n    return this.footageData;\n  };\n\n  function AudioElement(data, globalData, comp) {\n    this.initFrame();\n    this.initRenderable();\n    this.assetData = globalData.getAssetData(data.refId);\n    this.initBaseData(data, globalData, comp);\n    this._isPlaying = false;\n    this._canPlay = false;\n    var assetPath = this.globalData.getAssetsPath(this.assetData);\n    this.audio = this.globalData.audioController.createAudio(assetPath);\n    this._currentTime = 0;\n    this.globalData.audioController.addAudio(this);\n    this._volumeMultiplier = 1;\n    this._volume = 1;\n    this._previousVolume = null;\n    this.tm = data.tm ? PropertyFactory.getProp(this, data.tm, 0, globalData.frameRate, this) : {\n      _placeholder: true\n    };\n    this.lv = PropertyFactory.getProp(this, data.au && data.au.lv ? data.au.lv : {\n      k: [100]\n    }, 1, 0.01, this);\n  }\n  AudioElement.prototype.prepareFrame = function (num) {\n    this.prepareRenderableFrame(num, true);\n    this.prepareProperties(num, true);\n    if (!this.tm._placeholder) {\n      var timeRemapped = this.tm.v;\n      this._currentTime = timeRemapped;\n    } else {\n      this._currentTime = num / this.data.sr;\n    }\n    this._volume = this.lv.v[0];\n    var totalVolume = this._volume * this._volumeMultiplier;\n    if (this._previousVolume !== totalVolume) {\n      this._previousVolume = totalVolume;\n      this.audio.volume(totalVolume);\n    }\n  };\n  extendPrototype([RenderableElement, BaseElement, FrameElement], AudioElement);\n  AudioElement.prototype.renderFrame = function () {\n    if (this.isInRange && this._canPlay) {\n      if (!this._isPlaying) {\n        this.audio.play();\n        this.audio.seek(this._currentTime / this.globalData.frameRate);\n        this._isPlaying = true;\n      } else if (!this.audio.playing() || Math.abs(this._currentTime / this.globalData.frameRate - this.audio.seek()) > 0.1) {\n        this.audio.seek(this._currentTime / this.globalData.frameRate);\n      }\n    }\n  };\n  AudioElement.prototype.show = function () {\n    // this.audio.play()\n  };\n  AudioElement.prototype.hide = function () {\n    this.audio.pause();\n    this._isPlaying = false;\n  };\n  AudioElement.prototype.pause = function () {\n    this.audio.pause();\n    this._isPlaying = false;\n    this._canPlay = false;\n  };\n  AudioElement.prototype.resume = function () {\n    this._canPlay = true;\n  };\n  AudioElement.prototype.setRate = function (rateValue) {\n    this.audio.rate(rateValue);\n  };\n  AudioElement.prototype.volume = function (volumeValue) {\n    this._volumeMultiplier = volumeValue;\n    this._previousVolume = volumeValue * this._volume;\n    this.audio.volume(this._previousVolume);\n  };\n  AudioElement.prototype.getBaseElement = function () {\n    return null;\n  };\n  AudioElement.prototype.destroy = function () {};\n  AudioElement.prototype.sourceRectAtTime = function () {};\n  AudioElement.prototype.initExpressions = function () {};\n\n  function BaseRenderer() {}\n  BaseRenderer.prototype.checkLayers = function (num) {\n    var i;\n    var len = this.layers.length;\n    var data;\n    this.completeLayers = true;\n    for (i = len - 1; i >= 0; i -= 1) {\n      if (!this.elements[i]) {\n        data = this.layers[i];\n        if (data.ip - data.st <= num - this.layers[i].st && data.op - data.st > num - this.layers[i].st) {\n          this.buildItem(i);\n        }\n      }\n      this.completeLayers = this.elements[i] ? this.completeLayers : false;\n    }\n    this.checkPendingElements();\n  };\n  BaseRenderer.prototype.createItem = function (layer) {\n    switch (layer.ty) {\n      case 2:\n        return this.createImage(layer);\n      case 0:\n        return this.createComp(layer);\n      case 1:\n        return this.createSolid(layer);\n      case 3:\n        return this.createNull(layer);\n      case 4:\n        return this.createShape(layer);\n      case 5:\n        return this.createText(layer);\n      case 6:\n        return this.createAudio(layer);\n      case 13:\n        return this.createCamera(layer);\n      case 15:\n        return this.createFootage(layer);\n      default:\n        return this.createNull(layer);\n    }\n  };\n  BaseRenderer.prototype.createCamera = function () {\n    throw new Error('You\\'re using a 3d camera. Try the html renderer.');\n  };\n  BaseRenderer.prototype.createAudio = function (data) {\n    return new AudioElement(data, this.globalData, this);\n  };\n  BaseRenderer.prototype.createFootage = function (data) {\n    return new FootageElement(data, this.globalData, this);\n  };\n  BaseRenderer.prototype.buildAllItems = function () {\n    var i;\n    var len = this.layers.length;\n    for (i = 0; i < len; i += 1) {\n      this.buildItem(i);\n    }\n    this.checkPendingElements();\n  };\n  BaseRenderer.prototype.includeLayers = function (newLayers) {\n    this.completeLayers = false;\n    var i;\n    var len = newLayers.length;\n    var j;\n    var jLen = this.layers.length;\n    for (i = 0; i < len; i += 1) {\n      j = 0;\n      while (j < jLen) {\n        if (this.layers[j].id === newLayers[i].id) {\n          this.layers[j] = newLayers[i];\n          break;\n        }\n        j += 1;\n      }\n    }\n  };\n  BaseRenderer.prototype.setProjectInterface = function (pInterface) {\n    this.globalData.projectInterface = pInterface;\n  };\n  BaseRenderer.prototype.initItems = function () {\n    if (!this.globalData.progressiveLoad) {\n      this.buildAllItems();\n    }\n  };\n  BaseRenderer.prototype.buildElementParenting = function (element, parentName, hierarchy) {\n    var elements = this.elements;\n    var layers = this.layers;\n    var i = 0;\n    var len = layers.length;\n    while (i < len) {\n      if (layers[i].ind == parentName) {\n        // eslint-disable-line eqeqeq\n        if (!elements[i] || elements[i] === true) {\n          this.buildItem(i);\n          this.addPendingElement(element);\n        } else {\n          hierarchy.push(elements[i]);\n          elements[i].setAsParent();\n          if (layers[i].parent !== undefined) {\n            this.buildElementParenting(element, layers[i].parent, hierarchy);\n          } else {\n            element.setHierarchy(hierarchy);\n          }\n        }\n      }\n      i += 1;\n    }\n  };\n  BaseRenderer.prototype.addPendingElement = function (element) {\n    this.pendingElements.push(element);\n  };\n  BaseRenderer.prototype.searchExtraCompositions = function (assets) {\n    var i;\n    var len = assets.length;\n    for (i = 0; i < len; i += 1) {\n      if (assets[i].xt) {\n        var comp = this.createComp(assets[i]);\n        comp.initExpressions();\n        this.globalData.projectInterface.registerComposition(comp);\n      }\n    }\n  };\n  BaseRenderer.prototype.getElementById = function (ind) {\n    var i;\n    var len = this.elements.length;\n    for (i = 0; i < len; i += 1) {\n      if (this.elements[i].data.ind === ind) {\n        return this.elements[i];\n      }\n    }\n    return null;\n  };\n  BaseRenderer.prototype.getElementByPath = function (path) {\n    var pathValue = path.shift();\n    var element;\n    if (typeof pathValue === 'number') {\n      element = this.elements[pathValue];\n    } else {\n      var i;\n      var len = this.elements.length;\n      for (i = 0; i < len; i += 1) {\n        if (this.elements[i].data.nm === pathValue) {\n          element = this.elements[i];\n          break;\n        }\n      }\n    }\n    if (path.length === 0) {\n      return element;\n    }\n    return element.getElementByPath(path);\n  };\n  BaseRenderer.prototype.setupGlobalData = function (animData, fontsContainer) {\n    this.globalData.fontManager = new FontManager();\n    this.globalData.slotManager = slotFactory(animData);\n    this.globalData.fontManager.addChars(animData.chars);\n    this.globalData.fontManager.addFonts(animData.fonts, fontsContainer);\n    this.globalData.getAssetData = this.animationItem.getAssetData.bind(this.animationItem);\n    this.globalData.getAssetsPath = this.animationItem.getAssetsPath.bind(this.animationItem);\n    this.globalData.imageLoader = this.animationItem.imagePreloader;\n    this.globalData.audioController = this.animationItem.audioController;\n    this.globalData.frameId = 0;\n    this.globalData.frameRate = animData.fr;\n    this.globalData.nm = animData.nm;\n    this.globalData.compSize = {\n      w: animData.w,\n      h: animData.h\n    };\n  };\n\n  var effectTypes = {\n    TRANSFORM_EFFECT: 'transformEFfect'\n  };\n\n  function TransformElement() {}\n  TransformElement.prototype = {\n    initTransform: function initTransform() {\n      var mat = new Matrix();\n      this.finalTransform = {\n        mProp: this.data.ks ? TransformPropertyFactory.getTransformProperty(this, this.data.ks, this) : {\n          o: 0\n        },\n        _matMdf: false,\n        _localMatMdf: false,\n        _opMdf: false,\n        mat: mat,\n        localMat: mat,\n        localOpacity: 1\n      };\n      if (this.data.ao) {\n        this.finalTransform.mProp.autoOriented = true;\n      }\n\n      // TODO: check TYPE 11: Guided elements\n      if (this.data.ty !== 11) {\n        // this.createElements();\n      }\n    },\n    renderTransform: function renderTransform() {\n      this.finalTransform._opMdf = this.finalTransform.mProp.o._mdf || this._isFirstFrame;\n      this.finalTransform._matMdf = this.finalTransform.mProp._mdf || this._isFirstFrame;\n      if (this.hierarchy) {\n        var mat;\n        var finalMat = this.finalTransform.mat;\n        var i = 0;\n        var len = this.hierarchy.length;\n        // Checking if any of the transformation matrices in the hierarchy chain has changed.\n        if (!this.finalTransform._matMdf) {\n          while (i < len) {\n            if (this.hierarchy[i].finalTransform.mProp._mdf) {\n              this.finalTransform._matMdf = true;\n              break;\n            }\n            i += 1;\n          }\n        }\n        if (this.finalTransform._matMdf) {\n          mat = this.finalTransform.mProp.v.props;\n          finalMat.cloneFromProps(mat);\n          for (i = 0; i < len; i += 1) {\n            finalMat.multiply(this.hierarchy[i].finalTransform.mProp.v);\n          }\n        }\n      }\n      if (!this.localTransforms || this.finalTransform._matMdf) {\n        this.finalTransform._localMatMdf = this.finalTransform._matMdf;\n      }\n      if (this.finalTransform._opMdf) {\n        this.finalTransform.localOpacity = this.finalTransform.mProp.o.v;\n      }\n    },\n    renderLocalTransform: function renderLocalTransform() {\n      if (this.localTransforms) {\n        var i = 0;\n        var len = this.localTransforms.length;\n        this.finalTransform._localMatMdf = this.finalTransform._matMdf;\n        if (!this.finalTransform._localMatMdf || !this.finalTransform._opMdf) {\n          while (i < len) {\n            if (this.localTransforms[i]._mdf) {\n              this.finalTransform._localMatMdf = true;\n            }\n            if (this.localTransforms[i]._opMdf && !this.finalTransform._opMdf) {\n              this.finalTransform.localOpacity = this.finalTransform.mProp.o.v;\n              this.finalTransform._opMdf = true;\n            }\n            i += 1;\n          }\n        }\n        if (this.finalTransform._localMatMdf) {\n          var localMat = this.finalTransform.localMat;\n          this.localTransforms[0].matrix.clone(localMat);\n          for (i = 1; i < len; i += 1) {\n            var lmat = this.localTransforms[i].matrix;\n            localMat.multiply(lmat);\n          }\n          localMat.multiply(this.finalTransform.mat);\n        }\n        if (this.finalTransform._opMdf) {\n          var localOp = this.finalTransform.localOpacity;\n          for (i = 0; i < len; i += 1) {\n            localOp *= this.localTransforms[i].opacity * 0.01;\n          }\n          this.finalTransform.localOpacity = localOp;\n        }\n      }\n    },\n    searchEffectTransforms: function searchEffectTransforms() {\n      if (this.renderableEffectsManager) {\n        var transformEffects = this.renderableEffectsManager.getEffects(effectTypes.TRANSFORM_EFFECT);\n        if (transformEffects.length) {\n          this.localTransforms = [];\n          this.finalTransform.localMat = new Matrix();\n          var i = 0;\n          var len = transformEffects.length;\n          for (i = 0; i < len; i += 1) {\n            this.localTransforms.push(transformEffects[i]);\n          }\n        }\n      }\n    },\n    globalToLocal: function globalToLocal(pt) {\n      var transforms = [];\n      transforms.push(this.finalTransform);\n      var flag = true;\n      var comp = this.comp;\n      while (flag) {\n        if (comp.finalTransform) {\n          if (comp.data.hasMask) {\n            transforms.splice(0, 0, comp.finalTransform);\n          }\n          comp = comp.comp;\n        } else {\n          flag = false;\n        }\n      }\n      var i;\n      var len = transforms.length;\n      var ptNew;\n      for (i = 0; i < len; i += 1) {\n        ptNew = transforms[i].mat.applyToPointArray(0, 0, 0);\n        // ptNew = transforms[i].mat.applyToPointArray(pt[0],pt[1],pt[2]);\n        pt = [pt[0] - ptNew[0], pt[1] - ptNew[1], 0];\n      }\n      return pt;\n    },\n    mHelper: new Matrix()\n  };\n\n  function MaskElement(data, element, globalData) {\n    this.data = data;\n    this.element = element;\n    this.globalData = globalData;\n    this.storedData = [];\n    this.masksProperties = this.data.masksProperties || [];\n    this.maskElement = null;\n    var defs = this.globalData.defs;\n    var i;\n    var len = this.masksProperties ? this.masksProperties.length : 0;\n    this.viewData = createSizedArray(len);\n    this.solidPath = '';\n    var path;\n    var properties = this.masksProperties;\n    var count = 0;\n    var currentMasks = [];\n    var j;\n    var jLen;\n    var layerId = createElementID();\n    var rect;\n    var expansor;\n    var feMorph;\n    var x;\n    var maskType = 'clipPath';\n    var maskRef = 'clip-path';\n    for (i = 0; i < len; i += 1) {\n      if (properties[i].mode !== 'a' && properties[i].mode !== 'n' || properties[i].inv || properties[i].o.k !== 100 || properties[i].o.x) {\n        maskType = 'mask';\n        maskRef = 'mask';\n      }\n      if ((properties[i].mode === 's' || properties[i].mode === 'i') && count === 0) {\n        rect = createNS('rect');\n        rect.setAttribute('fill', '#ffffff');\n        rect.setAttribute('width', this.element.comp.data.w || 0);\n        rect.setAttribute('height', this.element.comp.data.h || 0);\n        currentMasks.push(rect);\n      } else {\n        rect = null;\n      }\n      path = createNS('path');\n      if (properties[i].mode === 'n') {\n        // TODO move this to a factory or to a constructor\n        this.viewData[i] = {\n          op: PropertyFactory.getProp(this.element, properties[i].o, 0, 0.01, this.element),\n          prop: ShapePropertyFactory.getShapeProp(this.element, properties[i], 3),\n          elem: path,\n          lastPath: ''\n        };\n        defs.appendChild(path);\n      } else {\n        count += 1;\n        path.setAttribute('fill', properties[i].mode === 's' ? '#000000' : '#ffffff');\n        path.setAttribute('clip-rule', 'nonzero');\n        var filterID;\n        if (properties[i].x.k !== 0) {\n          maskType = 'mask';\n          maskRef = 'mask';\n          x = PropertyFactory.getProp(this.element, properties[i].x, 0, null, this.element);\n          filterID = createElementID();\n          expansor = createNS('filter');\n          expansor.setAttribute('id', filterID);\n          feMorph = createNS('feMorphology');\n          feMorph.setAttribute('operator', 'erode');\n          feMorph.setAttribute('in', 'SourceGraphic');\n          feMorph.setAttribute('radius', '0');\n          expansor.appendChild(feMorph);\n          defs.appendChild(expansor);\n          path.setAttribute('stroke', properties[i].mode === 's' ? '#000000' : '#ffffff');\n        } else {\n          feMorph = null;\n          x = null;\n        }\n\n        // TODO move this to a factory or to a constructor\n        this.storedData[i] = {\n          elem: path,\n          x: x,\n          expan: feMorph,\n          lastPath: '',\n          lastOperator: '',\n          filterId: filterID,\n          lastRadius: 0\n        };\n        if (properties[i].mode === 'i') {\n          jLen = currentMasks.length;\n          var g = createNS('g');\n          for (j = 0; j < jLen; j += 1) {\n            g.appendChild(currentMasks[j]);\n          }\n          var mask = createNS('mask');\n          mask.setAttribute('mask-type', 'alpha');\n          mask.setAttribute('id', layerId + '_' + count);\n          mask.appendChild(path);\n          defs.appendChild(mask);\n          g.setAttribute('mask', 'url(' + getLocationHref() + '#' + layerId + '_' + count + ')');\n          currentMasks.length = 0;\n          currentMasks.push(g);\n        } else {\n          currentMasks.push(path);\n        }\n        if (properties[i].inv && !this.solidPath) {\n          this.solidPath = this.createLayerSolidPath();\n        }\n        // TODO move this to a factory or to a constructor\n        this.viewData[i] = {\n          elem: path,\n          lastPath: '',\n          op: PropertyFactory.getProp(this.element, properties[i].o, 0, 0.01, this.element),\n          prop: ShapePropertyFactory.getShapeProp(this.element, properties[i], 3),\n          invRect: rect\n        };\n        if (!this.viewData[i].prop.k) {\n          this.drawPath(properties[i], this.viewData[i].prop.v, this.viewData[i]);\n        }\n      }\n    }\n    this.maskElement = createNS(maskType);\n    len = currentMasks.length;\n    for (i = 0; i < len; i += 1) {\n      this.maskElement.appendChild(currentMasks[i]);\n    }\n    if (count > 0) {\n      this.maskElement.setAttribute('id', layerId);\n      this.element.maskedElement.setAttribute(maskRef, 'url(' + getLocationHref() + '#' + layerId + ')');\n      defs.appendChild(this.maskElement);\n    }\n    if (this.viewData.length) {\n      this.element.addRenderableComponent(this);\n    }\n  }\n  MaskElement.prototype.getMaskProperty = function (pos) {\n    return this.viewData[pos].prop;\n  };\n  MaskElement.prototype.renderFrame = function (isFirstFrame) {\n    var finalMat = this.element.finalTransform.mat;\n    var i;\n    var len = this.masksProperties.length;\n    for (i = 0; i < len; i += 1) {\n      if (this.viewData[i].prop._mdf || isFirstFrame) {\n        this.drawPath(this.masksProperties[i], this.viewData[i].prop.v, this.viewData[i]);\n      }\n      if (this.viewData[i].op._mdf || isFirstFrame) {\n        this.viewData[i].elem.setAttribute('fill-opacity', this.viewData[i].op.v);\n      }\n      if (this.masksProperties[i].mode !== 'n') {\n        if (this.viewData[i].invRect && (this.element.finalTransform.mProp._mdf || isFirstFrame)) {\n          this.viewData[i].invRect.setAttribute('transform', finalMat.getInverseMatrix().to2dCSS());\n        }\n        if (this.storedData[i].x && (this.storedData[i].x._mdf || isFirstFrame)) {\n          var feMorph = this.storedData[i].expan;\n          if (this.storedData[i].x.v < 0) {\n            if (this.storedData[i].lastOperator !== 'erode') {\n              this.storedData[i].lastOperator = 'erode';\n              this.storedData[i].elem.setAttribute('filter', 'url(' + getLocationHref() + '#' + this.storedData[i].filterId + ')');\n            }\n            feMorph.setAttribute('radius', -this.storedData[i].x.v);\n          } else {\n            if (this.storedData[i].lastOperator !== 'dilate') {\n              this.storedData[i].lastOperator = 'dilate';\n              this.storedData[i].elem.setAttribute('filter', null);\n            }\n            this.storedData[i].elem.setAttribute('stroke-width', this.storedData[i].x.v * 2);\n          }\n        }\n      }\n    }\n  };\n  MaskElement.prototype.getMaskelement = function () {\n    return this.maskElement;\n  };\n  MaskElement.prototype.createLayerSolidPath = function () {\n    var path = 'M0,0 ';\n    path += ' h' + this.globalData.compSize.w;\n    path += ' v' + this.globalData.compSize.h;\n    path += ' h-' + this.globalData.compSize.w;\n    path += ' v-' + this.globalData.compSize.h + ' ';\n    return path;\n  };\n  MaskElement.prototype.drawPath = function (pathData, pathNodes, viewData) {\n    var pathString = ' M' + pathNodes.v[0][0] + ',' + pathNodes.v[0][1];\n    var i;\n    var len;\n    len = pathNodes._length;\n    for (i = 1; i < len; i += 1) {\n      // pathString += \" C\"+pathNodes.o[i-1][0]+','+pathNodes.o[i-1][1] + \" \"+pathNodes.i[i][0]+','+pathNodes.i[i][1] + \" \"+pathNodes.v[i][0]+','+pathNodes.v[i][1];\n      pathString += ' C' + pathNodes.o[i - 1][0] + ',' + pathNodes.o[i - 1][1] + ' ' + pathNodes.i[i][0] + ',' + pathNodes.i[i][1] + ' ' + pathNodes.v[i][0] + ',' + pathNodes.v[i][1];\n    }\n    // pathString += \" C\"+pathNodes.o[i-1][0]+','+pathNodes.o[i-1][1] + \" \"+pathNodes.i[0][0]+','+pathNodes.i[0][1] + \" \"+pathNodes.v[0][0]+','+pathNodes.v[0][1];\n    if (pathNodes.c && len > 1) {\n      pathString += ' C' + pathNodes.o[i - 1][0] + ',' + pathNodes.o[i - 1][1] + ' ' + pathNodes.i[0][0] + ',' + pathNodes.i[0][1] + ' ' + pathNodes.v[0][0] + ',' + pathNodes.v[0][1];\n    }\n    // pathNodes.__renderedString = pathString;\n\n    if (viewData.lastPath !== pathString) {\n      var pathShapeValue = '';\n      if (viewData.elem) {\n        if (pathNodes.c) {\n          pathShapeValue = pathData.inv ? this.solidPath + pathString : pathString;\n        }\n        viewData.elem.setAttribute('d', pathShapeValue);\n      }\n      viewData.lastPath = pathString;\n    }\n  };\n  MaskElement.prototype.destroy = function () {\n    this.element = null;\n    this.globalData = null;\n    this.maskElement = null;\n    this.data = null;\n    this.masksProperties = null;\n  };\n\n  var filtersFactory = function () {\n    var ob = {};\n    ob.createFilter = createFilter;\n    ob.createAlphaToLuminanceFilter = createAlphaToLuminanceFilter;\n    function createFilter(filId, skipCoordinates) {\n      var fil = createNS('filter');\n      fil.setAttribute('id', filId);\n      if (skipCoordinates !== true) {\n        fil.setAttribute('filterUnits', 'objectBoundingBox');\n        fil.setAttribute('x', '0%');\n        fil.setAttribute('y', '0%');\n        fil.setAttribute('width', '100%');\n        fil.setAttribute('height', '100%');\n      }\n      return fil;\n    }\n    function createAlphaToLuminanceFilter() {\n      var feColorMatrix = createNS('feColorMatrix');\n      feColorMatrix.setAttribute('type', 'matrix');\n      feColorMatrix.setAttribute('color-interpolation-filters', 'sRGB');\n      feColorMatrix.setAttribute('values', '0 0 0 1 0  0 0 0 1 0  0 0 0 1 0  0 0 0 1 1');\n      return feColorMatrix;\n    }\n    return ob;\n  }();\n\n  var featureSupport = function () {\n    var ob = {\n      maskType: true,\n      svgLumaHidden: true,\n      offscreenCanvas: typeof OffscreenCanvas !== 'undefined'\n    };\n    if (/MSIE 10/i.test(navigator.userAgent) || /MSIE 9/i.test(navigator.userAgent) || /rv:11.0/i.test(navigator.userAgent) || /Edge\\/\\d./i.test(navigator.userAgent)) {\n      ob.maskType = false;\n    }\n    if (/firefox/i.test(navigator.userAgent)) {\n      ob.svgLumaHidden = false;\n    }\n    return ob;\n  }();\n\n  var registeredEffects$1 = {};\n  var idPrefix = 'filter_result_';\n  function SVGEffects(elem) {\n    var i;\n    var source = 'SourceGraphic';\n    var len = elem.data.ef ? elem.data.ef.length : 0;\n    var filId = createElementID();\n    var fil = filtersFactory.createFilter(filId, true);\n    var count = 0;\n    this.filters = [];\n    var filterManager;\n    for (i = 0; i < len; i += 1) {\n      filterManager = null;\n      var type = elem.data.ef[i].ty;\n      if (registeredEffects$1[type]) {\n        var Effect = registeredEffects$1[type].effect;\n        filterManager = new Effect(fil, elem.effectsManager.effectElements[i], elem, idPrefix + count, source);\n        source = idPrefix + count;\n        if (registeredEffects$1[type].countsAsEffect) {\n          count += 1;\n        }\n      }\n      if (filterManager) {\n        this.filters.push(filterManager);\n      }\n    }\n    if (count) {\n      elem.globalData.defs.appendChild(fil);\n      elem.layerElement.setAttribute('filter', 'url(' + getLocationHref() + '#' + filId + ')');\n    }\n    if (this.filters.length) {\n      elem.addRenderableComponent(this);\n    }\n  }\n  SVGEffects.prototype.renderFrame = function (_isFirstFrame) {\n    var i;\n    var len = this.filters.length;\n    for (i = 0; i < len; i += 1) {\n      this.filters[i].renderFrame(_isFirstFrame);\n    }\n  };\n  SVGEffects.prototype.getEffects = function (type) {\n    var i;\n    var len = this.filters.length;\n    var effects = [];\n    for (i = 0; i < len; i += 1) {\n      if (this.filters[i].type === type) {\n        effects.push(this.filters[i]);\n      }\n    }\n    return effects;\n  };\n  function registerEffect$1(id, effect, countsAsEffect) {\n    registeredEffects$1[id] = {\n      effect: effect,\n      countsAsEffect: countsAsEffect\n    };\n  }\n\n  function SVGBaseElement() {}\n  SVGBaseElement.prototype = {\n    initRendererElement: function initRendererElement() {\n      this.layerElement = createNS('g');\n    },\n    createContainerElements: function createContainerElements() {\n      this.matteElement = createNS('g');\n      this.transformedElement = this.layerElement;\n      this.maskedElement = this.layerElement;\n      this._sizeChanged = false;\n      var layerElementParent = null;\n      // If this layer acts as a mask for the following layer\n      if (this.data.td) {\n        this.matteMasks = {};\n        var gg = createNS('g');\n        gg.setAttribute('id', this.layerId);\n        gg.appendChild(this.layerElement);\n        layerElementParent = gg;\n        this.globalData.defs.appendChild(gg);\n      } else if (this.data.tt) {\n        this.matteElement.appendChild(this.layerElement);\n        layerElementParent = this.matteElement;\n        this.baseElement = this.matteElement;\n      } else {\n        this.baseElement = this.layerElement;\n      }\n      if (this.data.ln) {\n        this.layerElement.setAttribute('id', this.data.ln);\n      }\n      if (this.data.cl) {\n        this.layerElement.setAttribute('class', this.data.cl);\n      }\n      // Clipping compositions to hide content that exceeds boundaries. If collapsed transformations is on, component should not be clipped\n      if (this.data.ty === 0 && !this.data.hd) {\n        var cp = createNS('clipPath');\n        var pt = createNS('path');\n        pt.setAttribute('d', 'M0,0 L' + this.data.w + ',0 L' + this.data.w + ',' + this.data.h + ' L0,' + this.data.h + 'z');\n        var clipId = createElementID();\n        cp.setAttribute('id', clipId);\n        cp.appendChild(pt);\n        this.globalData.defs.appendChild(cp);\n        if (this.checkMasks()) {\n          var cpGroup = createNS('g');\n          cpGroup.setAttribute('clip-path', 'url(' + getLocationHref() + '#' + clipId + ')');\n          cpGroup.appendChild(this.layerElement);\n          this.transformedElement = cpGroup;\n          if (layerElementParent) {\n            layerElementParent.appendChild(this.transformedElement);\n          } else {\n            this.baseElement = this.transformedElement;\n          }\n        } else {\n          this.layerElement.setAttribute('clip-path', 'url(' + getLocationHref() + '#' + clipId + ')');\n        }\n      }\n      if (this.data.bm !== 0) {\n        this.setBlendMode();\n      }\n    },\n    renderElement: function renderElement() {\n      if (this.finalTransform._localMatMdf) {\n        this.transformedElement.setAttribute('transform', this.finalTransform.localMat.to2dCSS());\n      }\n      if (this.finalTransform._opMdf) {\n        this.transformedElement.setAttribute('opacity', this.finalTransform.localOpacity);\n      }\n    },\n    destroyBaseElement: function destroyBaseElement() {\n      this.layerElement = null;\n      this.matteElement = null;\n      this.maskManager.destroy();\n    },\n    getBaseElement: function getBaseElement() {\n      if (this.data.hd) {\n        return null;\n      }\n      return this.baseElement;\n    },\n    createRenderableComponents: function createRenderableComponents() {\n      this.maskManager = new MaskElement(this.data, this, this.globalData);\n      this.renderableEffectsManager = new SVGEffects(this);\n      this.searchEffectTransforms();\n    },\n    getMatte: function getMatte(matteType) {\n      // This should not be a common case. But for backward compatibility, we'll create the matte object.\n      // It solves animations that have two consecutive layers marked as matte masks.\n      // Which is an undefined behavior in AE.\n      if (!this.matteMasks) {\n        this.matteMasks = {};\n      }\n      if (!this.matteMasks[matteType]) {\n        var id = this.layerId + '_' + matteType;\n        var filId;\n        var fil;\n        var useElement;\n        var gg;\n        if (matteType === 1 || matteType === 3) {\n          var masker = createNS('mask');\n          masker.setAttribute('id', id);\n          masker.setAttribute('mask-type', matteType === 3 ? 'luminance' : 'alpha');\n          useElement = createNS('use');\n          useElement.setAttributeNS('http://www.w3.org/1999/xlink', 'href', '#' + this.layerId);\n          masker.appendChild(useElement);\n          this.globalData.defs.appendChild(masker);\n          if (!featureSupport.maskType && matteType === 1) {\n            masker.setAttribute('mask-type', 'luminance');\n            filId = createElementID();\n            fil = filtersFactory.createFilter(filId);\n            this.globalData.defs.appendChild(fil);\n            fil.appendChild(filtersFactory.createAlphaToLuminanceFilter());\n            gg = createNS('g');\n            gg.appendChild(useElement);\n            masker.appendChild(gg);\n            gg.setAttribute('filter', 'url(' + getLocationHref() + '#' + filId + ')');\n          }\n        } else if (matteType === 2) {\n          var maskGroup = createNS('mask');\n          maskGroup.setAttribute('id', id);\n          maskGroup.setAttribute('mask-type', 'alpha');\n          var maskGrouper = createNS('g');\n          maskGroup.appendChild(maskGrouper);\n          filId = createElementID();\n          fil = filtersFactory.createFilter(filId);\n          /// /\n          var feCTr = createNS('feComponentTransfer');\n          feCTr.setAttribute('in', 'SourceGraphic');\n          fil.appendChild(feCTr);\n          var feFunc = createNS('feFuncA');\n          feFunc.setAttribute('type', 'table');\n          feFunc.setAttribute('tableValues', '1.0 0.0');\n          feCTr.appendChild(feFunc);\n          /// /\n          this.globalData.defs.appendChild(fil);\n          var alphaRect = createNS('rect');\n          alphaRect.setAttribute('width', this.comp.data.w);\n          alphaRect.setAttribute('height', this.comp.data.h);\n          alphaRect.setAttribute('x', '0');\n          alphaRect.setAttribute('y', '0');\n          alphaRect.setAttribute('fill', '#ffffff');\n          alphaRect.setAttribute('opacity', '0');\n          maskGrouper.setAttribute('filter', 'url(' + getLocationHref() + '#' + filId + ')');\n          maskGrouper.appendChild(alphaRect);\n          useElement = createNS('use');\n          useElement.setAttributeNS('http://www.w3.org/1999/xlink', 'href', '#' + this.layerId);\n          maskGrouper.appendChild(useElement);\n          if (!featureSupport.maskType) {\n            maskGroup.setAttribute('mask-type', 'luminance');\n            fil.appendChild(filtersFactory.createAlphaToLuminanceFilter());\n            gg = createNS('g');\n            maskGrouper.appendChild(alphaRect);\n            gg.appendChild(this.layerElement);\n            maskGrouper.appendChild(gg);\n          }\n          this.globalData.defs.appendChild(maskGroup);\n        }\n        this.matteMasks[matteType] = id;\n      }\n      return this.matteMasks[matteType];\n    },\n    setMatte: function setMatte(id) {\n      if (!this.matteElement) {\n        return;\n      }\n      this.matteElement.setAttribute('mask', 'url(' + getLocationHref() + '#' + id + ')');\n    }\n  };\n\n  /**\n   * @file\n   * Handles AE's layer parenting property.\n   *\n   */\n\n  function HierarchyElement() {}\n  HierarchyElement.prototype = {\n    /**\n       * @function\n       * Initializes hierarchy properties\n       *\n       */\n    initHierarchy: function initHierarchy() {\n      // element's parent list\n      this.hierarchy = [];\n      // if element is parent of another layer _isParent will be true\n      this._isParent = false;\n      this.checkParenting();\n    },\n    /**\n       * @function\n       * Sets layer's hierarchy.\n       * @param {array} hierarch\n       * layer's parent list\n       *\n       */\n    setHierarchy: function setHierarchy(hierarchy) {\n      this.hierarchy = hierarchy;\n    },\n    /**\n       * @function\n       * Sets layer as parent.\n       *\n       */\n    setAsParent: function setAsParent() {\n      this._isParent = true;\n    },\n    /**\n       * @function\n       * Searches layer's parenting chain\n       *\n       */\n    checkParenting: function checkParenting() {\n      if (this.data.parent !== undefined) {\n        this.comp.buildElementParenting(this, this.data.parent, []);\n      }\n    }\n  };\n\n  function RenderableDOMElement() {}\n  (function () {\n    var _prototype = {\n      initElement: function initElement(data, globalData, comp) {\n        this.initFrame();\n        this.initBaseData(data, globalData, comp);\n        this.initTransform(data, globalData, comp);\n        this.initHierarchy();\n        this.initRenderable();\n        this.initRendererElement();\n        this.createContainerElements();\n        this.createRenderableComponents();\n        this.createContent();\n        this.hide();\n      },\n      hide: function hide() {\n        // console.log('HIDE', this);\n        if (!this.hidden && (!this.isInRange || this.isTransparent)) {\n          var elem = this.baseElement || this.layerElement;\n          elem.style.display = 'none';\n          this.hidden = true;\n        }\n      },\n      show: function show() {\n        // console.log('SHOW', this);\n        if (this.isInRange && !this.isTransparent) {\n          if (!this.data.hd) {\n            var elem = this.baseElement || this.layerElement;\n            elem.style.display = 'block';\n          }\n          this.hidden = false;\n          this._isFirstFrame = true;\n        }\n      },\n      renderFrame: function renderFrame() {\n        // If it is exported as hidden (data.hd === true) no need to render\n        // If it is not visible no need to render\n        if (this.data.hd || this.hidden) {\n          return;\n        }\n        this.renderTransform();\n        this.renderRenderable();\n        this.renderLocalTransform();\n        this.renderElement();\n        this.renderInnerContent();\n        if (this._isFirstFrame) {\n          this._isFirstFrame = false;\n        }\n      },\n      renderInnerContent: function renderInnerContent() {},\n      prepareFrame: function prepareFrame(num) {\n        this._mdf = false;\n        this.prepareRenderableFrame(num);\n        this.prepareProperties(num, this.isInRange);\n        this.checkTransparency();\n      },\n      destroy: function destroy() {\n        this.innerElem = null;\n        this.destroyBaseElement();\n      }\n    };\n    extendPrototype([RenderableElement, createProxyFunction(_prototype)], RenderableDOMElement);\n  })();\n\n  function IImageElement(data, globalData, comp) {\n    this.assetData = globalData.getAssetData(data.refId);\n    if (this.assetData && this.assetData.sid) {\n      this.assetData = globalData.slotManager.getProp(this.assetData);\n    }\n    this.initElement(data, globalData, comp);\n    this.sourceRect = {\n      top: 0,\n      left: 0,\n      width: this.assetData.w,\n      height: this.assetData.h\n    };\n  }\n  extendPrototype([BaseElement, TransformElement, SVGBaseElement, HierarchyElement, FrameElement, RenderableDOMElement], IImageElement);\n  IImageElement.prototype.createContent = function () {\n    var assetPath = this.globalData.getAssetsPath(this.assetData);\n    this.innerElem = createNS('image');\n    this.innerElem.setAttribute('width', this.assetData.w + 'px');\n    this.innerElem.setAttribute('height', this.assetData.h + 'px');\n    this.innerElem.setAttribute('preserveAspectRatio', this.assetData.pr || this.globalData.renderConfig.imagePreserveAspectRatio);\n    this.innerElem.setAttributeNS('http://www.w3.org/1999/xlink', 'href', assetPath);\n    this.layerElement.appendChild(this.innerElem);\n  };\n  IImageElement.prototype.sourceRectAtTime = function () {\n    return this.sourceRect;\n  };\n\n  function ProcessedElement(element, position) {\n    this.elem = element;\n    this.pos = position;\n  }\n\n  function IShapeElement() {}\n  IShapeElement.prototype = {\n    addShapeToModifiers: function addShapeToModifiers(data) {\n      var i;\n      var len = this.shapeModifiers.length;\n      for (i = 0; i < len; i += 1) {\n        this.shapeModifiers[i].addShape(data);\n      }\n    },\n    isShapeInAnimatedModifiers: function isShapeInAnimatedModifiers(data) {\n      var i = 0;\n      var len = this.shapeModifiers.length;\n      while (i < len) {\n        if (this.shapeModifiers[i].isAnimatedWithShape(data)) {\n          return true;\n        }\n      }\n      return false;\n    },\n    renderModifiers: function renderModifiers() {\n      if (!this.shapeModifiers.length) {\n        return;\n      }\n      var i;\n      var len = this.shapes.length;\n      for (i = 0; i < len; i += 1) {\n        this.shapes[i].sh.reset();\n      }\n      len = this.shapeModifiers.length;\n      var shouldBreakProcess;\n      for (i = len - 1; i >= 0; i -= 1) {\n        shouldBreakProcess = this.shapeModifiers[i].processShapes(this._isFirstFrame);\n        // workaround to fix cases where a repeater resets the shape so the following processes get called twice\n        // TODO: find a better solution for this\n        if (shouldBreakProcess) {\n          break;\n        }\n      }\n    },\n    searchProcessedElement: function searchProcessedElement(elem) {\n      var elements = this.processedElements;\n      var i = 0;\n      var len = elements.length;\n      while (i < len) {\n        if (elements[i].elem === elem) {\n          return elements[i].pos;\n        }\n        i += 1;\n      }\n      return 0;\n    },\n    addProcessedElement: function addProcessedElement(elem, pos) {\n      var elements = this.processedElements;\n      var i = elements.length;\n      while (i) {\n        i -= 1;\n        if (elements[i].elem === elem) {\n          elements[i].pos = pos;\n          return;\n        }\n      }\n      elements.push(new ProcessedElement(elem, pos));\n    },\n    prepareFrame: function prepareFrame(num) {\n      this.prepareRenderableFrame(num);\n      this.prepareProperties(num, this.isInRange);\n    }\n  };\n\n  var lineCapEnum = {\n    1: 'butt',\n    2: 'round',\n    3: 'square'\n  };\n  var lineJoinEnum = {\n    1: 'miter',\n    2: 'round',\n    3: 'bevel'\n  };\n\n  function SVGShapeData(transformers, level, shape) {\n    this.caches = [];\n    this.styles = [];\n    this.transformers = transformers;\n    this.lStr = '';\n    this.sh = shape;\n    this.lvl = level;\n    // TODO find if there are some cases where _isAnimated can be false.\n    // For now, since shapes add up with other shapes. They have to be calculated every time.\n    // One way of finding out is checking if all styles associated to this shape depend only of this shape\n    this._isAnimated = !!shape.k;\n    // TODO: commenting this for now since all shapes are animated\n    var i = 0;\n    var len = transformers.length;\n    while (i < len) {\n      if (transformers[i].mProps.dynamicProperties.length) {\n        this._isAnimated = true;\n        break;\n      }\n      i += 1;\n    }\n  }\n  SVGShapeData.prototype.setAsAnimated = function () {\n    this._isAnimated = true;\n  };\n\n  function SVGStyleData(data, level) {\n    this.data = data;\n    this.type = data.ty;\n    this.d = '';\n    this.lvl = level;\n    this._mdf = false;\n    this.closed = data.hd === true;\n    this.pElem = createNS('path');\n    this.msElem = null;\n  }\n  SVGStyleData.prototype.reset = function () {\n    this.d = '';\n    this._mdf = false;\n  };\n\n  function DashProperty(elem, data, renderer, container) {\n    this.elem = elem;\n    this.frameId = -1;\n    this.dataProps = createSizedArray(data.length);\n    this.renderer = renderer;\n    this.k = false;\n    this.dashStr = '';\n    this.dashArray = createTypedArray('float32', data.length ? data.length - 1 : 0);\n    this.dashoffset = createTypedArray('float32', 1);\n    this.initDynamicPropertyContainer(container);\n    var i;\n    var len = data.length || 0;\n    var prop;\n    for (i = 0; i < len; i += 1) {\n      prop = PropertyFactory.getProp(elem, data[i].v, 0, 0, this);\n      this.k = prop.k || this.k;\n      this.dataProps[i] = {\n        n: data[i].n,\n        p: prop\n      };\n    }\n    if (!this.k) {\n      this.getValue(true);\n    }\n    this._isAnimated = this.k;\n  }\n  DashProperty.prototype.getValue = function (forceRender) {\n    if (this.elem.globalData.frameId === this.frameId && !forceRender) {\n      return;\n    }\n    this.frameId = this.elem.globalData.frameId;\n    this.iterateDynamicProperties();\n    this._mdf = this._mdf || forceRender;\n    if (this._mdf) {\n      var i = 0;\n      var len = this.dataProps.length;\n      if (this.renderer === 'svg') {\n        this.dashStr = '';\n      }\n      for (i = 0; i < len; i += 1) {\n        if (this.dataProps[i].n !== 'o') {\n          if (this.renderer === 'svg') {\n            this.dashStr += ' ' + this.dataProps[i].p.v;\n          } else {\n            this.dashArray[i] = this.dataProps[i].p.v;\n          }\n        } else {\n          this.dashoffset[0] = this.dataProps[i].p.v;\n        }\n      }\n    }\n  };\n  extendPrototype([DynamicPropertyContainer], DashProperty);\n\n  function SVGStrokeStyleData(elem, data, styleOb) {\n    this.initDynamicPropertyContainer(elem);\n    this.getValue = this.iterateDynamicProperties;\n    this.o = PropertyFactory.getProp(elem, data.o, 0, 0.01, this);\n    this.w = PropertyFactory.getProp(elem, data.w, 0, null, this);\n    this.d = new DashProperty(elem, data.d || {}, 'svg', this);\n    this.c = PropertyFactory.getProp(elem, data.c, 1, 255, this);\n    this.style = styleOb;\n    this._isAnimated = !!this._isAnimated;\n  }\n  extendPrototype([DynamicPropertyContainer], SVGStrokeStyleData);\n\n  function SVGFillStyleData(elem, data, styleOb) {\n    this.initDynamicPropertyContainer(elem);\n    this.getValue = this.iterateDynamicProperties;\n    this.o = PropertyFactory.getProp(elem, data.o, 0, 0.01, this);\n    this.c = PropertyFactory.getProp(elem, data.c, 1, 255, this);\n    this.style = styleOb;\n  }\n  extendPrototype([DynamicPropertyContainer], SVGFillStyleData);\n\n  function SVGNoStyleData(elem, data, styleOb) {\n    this.initDynamicPropertyContainer(elem);\n    this.getValue = this.iterateDynamicProperties;\n    this.style = styleOb;\n  }\n  extendPrototype([DynamicPropertyContainer], SVGNoStyleData);\n\n  function GradientProperty(elem, data, container) {\n    this.data = data;\n    this.c = createTypedArray('uint8c', data.p * 4);\n    var cLength = data.k.k[0].s ? data.k.k[0].s.length - data.p * 4 : data.k.k.length - data.p * 4;\n    this.o = createTypedArray('float32', cLength);\n    this._cmdf = false;\n    this._omdf = false;\n    this._collapsable = this.checkCollapsable();\n    this._hasOpacity = cLength;\n    this.initDynamicPropertyContainer(container);\n    this.prop = PropertyFactory.getProp(elem, data.k, 1, null, this);\n    this.k = this.prop.k;\n    this.getValue(true);\n  }\n  GradientProperty.prototype.comparePoints = function (values, points) {\n    var i = 0;\n    var len = this.o.length / 2;\n    var diff;\n    while (i < len) {\n      diff = Math.abs(values[i * 4] - values[points * 4 + i * 2]);\n      if (diff > 0.01) {\n        return false;\n      }\n      i += 1;\n    }\n    return true;\n  };\n  GradientProperty.prototype.checkCollapsable = function () {\n    if (this.o.length / 2 !== this.c.length / 4) {\n      return false;\n    }\n    if (this.data.k.k[0].s) {\n      var i = 0;\n      var len = this.data.k.k.length;\n      while (i < len) {\n        if (!this.comparePoints(this.data.k.k[i].s, this.data.p)) {\n          return false;\n        }\n        i += 1;\n      }\n    } else if (!this.comparePoints(this.data.k.k, this.data.p)) {\n      return false;\n    }\n    return true;\n  };\n  GradientProperty.prototype.getValue = function (forceRender) {\n    this.prop.getValue();\n    this._mdf = false;\n    this._cmdf = false;\n    this._omdf = false;\n    if (this.prop._mdf || forceRender) {\n      var i;\n      var len = this.data.p * 4;\n      var mult;\n      var val;\n      for (i = 0; i < len; i += 1) {\n        mult = i % 4 === 0 ? 100 : 255;\n        val = Math.round(this.prop.v[i] * mult);\n        if (this.c[i] !== val) {\n          this.c[i] = val;\n          this._cmdf = !forceRender;\n        }\n      }\n      if (this.o.length) {\n        len = this.prop.v.length;\n        for (i = this.data.p * 4; i < len; i += 1) {\n          mult = i % 2 === 0 ? 100 : 1;\n          val = i % 2 === 0 ? Math.round(this.prop.v[i] * 100) : this.prop.v[i];\n          if (this.o[i - this.data.p * 4] !== val) {\n            this.o[i - this.data.p * 4] = val;\n            this._omdf = !forceRender;\n          }\n        }\n      }\n      this._mdf = !forceRender;\n    }\n  };\n  extendPrototype([DynamicPropertyContainer], GradientProperty);\n\n  function SVGGradientFillStyleData(elem, data, styleOb) {\n    this.initDynamicPropertyContainer(elem);\n    this.getValue = this.iterateDynamicProperties;\n    this.initGradientData(elem, data, styleOb);\n  }\n  SVGGradientFillStyleData.prototype.initGradientData = function (elem, data, styleOb) {\n    this.o = PropertyFactory.getProp(elem, data.o, 0, 0.01, this);\n    this.s = PropertyFactory.getProp(elem, data.s, 1, null, this);\n    this.e = PropertyFactory.getProp(elem, data.e, 1, null, this);\n    this.h = PropertyFactory.getProp(elem, data.h || {\n      k: 0\n    }, 0, 0.01, this);\n    this.a = PropertyFactory.getProp(elem, data.a || {\n      k: 0\n    }, 0, degToRads, this);\n    this.g = new GradientProperty(elem, data.g, this);\n    this.style = styleOb;\n    this.stops = [];\n    this.setGradientData(styleOb.pElem, data);\n    this.setGradientOpacity(data, styleOb);\n    this._isAnimated = !!this._isAnimated;\n  };\n  SVGGradientFillStyleData.prototype.setGradientData = function (pathElement, data) {\n    var gradientId = createElementID();\n    var gfill = createNS(data.t === 1 ? 'linearGradient' : 'radialGradient');\n    gfill.setAttribute('id', gradientId);\n    gfill.setAttribute('spreadMethod', 'pad');\n    gfill.setAttribute('gradientUnits', 'userSpaceOnUse');\n    var stops = [];\n    var stop;\n    var j;\n    var jLen;\n    jLen = data.g.p * 4;\n    for (j = 0; j < jLen; j += 4) {\n      stop = createNS('stop');\n      gfill.appendChild(stop);\n      stops.push(stop);\n    }\n    pathElement.setAttribute(data.ty === 'gf' ? 'fill' : 'stroke', 'url(' + getLocationHref() + '#' + gradientId + ')');\n    this.gf = gfill;\n    this.cst = stops;\n  };\n  SVGGradientFillStyleData.prototype.setGradientOpacity = function (data, styleOb) {\n    if (this.g._hasOpacity && !this.g._collapsable) {\n      var stop;\n      var j;\n      var jLen;\n      var mask = createNS('mask');\n      var maskElement = createNS('path');\n      mask.appendChild(maskElement);\n      var opacityId = createElementID();\n      var maskId = createElementID();\n      mask.setAttribute('id', maskId);\n      var opFill = createNS(data.t === 1 ? 'linearGradient' : 'radialGradient');\n      opFill.setAttribute('id', opacityId);\n      opFill.setAttribute('spreadMethod', 'pad');\n      opFill.setAttribute('gradientUnits', 'userSpaceOnUse');\n      jLen = data.g.k.k[0].s ? data.g.k.k[0].s.length : data.g.k.k.length;\n      var stops = this.stops;\n      for (j = data.g.p * 4; j < jLen; j += 2) {\n        stop = createNS('stop');\n        stop.setAttribute('stop-color', 'rgb(255,255,255)');\n        opFill.appendChild(stop);\n        stops.push(stop);\n      }\n      maskElement.setAttribute(data.ty === 'gf' ? 'fill' : 'stroke', 'url(' + getLocationHref() + '#' + opacityId + ')');\n      if (data.ty === 'gs') {\n        maskElement.setAttribute('stroke-linecap', lineCapEnum[data.lc || 2]);\n        maskElement.setAttribute('stroke-linejoin', lineJoinEnum[data.lj || 2]);\n        if (data.lj === 1) {\n          maskElement.setAttribute('stroke-miterlimit', data.ml);\n        }\n      }\n      this.of = opFill;\n      this.ms = mask;\n      this.ost = stops;\n      this.maskId = maskId;\n      styleOb.msElem = maskElement;\n    }\n  };\n  extendPrototype([DynamicPropertyContainer], SVGGradientFillStyleData);\n\n  function SVGGradientStrokeStyleData(elem, data, styleOb) {\n    this.initDynamicPropertyContainer(elem);\n    this.getValue = this.iterateDynamicProperties;\n    this.w = PropertyFactory.getProp(elem, data.w, 0, null, this);\n    this.d = new DashProperty(elem, data.d || {}, 'svg', this);\n    this.initGradientData(elem, data, styleOb);\n    this._isAnimated = !!this._isAnimated;\n  }\n  extendPrototype([SVGGradientFillStyleData, DynamicPropertyContainer], SVGGradientStrokeStyleData);\n\n  function ShapeGroupData() {\n    this.it = [];\n    this.prevViewData = [];\n    this.gr = createNS('g');\n  }\n\n  function SVGTransformData(mProps, op, container) {\n    this.transform = {\n      mProps: mProps,\n      op: op,\n      container: container\n    };\n    this.elements = [];\n    this._isAnimated = this.transform.mProps.dynamicProperties.length || this.transform.op.effectsSequence.length;\n  }\n\n  var buildShapeString = function buildShapeString(pathNodes, length, closed, mat) {\n    if (length === 0) {\n      return '';\n    }\n    var _o = pathNodes.o;\n    var _i = pathNodes.i;\n    var _v = pathNodes.v;\n    var i;\n    var shapeString = ' M' + mat.applyToPointStringified(_v[0][0], _v[0][1]);\n    for (i = 1; i < length; i += 1) {\n      shapeString += ' C' + mat.applyToPointStringified(_o[i - 1][0], _o[i - 1][1]) + ' ' + mat.applyToPointStringified(_i[i][0], _i[i][1]) + ' ' + mat.applyToPointStringified(_v[i][0], _v[i][1]);\n    }\n    if (closed && length) {\n      shapeString += ' C' + mat.applyToPointStringified(_o[i - 1][0], _o[i - 1][1]) + ' ' + mat.applyToPointStringified(_i[0][0], _i[0][1]) + ' ' + mat.applyToPointStringified(_v[0][0], _v[0][1]);\n      shapeString += 'z';\n    }\n    return shapeString;\n  };\n\n  var SVGElementsRenderer = function () {\n    var _identityMatrix = new Matrix();\n    var _matrixHelper = new Matrix();\n    var ob = {\n      createRenderFunction: createRenderFunction\n    };\n    function createRenderFunction(data) {\n      switch (data.ty) {\n        case 'fl':\n          return renderFill;\n        case 'gf':\n          return renderGradient;\n        case 'gs':\n          return renderGradientStroke;\n        case 'st':\n          return renderStroke;\n        case 'sh':\n        case 'el':\n        case 'rc':\n        case 'sr':\n          return renderPath;\n        case 'tr':\n          return renderContentTransform;\n        case 'no':\n          return renderNoop;\n        default:\n          return null;\n      }\n    }\n    function renderContentTransform(styleData, itemData, isFirstFrame) {\n      if (isFirstFrame || itemData.transform.op._mdf) {\n        itemData.transform.container.setAttribute('opacity', itemData.transform.op.v);\n      }\n      if (isFirstFrame || itemData.transform.mProps._mdf) {\n        itemData.transform.container.setAttribute('transform', itemData.transform.mProps.v.to2dCSS());\n      }\n    }\n    function renderNoop() {}\n    function renderPath(styleData, itemData, isFirstFrame) {\n      var j;\n      var jLen;\n      var pathStringTransformed;\n      var redraw;\n      var pathNodes;\n      var l;\n      var lLen = itemData.styles.length;\n      var lvl = itemData.lvl;\n      var paths;\n      var mat;\n      var iterations;\n      var k;\n      for (l = 0; l < lLen; l += 1) {\n        redraw = itemData.sh._mdf || isFirstFrame;\n        if (itemData.styles[l].lvl < lvl) {\n          mat = _matrixHelper.reset();\n          iterations = lvl - itemData.styles[l].lvl;\n          k = itemData.transformers.length - 1;\n          while (!redraw && iterations > 0) {\n            redraw = itemData.transformers[k].mProps._mdf || redraw;\n            iterations -= 1;\n            k -= 1;\n          }\n          if (redraw) {\n            iterations = lvl - itemData.styles[l].lvl;\n            k = itemData.transformers.length - 1;\n            while (iterations > 0) {\n              mat.multiply(itemData.transformers[k].mProps.v);\n              iterations -= 1;\n              k -= 1;\n            }\n          }\n        } else {\n          mat = _identityMatrix;\n        }\n        paths = itemData.sh.paths;\n        jLen = paths._length;\n        if (redraw) {\n          pathStringTransformed = '';\n          for (j = 0; j < jLen; j += 1) {\n            pathNodes = paths.shapes[j];\n            if (pathNodes && pathNodes._length) {\n              pathStringTransformed += buildShapeString(pathNodes, pathNodes._length, pathNodes.c, mat);\n            }\n          }\n          itemData.caches[l] = pathStringTransformed;\n        } else {\n          pathStringTransformed = itemData.caches[l];\n        }\n        itemData.styles[l].d += styleData.hd === true ? '' : pathStringTransformed;\n        itemData.styles[l]._mdf = redraw || itemData.styles[l]._mdf;\n      }\n    }\n    function renderFill(styleData, itemData, isFirstFrame) {\n      var styleElem = itemData.style;\n      if (itemData.c._mdf || isFirstFrame) {\n        styleElem.pElem.setAttribute('fill', 'rgb(' + bmFloor(itemData.c.v[0]) + ',' + bmFloor(itemData.c.v[1]) + ',' + bmFloor(itemData.c.v[2]) + ')');\n      }\n      if (itemData.o._mdf || isFirstFrame) {\n        styleElem.pElem.setAttribute('fill-opacity', itemData.o.v);\n      }\n    }\n    function renderGradientStroke(styleData, itemData, isFirstFrame) {\n      renderGradient(styleData, itemData, isFirstFrame);\n      renderStroke(styleData, itemData, isFirstFrame);\n    }\n    function renderGradient(styleData, itemData, isFirstFrame) {\n      var gfill = itemData.gf;\n      var hasOpacity = itemData.g._hasOpacity;\n      var pt1 = itemData.s.v;\n      var pt2 = itemData.e.v;\n      if (itemData.o._mdf || isFirstFrame) {\n        var attr = styleData.ty === 'gf' ? 'fill-opacity' : 'stroke-opacity';\n        itemData.style.pElem.setAttribute(attr, itemData.o.v);\n      }\n      if (itemData.s._mdf || isFirstFrame) {\n        var attr1 = styleData.t === 1 ? 'x1' : 'cx';\n        var attr2 = attr1 === 'x1' ? 'y1' : 'cy';\n        gfill.setAttribute(attr1, pt1[0]);\n        gfill.setAttribute(attr2, pt1[1]);\n        if (hasOpacity && !itemData.g._collapsable) {\n          itemData.of.setAttribute(attr1, pt1[0]);\n          itemData.of.setAttribute(attr2, pt1[1]);\n        }\n      }\n      var stops;\n      var i;\n      var len;\n      var stop;\n      if (itemData.g._cmdf || isFirstFrame) {\n        stops = itemData.cst;\n        var cValues = itemData.g.c;\n        len = stops.length;\n        for (i = 0; i < len; i += 1) {\n          stop = stops[i];\n          stop.setAttribute('offset', cValues[i * 4] + '%');\n          stop.setAttribute('stop-color', 'rgb(' + cValues[i * 4 + 1] + ',' + cValues[i * 4 + 2] + ',' + cValues[i * 4 + 3] + ')');\n        }\n      }\n      if (hasOpacity && (itemData.g._omdf || isFirstFrame)) {\n        var oValues = itemData.g.o;\n        if (itemData.g._collapsable) {\n          stops = itemData.cst;\n        } else {\n          stops = itemData.ost;\n        }\n        len = stops.length;\n        for (i = 0; i < len; i += 1) {\n          stop = stops[i];\n          if (!itemData.g._collapsable) {\n            stop.setAttribute('offset', oValues[i * 2] + '%');\n          }\n          stop.setAttribute('stop-opacity', oValues[i * 2 + 1]);\n        }\n      }\n      if (styleData.t === 1) {\n        if (itemData.e._mdf || isFirstFrame) {\n          gfill.setAttribute('x2', pt2[0]);\n          gfill.setAttribute('y2', pt2[1]);\n          if (hasOpacity && !itemData.g._collapsable) {\n            itemData.of.setAttribute('x2', pt2[0]);\n            itemData.of.setAttribute('y2', pt2[1]);\n          }\n        }\n      } else {\n        var rad;\n        if (itemData.s._mdf || itemData.e._mdf || isFirstFrame) {\n          rad = Math.sqrt(Math.pow(pt1[0] - pt2[0], 2) + Math.pow(pt1[1] - pt2[1], 2));\n          gfill.setAttribute('r', rad);\n          if (hasOpacity && !itemData.g._collapsable) {\n            itemData.of.setAttribute('r', rad);\n          }\n        }\n        if (itemData.s._mdf || itemData.e._mdf || itemData.h._mdf || itemData.a._mdf || isFirstFrame) {\n          if (!rad) {\n            rad = Math.sqrt(Math.pow(pt1[0] - pt2[0], 2) + Math.pow(pt1[1] - pt2[1], 2));\n          }\n          var ang = Math.atan2(pt2[1] - pt1[1], pt2[0] - pt1[0]);\n          var percent = itemData.h.v;\n          if (percent >= 1) {\n            percent = 0.99;\n          } else if (percent <= -1) {\n            percent = -0.99;\n          }\n          var dist = rad * percent;\n          var x = Math.cos(ang + itemData.a.v) * dist + pt1[0];\n          var y = Math.sin(ang + itemData.a.v) * dist + pt1[1];\n          gfill.setAttribute('fx', x);\n          gfill.setAttribute('fy', y);\n          if (hasOpacity && !itemData.g._collapsable) {\n            itemData.of.setAttribute('fx', x);\n            itemData.of.setAttribute('fy', y);\n          }\n        }\n        // gfill.setAttribute('fy','200');\n      }\n    }\n    function renderStroke(styleData, itemData, isFirstFrame) {\n      var styleElem = itemData.style;\n      var d = itemData.d;\n      if (d && (d._mdf || isFirstFrame) && d.dashStr) {\n        styleElem.pElem.setAttribute('stroke-dasharray', d.dashStr);\n        styleElem.pElem.setAttribute('stroke-dashoffset', d.dashoffset[0]);\n      }\n      if (itemData.c && (itemData.c._mdf || isFirstFrame)) {\n        styleElem.pElem.setAttribute('stroke', 'rgb(' + bmFloor(itemData.c.v[0]) + ',' + bmFloor(itemData.c.v[1]) + ',' + bmFloor(itemData.c.v[2]) + ')');\n      }\n      if (itemData.o._mdf || isFirstFrame) {\n        styleElem.pElem.setAttribute('stroke-opacity', itemData.o.v);\n      }\n      if (itemData.w._mdf || isFirstFrame) {\n        styleElem.pElem.setAttribute('stroke-width', itemData.w.v);\n        if (styleElem.msElem) {\n          styleElem.msElem.setAttribute('stroke-width', itemData.w.v);\n        }\n      }\n    }\n    return ob;\n  }();\n\n  function SVGShapeElement(data, globalData, comp) {\n    // List of drawable elements\n    this.shapes = [];\n    // Full shape data\n    this.shapesData = data.shapes;\n    // List of styles that will be applied to shapes\n    this.stylesList = [];\n    // List of modifiers that will be applied to shapes\n    this.shapeModifiers = [];\n    // List of items in shape tree\n    this.itemsData = [];\n    // List of items in previous shape tree\n    this.processedElements = [];\n    // List of animated components\n    this.animatedContents = [];\n    this.initElement(data, globalData, comp);\n    // Moving any property that doesn't get too much access after initialization because of v8 way of handling more than 10 properties.\n    // List of elements that have been created\n    this.prevViewData = [];\n    // Moving any property that doesn't get too much access after initialization because of v8 way of handling more than 10 properties.\n  }\n  extendPrototype([BaseElement, TransformElement, SVGBaseElement, IShapeElement, HierarchyElement, FrameElement, RenderableDOMElement], SVGShapeElement);\n  SVGShapeElement.prototype.initSecondaryElement = function () {};\n  SVGShapeElement.prototype.identityMatrix = new Matrix();\n  SVGShapeElement.prototype.buildExpressionInterface = function () {};\n  SVGShapeElement.prototype.createContent = function () {\n    this.searchShapes(this.shapesData, this.itemsData, this.prevViewData, this.layerElement, 0, [], true);\n    this.filterUniqueShapes();\n  };\n\n  /*\n  This method searches for multiple shapes that affect a single element and one of them is animated\n  */\n  SVGShapeElement.prototype.filterUniqueShapes = function () {\n    var i;\n    var len = this.shapes.length;\n    var shape;\n    var j;\n    var jLen = this.stylesList.length;\n    var style;\n    var tempShapes = [];\n    var areAnimated = false;\n    for (j = 0; j < jLen; j += 1) {\n      style = this.stylesList[j];\n      areAnimated = false;\n      tempShapes.length = 0;\n      for (i = 0; i < len; i += 1) {\n        shape = this.shapes[i];\n        if (shape.styles.indexOf(style) !== -1) {\n          tempShapes.push(shape);\n          areAnimated = shape._isAnimated || areAnimated;\n        }\n      }\n      if (tempShapes.length > 1 && areAnimated) {\n        this.setShapesAsAnimated(tempShapes);\n      }\n    }\n  };\n  SVGShapeElement.prototype.setShapesAsAnimated = function (shapes) {\n    var i;\n    var len = shapes.length;\n    for (i = 0; i < len; i += 1) {\n      shapes[i].setAsAnimated();\n    }\n  };\n  SVGShapeElement.prototype.createStyleElement = function (data, level) {\n    // TODO: prevent drawing of hidden styles\n    var elementData;\n    var styleOb = new SVGStyleData(data, level);\n    var pathElement = styleOb.pElem;\n    if (data.ty === 'st') {\n      elementData = new SVGStrokeStyleData(this, data, styleOb);\n    } else if (data.ty === 'fl') {\n      elementData = new SVGFillStyleData(this, data, styleOb);\n    } else if (data.ty === 'gf' || data.ty === 'gs') {\n      var GradientConstructor = data.ty === 'gf' ? SVGGradientFillStyleData : SVGGradientStrokeStyleData;\n      elementData = new GradientConstructor(this, data, styleOb);\n      this.globalData.defs.appendChild(elementData.gf);\n      if (elementData.maskId) {\n        this.globalData.defs.appendChild(elementData.ms);\n        this.globalData.defs.appendChild(elementData.of);\n        pathElement.setAttribute('mask', 'url(' + getLocationHref() + '#' + elementData.maskId + ')');\n      }\n    } else if (data.ty === 'no') {\n      elementData = new SVGNoStyleData(this, data, styleOb);\n    }\n    if (data.ty === 'st' || data.ty === 'gs') {\n      pathElement.setAttribute('stroke-linecap', lineCapEnum[data.lc || 2]);\n      pathElement.setAttribute('stroke-linejoin', lineJoinEnum[data.lj || 2]);\n      pathElement.setAttribute('fill-opacity', '0');\n      if (data.lj === 1) {\n        pathElement.setAttribute('stroke-miterlimit', data.ml);\n      }\n    }\n    if (data.r === 2) {\n      pathElement.setAttribute('fill-rule', 'evenodd');\n    }\n    if (data.ln) {\n      pathElement.setAttribute('id', data.ln);\n    }\n    if (data.cl) {\n      pathElement.setAttribute('class', data.cl);\n    }\n    if (data.bm) {\n      pathElement.style['mix-blend-mode'] = getBlendMode(data.bm);\n    }\n    this.stylesList.push(styleOb);\n    this.addToAnimatedContents(data, elementData);\n    return elementData;\n  };\n  SVGShapeElement.prototype.createGroupElement = function (data) {\n    var elementData = new ShapeGroupData();\n    if (data.ln) {\n      elementData.gr.setAttribute('id', data.ln);\n    }\n    if (data.cl) {\n      elementData.gr.setAttribute('class', data.cl);\n    }\n    if (data.bm) {\n      elementData.gr.style['mix-blend-mode'] = getBlendMode(data.bm);\n    }\n    return elementData;\n  };\n  SVGShapeElement.prototype.createTransformElement = function (data, container) {\n    var transformProperty = TransformPropertyFactory.getTransformProperty(this, data, this);\n    var elementData = new SVGTransformData(transformProperty, transformProperty.o, container);\n    this.addToAnimatedContents(data, elementData);\n    return elementData;\n  };\n  SVGShapeElement.prototype.createShapeElement = function (data, ownTransformers, level) {\n    var ty = 4;\n    if (data.ty === 'rc') {\n      ty = 5;\n    } else if (data.ty === 'el') {\n      ty = 6;\n    } else if (data.ty === 'sr') {\n      ty = 7;\n    }\n    var shapeProperty = ShapePropertyFactory.getShapeProp(this, data, ty, this);\n    var elementData = new SVGShapeData(ownTransformers, level, shapeProperty);\n    this.shapes.push(elementData);\n    this.addShapeToModifiers(elementData);\n    this.addToAnimatedContents(data, elementData);\n    return elementData;\n  };\n  SVGShapeElement.prototype.addToAnimatedContents = function (data, element) {\n    var i = 0;\n    var len = this.animatedContents.length;\n    while (i < len) {\n      if (this.animatedContents[i].element === element) {\n        return;\n      }\n      i += 1;\n    }\n    this.animatedContents.push({\n      fn: SVGElementsRenderer.createRenderFunction(data),\n      element: element,\n      data: data\n    });\n  };\n  SVGShapeElement.prototype.setElementStyles = function (elementData) {\n    var arr = elementData.styles;\n    var j;\n    var jLen = this.stylesList.length;\n    for (j = 0; j < jLen; j += 1) {\n      if (arr.indexOf(this.stylesList[j]) === -1 && !this.stylesList[j].closed) {\n        arr.push(this.stylesList[j]);\n      }\n    }\n  };\n  SVGShapeElement.prototype.reloadShapes = function () {\n    this._isFirstFrame = true;\n    var i;\n    var len = this.itemsData.length;\n    for (i = 0; i < len; i += 1) {\n      this.prevViewData[i] = this.itemsData[i];\n    }\n    this.searchShapes(this.shapesData, this.itemsData, this.prevViewData, this.layerElement, 0, [], true);\n    this.filterUniqueShapes();\n    len = this.dynamicProperties.length;\n    for (i = 0; i < len; i += 1) {\n      this.dynamicProperties[i].getValue();\n    }\n    this.renderModifiers();\n  };\n  SVGShapeElement.prototype.searchShapes = function (arr, itemsData, prevViewData, container, level, transformers, render) {\n    var ownTransformers = [].concat(transformers);\n    var i;\n    var len = arr.length - 1;\n    var j;\n    var jLen;\n    var ownStyles = [];\n    var ownModifiers = [];\n    var currentTransform;\n    var modifier;\n    var processedPos;\n    for (i = len; i >= 0; i -= 1) {\n      processedPos = this.searchProcessedElement(arr[i]);\n      if (!processedPos) {\n        arr[i]._render = render;\n      } else {\n        itemsData[i] = prevViewData[processedPos - 1];\n      }\n      if (arr[i].ty === 'fl' || arr[i].ty === 'st' || arr[i].ty === 'gf' || arr[i].ty === 'gs' || arr[i].ty === 'no') {\n        if (!processedPos) {\n          itemsData[i] = this.createStyleElement(arr[i], level);\n        } else {\n          itemsData[i].style.closed = arr[i].hd;\n        }\n        if (arr[i]._render) {\n          if (itemsData[i].style.pElem.parentNode !== container) {\n            container.appendChild(itemsData[i].style.pElem);\n          }\n        }\n        ownStyles.push(itemsData[i].style);\n      } else if (arr[i].ty === 'gr') {\n        if (!processedPos) {\n          itemsData[i] = this.createGroupElement(arr[i]);\n        } else {\n          jLen = itemsData[i].it.length;\n          for (j = 0; j < jLen; j += 1) {\n            itemsData[i].prevViewData[j] = itemsData[i].it[j];\n          }\n        }\n        this.searchShapes(arr[i].it, itemsData[i].it, itemsData[i].prevViewData, itemsData[i].gr, level + 1, ownTransformers, render);\n        if (arr[i]._render) {\n          if (itemsData[i].gr.parentNode !== container) {\n            container.appendChild(itemsData[i].gr);\n          }\n        }\n      } else if (arr[i].ty === 'tr') {\n        if (!processedPos) {\n          itemsData[i] = this.createTransformElement(arr[i], container);\n        }\n        currentTransform = itemsData[i].transform;\n        ownTransformers.push(currentTransform);\n      } else if (arr[i].ty === 'sh' || arr[i].ty === 'rc' || arr[i].ty === 'el' || arr[i].ty === 'sr') {\n        if (!processedPos) {\n          itemsData[i] = this.createShapeElement(arr[i], ownTransformers, level);\n        }\n        this.setElementStyles(itemsData[i]);\n      } else if (arr[i].ty === 'tm' || arr[i].ty === 'rd' || arr[i].ty === 'ms' || arr[i].ty === 'pb' || arr[i].ty === 'zz' || arr[i].ty === 'op') {\n        if (!processedPos) {\n          modifier = ShapeModifiers.getModifier(arr[i].ty);\n          modifier.init(this, arr[i]);\n          itemsData[i] = modifier;\n          this.shapeModifiers.push(modifier);\n        } else {\n          modifier = itemsData[i];\n          modifier.closed = false;\n        }\n        ownModifiers.push(modifier);\n      } else if (arr[i].ty === 'rp') {\n        if (!processedPos) {\n          modifier = ShapeModifiers.getModifier(arr[i].ty);\n          itemsData[i] = modifier;\n          modifier.init(this, arr, i, itemsData);\n          this.shapeModifiers.push(modifier);\n          render = false;\n        } else {\n          modifier = itemsData[i];\n          modifier.closed = true;\n        }\n        ownModifiers.push(modifier);\n      }\n      this.addProcessedElement(arr[i], i + 1);\n    }\n    len = ownStyles.length;\n    for (i = 0; i < len; i += 1) {\n      ownStyles[i].closed = true;\n    }\n    len = ownModifiers.length;\n    for (i = 0; i < len; i += 1) {\n      ownModifiers[i].closed = true;\n    }\n  };\n  SVGShapeElement.prototype.renderInnerContent = function () {\n    this.renderModifiers();\n    var i;\n    var len = this.stylesList.length;\n    for (i = 0; i < len; i += 1) {\n      this.stylesList[i].reset();\n    }\n    this.renderShape();\n    for (i = 0; i < len; i += 1) {\n      if (this.stylesList[i]._mdf || this._isFirstFrame) {\n        if (this.stylesList[i].msElem) {\n          this.stylesList[i].msElem.setAttribute('d', this.stylesList[i].d);\n          // Adding M0 0 fixes same mask bug on all browsers\n          this.stylesList[i].d = 'M0 0' + this.stylesList[i].d;\n        }\n        this.stylesList[i].pElem.setAttribute('d', this.stylesList[i].d || 'M0 0');\n      }\n    }\n  };\n  SVGShapeElement.prototype.renderShape = function () {\n    var i;\n    var len = this.animatedContents.length;\n    var animatedContent;\n    for (i = 0; i < len; i += 1) {\n      animatedContent = this.animatedContents[i];\n      if ((this._isFirstFrame || animatedContent.element._isAnimated) && animatedContent.data !== true) {\n        animatedContent.fn(animatedContent.data, animatedContent.element, this._isFirstFrame);\n      }\n    }\n  };\n  SVGShapeElement.prototype.destroy = function () {\n    this.destroyBaseElement();\n    this.shapesData = null;\n    this.itemsData = null;\n  };\n\n  function LetterProps(o, sw, sc, fc, m, p) {\n    this.o = o;\n    this.sw = sw;\n    this.sc = sc;\n    this.fc = fc;\n    this.m = m;\n    this.p = p;\n    this._mdf = {\n      o: true,\n      sw: !!sw,\n      sc: !!sc,\n      fc: !!fc,\n      m: true,\n      p: true\n    };\n  }\n  LetterProps.prototype.update = function (o, sw, sc, fc, m, p) {\n    this._mdf.o = false;\n    this._mdf.sw = false;\n    this._mdf.sc = false;\n    this._mdf.fc = false;\n    this._mdf.m = false;\n    this._mdf.p = false;\n    var updated = false;\n    if (this.o !== o) {\n      this.o = o;\n      this._mdf.o = true;\n      updated = true;\n    }\n    if (this.sw !== sw) {\n      this.sw = sw;\n      this._mdf.sw = true;\n      updated = true;\n    }\n    if (this.sc !== sc) {\n      this.sc = sc;\n      this._mdf.sc = true;\n      updated = true;\n    }\n    if (this.fc !== fc) {\n      this.fc = fc;\n      this._mdf.fc = true;\n      updated = true;\n    }\n    if (this.m !== m) {\n      this.m = m;\n      this._mdf.m = true;\n      updated = true;\n    }\n    if (p.length && (this.p[0] !== p[0] || this.p[1] !== p[1] || this.p[4] !== p[4] || this.p[5] !== p[5] || this.p[12] !== p[12] || this.p[13] !== p[13])) {\n      this.p = p;\n      this._mdf.p = true;\n      updated = true;\n    }\n    return updated;\n  };\n\n  function TextProperty(elem, data) {\n    this._frameId = initialDefaultFrame;\n    this.pv = '';\n    this.v = '';\n    this.kf = false;\n    this._isFirstFrame = true;\n    this._mdf = false;\n    if (data.d && data.d.sid) {\n      data.d = elem.globalData.slotManager.getProp(data.d);\n    }\n    this.data = data;\n    this.elem = elem;\n    this.comp = this.elem.comp;\n    this.keysIndex = 0;\n    this.canResize = false;\n    this.minimumFontSize = 1;\n    this.effectsSequence = [];\n    this.currentData = {\n      ascent: 0,\n      boxWidth: this.defaultBoxWidth,\n      f: '',\n      fStyle: '',\n      fWeight: '',\n      fc: '',\n      j: '',\n      justifyOffset: '',\n      l: [],\n      lh: 0,\n      lineWidths: [],\n      ls: '',\n      of: '',\n      s: '',\n      sc: '',\n      sw: 0,\n      t: 0,\n      tr: 0,\n      sz: 0,\n      ps: null,\n      fillColorAnim: false,\n      strokeColorAnim: false,\n      strokeWidthAnim: false,\n      yOffset: 0,\n      finalSize: 0,\n      finalText: [],\n      finalLineHeight: 0,\n      __complete: false\n    };\n    this.copyData(this.currentData, this.data.d.k[0].s);\n    if (!this.searchProperty()) {\n      this.completeTextData(this.currentData);\n    }\n  }\n  TextProperty.prototype.defaultBoxWidth = [0, 0];\n  TextProperty.prototype.copyData = function (obj, data) {\n    for (var s in data) {\n      if (Object.prototype.hasOwnProperty.call(data, s)) {\n        obj[s] = data[s];\n      }\n    }\n    return obj;\n  };\n  TextProperty.prototype.setCurrentData = function (data) {\n    if (!data.__complete) {\n      this.completeTextData(data);\n    }\n    this.currentData = data;\n    this.currentData.boxWidth = this.currentData.boxWidth || this.defaultBoxWidth;\n    this._mdf = true;\n  };\n  TextProperty.prototype.searchProperty = function () {\n    return this.searchKeyframes();\n  };\n  TextProperty.prototype.searchKeyframes = function () {\n    this.kf = this.data.d.k.length > 1;\n    if (this.kf) {\n      this.addEffect(this.getKeyframeValue.bind(this));\n    }\n    return this.kf;\n  };\n  TextProperty.prototype.addEffect = function (effectFunction) {\n    this.effectsSequence.push(effectFunction);\n    this.elem.addDynamicProperty(this);\n  };\n  TextProperty.prototype.getValue = function (_finalValue) {\n    if ((this.elem.globalData.frameId === this.frameId || !this.effectsSequence.length) && !_finalValue) {\n      return;\n    }\n    this.currentData.t = this.data.d.k[this.keysIndex].s.t;\n    var currentValue = this.currentData;\n    var currentIndex = this.keysIndex;\n    if (this.lock) {\n      this.setCurrentData(this.currentData);\n      return;\n    }\n    this.lock = true;\n    this._mdf = false;\n    var i;\n    var len = this.effectsSequence.length;\n    var finalValue = _finalValue || this.data.d.k[this.keysIndex].s;\n    for (i = 0; i < len; i += 1) {\n      // Checking if index changed to prevent creating a new object every time the expression updates.\n      if (currentIndex !== this.keysIndex) {\n        finalValue = this.effectsSequence[i](finalValue, finalValue.t);\n      } else {\n        finalValue = this.effectsSequence[i](this.currentData, finalValue.t);\n      }\n    }\n    if (currentValue !== finalValue) {\n      this.setCurrentData(finalValue);\n    }\n    this.v = this.currentData;\n    this.pv = this.v;\n    this.lock = false;\n    this.frameId = this.elem.globalData.frameId;\n  };\n  TextProperty.prototype.getKeyframeValue = function () {\n    var textKeys = this.data.d.k;\n    var frameNum = this.elem.comp.renderedFrame;\n    var i = 0;\n    var len = textKeys.length;\n    while (i <= len - 1) {\n      if (i === len - 1 || textKeys[i + 1].t > frameNum) {\n        break;\n      }\n      i += 1;\n    }\n    if (this.keysIndex !== i) {\n      this.keysIndex = i;\n    }\n    return this.data.d.k[this.keysIndex].s;\n  };\n  TextProperty.prototype.buildFinalText = function (text) {\n    var charactersArray = [];\n    var i = 0;\n    var len = text.length;\n    var charCode;\n    var secondCharCode;\n    var shouldCombine = false;\n    var shouldCombineNext = false;\n    var currentChars = '';\n    while (i < len) {\n      shouldCombine = shouldCombineNext;\n      shouldCombineNext = false;\n      charCode = text.charCodeAt(i);\n      currentChars = text.charAt(i);\n      if (FontManager.isCombinedCharacter(charCode)) {\n        shouldCombine = true;\n        // It's a potential surrogate pair (this is the High surrogate)\n      } else if (charCode >= 0xD800 && charCode <= 0xDBFF) {\n        if (FontManager.isRegionalFlag(text, i)) {\n          currentChars = text.substr(i, 14);\n        } else {\n          secondCharCode = text.charCodeAt(i + 1);\n          // It's a surrogate pair (this is the Low surrogate)\n          if (secondCharCode >= 0xDC00 && secondCharCode <= 0xDFFF) {\n            if (FontManager.isModifier(charCode, secondCharCode)) {\n              currentChars = text.substr(i, 2);\n              shouldCombine = true;\n            } else if (FontManager.isFlagEmoji(text.substr(i, 4))) {\n              currentChars = text.substr(i, 4);\n            } else {\n              currentChars = text.substr(i, 2);\n            }\n          }\n        }\n      } else if (charCode > 0xDBFF) {\n        secondCharCode = text.charCodeAt(i + 1);\n        if (FontManager.isVariationSelector(charCode)) {\n          shouldCombine = true;\n        }\n      } else if (FontManager.isZeroWidthJoiner(charCode)) {\n        shouldCombine = true;\n        shouldCombineNext = true;\n      }\n      if (shouldCombine) {\n        charactersArray[charactersArray.length - 1] += currentChars;\n        shouldCombine = false;\n      } else {\n        charactersArray.push(currentChars);\n      }\n      i += currentChars.length;\n    }\n    return charactersArray;\n  };\n  TextProperty.prototype.completeTextData = function (documentData) {\n    documentData.__complete = true;\n    var fontManager = this.elem.globalData.fontManager;\n    var data = this.data;\n    var letters = [];\n    var i;\n    var len;\n    var newLineFlag;\n    var index = 0;\n    var val;\n    var anchorGrouping = data.m.g;\n    var currentSize = 0;\n    var currentPos = 0;\n    var currentLine = 0;\n    var lineWidths = [];\n    var lineWidth = 0;\n    var maxLineWidth = 0;\n    var j;\n    var jLen;\n    var fontData = fontManager.getFontByName(documentData.f);\n    var charData;\n    var cLength = 0;\n    var fontProps = getFontProperties(fontData);\n    documentData.fWeight = fontProps.weight;\n    documentData.fStyle = fontProps.style;\n    documentData.finalSize = documentData.s;\n    documentData.finalText = this.buildFinalText(documentData.t);\n    len = documentData.finalText.length;\n    documentData.finalLineHeight = documentData.lh;\n    var trackingOffset = documentData.tr / 1000 * documentData.finalSize;\n    var charCode;\n    if (documentData.sz) {\n      var flag = true;\n      var boxWidth = documentData.sz[0];\n      var boxHeight = documentData.sz[1];\n      var currentHeight;\n      var finalText;\n      while (flag) {\n        finalText = this.buildFinalText(documentData.t);\n        currentHeight = 0;\n        lineWidth = 0;\n        len = finalText.length;\n        trackingOffset = documentData.tr / 1000 * documentData.finalSize;\n        var lastSpaceIndex = -1;\n        for (i = 0; i < len; i += 1) {\n          charCode = finalText[i].charCodeAt(0);\n          newLineFlag = false;\n          if (finalText[i] === ' ') {\n            lastSpaceIndex = i;\n          } else if (charCode === 13 || charCode === 3) {\n            lineWidth = 0;\n            newLineFlag = true;\n            currentHeight += documentData.finalLineHeight || documentData.finalSize * 1.2;\n          }\n          if (fontManager.chars) {\n            charData = fontManager.getCharData(finalText[i], fontData.fStyle, fontData.fFamily);\n            cLength = newLineFlag ? 0 : charData.w * documentData.finalSize / 100;\n          } else {\n            // tCanvasHelper.font = documentData.s + 'px '+ fontData.fFamily;\n            cLength = fontManager.measureText(finalText[i], documentData.f, documentData.finalSize);\n          }\n          if (lineWidth + cLength > boxWidth && finalText[i] !== ' ') {\n            if (lastSpaceIndex === -1) {\n              len += 1;\n            } else {\n              i = lastSpaceIndex;\n            }\n            currentHeight += documentData.finalLineHeight || documentData.finalSize * 1.2;\n            finalText.splice(i, lastSpaceIndex === i ? 1 : 0, '\\r');\n            // finalText = finalText.substr(0,i) + \"\\r\" + finalText.substr(i === lastSpaceIndex ? i + 1 : i);\n            lastSpaceIndex = -1;\n            lineWidth = 0;\n          } else {\n            lineWidth += cLength;\n            lineWidth += trackingOffset;\n          }\n        }\n        currentHeight += fontData.ascent * documentData.finalSize / 100;\n        if (this.canResize && documentData.finalSize > this.minimumFontSize && boxHeight < currentHeight) {\n          documentData.finalSize -= 1;\n          documentData.finalLineHeight = documentData.finalSize * documentData.lh / documentData.s;\n        } else {\n          documentData.finalText = finalText;\n          len = documentData.finalText.length;\n          flag = false;\n        }\n      }\n    }\n    lineWidth = -trackingOffset;\n    cLength = 0;\n    var uncollapsedSpaces = 0;\n    var currentChar;\n    for (i = 0; i < len; i += 1) {\n      newLineFlag = false;\n      currentChar = documentData.finalText[i];\n      charCode = currentChar.charCodeAt(0);\n      if (charCode === 13 || charCode === 3) {\n        uncollapsedSpaces = 0;\n        lineWidths.push(lineWidth);\n        maxLineWidth = lineWidth > maxLineWidth ? lineWidth : maxLineWidth;\n        lineWidth = -2 * trackingOffset;\n        val = '';\n        newLineFlag = true;\n        currentLine += 1;\n      } else {\n        val = currentChar;\n      }\n      if (fontManager.chars) {\n        charData = fontManager.getCharData(currentChar, fontData.fStyle, fontManager.getFontByName(documentData.f).fFamily);\n        cLength = newLineFlag ? 0 : charData.w * documentData.finalSize / 100;\n      } else {\n        // var charWidth = fontManager.measureText(val, documentData.f, documentData.finalSize);\n        // tCanvasHelper.font = documentData.finalSize + 'px '+ fontManager.getFontByName(documentData.f).fFamily;\n        cLength = fontManager.measureText(val, documentData.f, documentData.finalSize);\n      }\n\n      //\n      if (currentChar === ' ') {\n        uncollapsedSpaces += cLength + trackingOffset;\n      } else {\n        lineWidth += cLength + trackingOffset + uncollapsedSpaces;\n        uncollapsedSpaces = 0;\n      }\n      letters.push({\n        l: cLength,\n        an: cLength,\n        add: currentSize,\n        n: newLineFlag,\n        anIndexes: [],\n        val: val,\n        line: currentLine,\n        animatorJustifyOffset: 0\n      });\n      if (anchorGrouping == 2) {\n        // eslint-disable-line eqeqeq\n        currentSize += cLength;\n        if (val === '' || val === ' ' || i === len - 1) {\n          if (val === '' || val === ' ') {\n            currentSize -= cLength;\n          }\n          while (currentPos <= i) {\n            letters[currentPos].an = currentSize;\n            letters[currentPos].ind = index;\n            letters[currentPos].extra = cLength;\n            currentPos += 1;\n          }\n          index += 1;\n          currentSize = 0;\n        }\n      } else if (anchorGrouping == 3) {\n        // eslint-disable-line eqeqeq\n        currentSize += cLength;\n        if (val === '' || i === len - 1) {\n          if (val === '') {\n            currentSize -= cLength;\n          }\n          while (currentPos <= i) {\n            letters[currentPos].an = currentSize;\n            letters[currentPos].ind = index;\n            letters[currentPos].extra = cLength;\n            currentPos += 1;\n          }\n          currentSize = 0;\n          index += 1;\n        }\n      } else {\n        letters[index].ind = index;\n        letters[index].extra = 0;\n        index += 1;\n      }\n    }\n    documentData.l = letters;\n    maxLineWidth = lineWidth > maxLineWidth ? lineWidth : maxLineWidth;\n    lineWidths.push(lineWidth);\n    if (documentData.sz) {\n      documentData.boxWidth = documentData.sz[0];\n      documentData.justifyOffset = 0;\n    } else {\n      documentData.boxWidth = maxLineWidth;\n      switch (documentData.j) {\n        case 1:\n          documentData.justifyOffset = -documentData.boxWidth;\n          break;\n        case 2:\n          documentData.justifyOffset = -documentData.boxWidth / 2;\n          break;\n        default:\n          documentData.justifyOffset = 0;\n      }\n    }\n    documentData.lineWidths = lineWidths;\n    var animators = data.a;\n    var animatorData;\n    var letterData;\n    jLen = animators.length;\n    var based;\n    var ind;\n    var indexes = [];\n    for (j = 0; j < jLen; j += 1) {\n      animatorData = animators[j];\n      if (animatorData.a.sc) {\n        documentData.strokeColorAnim = true;\n      }\n      if (animatorData.a.sw) {\n        documentData.strokeWidthAnim = true;\n      }\n      if (animatorData.a.fc || animatorData.a.fh || animatorData.a.fs || animatorData.a.fb) {\n        documentData.fillColorAnim = true;\n      }\n      ind = 0;\n      based = animatorData.s.b;\n      for (i = 0; i < len; i += 1) {\n        letterData = letters[i];\n        letterData.anIndexes[j] = ind;\n        if (based == 1 && letterData.val !== '' || based == 2 && letterData.val !== '' && letterData.val !== ' ' || based == 3 && (letterData.n || letterData.val == ' ' || i == len - 1) || based == 4 && (letterData.n || i == len - 1)) {\n          // eslint-disable-line eqeqeq\n          if (animatorData.s.rn === 1) {\n            indexes.push(ind);\n          }\n          ind += 1;\n        }\n      }\n      data.a[j].s.totalChars = ind;\n      var currentInd = -1;\n      var newInd;\n      if (animatorData.s.rn === 1) {\n        for (i = 0; i < len; i += 1) {\n          letterData = letters[i];\n          if (currentInd != letterData.anIndexes[j]) {\n            // eslint-disable-line eqeqeq\n            currentInd = letterData.anIndexes[j];\n            newInd = indexes.splice(Math.floor(Math.random() * indexes.length), 1)[0];\n          }\n          letterData.anIndexes[j] = newInd;\n        }\n      }\n    }\n    documentData.yOffset = documentData.finalLineHeight || documentData.finalSize * 1.2;\n    documentData.ls = documentData.ls || 0;\n    documentData.ascent = fontData.ascent * documentData.finalSize / 100;\n  };\n  TextProperty.prototype.updateDocumentData = function (newData, index) {\n    index = index === undefined ? this.keysIndex : index;\n    var dData = this.copyData({}, this.data.d.k[index].s);\n    dData = this.copyData(dData, newData);\n    this.data.d.k[index].s = dData;\n    this.recalculate(index);\n    this.setCurrentData(dData);\n    this.elem.addDynamicProperty(this);\n  };\n  TextProperty.prototype.recalculate = function (index) {\n    var dData = this.data.d.k[index].s;\n    dData.__complete = false;\n    this.keysIndex = 0;\n    this._isFirstFrame = true;\n    this.getValue(dData);\n  };\n  TextProperty.prototype.canResizeFont = function (_canResize) {\n    this.canResize = _canResize;\n    this.recalculate(this.keysIndex);\n    this.elem.addDynamicProperty(this);\n  };\n  TextProperty.prototype.setMinimumFontSize = function (_fontValue) {\n    this.minimumFontSize = Math.floor(_fontValue) || 1;\n    this.recalculate(this.keysIndex);\n    this.elem.addDynamicProperty(this);\n  };\n\n  var TextSelectorProp = function () {\n    var max = Math.max;\n    var min = Math.min;\n    var floor = Math.floor;\n    function TextSelectorPropFactory(elem, data) {\n      this._currentTextLength = -1;\n      this.k = false;\n      this.data = data;\n      this.elem = elem;\n      this.comp = elem.comp;\n      this.finalS = 0;\n      this.finalE = 0;\n      this.initDynamicPropertyContainer(elem);\n      this.s = PropertyFactory.getProp(elem, data.s || {\n        k: 0\n      }, 0, 0, this);\n      if ('e' in data) {\n        this.e = PropertyFactory.getProp(elem, data.e, 0, 0, this);\n      } else {\n        this.e = {\n          v: 100\n        };\n      }\n      this.o = PropertyFactory.getProp(elem, data.o || {\n        k: 0\n      }, 0, 0, this);\n      this.xe = PropertyFactory.getProp(elem, data.xe || {\n        k: 0\n      }, 0, 0, this);\n      this.ne = PropertyFactory.getProp(elem, data.ne || {\n        k: 0\n      }, 0, 0, this);\n      this.sm = PropertyFactory.getProp(elem, data.sm || {\n        k: 100\n      }, 0, 0, this);\n      this.a = PropertyFactory.getProp(elem, data.a, 0, 0.01, this);\n      if (!this.dynamicProperties.length) {\n        this.getValue();\n      }\n    }\n    TextSelectorPropFactory.prototype = {\n      getMult: function getMult(ind) {\n        if (this._currentTextLength !== this.elem.textProperty.currentData.l.length) {\n          this.getValue();\n        }\n        var x1 = 0;\n        var y1 = 0;\n        var x2 = 1;\n        var y2 = 1;\n        if (this.ne.v > 0) {\n          x1 = this.ne.v / 100.0;\n        } else {\n          y1 = -this.ne.v / 100.0;\n        }\n        if (this.xe.v > 0) {\n          x2 = 1.0 - this.xe.v / 100.0;\n        } else {\n          y2 = 1.0 + this.xe.v / 100.0;\n        }\n        var easer = BezierFactory.getBezierEasing(x1, y1, x2, y2).get;\n        var mult = 0;\n        var s = this.finalS;\n        var e = this.finalE;\n        var type = this.data.sh;\n        if (type === 2) {\n          if (e === s) {\n            mult = ind >= e ? 1 : 0;\n          } else {\n            mult = max(0, min(0.5 / (e - s) + (ind - s) / (e - s), 1));\n          }\n          mult = easer(mult);\n        } else if (type === 3) {\n          if (e === s) {\n            mult = ind >= e ? 0 : 1;\n          } else {\n            mult = 1 - max(0, min(0.5 / (e - s) + (ind - s) / (e - s), 1));\n          }\n          mult = easer(mult);\n        } else if (type === 4) {\n          if (e === s) {\n            mult = 0;\n          } else {\n            mult = max(0, min(0.5 / (e - s) + (ind - s) / (e - s), 1));\n            if (mult < 0.5) {\n              mult *= 2;\n            } else {\n              mult = 1 - 2 * (mult - 0.5);\n            }\n          }\n          mult = easer(mult);\n        } else if (type === 5) {\n          if (e === s) {\n            mult = 0;\n          } else {\n            var tot = e - s;\n            /* ind += 0.5;\n                      mult = -4/(tot*tot)*(ind*ind)+(4/tot)*ind; */\n            ind = min(max(0, ind + 0.5 - s), e - s);\n            var x = -tot / 2 + ind;\n            var a = tot / 2;\n            mult = Math.sqrt(1 - x * x / (a * a));\n          }\n          mult = easer(mult);\n        } else if (type === 6) {\n          if (e === s) {\n            mult = 0;\n          } else {\n            ind = min(max(0, ind + 0.5 - s), e - s);\n            mult = (1 + Math.cos(Math.PI + Math.PI * 2 * ind / (e - s))) / 2; // eslint-disable-line\n          }\n          mult = easer(mult);\n        } else {\n          if (ind >= floor(s)) {\n            if (ind - s < 0) {\n              mult = max(0, min(min(e, 1) - (s - ind), 1));\n            } else {\n              mult = max(0, min(e - ind, 1));\n            }\n          }\n          mult = easer(mult);\n        }\n        // Smoothness implementation.\n        // The smoothness represents a reduced range of the original [0; 1] range.\n        // if smoothness is 25%, the new range will be [0.375; 0.625]\n        // Steps are:\n        // - find the lower value of the new range (threshold)\n        // - if multiplier is smaller than that value, floor it to 0\n        // - if it is larger,\n        //     - subtract the threshold\n        //     - divide it by the smoothness (this will return the range to [0; 1])\n        // Note: If it doesn't work on some scenarios, consider applying it before the easer.\n        if (this.sm.v !== 100) {\n          var smoothness = this.sm.v * 0.01;\n          if (smoothness === 0) {\n            smoothness = 0.00000001;\n          }\n          var threshold = 0.5 - smoothness * 0.5;\n          if (mult < threshold) {\n            mult = 0;\n          } else {\n            mult = (mult - threshold) / smoothness;\n            if (mult > 1) {\n              mult = 1;\n            }\n          }\n        }\n        return mult * this.a.v;\n      },\n      getValue: function getValue(newCharsFlag) {\n        this.iterateDynamicProperties();\n        this._mdf = newCharsFlag || this._mdf;\n        this._currentTextLength = this.elem.textProperty.currentData.l.length || 0;\n        if (newCharsFlag && this.data.r === 2) {\n          this.e.v = this._currentTextLength;\n        }\n        var divisor = this.data.r === 2 ? 1 : 100 / this.data.totalChars;\n        var o = this.o.v / divisor;\n        var s = this.s.v / divisor + o;\n        var e = this.e.v / divisor + o;\n        if (s > e) {\n          var _s = s;\n          s = e;\n          e = _s;\n        }\n        this.finalS = s;\n        this.finalE = e;\n      }\n    };\n    extendPrototype([DynamicPropertyContainer], TextSelectorPropFactory);\n    function getTextSelectorProp(elem, data, arr) {\n      return new TextSelectorPropFactory(elem, data, arr);\n    }\n    return {\n      getTextSelectorProp: getTextSelectorProp\n    };\n  }();\n\n  function TextAnimatorDataProperty(elem, animatorProps, container) {\n    var defaultData = {\n      propType: false\n    };\n    var getProp = PropertyFactory.getProp;\n    var textAnimatorAnimatables = animatorProps.a;\n    this.a = {\n      r: textAnimatorAnimatables.r ? getProp(elem, textAnimatorAnimatables.r, 0, degToRads, container) : defaultData,\n      rx: textAnimatorAnimatables.rx ? getProp(elem, textAnimatorAnimatables.rx, 0, degToRads, container) : defaultData,\n      ry: textAnimatorAnimatables.ry ? getProp(elem, textAnimatorAnimatables.ry, 0, degToRads, container) : defaultData,\n      sk: textAnimatorAnimatables.sk ? getProp(elem, textAnimatorAnimatables.sk, 0, degToRads, container) : defaultData,\n      sa: textAnimatorAnimatables.sa ? getProp(elem, textAnimatorAnimatables.sa, 0, degToRads, container) : defaultData,\n      s: textAnimatorAnimatables.s ? getProp(elem, textAnimatorAnimatables.s, 1, 0.01, container) : defaultData,\n      a: textAnimatorAnimatables.a ? getProp(elem, textAnimatorAnimatables.a, 1, 0, container) : defaultData,\n      o: textAnimatorAnimatables.o ? getProp(elem, textAnimatorAnimatables.o, 0, 0.01, container) : defaultData,\n      p: textAnimatorAnimatables.p ? getProp(elem, textAnimatorAnimatables.p, 1, 0, container) : defaultData,\n      sw: textAnimatorAnimatables.sw ? getProp(elem, textAnimatorAnimatables.sw, 0, 0, container) : defaultData,\n      sc: textAnimatorAnimatables.sc ? getProp(elem, textAnimatorAnimatables.sc, 1, 0, container) : defaultData,\n      fc: textAnimatorAnimatables.fc ? getProp(elem, textAnimatorAnimatables.fc, 1, 0, container) : defaultData,\n      fh: textAnimatorAnimatables.fh ? getProp(elem, textAnimatorAnimatables.fh, 0, 0, container) : defaultData,\n      fs: textAnimatorAnimatables.fs ? getProp(elem, textAnimatorAnimatables.fs, 0, 0.01, container) : defaultData,\n      fb: textAnimatorAnimatables.fb ? getProp(elem, textAnimatorAnimatables.fb, 0, 0.01, container) : defaultData,\n      t: textAnimatorAnimatables.t ? getProp(elem, textAnimatorAnimatables.t, 0, 0, container) : defaultData\n    };\n    this.s = TextSelectorProp.getTextSelectorProp(elem, animatorProps.s, container);\n    this.s.t = animatorProps.s.t;\n  }\n\n  function TextAnimatorProperty(textData, renderType, elem) {\n    this._isFirstFrame = true;\n    this._hasMaskedPath = false;\n    this._frameId = -1;\n    this._textData = textData;\n    this._renderType = renderType;\n    this._elem = elem;\n    this._animatorsData = createSizedArray(this._textData.a.length);\n    this._pathData = {};\n    this._moreOptions = {\n      alignment: {}\n    };\n    this.renderedLetters = [];\n    this.lettersChangedFlag = false;\n    this.initDynamicPropertyContainer(elem);\n  }\n  TextAnimatorProperty.prototype.searchProperties = function () {\n    var i;\n    var len = this._textData.a.length;\n    var animatorProps;\n    var getProp = PropertyFactory.getProp;\n    for (i = 0; i < len; i += 1) {\n      animatorProps = this._textData.a[i];\n      this._animatorsData[i] = new TextAnimatorDataProperty(this._elem, animatorProps, this);\n    }\n    if (this._textData.p && 'm' in this._textData.p) {\n      this._pathData = {\n        a: getProp(this._elem, this._textData.p.a, 0, 0, this),\n        f: getProp(this._elem, this._textData.p.f, 0, 0, this),\n        l: getProp(this._elem, this._textData.p.l, 0, 0, this),\n        r: getProp(this._elem, this._textData.p.r, 0, 0, this),\n        p: getProp(this._elem, this._textData.p.p, 0, 0, this),\n        m: this._elem.maskManager.getMaskProperty(this._textData.p.m)\n      };\n      this._hasMaskedPath = true;\n    } else {\n      this._hasMaskedPath = false;\n    }\n    this._moreOptions.alignment = getProp(this._elem, this._textData.m.a, 1, 0, this);\n  };\n  TextAnimatorProperty.prototype.getMeasures = function (documentData, lettersChangedFlag) {\n    this.lettersChangedFlag = lettersChangedFlag;\n    if (!this._mdf && !this._isFirstFrame && !lettersChangedFlag && (!this._hasMaskedPath || !this._pathData.m._mdf)) {\n      return;\n    }\n    this._isFirstFrame = false;\n    var alignment = this._moreOptions.alignment.v;\n    var animators = this._animatorsData;\n    var textData = this._textData;\n    var matrixHelper = this.mHelper;\n    var renderType = this._renderType;\n    var renderedLettersCount = this.renderedLetters.length;\n    var xPos;\n    var yPos;\n    var i;\n    var len;\n    var letters = documentData.l;\n    var pathInfo;\n    var currentLength;\n    var currentPoint;\n    var segmentLength;\n    var flag;\n    var pointInd;\n    var segmentInd;\n    var prevPoint;\n    var points;\n    var segments;\n    var partialLength;\n    var totalLength;\n    var perc;\n    var tanAngle;\n    var mask;\n    if (this._hasMaskedPath) {\n      mask = this._pathData.m;\n      if (!this._pathData.n || this._pathData._mdf) {\n        var paths = mask.v;\n        if (this._pathData.r.v) {\n          paths = paths.reverse();\n        }\n        // TODO: release bezier data cached from previous pathInfo: this._pathData.pi\n        pathInfo = {\n          tLength: 0,\n          segments: []\n        };\n        len = paths._length - 1;\n        var bezierData;\n        totalLength = 0;\n        for (i = 0; i < len; i += 1) {\n          bezierData = bez.buildBezierData(paths.v[i], paths.v[i + 1], [paths.o[i][0] - paths.v[i][0], paths.o[i][1] - paths.v[i][1]], [paths.i[i + 1][0] - paths.v[i + 1][0], paths.i[i + 1][1] - paths.v[i + 1][1]]);\n          pathInfo.tLength += bezierData.segmentLength;\n          pathInfo.segments.push(bezierData);\n          totalLength += bezierData.segmentLength;\n        }\n        i = len;\n        if (mask.v.c) {\n          bezierData = bez.buildBezierData(paths.v[i], paths.v[0], [paths.o[i][0] - paths.v[i][0], paths.o[i][1] - paths.v[i][1]], [paths.i[0][0] - paths.v[0][0], paths.i[0][1] - paths.v[0][1]]);\n          pathInfo.tLength += bezierData.segmentLength;\n          pathInfo.segments.push(bezierData);\n          totalLength += bezierData.segmentLength;\n        }\n        this._pathData.pi = pathInfo;\n      }\n      pathInfo = this._pathData.pi;\n      currentLength = this._pathData.f.v;\n      segmentInd = 0;\n      pointInd = 1;\n      segmentLength = 0;\n      flag = true;\n      segments = pathInfo.segments;\n      if (currentLength < 0 && mask.v.c) {\n        if (pathInfo.tLength < Math.abs(currentLength)) {\n          currentLength = -Math.abs(currentLength) % pathInfo.tLength;\n        }\n        segmentInd = segments.length - 1;\n        points = segments[segmentInd].points;\n        pointInd = points.length - 1;\n        while (currentLength < 0) {\n          currentLength += points[pointInd].partialLength;\n          pointInd -= 1;\n          if (pointInd < 0) {\n            segmentInd -= 1;\n            points = segments[segmentInd].points;\n            pointInd = points.length - 1;\n          }\n        }\n      }\n      points = segments[segmentInd].points;\n      prevPoint = points[pointInd - 1];\n      currentPoint = points[pointInd];\n      partialLength = currentPoint.partialLength;\n    }\n    len = letters.length;\n    xPos = 0;\n    yPos = 0;\n    var yOff = documentData.finalSize * 1.2 * 0.714;\n    var firstLine = true;\n    var animatorProps;\n    var animatorSelector;\n    var j;\n    var jLen;\n    var letterValue;\n    jLen = animators.length;\n    var mult;\n    var ind = -1;\n    var offf;\n    var xPathPos;\n    var yPathPos;\n    var initPathPos = currentLength;\n    var initSegmentInd = segmentInd;\n    var initPointInd = pointInd;\n    var currentLine = -1;\n    var elemOpacity;\n    var sc;\n    var sw;\n    var fc;\n    var k;\n    var letterSw;\n    var letterSc;\n    var letterFc;\n    var letterM = '';\n    var letterP = this.defaultPropsArray;\n    var letterO;\n\n    //\n    if (documentData.j === 2 || documentData.j === 1) {\n      var animatorJustifyOffset = 0;\n      var animatorFirstCharOffset = 0;\n      var justifyOffsetMult = documentData.j === 2 ? -0.5 : -1;\n      var lastIndex = 0;\n      var isNewLine = true;\n      for (i = 0; i < len; i += 1) {\n        if (letters[i].n) {\n          if (animatorJustifyOffset) {\n            animatorJustifyOffset += animatorFirstCharOffset;\n          }\n          while (lastIndex < i) {\n            letters[lastIndex].animatorJustifyOffset = animatorJustifyOffset;\n            lastIndex += 1;\n          }\n          animatorJustifyOffset = 0;\n          isNewLine = true;\n        } else {\n          for (j = 0; j < jLen; j += 1) {\n            animatorProps = animators[j].a;\n            if (animatorProps.t.propType) {\n              if (isNewLine && documentData.j === 2) {\n                animatorFirstCharOffset += animatorProps.t.v * justifyOffsetMult;\n              }\n              animatorSelector = animators[j].s;\n              mult = animatorSelector.getMult(letters[i].anIndexes[j], textData.a[j].s.totalChars);\n              if (mult.length) {\n                animatorJustifyOffset += animatorProps.t.v * mult[0] * justifyOffsetMult;\n              } else {\n                animatorJustifyOffset += animatorProps.t.v * mult * justifyOffsetMult;\n              }\n            }\n          }\n          isNewLine = false;\n        }\n      }\n      if (animatorJustifyOffset) {\n        animatorJustifyOffset += animatorFirstCharOffset;\n      }\n      while (lastIndex < i) {\n        letters[lastIndex].animatorJustifyOffset = animatorJustifyOffset;\n        lastIndex += 1;\n      }\n    }\n    //\n\n    for (i = 0; i < len; i += 1) {\n      matrixHelper.reset();\n      elemOpacity = 1;\n      if (letters[i].n) {\n        xPos = 0;\n        yPos += documentData.yOffset;\n        yPos += firstLine ? 1 : 0;\n        currentLength = initPathPos;\n        firstLine = false;\n        if (this._hasMaskedPath) {\n          segmentInd = initSegmentInd;\n          pointInd = initPointInd;\n          points = segments[segmentInd].points;\n          prevPoint = points[pointInd - 1];\n          currentPoint = points[pointInd];\n          partialLength = currentPoint.partialLength;\n          segmentLength = 0;\n        }\n        letterM = '';\n        letterFc = '';\n        letterSw = '';\n        letterO = '';\n        letterP = this.defaultPropsArray;\n      } else {\n        if (this._hasMaskedPath) {\n          if (currentLine !== letters[i].line) {\n            switch (documentData.j) {\n              case 1:\n                currentLength += totalLength - documentData.lineWidths[letters[i].line];\n                break;\n              case 2:\n                currentLength += (totalLength - documentData.lineWidths[letters[i].line]) / 2;\n                break;\n              default:\n                break;\n            }\n            currentLine = letters[i].line;\n          }\n          if (ind !== letters[i].ind) {\n            if (letters[ind]) {\n              currentLength += letters[ind].extra;\n            }\n            currentLength += letters[i].an / 2;\n            ind = letters[i].ind;\n          }\n          currentLength += alignment[0] * letters[i].an * 0.005;\n          var animatorOffset = 0;\n          for (j = 0; j < jLen; j += 1) {\n            animatorProps = animators[j].a;\n            if (animatorProps.p.propType) {\n              animatorSelector = animators[j].s;\n              mult = animatorSelector.getMult(letters[i].anIndexes[j], textData.a[j].s.totalChars);\n              if (mult.length) {\n                animatorOffset += animatorProps.p.v[0] * mult[0];\n              } else {\n                animatorOffset += animatorProps.p.v[0] * mult;\n              }\n            }\n            if (animatorProps.a.propType) {\n              animatorSelector = animators[j].s;\n              mult = animatorSelector.getMult(letters[i].anIndexes[j], textData.a[j].s.totalChars);\n              if (mult.length) {\n                animatorOffset += animatorProps.a.v[0] * mult[0];\n              } else {\n                animatorOffset += animatorProps.a.v[0] * mult;\n              }\n            }\n          }\n          flag = true;\n          // Force alignment only works with a single line for now\n          if (this._pathData.a.v) {\n            currentLength = letters[0].an * 0.5 + (totalLength - this._pathData.f.v - letters[0].an * 0.5 - letters[letters.length - 1].an * 0.5) * ind / (len - 1);\n            currentLength += this._pathData.f.v;\n          }\n          while (flag) {\n            if (segmentLength + partialLength >= currentLength + animatorOffset || !points) {\n              perc = (currentLength + animatorOffset - segmentLength) / currentPoint.partialLength;\n              xPathPos = prevPoint.point[0] + (currentPoint.point[0] - prevPoint.point[0]) * perc;\n              yPathPos = prevPoint.point[1] + (currentPoint.point[1] - prevPoint.point[1]) * perc;\n              matrixHelper.translate(-alignment[0] * letters[i].an * 0.005, -(alignment[1] * yOff) * 0.01);\n              flag = false;\n            } else if (points) {\n              segmentLength += currentPoint.partialLength;\n              pointInd += 1;\n              if (pointInd >= points.length) {\n                pointInd = 0;\n                segmentInd += 1;\n                if (!segments[segmentInd]) {\n                  if (mask.v.c) {\n                    pointInd = 0;\n                    segmentInd = 0;\n                    points = segments[segmentInd].points;\n                  } else {\n                    segmentLength -= currentPoint.partialLength;\n                    points = null;\n                  }\n                } else {\n                  points = segments[segmentInd].points;\n                }\n              }\n              if (points) {\n                prevPoint = currentPoint;\n                currentPoint = points[pointInd];\n                partialLength = currentPoint.partialLength;\n              }\n            }\n          }\n          offf = letters[i].an / 2 - letters[i].add;\n          matrixHelper.translate(-offf, 0, 0);\n        } else {\n          offf = letters[i].an / 2 - letters[i].add;\n          matrixHelper.translate(-offf, 0, 0);\n\n          // Grouping alignment\n          matrixHelper.translate(-alignment[0] * letters[i].an * 0.005, -alignment[1] * yOff * 0.01, 0);\n        }\n        for (j = 0; j < jLen; j += 1) {\n          animatorProps = animators[j].a;\n          if (animatorProps.t.propType) {\n            animatorSelector = animators[j].s;\n            mult = animatorSelector.getMult(letters[i].anIndexes[j], textData.a[j].s.totalChars);\n            // This condition is to prevent applying tracking to first character in each line. Might be better to use a boolean \"isNewLine\"\n            if (xPos !== 0 || documentData.j !== 0) {\n              if (this._hasMaskedPath) {\n                if (mult.length) {\n                  currentLength += animatorProps.t.v * mult[0];\n                } else {\n                  currentLength += animatorProps.t.v * mult;\n                }\n              } else if (mult.length) {\n                xPos += animatorProps.t.v * mult[0];\n              } else {\n                xPos += animatorProps.t.v * mult;\n              }\n            }\n          }\n        }\n        if (documentData.strokeWidthAnim) {\n          sw = documentData.sw || 0;\n        }\n        if (documentData.strokeColorAnim) {\n          if (documentData.sc) {\n            sc = [documentData.sc[0], documentData.sc[1], documentData.sc[2]];\n          } else {\n            sc = [0, 0, 0];\n          }\n        }\n        if (documentData.fillColorAnim && documentData.fc) {\n          fc = [documentData.fc[0], documentData.fc[1], documentData.fc[2]];\n        }\n        for (j = 0; j < jLen; j += 1) {\n          animatorProps = animators[j].a;\n          if (animatorProps.a.propType) {\n            animatorSelector = animators[j].s;\n            mult = animatorSelector.getMult(letters[i].anIndexes[j], textData.a[j].s.totalChars);\n            if (mult.length) {\n              matrixHelper.translate(-animatorProps.a.v[0] * mult[0], -animatorProps.a.v[1] * mult[1], animatorProps.a.v[2] * mult[2]);\n            } else {\n              matrixHelper.translate(-animatorProps.a.v[0] * mult, -animatorProps.a.v[1] * mult, animatorProps.a.v[2] * mult);\n            }\n          }\n        }\n        for (j = 0; j < jLen; j += 1) {\n          animatorProps = animators[j].a;\n          if (animatorProps.s.propType) {\n            animatorSelector = animators[j].s;\n            mult = animatorSelector.getMult(letters[i].anIndexes[j], textData.a[j].s.totalChars);\n            if (mult.length) {\n              matrixHelper.scale(1 + (animatorProps.s.v[0] - 1) * mult[0], 1 + (animatorProps.s.v[1] - 1) * mult[1], 1);\n            } else {\n              matrixHelper.scale(1 + (animatorProps.s.v[0] - 1) * mult, 1 + (animatorProps.s.v[1] - 1) * mult, 1);\n            }\n          }\n        }\n        for (j = 0; j < jLen; j += 1) {\n          animatorProps = animators[j].a;\n          animatorSelector = animators[j].s;\n          mult = animatorSelector.getMult(letters[i].anIndexes[j], textData.a[j].s.totalChars);\n          if (animatorProps.sk.propType) {\n            if (mult.length) {\n              matrixHelper.skewFromAxis(-animatorProps.sk.v * mult[0], animatorProps.sa.v * mult[1]);\n            } else {\n              matrixHelper.skewFromAxis(-animatorProps.sk.v * mult, animatorProps.sa.v * mult);\n            }\n          }\n          if (animatorProps.r.propType) {\n            if (mult.length) {\n              matrixHelper.rotateZ(-animatorProps.r.v * mult[2]);\n            } else {\n              matrixHelper.rotateZ(-animatorProps.r.v * mult);\n            }\n          }\n          if (animatorProps.ry.propType) {\n            if (mult.length) {\n              matrixHelper.rotateY(animatorProps.ry.v * mult[1]);\n            } else {\n              matrixHelper.rotateY(animatorProps.ry.v * mult);\n            }\n          }\n          if (animatorProps.rx.propType) {\n            if (mult.length) {\n              matrixHelper.rotateX(animatorProps.rx.v * mult[0]);\n            } else {\n              matrixHelper.rotateX(animatorProps.rx.v * mult);\n            }\n          }\n          if (animatorProps.o.propType) {\n            if (mult.length) {\n              elemOpacity += (animatorProps.o.v * mult[0] - elemOpacity) * mult[0];\n            } else {\n              elemOpacity += (animatorProps.o.v * mult - elemOpacity) * mult;\n            }\n          }\n          if (documentData.strokeWidthAnim && animatorProps.sw.propType) {\n            if (mult.length) {\n              sw += animatorProps.sw.v * mult[0];\n            } else {\n              sw += animatorProps.sw.v * mult;\n            }\n          }\n          if (documentData.strokeColorAnim && animatorProps.sc.propType) {\n            for (k = 0; k < 3; k += 1) {\n              if (mult.length) {\n                sc[k] += (animatorProps.sc.v[k] - sc[k]) * mult[0];\n              } else {\n                sc[k] += (animatorProps.sc.v[k] - sc[k]) * mult;\n              }\n            }\n          }\n          if (documentData.fillColorAnim && documentData.fc) {\n            if (animatorProps.fc.propType) {\n              for (k = 0; k < 3; k += 1) {\n                if (mult.length) {\n                  fc[k] += (animatorProps.fc.v[k] - fc[k]) * mult[0];\n                } else {\n                  fc[k] += (animatorProps.fc.v[k] - fc[k]) * mult;\n                }\n              }\n            }\n            if (animatorProps.fh.propType) {\n              if (mult.length) {\n                fc = addHueToRGB(fc, animatorProps.fh.v * mult[0]);\n              } else {\n                fc = addHueToRGB(fc, animatorProps.fh.v * mult);\n              }\n            }\n            if (animatorProps.fs.propType) {\n              if (mult.length) {\n                fc = addSaturationToRGB(fc, animatorProps.fs.v * mult[0]);\n              } else {\n                fc = addSaturationToRGB(fc, animatorProps.fs.v * mult);\n              }\n            }\n            if (animatorProps.fb.propType) {\n              if (mult.length) {\n                fc = addBrightnessToRGB(fc, animatorProps.fb.v * mult[0]);\n              } else {\n                fc = addBrightnessToRGB(fc, animatorProps.fb.v * mult);\n              }\n            }\n          }\n        }\n        for (j = 0; j < jLen; j += 1) {\n          animatorProps = animators[j].a;\n          if (animatorProps.p.propType) {\n            animatorSelector = animators[j].s;\n            mult = animatorSelector.getMult(letters[i].anIndexes[j], textData.a[j].s.totalChars);\n            if (this._hasMaskedPath) {\n              if (mult.length) {\n                matrixHelper.translate(0, animatorProps.p.v[1] * mult[0], -animatorProps.p.v[2] * mult[1]);\n              } else {\n                matrixHelper.translate(0, animatorProps.p.v[1] * mult, -animatorProps.p.v[2] * mult);\n              }\n            } else if (mult.length) {\n              matrixHelper.translate(animatorProps.p.v[0] * mult[0], animatorProps.p.v[1] * mult[1], -animatorProps.p.v[2] * mult[2]);\n            } else {\n              matrixHelper.translate(animatorProps.p.v[0] * mult, animatorProps.p.v[1] * mult, -animatorProps.p.v[2] * mult);\n            }\n          }\n        }\n        if (documentData.strokeWidthAnim) {\n          letterSw = sw < 0 ? 0 : sw;\n        }\n        if (documentData.strokeColorAnim) {\n          letterSc = 'rgb(' + Math.round(sc[0] * 255) + ',' + Math.round(sc[1] * 255) + ',' + Math.round(sc[2] * 255) + ')';\n        }\n        if (documentData.fillColorAnim && documentData.fc) {\n          letterFc = 'rgb(' + Math.round(fc[0] * 255) + ',' + Math.round(fc[1] * 255) + ',' + Math.round(fc[2] * 255) + ')';\n        }\n        if (this._hasMaskedPath) {\n          matrixHelper.translate(0, -documentData.ls);\n          matrixHelper.translate(0, alignment[1] * yOff * 0.01 + yPos, 0);\n          if (this._pathData.p.v) {\n            tanAngle = (currentPoint.point[1] - prevPoint.point[1]) / (currentPoint.point[0] - prevPoint.point[0]);\n            var rot = Math.atan(tanAngle) * 180 / Math.PI;\n            if (currentPoint.point[0] < prevPoint.point[0]) {\n              rot += 180;\n            }\n            matrixHelper.rotate(-rot * Math.PI / 180);\n          }\n          matrixHelper.translate(xPathPos, yPathPos, 0);\n          currentLength -= alignment[0] * letters[i].an * 0.005;\n          if (letters[i + 1] && ind !== letters[i + 1].ind) {\n            currentLength += letters[i].an / 2;\n            currentLength += documentData.tr * 0.001 * documentData.finalSize;\n          }\n        } else {\n          matrixHelper.translate(xPos, yPos, 0);\n          if (documentData.ps) {\n            // matrixHelper.translate(documentData.ps[0],documentData.ps[1],0);\n            matrixHelper.translate(documentData.ps[0], documentData.ps[1] + documentData.ascent, 0);\n          }\n          switch (documentData.j) {\n            case 1:\n              matrixHelper.translate(letters[i].animatorJustifyOffset + documentData.justifyOffset + (documentData.boxWidth - documentData.lineWidths[letters[i].line]), 0, 0);\n              break;\n            case 2:\n              matrixHelper.translate(letters[i].animatorJustifyOffset + documentData.justifyOffset + (documentData.boxWidth - documentData.lineWidths[letters[i].line]) / 2, 0, 0);\n              break;\n            default:\n              break;\n          }\n          matrixHelper.translate(0, -documentData.ls);\n          matrixHelper.translate(offf, 0, 0);\n          matrixHelper.translate(alignment[0] * letters[i].an * 0.005, alignment[1] * yOff * 0.01, 0);\n          xPos += letters[i].l + documentData.tr * 0.001 * documentData.finalSize;\n        }\n        if (renderType === 'html') {\n          letterM = matrixHelper.toCSS();\n        } else if (renderType === 'svg') {\n          letterM = matrixHelper.to2dCSS();\n        } else {\n          letterP = [matrixHelper.props[0], matrixHelper.props[1], matrixHelper.props[2], matrixHelper.props[3], matrixHelper.props[4], matrixHelper.props[5], matrixHelper.props[6], matrixHelper.props[7], matrixHelper.props[8], matrixHelper.props[9], matrixHelper.props[10], matrixHelper.props[11], matrixHelper.props[12], matrixHelper.props[13], matrixHelper.props[14], matrixHelper.props[15]];\n        }\n        letterO = elemOpacity;\n      }\n      if (renderedLettersCount <= i) {\n        letterValue = new LetterProps(letterO, letterSw, letterSc, letterFc, letterM, letterP);\n        this.renderedLetters.push(letterValue);\n        renderedLettersCount += 1;\n        this.lettersChangedFlag = true;\n      } else {\n        letterValue = this.renderedLetters[i];\n        this.lettersChangedFlag = letterValue.update(letterO, letterSw, letterSc, letterFc, letterM, letterP) || this.lettersChangedFlag;\n      }\n    }\n  };\n  TextAnimatorProperty.prototype.getValue = function () {\n    if (this._elem.globalData.frameId === this._frameId) {\n      return;\n    }\n    this._frameId = this._elem.globalData.frameId;\n    this.iterateDynamicProperties();\n  };\n  TextAnimatorProperty.prototype.mHelper = new Matrix();\n  TextAnimatorProperty.prototype.defaultPropsArray = [];\n  extendPrototype([DynamicPropertyContainer], TextAnimatorProperty);\n\n  function ITextElement() {}\n  ITextElement.prototype.initElement = function (data, globalData, comp) {\n    this.lettersChangedFlag = true;\n    this.initFrame();\n    this.initBaseData(data, globalData, comp);\n    this.textProperty = new TextProperty(this, data.t, this.dynamicProperties);\n    this.textAnimator = new TextAnimatorProperty(data.t, this.renderType, this);\n    this.initTransform(data, globalData, comp);\n    this.initHierarchy();\n    this.initRenderable();\n    this.initRendererElement();\n    this.createContainerElements();\n    this.createRenderableComponents();\n    this.createContent();\n    this.hide();\n    this.textAnimator.searchProperties(this.dynamicProperties);\n  };\n  ITextElement.prototype.prepareFrame = function (num) {\n    this._mdf = false;\n    this.prepareRenderableFrame(num);\n    this.prepareProperties(num, this.isInRange);\n  };\n  ITextElement.prototype.createPathShape = function (matrixHelper, shapes) {\n    var j;\n    var jLen = shapes.length;\n    var pathNodes;\n    var shapeStr = '';\n    for (j = 0; j < jLen; j += 1) {\n      if (shapes[j].ty === 'sh') {\n        pathNodes = shapes[j].ks.k;\n        shapeStr += buildShapeString(pathNodes, pathNodes.i.length, true, matrixHelper);\n      }\n    }\n    return shapeStr;\n  };\n  ITextElement.prototype.updateDocumentData = function (newData, index) {\n    this.textProperty.updateDocumentData(newData, index);\n  };\n  ITextElement.prototype.canResizeFont = function (_canResize) {\n    this.textProperty.canResizeFont(_canResize);\n  };\n  ITextElement.prototype.setMinimumFontSize = function (_fontSize) {\n    this.textProperty.setMinimumFontSize(_fontSize);\n  };\n  ITextElement.prototype.applyTextPropertiesToMatrix = function (documentData, matrixHelper, lineNumber, xPos, yPos) {\n    if (documentData.ps) {\n      matrixHelper.translate(documentData.ps[0], documentData.ps[1] + documentData.ascent, 0);\n    }\n    matrixHelper.translate(0, -documentData.ls, 0);\n    switch (documentData.j) {\n      case 1:\n        matrixHelper.translate(documentData.justifyOffset + (documentData.boxWidth - documentData.lineWidths[lineNumber]), 0, 0);\n        break;\n      case 2:\n        matrixHelper.translate(documentData.justifyOffset + (documentData.boxWidth - documentData.lineWidths[lineNumber]) / 2, 0, 0);\n        break;\n      default:\n        break;\n    }\n    matrixHelper.translate(xPos, yPos, 0);\n  };\n  ITextElement.prototype.buildColor = function (colorData) {\n    return 'rgb(' + Math.round(colorData[0] * 255) + ',' + Math.round(colorData[1] * 255) + ',' + Math.round(colorData[2] * 255) + ')';\n  };\n  ITextElement.prototype.emptyProp = new LetterProps();\n  ITextElement.prototype.destroy = function () {};\n  ITextElement.prototype.validateText = function () {\n    if (this.textProperty._mdf || this.textProperty._isFirstFrame) {\n      this.buildNewText();\n      this.textProperty._isFirstFrame = false;\n      this.textProperty._mdf = false;\n    }\n  };\n\n  var emptyShapeData = {\n    shapes: []\n  };\n  function SVGTextLottieElement(data, globalData, comp) {\n    this.textSpans = [];\n    this.renderType = 'svg';\n    this.initElement(data, globalData, comp);\n  }\n  extendPrototype([BaseElement, TransformElement, SVGBaseElement, HierarchyElement, FrameElement, RenderableDOMElement, ITextElement], SVGTextLottieElement);\n  SVGTextLottieElement.prototype.createContent = function () {\n    if (this.data.singleShape && !this.globalData.fontManager.chars) {\n      this.textContainer = createNS('text');\n    }\n  };\n  SVGTextLottieElement.prototype.buildTextContents = function (textArray) {\n    var i = 0;\n    var len = textArray.length;\n    var textContents = [];\n    var currentTextContent = '';\n    while (i < len) {\n      if (textArray[i] === String.fromCharCode(13) || textArray[i] === String.fromCharCode(3)) {\n        textContents.push(currentTextContent);\n        currentTextContent = '';\n      } else {\n        currentTextContent += textArray[i];\n      }\n      i += 1;\n    }\n    textContents.push(currentTextContent);\n    return textContents;\n  };\n  SVGTextLottieElement.prototype.buildShapeData = function (data, scale) {\n    // data should probably be cloned to apply scale separately to each instance of a text on different layers\n    // but since text internal content gets only rendered once and then it's never rerendered,\n    // it's probably safe not to clone data and reuse always the same instance even if the object is mutated.\n    // Avoiding cloning is preferred since cloning each character shape data is expensive\n    if (data.shapes && data.shapes.length) {\n      var shape = data.shapes[0];\n      if (shape.it) {\n        var shapeItem = shape.it[shape.it.length - 1];\n        if (shapeItem.s) {\n          shapeItem.s.k[0] = scale;\n          shapeItem.s.k[1] = scale;\n        }\n      }\n    }\n    return data;\n  };\n  SVGTextLottieElement.prototype.buildNewText = function () {\n    this.addDynamicProperty(this);\n    var i;\n    var len;\n    var documentData = this.textProperty.currentData;\n    this.renderedLetters = createSizedArray(documentData ? documentData.l.length : 0);\n    if (documentData.fc) {\n      this.layerElement.setAttribute('fill', this.buildColor(documentData.fc));\n    } else {\n      this.layerElement.setAttribute('fill', 'rgba(0,0,0,0)');\n    }\n    if (documentData.sc) {\n      this.layerElement.setAttribute('stroke', this.buildColor(documentData.sc));\n      this.layerElement.setAttribute('stroke-width', documentData.sw);\n    }\n    this.layerElement.setAttribute('font-size', documentData.finalSize);\n    var fontData = this.globalData.fontManager.getFontByName(documentData.f);\n    if (fontData.fClass) {\n      this.layerElement.setAttribute('class', fontData.fClass);\n    } else {\n      this.layerElement.setAttribute('font-family', fontData.fFamily);\n      var fWeight = documentData.fWeight;\n      var fStyle = documentData.fStyle;\n      this.layerElement.setAttribute('font-style', fStyle);\n      this.layerElement.setAttribute('font-weight', fWeight);\n    }\n    this.layerElement.setAttribute('aria-label', documentData.t);\n    var letters = documentData.l || [];\n    var usesGlyphs = !!this.globalData.fontManager.chars;\n    len = letters.length;\n    var tSpan;\n    var matrixHelper = this.mHelper;\n    var shapeStr = '';\n    var singleShape = this.data.singleShape;\n    var xPos = 0;\n    var yPos = 0;\n    var firstLine = true;\n    var trackingOffset = documentData.tr * 0.001 * documentData.finalSize;\n    if (singleShape && !usesGlyphs && !documentData.sz) {\n      var tElement = this.textContainer;\n      var justify = 'start';\n      switch (documentData.j) {\n        case 1:\n          justify = 'end';\n          break;\n        case 2:\n          justify = 'middle';\n          break;\n        default:\n          justify = 'start';\n          break;\n      }\n      tElement.setAttribute('text-anchor', justify);\n      tElement.setAttribute('letter-spacing', trackingOffset);\n      var textContent = this.buildTextContents(documentData.finalText);\n      len = textContent.length;\n      yPos = documentData.ps ? documentData.ps[1] + documentData.ascent : 0;\n      for (i = 0; i < len; i += 1) {\n        tSpan = this.textSpans[i].span || createNS('tspan');\n        tSpan.textContent = textContent[i];\n        tSpan.setAttribute('x', 0);\n        tSpan.setAttribute('y', yPos);\n        tSpan.style.display = 'inherit';\n        tElement.appendChild(tSpan);\n        if (!this.textSpans[i]) {\n          this.textSpans[i] = {\n            span: null,\n            glyph: null\n          };\n        }\n        this.textSpans[i].span = tSpan;\n        yPos += documentData.finalLineHeight;\n      }\n      this.layerElement.appendChild(tElement);\n    } else {\n      var cachedSpansLength = this.textSpans.length;\n      var charData;\n      for (i = 0; i < len; i += 1) {\n        if (!this.textSpans[i]) {\n          this.textSpans[i] = {\n            span: null,\n            childSpan: null,\n            glyph: null\n          };\n        }\n        if (!usesGlyphs || !singleShape || i === 0) {\n          tSpan = cachedSpansLength > i ? this.textSpans[i].span : createNS(usesGlyphs ? 'g' : 'text');\n          if (cachedSpansLength <= i) {\n            tSpan.setAttribute('stroke-linecap', 'butt');\n            tSpan.setAttribute('stroke-linejoin', 'round');\n            tSpan.setAttribute('stroke-miterlimit', '4');\n            this.textSpans[i].span = tSpan;\n            if (usesGlyphs) {\n              var childSpan = createNS('g');\n              tSpan.appendChild(childSpan);\n              this.textSpans[i].childSpan = childSpan;\n            }\n            this.textSpans[i].span = tSpan;\n            this.layerElement.appendChild(tSpan);\n          }\n          tSpan.style.display = 'inherit';\n        }\n        matrixHelper.reset();\n        if (singleShape) {\n          if (letters[i].n) {\n            xPos = -trackingOffset;\n            yPos += documentData.yOffset;\n            yPos += firstLine ? 1 : 0;\n            firstLine = false;\n          }\n          this.applyTextPropertiesToMatrix(documentData, matrixHelper, letters[i].line, xPos, yPos);\n          xPos += letters[i].l || 0;\n          // xPos += letters[i].val === ' ' ? 0 : trackingOffset;\n          xPos += trackingOffset;\n        }\n        if (usesGlyphs) {\n          charData = this.globalData.fontManager.getCharData(documentData.finalText[i], fontData.fStyle, this.globalData.fontManager.getFontByName(documentData.f).fFamily);\n          var glyphElement;\n          // t === 1 means the character has been replaced with an animated shaped\n          if (charData.t === 1) {\n            glyphElement = new SVGCompElement(charData.data, this.globalData, this);\n          } else {\n            var data = emptyShapeData;\n            if (charData.data && charData.data.shapes) {\n              data = this.buildShapeData(charData.data, documentData.finalSize);\n            }\n            glyphElement = new SVGShapeElement(data, this.globalData, this);\n          }\n          if (this.textSpans[i].glyph) {\n            var glyph = this.textSpans[i].glyph;\n            this.textSpans[i].childSpan.removeChild(glyph.layerElement);\n            glyph.destroy();\n          }\n          this.textSpans[i].glyph = glyphElement;\n          glyphElement._debug = true;\n          glyphElement.prepareFrame(0);\n          glyphElement.renderFrame();\n          this.textSpans[i].childSpan.appendChild(glyphElement.layerElement);\n          // when using animated shapes, the layer will be scaled instead of replacing the internal scale\n          // this might have issues with strokes and might need a different solution\n          if (charData.t === 1) {\n            this.textSpans[i].childSpan.setAttribute('transform', 'scale(' + documentData.finalSize / 100 + ',' + documentData.finalSize / 100 + ')');\n          }\n        } else {\n          if (singleShape) {\n            tSpan.setAttribute('transform', 'translate(' + matrixHelper.props[12] + ',' + matrixHelper.props[13] + ')');\n          }\n          tSpan.textContent = letters[i].val;\n          tSpan.setAttributeNS('http://www.w3.org/XML/1998/namespace', 'xml:space', 'preserve');\n        }\n        //\n      }\n      if (singleShape && tSpan) {\n        tSpan.setAttribute('d', shapeStr);\n      }\n    }\n    while (i < this.textSpans.length) {\n      this.textSpans[i].span.style.display = 'none';\n      i += 1;\n    }\n    this._sizeChanged = true;\n  };\n  SVGTextLottieElement.prototype.sourceRectAtTime = function () {\n    this.prepareFrame(this.comp.renderedFrame - this.data.st);\n    this.renderInnerContent();\n    if (this._sizeChanged) {\n      this._sizeChanged = false;\n      var textBox = this.layerElement.getBBox();\n      this.bbox = {\n        top: textBox.y,\n        left: textBox.x,\n        width: textBox.width,\n        height: textBox.height\n      };\n    }\n    return this.bbox;\n  };\n  SVGTextLottieElement.prototype.getValue = function () {\n    var i;\n    var len = this.textSpans.length;\n    var glyphElement;\n    this.renderedFrame = this.comp.renderedFrame;\n    for (i = 0; i < len; i += 1) {\n      glyphElement = this.textSpans[i].glyph;\n      if (glyphElement) {\n        glyphElement.prepareFrame(this.comp.renderedFrame - this.data.st);\n        if (glyphElement._mdf) {\n          this._mdf = true;\n        }\n      }\n    }\n  };\n  SVGTextLottieElement.prototype.renderInnerContent = function () {\n    this.validateText();\n    if (!this.data.singleShape || this._mdf) {\n      this.textAnimator.getMeasures(this.textProperty.currentData, this.lettersChangedFlag);\n      if (this.lettersChangedFlag || this.textAnimator.lettersChangedFlag) {\n        this._sizeChanged = true;\n        var i;\n        var len;\n        var renderedLetters = this.textAnimator.renderedLetters;\n        var letters = this.textProperty.currentData.l;\n        len = letters.length;\n        var renderedLetter;\n        var textSpan;\n        var glyphElement;\n        for (i = 0; i < len; i += 1) {\n          if (!letters[i].n) {\n            renderedLetter = renderedLetters[i];\n            textSpan = this.textSpans[i].span;\n            glyphElement = this.textSpans[i].glyph;\n            if (glyphElement) {\n              glyphElement.renderFrame();\n            }\n            if (renderedLetter._mdf.m) {\n              textSpan.setAttribute('transform', renderedLetter.m);\n            }\n            if (renderedLetter._mdf.o) {\n              textSpan.setAttribute('opacity', renderedLetter.o);\n            }\n            if (renderedLetter._mdf.sw) {\n              textSpan.setAttribute('stroke-width', renderedLetter.sw);\n            }\n            if (renderedLetter._mdf.sc) {\n              textSpan.setAttribute('stroke', renderedLetter.sc);\n            }\n            if (renderedLetter._mdf.fc) {\n              textSpan.setAttribute('fill', renderedLetter.fc);\n            }\n          }\n        }\n      }\n    }\n  };\n\n  function ISolidElement(data, globalData, comp) {\n    this.initElement(data, globalData, comp);\n  }\n  extendPrototype([IImageElement], ISolidElement);\n  ISolidElement.prototype.createContent = function () {\n    var rect = createNS('rect');\n    /// /rect.style.width = this.data.sw;\n    /// /rect.style.height = this.data.sh;\n    /// /rect.style.fill = this.data.sc;\n    rect.setAttribute('width', this.data.sw);\n    rect.setAttribute('height', this.data.sh);\n    rect.setAttribute('fill', this.data.sc);\n    this.layerElement.appendChild(rect);\n  };\n\n  function NullElement(data, globalData, comp) {\n    this.initFrame();\n    this.initBaseData(data, globalData, comp);\n    this.initFrame();\n    this.initTransform(data, globalData, comp);\n    this.initHierarchy();\n  }\n  NullElement.prototype.prepareFrame = function (num) {\n    this.prepareProperties(num, true);\n  };\n  NullElement.prototype.renderFrame = function () {};\n  NullElement.prototype.getBaseElement = function () {\n    return null;\n  };\n  NullElement.prototype.destroy = function () {};\n  NullElement.prototype.sourceRectAtTime = function () {};\n  NullElement.prototype.hide = function () {};\n  extendPrototype([BaseElement, TransformElement, HierarchyElement, FrameElement], NullElement);\n\n  function SVGRendererBase() {}\n  extendPrototype([BaseRenderer], SVGRendererBase);\n  SVGRendererBase.prototype.createNull = function (data) {\n    return new NullElement(data, this.globalData, this);\n  };\n  SVGRendererBase.prototype.createShape = function (data) {\n    return new SVGShapeElement(data, this.globalData, this);\n  };\n  SVGRendererBase.prototype.createText = function (data) {\n    return new SVGTextLottieElement(data, this.globalData, this);\n  };\n  SVGRendererBase.prototype.createImage = function (data) {\n    return new IImageElement(data, this.globalData, this);\n  };\n  SVGRendererBase.prototype.createSolid = function (data) {\n    return new ISolidElement(data, this.globalData, this);\n  };\n  SVGRendererBase.prototype.configAnimation = function (animData) {\n    this.svgElement.setAttribute('xmlns', 'http://www.w3.org/2000/svg');\n    this.svgElement.setAttribute('xmlns:xlink', 'http://www.w3.org/1999/xlink');\n    if (this.renderConfig.viewBoxSize) {\n      this.svgElement.setAttribute('viewBox', this.renderConfig.viewBoxSize);\n    } else {\n      this.svgElement.setAttribute('viewBox', '0 0 ' + animData.w + ' ' + animData.h);\n    }\n    if (!this.renderConfig.viewBoxOnly) {\n      this.svgElement.setAttribute('width', animData.w);\n      this.svgElement.setAttribute('height', animData.h);\n      this.svgElement.style.width = '100%';\n      this.svgElement.style.height = '100%';\n      this.svgElement.style.transform = 'translate3d(0,0,0)';\n      this.svgElement.style.contentVisibility = this.renderConfig.contentVisibility;\n    }\n    if (this.renderConfig.width) {\n      this.svgElement.setAttribute('width', this.renderConfig.width);\n    }\n    if (this.renderConfig.height) {\n      this.svgElement.setAttribute('height', this.renderConfig.height);\n    }\n    if (this.renderConfig.className) {\n      this.svgElement.setAttribute('class', this.renderConfig.className);\n    }\n    if (this.renderConfig.id) {\n      this.svgElement.setAttribute('id', this.renderConfig.id);\n    }\n    if (this.renderConfig.focusable !== undefined) {\n      this.svgElement.setAttribute('focusable', this.renderConfig.focusable);\n    }\n    this.svgElement.setAttribute('preserveAspectRatio', this.renderConfig.preserveAspectRatio);\n    // this.layerElement.style.transform = 'translate3d(0,0,0)';\n    // this.layerElement.style.transformOrigin = this.layerElement.style.mozTransformOrigin = this.layerElement.style.webkitTransformOrigin = this.layerElement.style['-webkit-transform'] = \"0px 0px 0px\";\n    this.animationItem.wrapper.appendChild(this.svgElement);\n    // Mask animation\n    var defs = this.globalData.defs;\n    this.setupGlobalData(animData, defs);\n    this.globalData.progressiveLoad = this.renderConfig.progressiveLoad;\n    this.data = animData;\n    var maskElement = createNS('clipPath');\n    var rect = createNS('rect');\n    rect.setAttribute('width', animData.w);\n    rect.setAttribute('height', animData.h);\n    rect.setAttribute('x', 0);\n    rect.setAttribute('y', 0);\n    var maskId = createElementID();\n    maskElement.setAttribute('id', maskId);\n    maskElement.appendChild(rect);\n    this.layerElement.setAttribute('clip-path', 'url(' + getLocationHref() + '#' + maskId + ')');\n    defs.appendChild(maskElement);\n    this.layers = animData.layers;\n    this.elements = createSizedArray(animData.layers.length);\n  };\n  SVGRendererBase.prototype.destroy = function () {\n    if (this.animationItem.wrapper) {\n      this.animationItem.wrapper.innerText = '';\n    }\n    this.layerElement = null;\n    this.globalData.defs = null;\n    var i;\n    var len = this.layers ? this.layers.length : 0;\n    for (i = 0; i < len; i += 1) {\n      if (this.elements[i] && this.elements[i].destroy) {\n        this.elements[i].destroy();\n      }\n    }\n    this.elements.length = 0;\n    this.destroyed = true;\n    this.animationItem = null;\n  };\n  SVGRendererBase.prototype.updateContainerSize = function () {};\n  SVGRendererBase.prototype.findIndexByInd = function (ind) {\n    var i = 0;\n    var len = this.layers.length;\n    for (i = 0; i < len; i += 1) {\n      if (this.layers[i].ind === ind) {\n        return i;\n      }\n    }\n    return -1;\n  };\n  SVGRendererBase.prototype.buildItem = function (pos) {\n    var elements = this.elements;\n    if (elements[pos] || this.layers[pos].ty === 99) {\n      return;\n    }\n    elements[pos] = true;\n    var element = this.createItem(this.layers[pos]);\n    elements[pos] = element;\n    if (getExpressionsPlugin()) {\n      if (this.layers[pos].ty === 0) {\n        this.globalData.projectInterface.registerComposition(element);\n      }\n      element.initExpressions();\n    }\n    this.appendElementInPos(element, pos);\n    if (this.layers[pos].tt) {\n      var elementIndex = 'tp' in this.layers[pos] ? this.findIndexByInd(this.layers[pos].tp) : pos - 1;\n      if (elementIndex === -1) {\n        return;\n      }\n      if (!this.elements[elementIndex] || this.elements[elementIndex] === true) {\n        this.buildItem(elementIndex);\n        this.addPendingElement(element);\n      } else {\n        var matteElement = elements[elementIndex];\n        var matteMask = matteElement.getMatte(this.layers[pos].tt);\n        element.setMatte(matteMask);\n      }\n    }\n  };\n  SVGRendererBase.prototype.checkPendingElements = function () {\n    while (this.pendingElements.length) {\n      var element = this.pendingElements.pop();\n      element.checkParenting();\n      if (element.data.tt) {\n        var i = 0;\n        var len = this.elements.length;\n        while (i < len) {\n          if (this.elements[i] === element) {\n            var elementIndex = 'tp' in element.data ? this.findIndexByInd(element.data.tp) : i - 1;\n            var matteElement = this.elements[elementIndex];\n            var matteMask = matteElement.getMatte(this.layers[i].tt);\n            element.setMatte(matteMask);\n            break;\n          }\n          i += 1;\n        }\n      }\n    }\n  };\n  SVGRendererBase.prototype.renderFrame = function (num) {\n    if (this.renderedFrame === num || this.destroyed) {\n      return;\n    }\n    if (num === null) {\n      num = this.renderedFrame;\n    } else {\n      this.renderedFrame = num;\n    }\n    // console.log('-------');\n    // console.log('FRAME ',num);\n    this.globalData.frameNum = num;\n    this.globalData.frameId += 1;\n    this.globalData.projectInterface.currentFrame = num;\n    this.globalData._mdf = false;\n    var i;\n    var len = this.layers.length;\n    if (!this.completeLayers) {\n      this.checkLayers(num);\n    }\n    for (i = len - 1; i >= 0; i -= 1) {\n      if (this.completeLayers || this.elements[i]) {\n        this.elements[i].prepareFrame(num - this.layers[i].st);\n      }\n    }\n    if (this.globalData._mdf) {\n      for (i = 0; i < len; i += 1) {\n        if (this.completeLayers || this.elements[i]) {\n          this.elements[i].renderFrame();\n        }\n      }\n    }\n  };\n  SVGRendererBase.prototype.appendElementInPos = function (element, pos) {\n    var newElement = element.getBaseElement();\n    if (!newElement) {\n      return;\n    }\n    var i = 0;\n    var nextElement;\n    while (i < pos) {\n      if (this.elements[i] && this.elements[i] !== true && this.elements[i].getBaseElement()) {\n        nextElement = this.elements[i].getBaseElement();\n      }\n      i += 1;\n    }\n    if (nextElement) {\n      this.layerElement.insertBefore(newElement, nextElement);\n    } else {\n      this.layerElement.appendChild(newElement);\n    }\n  };\n  SVGRendererBase.prototype.hide = function () {\n    this.layerElement.style.display = 'none';\n  };\n  SVGRendererBase.prototype.show = function () {\n    this.layerElement.style.display = 'block';\n  };\n\n  function ICompElement() {}\n  extendPrototype([BaseElement, TransformElement, HierarchyElement, FrameElement, RenderableDOMElement], ICompElement);\n  ICompElement.prototype.initElement = function (data, globalData, comp) {\n    this.initFrame();\n    this.initBaseData(data, globalData, comp);\n    this.initTransform(data, globalData, comp);\n    this.initRenderable();\n    this.initHierarchy();\n    this.initRendererElement();\n    this.createContainerElements();\n    this.createRenderableComponents();\n    if (this.data.xt || !globalData.progressiveLoad) {\n      this.buildAllItems();\n    }\n    this.hide();\n  };\n\n  /* ICompElement.prototype.hide = function(){\n      if(!this.hidden){\n          this.hideElement();\n          var i,len = this.elements.length;\n          for( i = 0; i < len; i+=1 ){\n              if(this.elements[i]){\n                  this.elements[i].hide();\n              }\n          }\n      }\n  }; */\n\n  ICompElement.prototype.prepareFrame = function (num) {\n    this._mdf = false;\n    this.prepareRenderableFrame(num);\n    this.prepareProperties(num, this.isInRange);\n    if (!this.isInRange && !this.data.xt) {\n      return;\n    }\n    if (!this.tm._placeholder) {\n      var timeRemapped = this.tm.v;\n      if (timeRemapped === this.data.op) {\n        timeRemapped = this.data.op - 1;\n      }\n      this.renderedFrame = timeRemapped;\n    } else {\n      this.renderedFrame = num / this.data.sr;\n    }\n    var i;\n    var len = this.elements.length;\n    if (!this.completeLayers) {\n      this.checkLayers(this.renderedFrame);\n    }\n    // This iteration needs to be backwards because of how expressions connect between each other\n    for (i = len - 1; i >= 0; i -= 1) {\n      if (this.completeLayers || this.elements[i]) {\n        this.elements[i].prepareFrame(this.renderedFrame - this.layers[i].st);\n        if (this.elements[i]._mdf) {\n          this._mdf = true;\n        }\n      }\n    }\n  };\n  ICompElement.prototype.renderInnerContent = function () {\n    var i;\n    var len = this.layers.length;\n    for (i = 0; i < len; i += 1) {\n      if (this.completeLayers || this.elements[i]) {\n        this.elements[i].renderFrame();\n      }\n    }\n  };\n  ICompElement.prototype.setElements = function (elems) {\n    this.elements = elems;\n  };\n  ICompElement.prototype.getElements = function () {\n    return this.elements;\n  };\n  ICompElement.prototype.destroyElements = function () {\n    var i;\n    var len = this.layers.length;\n    for (i = 0; i < len; i += 1) {\n      if (this.elements[i]) {\n        this.elements[i].destroy();\n      }\n    }\n  };\n  ICompElement.prototype.destroy = function () {\n    this.destroyElements();\n    this.destroyBaseElement();\n  };\n\n  function SVGCompElement(data, globalData, comp) {\n    this.layers = data.layers;\n    this.supports3d = true;\n    this.completeLayers = false;\n    this.pendingElements = [];\n    this.elements = this.layers ? createSizedArray(this.layers.length) : [];\n    this.initElement(data, globalData, comp);\n    this.tm = data.tm ? PropertyFactory.getProp(this, data.tm, 0, globalData.frameRate, this) : {\n      _placeholder: true\n    };\n  }\n  extendPrototype([SVGRendererBase, ICompElement, SVGBaseElement], SVGCompElement);\n  SVGCompElement.prototype.createComp = function (data) {\n    return new SVGCompElement(data, this.globalData, this);\n  };\n\n  function SVGRenderer(animationItem, config) {\n    this.animationItem = animationItem;\n    this.layers = null;\n    this.renderedFrame = -1;\n    this.svgElement = createNS('svg');\n    var ariaLabel = '';\n    if (config && config.title) {\n      var titleElement = createNS('title');\n      var titleId = createElementID();\n      titleElement.setAttribute('id', titleId);\n      titleElement.textContent = config.title;\n      this.svgElement.appendChild(titleElement);\n      ariaLabel += titleId;\n    }\n    if (config && config.description) {\n      var descElement = createNS('desc');\n      var descId = createElementID();\n      descElement.setAttribute('id', descId);\n      descElement.textContent = config.description;\n      this.svgElement.appendChild(descElement);\n      ariaLabel += ' ' + descId;\n    }\n    if (ariaLabel) {\n      this.svgElement.setAttribute('aria-labelledby', ariaLabel);\n    }\n    var defs = createNS('defs');\n    this.svgElement.appendChild(defs);\n    var maskElement = createNS('g');\n    this.svgElement.appendChild(maskElement);\n    this.layerElement = maskElement;\n    this.renderConfig = {\n      preserveAspectRatio: config && config.preserveAspectRatio || 'xMidYMid meet',\n      imagePreserveAspectRatio: config && config.imagePreserveAspectRatio || 'xMidYMid slice',\n      contentVisibility: config && config.contentVisibility || 'visible',\n      progressiveLoad: config && config.progressiveLoad || false,\n      hideOnTransparent: !(config && config.hideOnTransparent === false),\n      viewBoxOnly: config && config.viewBoxOnly || false,\n      viewBoxSize: config && config.viewBoxSize || false,\n      className: config && config.className || '',\n      id: config && config.id || '',\n      focusable: config && config.focusable,\n      filterSize: {\n        width: config && config.filterSize && config.filterSize.width || '100%',\n        height: config && config.filterSize && config.filterSize.height || '100%',\n        x: config && config.filterSize && config.filterSize.x || '0%',\n        y: config && config.filterSize && config.filterSize.y || '0%'\n      },\n      width: config && config.width,\n      height: config && config.height,\n      runExpressions: !config || config.runExpressions === undefined || config.runExpressions\n    };\n    this.globalData = {\n      _mdf: false,\n      frameNum: -1,\n      defs: defs,\n      renderConfig: this.renderConfig\n    };\n    this.elements = [];\n    this.pendingElements = [];\n    this.destroyed = false;\n    this.rendererType = 'svg';\n  }\n  extendPrototype([SVGRendererBase], SVGRenderer);\n  SVGRenderer.prototype.createComp = function (data) {\n    return new SVGCompElement(data, this.globalData, this);\n  };\n\n  function ShapeTransformManager() {\n    this.sequences = {};\n    this.sequenceList = [];\n    this.transform_key_count = 0;\n  }\n  ShapeTransformManager.prototype = {\n    addTransformSequence: function addTransformSequence(transforms) {\n      var i;\n      var len = transforms.length;\n      var key = '_';\n      for (i = 0; i < len; i += 1) {\n        key += transforms[i].transform.key + '_';\n      }\n      var sequence = this.sequences[key];\n      if (!sequence) {\n        sequence = {\n          transforms: [].concat(transforms),\n          finalTransform: new Matrix(),\n          _mdf: false\n        };\n        this.sequences[key] = sequence;\n        this.sequenceList.push(sequence);\n      }\n      return sequence;\n    },\n    processSequence: function processSequence(sequence, isFirstFrame) {\n      var i = 0;\n      var len = sequence.transforms.length;\n      var _mdf = isFirstFrame;\n      while (i < len && !isFirstFrame) {\n        if (sequence.transforms[i].transform.mProps._mdf) {\n          _mdf = true;\n          break;\n        }\n        i += 1;\n      }\n      if (_mdf) {\n        sequence.finalTransform.reset();\n        for (i = len - 1; i >= 0; i -= 1) {\n          sequence.finalTransform.multiply(sequence.transforms[i].transform.mProps.v);\n        }\n      }\n      sequence._mdf = _mdf;\n    },\n    processSequences: function processSequences(isFirstFrame) {\n      var i;\n      var len = this.sequenceList.length;\n      for (i = 0; i < len; i += 1) {\n        this.processSequence(this.sequenceList[i], isFirstFrame);\n      }\n    },\n    getNewKey: function getNewKey() {\n      this.transform_key_count += 1;\n      return '_' + this.transform_key_count;\n    }\n  };\n\n  var lumaLoader = function lumaLoader() {\n    var id = '__lottie_element_luma_buffer';\n    var lumaBuffer = null;\n    var lumaBufferCtx = null;\n    var svg = null;\n\n    // This alternate solution has a slight delay before the filter is applied, resulting in a flicker on the first frame.\n    // Keeping this here for reference, and in the future, if offscreen canvas supports url filters, this can be used.\n    // For now, neither of them work for offscreen canvas, so canvas workers can't support the luma track matte mask.\n    // Naming it solution 2 to mark the extra comment lines.\n    /*\n    var svgString = [\n      '<svg xmlns=\"http://www.w3.org/2000/svg\">',\n      '<filter id=\"' + id + '\">',\n      '<feColorMatrix type=\"matrix\" color-interpolation-filters=\"sRGB\" values=\"',\n      '0.3, 0.3, 0.3, 0, 0, ',\n      '0.3, 0.3, 0.3, 0, 0, ',\n      '0.3, 0.3, 0.3, 0, 0, ',\n      '0.3, 0.3, 0.3, 0, 0',\n      '\"/>',\n      '</filter>',\n      '</svg>',\n    ].join('');\n    var blob = new Blob([svgString], { type: 'image/svg+xml' });\n    var url = URL.createObjectURL(blob);\n    */\n\n    function createLumaSvgFilter() {\n      var _svg = createNS('svg');\n      var fil = createNS('filter');\n      var matrix = createNS('feColorMatrix');\n      fil.setAttribute('id', id);\n      matrix.setAttribute('type', 'matrix');\n      matrix.setAttribute('color-interpolation-filters', 'sRGB');\n      matrix.setAttribute('values', '0.3, 0.3, 0.3, 0, 0, 0.3, 0.3, 0.3, 0, 0, 0.3, 0.3, 0.3, 0, 0, 0.3, 0.3, 0.3, 0, 0');\n      fil.appendChild(matrix);\n      _svg.appendChild(fil);\n      _svg.setAttribute('id', id + '_svg');\n      if (featureSupport.svgLumaHidden) {\n        _svg.style.display = 'none';\n      }\n      return _svg;\n    }\n    function loadLuma() {\n      if (!lumaBuffer) {\n        svg = createLumaSvgFilter();\n        document.body.appendChild(svg);\n        lumaBuffer = createTag('canvas');\n        lumaBufferCtx = lumaBuffer.getContext('2d');\n        // lumaBufferCtx.filter = `url('${url}#__lottie_element_luma_buffer')`; // part of solution 2\n        lumaBufferCtx.filter = 'url(#' + id + ')';\n        lumaBufferCtx.fillStyle = 'rgba(0,0,0,0)';\n        lumaBufferCtx.fillRect(0, 0, 1, 1);\n      }\n    }\n    function getLuma(canvas) {\n      if (!lumaBuffer) {\n        loadLuma();\n      }\n      lumaBuffer.width = canvas.width;\n      lumaBuffer.height = canvas.height;\n      // lumaBufferCtx.filter = `url('${url}#__lottie_element_luma_buffer')`; // part of solution 2\n      lumaBufferCtx.filter = 'url(#' + id + ')';\n      return lumaBuffer;\n    }\n    return {\n      load: loadLuma,\n      get: getLuma\n    };\n  };\n  function createCanvas(width, height) {\n    if (featureSupport.offscreenCanvas) {\n      return new OffscreenCanvas(width, height);\n    }\n    var canvas = createTag('canvas');\n    canvas.width = width;\n    canvas.height = height;\n    return canvas;\n  }\n  var assetLoader = function () {\n    return {\n      loadLumaCanvas: lumaLoader.load,\n      getLumaCanvas: lumaLoader.get,\n      createCanvas: createCanvas\n    };\n  }();\n\n  var registeredEffects = {};\n  function CVEffects(elem) {\n    var i;\n    var len = elem.data.ef ? elem.data.ef.length : 0;\n    this.filters = [];\n    var filterManager;\n    for (i = 0; i < len; i += 1) {\n      filterManager = null;\n      var type = elem.data.ef[i].ty;\n      if (registeredEffects[type]) {\n        var Effect = registeredEffects[type].effect;\n        filterManager = new Effect(elem.effectsManager.effectElements[i], elem);\n      }\n      if (filterManager) {\n        this.filters.push(filterManager);\n      }\n    }\n    if (this.filters.length) {\n      elem.addRenderableComponent(this);\n    }\n  }\n  CVEffects.prototype.renderFrame = function (_isFirstFrame) {\n    var i;\n    var len = this.filters.length;\n    for (i = 0; i < len; i += 1) {\n      this.filters[i].renderFrame(_isFirstFrame);\n    }\n  };\n  CVEffects.prototype.getEffects = function (type) {\n    var i;\n    var len = this.filters.length;\n    var effects = [];\n    for (i = 0; i < len; i += 1) {\n      if (this.filters[i].type === type) {\n        effects.push(this.filters[i]);\n      }\n    }\n    return effects;\n  };\n  function registerEffect(id, effect) {\n    registeredEffects[id] = {\n      effect: effect\n    };\n  }\n\n  function CVMaskElement(data, element) {\n    this.data = data;\n    this.element = element;\n    this.masksProperties = this.data.masksProperties || [];\n    this.viewData = createSizedArray(this.masksProperties.length);\n    var i;\n    var len = this.masksProperties.length;\n    var hasMasks = false;\n    for (i = 0; i < len; i += 1) {\n      if (this.masksProperties[i].mode !== 'n') {\n        hasMasks = true;\n      }\n      this.viewData[i] = ShapePropertyFactory.getShapeProp(this.element, this.masksProperties[i], 3);\n    }\n    this.hasMasks = hasMasks;\n    if (hasMasks) {\n      this.element.addRenderableComponent(this);\n    }\n  }\n  CVMaskElement.prototype.renderFrame = function () {\n    if (!this.hasMasks) {\n      return;\n    }\n    var transform = this.element.finalTransform.mat;\n    var ctx = this.element.canvasContext;\n    var i;\n    var len = this.masksProperties.length;\n    var pt;\n    var pts;\n    var data;\n    ctx.beginPath();\n    for (i = 0; i < len; i += 1) {\n      if (this.masksProperties[i].mode !== 'n') {\n        if (this.masksProperties[i].inv) {\n          ctx.moveTo(0, 0);\n          ctx.lineTo(this.element.globalData.compSize.w, 0);\n          ctx.lineTo(this.element.globalData.compSize.w, this.element.globalData.compSize.h);\n          ctx.lineTo(0, this.element.globalData.compSize.h);\n          ctx.lineTo(0, 0);\n        }\n        data = this.viewData[i].v;\n        pt = transform.applyToPointArray(data.v[0][0], data.v[0][1], 0);\n        ctx.moveTo(pt[0], pt[1]);\n        var j;\n        var jLen = data._length;\n        for (j = 1; j < jLen; j += 1) {\n          pts = transform.applyToTriplePoints(data.o[j - 1], data.i[j], data.v[j]);\n          ctx.bezierCurveTo(pts[0], pts[1], pts[2], pts[3], pts[4], pts[5]);\n        }\n        pts = transform.applyToTriplePoints(data.o[j - 1], data.i[0], data.v[0]);\n        ctx.bezierCurveTo(pts[0], pts[1], pts[2], pts[3], pts[4], pts[5]);\n      }\n    }\n    this.element.globalData.renderer.save(true);\n    ctx.clip();\n  };\n  CVMaskElement.prototype.getMaskProperty = MaskElement.prototype.getMaskProperty;\n  CVMaskElement.prototype.destroy = function () {\n    this.element = null;\n  };\n\n  function CVBaseElement() {}\n  var operationsMap = {\n    1: 'source-in',\n    2: 'source-out',\n    3: 'source-in',\n    4: 'source-out'\n  };\n  CVBaseElement.prototype = {\n    createElements: function createElements() {},\n    initRendererElement: function initRendererElement() {},\n    createContainerElements: function createContainerElements() {\n      // If the layer is masked we will use two buffers to store each different states of the drawing\n      // This solution is not ideal for several reason. But unfortunately, because of the recursive\n      // nature of the render tree, it's the only simple way to make sure one inner mask doesn't override an outer mask.\n      // TODO: try to reduce the size of these buffers to the size of the composition contaning the layer\n      // It might be challenging because the layer most likely is transformed in some way\n      if (this.data.tt >= 1) {\n        this.buffers = [];\n        var canvasContext = this.globalData.canvasContext;\n        var bufferCanvas = assetLoader.createCanvas(canvasContext.canvas.width, canvasContext.canvas.height);\n        this.buffers.push(bufferCanvas);\n        var bufferCanvas2 = assetLoader.createCanvas(canvasContext.canvas.width, canvasContext.canvas.height);\n        this.buffers.push(bufferCanvas2);\n        if (this.data.tt >= 3 && !document._isProxy) {\n          assetLoader.loadLumaCanvas();\n        }\n      }\n      this.canvasContext = this.globalData.canvasContext;\n      this.transformCanvas = this.globalData.transformCanvas;\n      this.renderableEffectsManager = new CVEffects(this);\n      this.searchEffectTransforms();\n    },\n    createContent: function createContent() {},\n    setBlendMode: function setBlendMode() {\n      var globalData = this.globalData;\n      if (globalData.blendMode !== this.data.bm) {\n        globalData.blendMode = this.data.bm;\n        var blendModeValue = getBlendMode(this.data.bm);\n        globalData.canvasContext.globalCompositeOperation = blendModeValue;\n      }\n    },\n    createRenderableComponents: function createRenderableComponents() {\n      this.maskManager = new CVMaskElement(this.data, this);\n      this.transformEffects = this.renderableEffectsManager.getEffects(effectTypes.TRANSFORM_EFFECT);\n    },\n    hideElement: function hideElement() {\n      if (!this.hidden && (!this.isInRange || this.isTransparent)) {\n        this.hidden = true;\n      }\n    },\n    showElement: function showElement() {\n      if (this.isInRange && !this.isTransparent) {\n        this.hidden = false;\n        this._isFirstFrame = true;\n        this.maskManager._isFirstFrame = true;\n      }\n    },\n    clearCanvas: function clearCanvas(canvasContext) {\n      canvasContext.clearRect(this.transformCanvas.tx, this.transformCanvas.ty, this.transformCanvas.w * this.transformCanvas.sx, this.transformCanvas.h * this.transformCanvas.sy);\n    },\n    prepareLayer: function prepareLayer() {\n      if (this.data.tt >= 1) {\n        var buffer = this.buffers[0];\n        var bufferCtx = buffer.getContext('2d');\n        this.clearCanvas(bufferCtx);\n        // on the first buffer we store the current state of the global drawing\n        bufferCtx.drawImage(this.canvasContext.canvas, 0, 0);\n        // The next four lines are to clear the canvas\n        // TODO: Check if there is a way to clear the canvas without resetting the transform\n        this.currentTransform = this.canvasContext.getTransform();\n        this.canvasContext.setTransform(1, 0, 0, 1, 0, 0);\n        this.clearCanvas(this.canvasContext);\n        this.canvasContext.setTransform(this.currentTransform);\n      }\n    },\n    exitLayer: function exitLayer() {\n      if (this.data.tt >= 1) {\n        var buffer = this.buffers[1];\n        // On the second buffer we store the current state of the global drawing\n        // that only contains the content of this layer\n        // (if it is a composition, it also includes the nested layers)\n        var bufferCtx = buffer.getContext('2d');\n        this.clearCanvas(bufferCtx);\n        bufferCtx.drawImage(this.canvasContext.canvas, 0, 0);\n        // We clear the canvas again\n        this.canvasContext.setTransform(1, 0, 0, 1, 0, 0);\n        this.clearCanvas(this.canvasContext);\n        this.canvasContext.setTransform(this.currentTransform);\n        // We draw the mask\n        var mask = this.comp.getElementById('tp' in this.data ? this.data.tp : this.data.ind - 1);\n        mask.renderFrame(true);\n        // We draw the second buffer (that contains the content of this layer)\n        this.canvasContext.setTransform(1, 0, 0, 1, 0, 0);\n\n        // If the mask is a Luma matte, we need to do two extra painting operations\n        // the _isProxy check is to avoid drawing a fake canvas in workers that will throw an error\n        if (this.data.tt >= 3 && !document._isProxy) {\n          // We copy the painted mask to a buffer that has a color matrix filter applied to it\n          // that applies the rgb values to the alpha channel\n          var lumaBuffer = assetLoader.getLumaCanvas(this.canvasContext.canvas);\n          var lumaBufferCtx = lumaBuffer.getContext('2d');\n          lumaBufferCtx.drawImage(this.canvasContext.canvas, 0, 0);\n          this.clearCanvas(this.canvasContext);\n          // we repaint the context with the mask applied to it\n          this.canvasContext.drawImage(lumaBuffer, 0, 0);\n        }\n        this.canvasContext.globalCompositeOperation = operationsMap[this.data.tt];\n        this.canvasContext.drawImage(buffer, 0, 0);\n        // We finally draw the first buffer (that contains the content of the global drawing)\n        // We use destination-over to draw the global drawing below the current layer\n        this.canvasContext.globalCompositeOperation = 'destination-over';\n        this.canvasContext.drawImage(this.buffers[0], 0, 0);\n        this.canvasContext.setTransform(this.currentTransform);\n        // We reset the globalCompositeOperation to source-over, the standard type of operation\n        this.canvasContext.globalCompositeOperation = 'source-over';\n      }\n    },\n    renderFrame: function renderFrame(forceRender) {\n      if (this.hidden || this.data.hd) {\n        return;\n      }\n      if (this.data.td === 1 && !forceRender) {\n        return;\n      }\n      this.renderTransform();\n      this.renderRenderable();\n      this.renderLocalTransform();\n      this.setBlendMode();\n      var forceRealStack = this.data.ty === 0;\n      this.prepareLayer();\n      this.globalData.renderer.save(forceRealStack);\n      this.globalData.renderer.ctxTransform(this.finalTransform.localMat.props);\n      this.globalData.renderer.ctxOpacity(this.finalTransform.localOpacity);\n      this.renderInnerContent();\n      this.globalData.renderer.restore(forceRealStack);\n      this.exitLayer();\n      if (this.maskManager.hasMasks) {\n        this.globalData.renderer.restore(true);\n      }\n      if (this._isFirstFrame) {\n        this._isFirstFrame = false;\n      }\n    },\n    destroy: function destroy() {\n      this.canvasContext = null;\n      this.data = null;\n      this.globalData = null;\n      this.maskManager.destroy();\n    },\n    mHelper: new Matrix()\n  };\n  CVBaseElement.prototype.hide = CVBaseElement.prototype.hideElement;\n  CVBaseElement.prototype.show = CVBaseElement.prototype.showElement;\n\n  function CVShapeData(element, data, styles, transformsManager) {\n    this.styledShapes = [];\n    this.tr = [0, 0, 0, 0, 0, 0];\n    var ty = 4;\n    if (data.ty === 'rc') {\n      ty = 5;\n    } else if (data.ty === 'el') {\n      ty = 6;\n    } else if (data.ty === 'sr') {\n      ty = 7;\n    }\n    this.sh = ShapePropertyFactory.getShapeProp(element, data, ty, element);\n    var i;\n    var len = styles.length;\n    var styledShape;\n    for (i = 0; i < len; i += 1) {\n      if (!styles[i].closed) {\n        styledShape = {\n          transforms: transformsManager.addTransformSequence(styles[i].transforms),\n          trNodes: []\n        };\n        this.styledShapes.push(styledShape);\n        styles[i].elements.push(styledShape);\n      }\n    }\n  }\n  CVShapeData.prototype.setAsAnimated = SVGShapeData.prototype.setAsAnimated;\n\n  function CVShapeElement(data, globalData, comp) {\n    this.shapes = [];\n    this.shapesData = data.shapes;\n    this.stylesList = [];\n    this.itemsData = [];\n    this.prevViewData = [];\n    this.shapeModifiers = [];\n    this.processedElements = [];\n    this.transformsManager = new ShapeTransformManager();\n    this.initElement(data, globalData, comp);\n  }\n  extendPrototype([BaseElement, TransformElement, CVBaseElement, IShapeElement, HierarchyElement, FrameElement, RenderableElement], CVShapeElement);\n  CVShapeElement.prototype.initElement = RenderableDOMElement.prototype.initElement;\n  CVShapeElement.prototype.transformHelper = {\n    opacity: 1,\n    _opMdf: false\n  };\n  CVShapeElement.prototype.dashResetter = [];\n  CVShapeElement.prototype.createContent = function () {\n    this.searchShapes(this.shapesData, this.itemsData, this.prevViewData, true, []);\n  };\n  CVShapeElement.prototype.createStyleElement = function (data, transforms) {\n    var styleElem = {\n      data: data,\n      type: data.ty,\n      preTransforms: this.transformsManager.addTransformSequence(transforms),\n      transforms: [],\n      elements: [],\n      closed: data.hd === true\n    };\n    var elementData = {};\n    if (data.ty === 'fl' || data.ty === 'st') {\n      elementData.c = PropertyFactory.getProp(this, data.c, 1, 255, this);\n      if (!elementData.c.k) {\n        styleElem.co = 'rgb(' + bmFloor(elementData.c.v[0]) + ',' + bmFloor(elementData.c.v[1]) + ',' + bmFloor(elementData.c.v[2]) + ')';\n      }\n    } else if (data.ty === 'gf' || data.ty === 'gs') {\n      elementData.s = PropertyFactory.getProp(this, data.s, 1, null, this);\n      elementData.e = PropertyFactory.getProp(this, data.e, 1, null, this);\n      elementData.h = PropertyFactory.getProp(this, data.h || {\n        k: 0\n      }, 0, 0.01, this);\n      elementData.a = PropertyFactory.getProp(this, data.a || {\n        k: 0\n      }, 0, degToRads, this);\n      elementData.g = new GradientProperty(this, data.g, this);\n    }\n    elementData.o = PropertyFactory.getProp(this, data.o, 0, 0.01, this);\n    if (data.ty === 'st' || data.ty === 'gs') {\n      styleElem.lc = lineCapEnum[data.lc || 2];\n      styleElem.lj = lineJoinEnum[data.lj || 2];\n      if (data.lj == 1) {\n        // eslint-disable-line eqeqeq\n        styleElem.ml = data.ml;\n      }\n      elementData.w = PropertyFactory.getProp(this, data.w, 0, null, this);\n      if (!elementData.w.k) {\n        styleElem.wi = elementData.w.v;\n      }\n      if (data.d) {\n        var d = new DashProperty(this, data.d, 'canvas', this);\n        elementData.d = d;\n        if (!elementData.d.k) {\n          styleElem.da = elementData.d.dashArray;\n          styleElem[\"do\"] = elementData.d.dashoffset[0];\n        }\n      }\n    } else {\n      styleElem.r = data.r === 2 ? 'evenodd' : 'nonzero';\n    }\n    this.stylesList.push(styleElem);\n    elementData.style = styleElem;\n    return elementData;\n  };\n  CVShapeElement.prototype.createGroupElement = function () {\n    var elementData = {\n      it: [],\n      prevViewData: []\n    };\n    return elementData;\n  };\n  CVShapeElement.prototype.createTransformElement = function (data) {\n    var elementData = {\n      transform: {\n        opacity: 1,\n        _opMdf: false,\n        key: this.transformsManager.getNewKey(),\n        op: PropertyFactory.getProp(this, data.o, 0, 0.01, this),\n        mProps: TransformPropertyFactory.getTransformProperty(this, data, this)\n      }\n    };\n    return elementData;\n  };\n  CVShapeElement.prototype.createShapeElement = function (data) {\n    var elementData = new CVShapeData(this, data, this.stylesList, this.transformsManager);\n    this.shapes.push(elementData);\n    this.addShapeToModifiers(elementData);\n    return elementData;\n  };\n  CVShapeElement.prototype.reloadShapes = function () {\n    this._isFirstFrame = true;\n    var i;\n    var len = this.itemsData.length;\n    for (i = 0; i < len; i += 1) {\n      this.prevViewData[i] = this.itemsData[i];\n    }\n    this.searchShapes(this.shapesData, this.itemsData, this.prevViewData, true, []);\n    len = this.dynamicProperties.length;\n    for (i = 0; i < len; i += 1) {\n      this.dynamicProperties[i].getValue();\n    }\n    this.renderModifiers();\n    this.transformsManager.processSequences(this._isFirstFrame);\n  };\n  CVShapeElement.prototype.addTransformToStyleList = function (transform) {\n    var i;\n    var len = this.stylesList.length;\n    for (i = 0; i < len; i += 1) {\n      if (!this.stylesList[i].closed) {\n        this.stylesList[i].transforms.push(transform);\n      }\n    }\n  };\n  CVShapeElement.prototype.removeTransformFromStyleList = function () {\n    var i;\n    var len = this.stylesList.length;\n    for (i = 0; i < len; i += 1) {\n      if (!this.stylesList[i].closed) {\n        this.stylesList[i].transforms.pop();\n      }\n    }\n  };\n  CVShapeElement.prototype.closeStyles = function (styles) {\n    var i;\n    var len = styles.length;\n    for (i = 0; i < len; i += 1) {\n      styles[i].closed = true;\n    }\n  };\n  CVShapeElement.prototype.searchShapes = function (arr, itemsData, prevViewData, shouldRender, transforms) {\n    var i;\n    var len = arr.length - 1;\n    var j;\n    var jLen;\n    var ownStyles = [];\n    var ownModifiers = [];\n    var processedPos;\n    var modifier;\n    var currentTransform;\n    var ownTransforms = [].concat(transforms);\n    for (i = len; i >= 0; i -= 1) {\n      processedPos = this.searchProcessedElement(arr[i]);\n      if (!processedPos) {\n        arr[i]._shouldRender = shouldRender;\n      } else {\n        itemsData[i] = prevViewData[processedPos - 1];\n      }\n      if (arr[i].ty === 'fl' || arr[i].ty === 'st' || arr[i].ty === 'gf' || arr[i].ty === 'gs') {\n        if (!processedPos) {\n          itemsData[i] = this.createStyleElement(arr[i], ownTransforms);\n        } else {\n          itemsData[i].style.closed = false;\n        }\n        ownStyles.push(itemsData[i].style);\n      } else if (arr[i].ty === 'gr') {\n        if (!processedPos) {\n          itemsData[i] = this.createGroupElement(arr[i]);\n        } else {\n          jLen = itemsData[i].it.length;\n          for (j = 0; j < jLen; j += 1) {\n            itemsData[i].prevViewData[j] = itemsData[i].it[j];\n          }\n        }\n        this.searchShapes(arr[i].it, itemsData[i].it, itemsData[i].prevViewData, shouldRender, ownTransforms);\n      } else if (arr[i].ty === 'tr') {\n        if (!processedPos) {\n          currentTransform = this.createTransformElement(arr[i]);\n          itemsData[i] = currentTransform;\n        }\n        ownTransforms.push(itemsData[i]);\n        this.addTransformToStyleList(itemsData[i]);\n      } else if (arr[i].ty === 'sh' || arr[i].ty === 'rc' || arr[i].ty === 'el' || arr[i].ty === 'sr') {\n        if (!processedPos) {\n          itemsData[i] = this.createShapeElement(arr[i]);\n        }\n      } else if (arr[i].ty === 'tm' || arr[i].ty === 'rd' || arr[i].ty === 'pb' || arr[i].ty === 'zz' || arr[i].ty === 'op') {\n        if (!processedPos) {\n          modifier = ShapeModifiers.getModifier(arr[i].ty);\n          modifier.init(this, arr[i]);\n          itemsData[i] = modifier;\n          this.shapeModifiers.push(modifier);\n        } else {\n          modifier = itemsData[i];\n          modifier.closed = false;\n        }\n        ownModifiers.push(modifier);\n      } else if (arr[i].ty === 'rp') {\n        if (!processedPos) {\n          modifier = ShapeModifiers.getModifier(arr[i].ty);\n          itemsData[i] = modifier;\n          modifier.init(this, arr, i, itemsData);\n          this.shapeModifiers.push(modifier);\n          shouldRender = false;\n        } else {\n          modifier = itemsData[i];\n          modifier.closed = true;\n        }\n        ownModifiers.push(modifier);\n      }\n      this.addProcessedElement(arr[i], i + 1);\n    }\n    this.removeTransformFromStyleList();\n    this.closeStyles(ownStyles);\n    len = ownModifiers.length;\n    for (i = 0; i < len; i += 1) {\n      ownModifiers[i].closed = true;\n    }\n  };\n  CVShapeElement.prototype.renderInnerContent = function () {\n    this.transformHelper.opacity = 1;\n    this.transformHelper._opMdf = false;\n    this.renderModifiers();\n    this.transformsManager.processSequences(this._isFirstFrame);\n    this.renderShape(this.transformHelper, this.shapesData, this.itemsData, true);\n  };\n  CVShapeElement.prototype.renderShapeTransform = function (parentTransform, groupTransform) {\n    if (parentTransform._opMdf || groupTransform.op._mdf || this._isFirstFrame) {\n      groupTransform.opacity = parentTransform.opacity;\n      groupTransform.opacity *= groupTransform.op.v;\n      groupTransform._opMdf = true;\n    }\n  };\n  CVShapeElement.prototype.drawLayer = function () {\n    var i;\n    var len = this.stylesList.length;\n    var j;\n    var jLen;\n    var k;\n    var kLen;\n    var elems;\n    var nodes;\n    var renderer = this.globalData.renderer;\n    var ctx = this.globalData.canvasContext;\n    var type;\n    var currentStyle;\n    for (i = 0; i < len; i += 1) {\n      currentStyle = this.stylesList[i];\n      type = currentStyle.type;\n\n      // Skipping style when\n      // Stroke width equals 0\n      // style should not be rendered (extra unused repeaters)\n      // current opacity equals 0\n      // global opacity equals 0\n      if (!((type === 'st' || type === 'gs') && currentStyle.wi === 0 || !currentStyle.data._shouldRender || currentStyle.coOp === 0 || this.globalData.currentGlobalAlpha === 0)) {\n        renderer.save();\n        elems = currentStyle.elements;\n        if (type === 'st' || type === 'gs') {\n          renderer.ctxStrokeStyle(type === 'st' ? currentStyle.co : currentStyle.grd);\n          // ctx.strokeStyle = type === 'st' ? currentStyle.co : currentStyle.grd;\n          renderer.ctxLineWidth(currentStyle.wi);\n          // ctx.lineWidth = currentStyle.wi;\n          renderer.ctxLineCap(currentStyle.lc);\n          // ctx.lineCap = currentStyle.lc;\n          renderer.ctxLineJoin(currentStyle.lj);\n          // ctx.lineJoin = currentStyle.lj;\n          renderer.ctxMiterLimit(currentStyle.ml || 0);\n          // ctx.miterLimit = currentStyle.ml || 0;\n        } else {\n          renderer.ctxFillStyle(type === 'fl' ? currentStyle.co : currentStyle.grd);\n          // ctx.fillStyle = type === 'fl' ? currentStyle.co : currentStyle.grd;\n        }\n        renderer.ctxOpacity(currentStyle.coOp);\n        if (type !== 'st' && type !== 'gs') {\n          ctx.beginPath();\n        }\n        renderer.ctxTransform(currentStyle.preTransforms.finalTransform.props);\n        jLen = elems.length;\n        for (j = 0; j < jLen; j += 1) {\n          if (type === 'st' || type === 'gs') {\n            ctx.beginPath();\n            if (currentStyle.da) {\n              ctx.setLineDash(currentStyle.da);\n              ctx.lineDashOffset = currentStyle[\"do\"];\n            }\n          }\n          nodes = elems[j].trNodes;\n          kLen = nodes.length;\n          for (k = 0; k < kLen; k += 1) {\n            if (nodes[k].t === 'm') {\n              ctx.moveTo(nodes[k].p[0], nodes[k].p[1]);\n            } else if (nodes[k].t === 'c') {\n              ctx.bezierCurveTo(nodes[k].pts[0], nodes[k].pts[1], nodes[k].pts[2], nodes[k].pts[3], nodes[k].pts[4], nodes[k].pts[5]);\n            } else {\n              ctx.closePath();\n            }\n          }\n          if (type === 'st' || type === 'gs') {\n            // ctx.stroke();\n            renderer.ctxStroke();\n            if (currentStyle.da) {\n              ctx.setLineDash(this.dashResetter);\n            }\n          }\n        }\n        if (type !== 'st' && type !== 'gs') {\n          // ctx.fill(currentStyle.r);\n          this.globalData.renderer.ctxFill(currentStyle.r);\n        }\n        renderer.restore();\n      }\n    }\n  };\n  CVShapeElement.prototype.renderShape = function (parentTransform, items, data, isMain) {\n    var i;\n    var len = items.length - 1;\n    var groupTransform;\n    groupTransform = parentTransform;\n    for (i = len; i >= 0; i -= 1) {\n      if (items[i].ty === 'tr') {\n        groupTransform = data[i].transform;\n        this.renderShapeTransform(parentTransform, groupTransform);\n      } else if (items[i].ty === 'sh' || items[i].ty === 'el' || items[i].ty === 'rc' || items[i].ty === 'sr') {\n        this.renderPath(items[i], data[i]);\n      } else if (items[i].ty === 'fl') {\n        this.renderFill(items[i], data[i], groupTransform);\n      } else if (items[i].ty === 'st') {\n        this.renderStroke(items[i], data[i], groupTransform);\n      } else if (items[i].ty === 'gf' || items[i].ty === 'gs') {\n        this.renderGradientFill(items[i], data[i], groupTransform);\n      } else if (items[i].ty === 'gr') {\n        this.renderShape(groupTransform, items[i].it, data[i].it);\n      } else if (items[i].ty === 'tm') {\n        //\n      }\n    }\n    if (isMain) {\n      this.drawLayer();\n    }\n  };\n  CVShapeElement.prototype.renderStyledShape = function (styledShape, shape) {\n    if (this._isFirstFrame || shape._mdf || styledShape.transforms._mdf) {\n      var shapeNodes = styledShape.trNodes;\n      var paths = shape.paths;\n      var i;\n      var len;\n      var j;\n      var jLen = paths._length;\n      shapeNodes.length = 0;\n      var groupTransformMat = styledShape.transforms.finalTransform;\n      for (j = 0; j < jLen; j += 1) {\n        var pathNodes = paths.shapes[j];\n        if (pathNodes && pathNodes.v) {\n          len = pathNodes._length;\n          for (i = 1; i < len; i += 1) {\n            if (i === 1) {\n              shapeNodes.push({\n                t: 'm',\n                p: groupTransformMat.applyToPointArray(pathNodes.v[0][0], pathNodes.v[0][1], 0)\n              });\n            }\n            shapeNodes.push({\n              t: 'c',\n              pts: groupTransformMat.applyToTriplePoints(pathNodes.o[i - 1], pathNodes.i[i], pathNodes.v[i])\n            });\n          }\n          if (len === 1) {\n            shapeNodes.push({\n              t: 'm',\n              p: groupTransformMat.applyToPointArray(pathNodes.v[0][0], pathNodes.v[0][1], 0)\n            });\n          }\n          if (pathNodes.c && len) {\n            shapeNodes.push({\n              t: 'c',\n              pts: groupTransformMat.applyToTriplePoints(pathNodes.o[i - 1], pathNodes.i[0], pathNodes.v[0])\n            });\n            shapeNodes.push({\n              t: 'z'\n            });\n          }\n        }\n      }\n      styledShape.trNodes = shapeNodes;\n    }\n  };\n  CVShapeElement.prototype.renderPath = function (pathData, itemData) {\n    if (pathData.hd !== true && pathData._shouldRender) {\n      var i;\n      var len = itemData.styledShapes.length;\n      for (i = 0; i < len; i += 1) {\n        this.renderStyledShape(itemData.styledShapes[i], itemData.sh);\n      }\n    }\n  };\n  CVShapeElement.prototype.renderFill = function (styleData, itemData, groupTransform) {\n    var styleElem = itemData.style;\n    if (itemData.c._mdf || this._isFirstFrame) {\n      styleElem.co = 'rgb(' + bmFloor(itemData.c.v[0]) + ',' + bmFloor(itemData.c.v[1]) + ',' + bmFloor(itemData.c.v[2]) + ')';\n    }\n    if (itemData.o._mdf || groupTransform._opMdf || this._isFirstFrame) {\n      styleElem.coOp = itemData.o.v * groupTransform.opacity;\n    }\n  };\n  CVShapeElement.prototype.renderGradientFill = function (styleData, itemData, groupTransform) {\n    var styleElem = itemData.style;\n    var grd;\n    if (!styleElem.grd || itemData.g._mdf || itemData.s._mdf || itemData.e._mdf || styleData.t !== 1 && (itemData.h._mdf || itemData.a._mdf)) {\n      var ctx = this.globalData.canvasContext;\n      var pt1 = itemData.s.v;\n      var pt2 = itemData.e.v;\n      if (styleData.t === 1) {\n        grd = ctx.createLinearGradient(pt1[0], pt1[1], pt2[0], pt2[1]);\n      } else {\n        var rad = Math.sqrt(Math.pow(pt1[0] - pt2[0], 2) + Math.pow(pt1[1] - pt2[1], 2));\n        var ang = Math.atan2(pt2[1] - pt1[1], pt2[0] - pt1[0]);\n        var percent = itemData.h.v;\n        if (percent >= 1) {\n          percent = 0.99;\n        } else if (percent <= -1) {\n          percent = -0.99;\n        }\n        var dist = rad * percent;\n        var x = Math.cos(ang + itemData.a.v) * dist + pt1[0];\n        var y = Math.sin(ang + itemData.a.v) * dist + pt1[1];\n        grd = ctx.createRadialGradient(x, y, 0, pt1[0], pt1[1], rad);\n      }\n      var i;\n      var len = styleData.g.p;\n      var cValues = itemData.g.c;\n      var opacity = 1;\n      for (i = 0; i < len; i += 1) {\n        if (itemData.g._hasOpacity && itemData.g._collapsable) {\n          opacity = itemData.g.o[i * 2 + 1];\n        }\n        grd.addColorStop(cValues[i * 4] / 100, 'rgba(' + cValues[i * 4 + 1] + ',' + cValues[i * 4 + 2] + ',' + cValues[i * 4 + 3] + ',' + opacity + ')');\n      }\n      styleElem.grd = grd;\n    }\n    styleElem.coOp = itemData.o.v * groupTransform.opacity;\n  };\n  CVShapeElement.prototype.renderStroke = function (styleData, itemData, groupTransform) {\n    var styleElem = itemData.style;\n    var d = itemData.d;\n    if (d && (d._mdf || this._isFirstFrame)) {\n      styleElem.da = d.dashArray;\n      styleElem[\"do\"] = d.dashoffset[0];\n    }\n    if (itemData.c._mdf || this._isFirstFrame) {\n      styleElem.co = 'rgb(' + bmFloor(itemData.c.v[0]) + ',' + bmFloor(itemData.c.v[1]) + ',' + bmFloor(itemData.c.v[2]) + ')';\n    }\n    if (itemData.o._mdf || groupTransform._opMdf || this._isFirstFrame) {\n      styleElem.coOp = itemData.o.v * groupTransform.opacity;\n    }\n    if (itemData.w._mdf || this._isFirstFrame) {\n      styleElem.wi = itemData.w.v;\n    }\n  };\n  CVShapeElement.prototype.destroy = function () {\n    this.shapesData = null;\n    this.globalData = null;\n    this.canvasContext = null;\n    this.stylesList.length = 0;\n    this.itemsData.length = 0;\n  };\n\n  function CVTextElement(data, globalData, comp) {\n    this.textSpans = [];\n    this.yOffset = 0;\n    this.fillColorAnim = false;\n    this.strokeColorAnim = false;\n    this.strokeWidthAnim = false;\n    this.stroke = false;\n    this.fill = false;\n    this.justifyOffset = 0;\n    this.currentRender = null;\n    this.renderType = 'canvas';\n    this.values = {\n      fill: 'rgba(0,0,0,0)',\n      stroke: 'rgba(0,0,0,0)',\n      sWidth: 0,\n      fValue: ''\n    };\n    this.initElement(data, globalData, comp);\n  }\n  extendPrototype([BaseElement, TransformElement, CVBaseElement, HierarchyElement, FrameElement, RenderableElement, ITextElement], CVTextElement);\n  CVTextElement.prototype.tHelper = createTag('canvas').getContext('2d');\n  CVTextElement.prototype.buildNewText = function () {\n    var documentData = this.textProperty.currentData;\n    this.renderedLetters = createSizedArray(documentData.l ? documentData.l.length : 0);\n    var hasFill = false;\n    if (documentData.fc) {\n      hasFill = true;\n      this.values.fill = this.buildColor(documentData.fc);\n    } else {\n      this.values.fill = 'rgba(0,0,0,0)';\n    }\n    this.fill = hasFill;\n    var hasStroke = false;\n    if (documentData.sc) {\n      hasStroke = true;\n      this.values.stroke = this.buildColor(documentData.sc);\n      this.values.sWidth = documentData.sw;\n    }\n    var fontData = this.globalData.fontManager.getFontByName(documentData.f);\n    var i;\n    var len;\n    var letters = documentData.l;\n    var matrixHelper = this.mHelper;\n    this.stroke = hasStroke;\n    this.values.fValue = documentData.finalSize + 'px ' + this.globalData.fontManager.getFontByName(documentData.f).fFamily;\n    len = documentData.finalText.length;\n    // this.tHelper.font = this.values.fValue;\n    var charData;\n    var shapeData;\n    var k;\n    var kLen;\n    var shapes;\n    var j;\n    var jLen;\n    var pathNodes;\n    var commands;\n    var pathArr;\n    var singleShape = this.data.singleShape;\n    var trackingOffset = documentData.tr * 0.001 * documentData.finalSize;\n    var xPos = 0;\n    var yPos = 0;\n    var firstLine = true;\n    var cnt = 0;\n    for (i = 0; i < len; i += 1) {\n      charData = this.globalData.fontManager.getCharData(documentData.finalText[i], fontData.fStyle, this.globalData.fontManager.getFontByName(documentData.f).fFamily);\n      shapeData = charData && charData.data || {};\n      matrixHelper.reset();\n      if (singleShape && letters[i].n) {\n        xPos = -trackingOffset;\n        yPos += documentData.yOffset;\n        yPos += firstLine ? 1 : 0;\n        firstLine = false;\n      }\n      shapes = shapeData.shapes ? shapeData.shapes[0].it : [];\n      jLen = shapes.length;\n      matrixHelper.scale(documentData.finalSize / 100, documentData.finalSize / 100);\n      if (singleShape) {\n        this.applyTextPropertiesToMatrix(documentData, matrixHelper, letters[i].line, xPos, yPos);\n      }\n      commands = createSizedArray(jLen - 1);\n      var commandsCounter = 0;\n      for (j = 0; j < jLen; j += 1) {\n        if (shapes[j].ty === 'sh') {\n          kLen = shapes[j].ks.k.i.length;\n          pathNodes = shapes[j].ks.k;\n          pathArr = [];\n          for (k = 1; k < kLen; k += 1) {\n            if (k === 1) {\n              pathArr.push(matrixHelper.applyToX(pathNodes.v[0][0], pathNodes.v[0][1], 0), matrixHelper.applyToY(pathNodes.v[0][0], pathNodes.v[0][1], 0));\n            }\n            pathArr.push(matrixHelper.applyToX(pathNodes.o[k - 1][0], pathNodes.o[k - 1][1], 0), matrixHelper.applyToY(pathNodes.o[k - 1][0], pathNodes.o[k - 1][1], 0), matrixHelper.applyToX(pathNodes.i[k][0], pathNodes.i[k][1], 0), matrixHelper.applyToY(pathNodes.i[k][0], pathNodes.i[k][1], 0), matrixHelper.applyToX(pathNodes.v[k][0], pathNodes.v[k][1], 0), matrixHelper.applyToY(pathNodes.v[k][0], pathNodes.v[k][1], 0));\n          }\n          pathArr.push(matrixHelper.applyToX(pathNodes.o[k - 1][0], pathNodes.o[k - 1][1], 0), matrixHelper.applyToY(pathNodes.o[k - 1][0], pathNodes.o[k - 1][1], 0), matrixHelper.applyToX(pathNodes.i[0][0], pathNodes.i[0][1], 0), matrixHelper.applyToY(pathNodes.i[0][0], pathNodes.i[0][1], 0), matrixHelper.applyToX(pathNodes.v[0][0], pathNodes.v[0][1], 0), matrixHelper.applyToY(pathNodes.v[0][0], pathNodes.v[0][1], 0));\n          commands[commandsCounter] = pathArr;\n          commandsCounter += 1;\n        }\n      }\n      if (singleShape) {\n        xPos += letters[i].l;\n        xPos += trackingOffset;\n      }\n      if (this.textSpans[cnt]) {\n        this.textSpans[cnt].elem = commands;\n      } else {\n        this.textSpans[cnt] = {\n          elem: commands\n        };\n      }\n      cnt += 1;\n    }\n  };\n  CVTextElement.prototype.renderInnerContent = function () {\n    this.validateText();\n    var ctx = this.canvasContext;\n    ctx.font = this.values.fValue;\n    this.globalData.renderer.ctxLineCap('butt');\n    // ctx.lineCap = 'butt';\n    this.globalData.renderer.ctxLineJoin('miter');\n    // ctx.lineJoin = 'miter';\n    this.globalData.renderer.ctxMiterLimit(4);\n    // ctx.miterLimit = 4;\n\n    if (!this.data.singleShape) {\n      this.textAnimator.getMeasures(this.textProperty.currentData, this.lettersChangedFlag);\n    }\n    var i;\n    var len;\n    var j;\n    var jLen;\n    var k;\n    var kLen;\n    var renderedLetters = this.textAnimator.renderedLetters;\n    var letters = this.textProperty.currentData.l;\n    len = letters.length;\n    var renderedLetter;\n    var lastFill = null;\n    var lastStroke = null;\n    var lastStrokeW = null;\n    var commands;\n    var pathArr;\n    var renderer = this.globalData.renderer;\n    for (i = 0; i < len; i += 1) {\n      if (!letters[i].n) {\n        renderedLetter = renderedLetters[i];\n        if (renderedLetter) {\n          renderer.save();\n          renderer.ctxTransform(renderedLetter.p);\n          renderer.ctxOpacity(renderedLetter.o);\n        }\n        if (this.fill) {\n          if (renderedLetter && renderedLetter.fc) {\n            if (lastFill !== renderedLetter.fc) {\n              renderer.ctxFillStyle(renderedLetter.fc);\n              lastFill = renderedLetter.fc;\n              // ctx.fillStyle = renderedLetter.fc;\n            }\n          } else if (lastFill !== this.values.fill) {\n            lastFill = this.values.fill;\n            renderer.ctxFillStyle(this.values.fill);\n            // ctx.fillStyle = this.values.fill;\n          }\n          commands = this.textSpans[i].elem;\n          jLen = commands.length;\n          this.globalData.canvasContext.beginPath();\n          for (j = 0; j < jLen; j += 1) {\n            pathArr = commands[j];\n            kLen = pathArr.length;\n            this.globalData.canvasContext.moveTo(pathArr[0], pathArr[1]);\n            for (k = 2; k < kLen; k += 6) {\n              this.globalData.canvasContext.bezierCurveTo(pathArr[k], pathArr[k + 1], pathArr[k + 2], pathArr[k + 3], pathArr[k + 4], pathArr[k + 5]);\n            }\n          }\n          this.globalData.canvasContext.closePath();\n          renderer.ctxFill();\n          // this.globalData.canvasContext.fill();\n          /// ctx.fillText(this.textSpans[i].val,0,0);\n        }\n        if (this.stroke) {\n          if (renderedLetter && renderedLetter.sw) {\n            if (lastStrokeW !== renderedLetter.sw) {\n              lastStrokeW = renderedLetter.sw;\n              renderer.ctxLineWidth(renderedLetter.sw);\n              // ctx.lineWidth = renderedLetter.sw;\n            }\n          } else if (lastStrokeW !== this.values.sWidth) {\n            lastStrokeW = this.values.sWidth;\n            renderer.ctxLineWidth(this.values.sWidth);\n            // ctx.lineWidth = this.values.sWidth;\n          }\n          if (renderedLetter && renderedLetter.sc) {\n            if (lastStroke !== renderedLetter.sc) {\n              lastStroke = renderedLetter.sc;\n              renderer.ctxStrokeStyle(renderedLetter.sc);\n              // ctx.strokeStyle = renderedLetter.sc;\n            }\n          } else if (lastStroke !== this.values.stroke) {\n            lastStroke = this.values.stroke;\n            renderer.ctxStrokeStyle(this.values.stroke);\n            // ctx.strokeStyle = this.values.stroke;\n          }\n          commands = this.textSpans[i].elem;\n          jLen = commands.length;\n          this.globalData.canvasContext.beginPath();\n          for (j = 0; j < jLen; j += 1) {\n            pathArr = commands[j];\n            kLen = pathArr.length;\n            this.globalData.canvasContext.moveTo(pathArr[0], pathArr[1]);\n            for (k = 2; k < kLen; k += 6) {\n              this.globalData.canvasContext.bezierCurveTo(pathArr[k], pathArr[k + 1], pathArr[k + 2], pathArr[k + 3], pathArr[k + 4], pathArr[k + 5]);\n            }\n          }\n          this.globalData.canvasContext.closePath();\n          renderer.ctxStroke();\n          // this.globalData.canvasContext.stroke();\n          /// ctx.strokeText(letters[i].val,0,0);\n        }\n        if (renderedLetter) {\n          this.globalData.renderer.restore();\n        }\n      }\n    }\n  };\n\n  function CVImageElement(data, globalData, comp) {\n    this.assetData = globalData.getAssetData(data.refId);\n    this.img = globalData.imageLoader.getAsset(this.assetData);\n    this.initElement(data, globalData, comp);\n  }\n  extendPrototype([BaseElement, TransformElement, CVBaseElement, HierarchyElement, FrameElement, RenderableElement], CVImageElement);\n  CVImageElement.prototype.initElement = SVGShapeElement.prototype.initElement;\n  CVImageElement.prototype.prepareFrame = IImageElement.prototype.prepareFrame;\n  CVImageElement.prototype.createContent = function () {\n    if (this.img.width && (this.assetData.w !== this.img.width || this.assetData.h !== this.img.height)) {\n      var canvas = createTag('canvas');\n      canvas.width = this.assetData.w;\n      canvas.height = this.assetData.h;\n      var ctx = canvas.getContext('2d');\n      var imgW = this.img.width;\n      var imgH = this.img.height;\n      var imgRel = imgW / imgH;\n      var canvasRel = this.assetData.w / this.assetData.h;\n      var widthCrop;\n      var heightCrop;\n      var par = this.assetData.pr || this.globalData.renderConfig.imagePreserveAspectRatio;\n      if (imgRel > canvasRel && par === 'xMidYMid slice' || imgRel < canvasRel && par !== 'xMidYMid slice') {\n        heightCrop = imgH;\n        widthCrop = heightCrop * canvasRel;\n      } else {\n        widthCrop = imgW;\n        heightCrop = widthCrop / canvasRel;\n      }\n      ctx.drawImage(this.img, (imgW - widthCrop) / 2, (imgH - heightCrop) / 2, widthCrop, heightCrop, 0, 0, this.assetData.w, this.assetData.h);\n      this.img = canvas;\n    }\n  };\n  CVImageElement.prototype.renderInnerContent = function () {\n    this.canvasContext.drawImage(this.img, 0, 0);\n  };\n  CVImageElement.prototype.destroy = function () {\n    this.img = null;\n  };\n\n  function CVSolidElement(data, globalData, comp) {\n    this.initElement(data, globalData, comp);\n  }\n  extendPrototype([BaseElement, TransformElement, CVBaseElement, HierarchyElement, FrameElement, RenderableElement], CVSolidElement);\n  CVSolidElement.prototype.initElement = SVGShapeElement.prototype.initElement;\n  CVSolidElement.prototype.prepareFrame = IImageElement.prototype.prepareFrame;\n  CVSolidElement.prototype.renderInnerContent = function () {\n    // var ctx = this.canvasContext;\n    this.globalData.renderer.ctxFillStyle(this.data.sc);\n    // ctx.fillStyle = this.data.sc;\n    this.globalData.renderer.ctxFillRect(0, 0, this.data.sw, this.data.sh);\n    // ctx.fillRect(0, 0, this.data.sw, this.data.sh);\n    //\n  };\n\n  function CanvasRendererBase() {}\n  extendPrototype([BaseRenderer], CanvasRendererBase);\n  CanvasRendererBase.prototype.createShape = function (data) {\n    return new CVShapeElement(data, this.globalData, this);\n  };\n  CanvasRendererBase.prototype.createText = function (data) {\n    return new CVTextElement(data, this.globalData, this);\n  };\n  CanvasRendererBase.prototype.createImage = function (data) {\n    return new CVImageElement(data, this.globalData, this);\n  };\n  CanvasRendererBase.prototype.createSolid = function (data) {\n    return new CVSolidElement(data, this.globalData, this);\n  };\n  CanvasRendererBase.prototype.createNull = SVGRenderer.prototype.createNull;\n  CanvasRendererBase.prototype.ctxTransform = function (props) {\n    if (props[0] === 1 && props[1] === 0 && props[4] === 0 && props[5] === 1 && props[12] === 0 && props[13] === 0) {\n      return;\n    }\n    this.canvasContext.transform(props[0], props[1], props[4], props[5], props[12], props[13]);\n  };\n  CanvasRendererBase.prototype.ctxOpacity = function (op) {\n    this.canvasContext.globalAlpha *= op < 0 ? 0 : op;\n  };\n  CanvasRendererBase.prototype.ctxFillStyle = function (value) {\n    this.canvasContext.fillStyle = value;\n  };\n  CanvasRendererBase.prototype.ctxStrokeStyle = function (value) {\n    this.canvasContext.strokeStyle = value;\n  };\n  CanvasRendererBase.prototype.ctxLineWidth = function (value) {\n    this.canvasContext.lineWidth = value;\n  };\n  CanvasRendererBase.prototype.ctxLineCap = function (value) {\n    this.canvasContext.lineCap = value;\n  };\n  CanvasRendererBase.prototype.ctxLineJoin = function (value) {\n    this.canvasContext.lineJoin = value;\n  };\n  CanvasRendererBase.prototype.ctxMiterLimit = function (value) {\n    this.canvasContext.miterLimit = value;\n  };\n  CanvasRendererBase.prototype.ctxFill = function (rule) {\n    this.canvasContext.fill(rule);\n  };\n  CanvasRendererBase.prototype.ctxFillRect = function (x, y, w, h) {\n    this.canvasContext.fillRect(x, y, w, h);\n  };\n  CanvasRendererBase.prototype.ctxStroke = function () {\n    this.canvasContext.stroke();\n  };\n  CanvasRendererBase.prototype.reset = function () {\n    if (!this.renderConfig.clearCanvas) {\n      this.canvasContext.restore();\n      return;\n    }\n    this.contextData.reset();\n  };\n  CanvasRendererBase.prototype.save = function () {\n    this.canvasContext.save();\n  };\n  CanvasRendererBase.prototype.restore = function (actionFlag) {\n    if (!this.renderConfig.clearCanvas) {\n      this.canvasContext.restore();\n      return;\n    }\n    if (actionFlag) {\n      this.globalData.blendMode = 'source-over';\n    }\n    this.contextData.restore(actionFlag);\n  };\n  CanvasRendererBase.prototype.configAnimation = function (animData) {\n    if (this.animationItem.wrapper) {\n      this.animationItem.container = createTag('canvas');\n      var containerStyle = this.animationItem.container.style;\n      containerStyle.width = '100%';\n      containerStyle.height = '100%';\n      var origin = '0px 0px 0px';\n      containerStyle.transformOrigin = origin;\n      containerStyle.mozTransformOrigin = origin;\n      containerStyle.webkitTransformOrigin = origin;\n      containerStyle['-webkit-transform'] = origin;\n      containerStyle.contentVisibility = this.renderConfig.contentVisibility;\n      this.animationItem.wrapper.appendChild(this.animationItem.container);\n      this.canvasContext = this.animationItem.container.getContext('2d');\n      if (this.renderConfig.className) {\n        this.animationItem.container.setAttribute('class', this.renderConfig.className);\n      }\n      if (this.renderConfig.id) {\n        this.animationItem.container.setAttribute('id', this.renderConfig.id);\n      }\n    } else {\n      this.canvasContext = this.renderConfig.context;\n    }\n    this.contextData.setContext(this.canvasContext);\n    this.data = animData;\n    this.layers = animData.layers;\n    this.transformCanvas = {\n      w: animData.w,\n      h: animData.h,\n      sx: 0,\n      sy: 0,\n      tx: 0,\n      ty: 0\n    };\n    this.setupGlobalData(animData, document.body);\n    this.globalData.canvasContext = this.canvasContext;\n    this.globalData.renderer = this;\n    this.globalData.isDashed = false;\n    this.globalData.progressiveLoad = this.renderConfig.progressiveLoad;\n    this.globalData.transformCanvas = this.transformCanvas;\n    this.elements = createSizedArray(animData.layers.length);\n    this.updateContainerSize();\n  };\n  CanvasRendererBase.prototype.updateContainerSize = function (width, height) {\n    this.reset();\n    var elementWidth;\n    var elementHeight;\n    if (width) {\n      elementWidth = width;\n      elementHeight = height;\n      this.canvasContext.canvas.width = elementWidth;\n      this.canvasContext.canvas.height = elementHeight;\n    } else {\n      if (this.animationItem.wrapper && this.animationItem.container) {\n        elementWidth = this.animationItem.wrapper.offsetWidth;\n        elementHeight = this.animationItem.wrapper.offsetHeight;\n      } else {\n        elementWidth = this.canvasContext.canvas.width;\n        elementHeight = this.canvasContext.canvas.height;\n      }\n      this.canvasContext.canvas.width = elementWidth * this.renderConfig.dpr;\n      this.canvasContext.canvas.height = elementHeight * this.renderConfig.dpr;\n    }\n    var elementRel;\n    var animationRel;\n    if (this.renderConfig.preserveAspectRatio.indexOf('meet') !== -1 || this.renderConfig.preserveAspectRatio.indexOf('slice') !== -1) {\n      var par = this.renderConfig.preserveAspectRatio.split(' ');\n      var fillType = par[1] || 'meet';\n      var pos = par[0] || 'xMidYMid';\n      var xPos = pos.substr(0, 4);\n      var yPos = pos.substr(4);\n      elementRel = elementWidth / elementHeight;\n      animationRel = this.transformCanvas.w / this.transformCanvas.h;\n      if (animationRel > elementRel && fillType === 'meet' || animationRel < elementRel && fillType === 'slice') {\n        this.transformCanvas.sx = elementWidth / (this.transformCanvas.w / this.renderConfig.dpr);\n        this.transformCanvas.sy = elementWidth / (this.transformCanvas.w / this.renderConfig.dpr);\n      } else {\n        this.transformCanvas.sx = elementHeight / (this.transformCanvas.h / this.renderConfig.dpr);\n        this.transformCanvas.sy = elementHeight / (this.transformCanvas.h / this.renderConfig.dpr);\n      }\n      if (xPos === 'xMid' && (animationRel < elementRel && fillType === 'meet' || animationRel > elementRel && fillType === 'slice')) {\n        this.transformCanvas.tx = (elementWidth - this.transformCanvas.w * (elementHeight / this.transformCanvas.h)) / 2 * this.renderConfig.dpr;\n      } else if (xPos === 'xMax' && (animationRel < elementRel && fillType === 'meet' || animationRel > elementRel && fillType === 'slice')) {\n        this.transformCanvas.tx = (elementWidth - this.transformCanvas.w * (elementHeight / this.transformCanvas.h)) * this.renderConfig.dpr;\n      } else {\n        this.transformCanvas.tx = 0;\n      }\n      if (yPos === 'YMid' && (animationRel > elementRel && fillType === 'meet' || animationRel < elementRel && fillType === 'slice')) {\n        this.transformCanvas.ty = (elementHeight - this.transformCanvas.h * (elementWidth / this.transformCanvas.w)) / 2 * this.renderConfig.dpr;\n      } else if (yPos === 'YMax' && (animationRel > elementRel && fillType === 'meet' || animationRel < elementRel && fillType === 'slice')) {\n        this.transformCanvas.ty = (elementHeight - this.transformCanvas.h * (elementWidth / this.transformCanvas.w)) * this.renderConfig.dpr;\n      } else {\n        this.transformCanvas.ty = 0;\n      }\n    } else if (this.renderConfig.preserveAspectRatio === 'none') {\n      this.transformCanvas.sx = elementWidth / (this.transformCanvas.w / this.renderConfig.dpr);\n      this.transformCanvas.sy = elementHeight / (this.transformCanvas.h / this.renderConfig.dpr);\n      this.transformCanvas.tx = 0;\n      this.transformCanvas.ty = 0;\n    } else {\n      this.transformCanvas.sx = this.renderConfig.dpr;\n      this.transformCanvas.sy = this.renderConfig.dpr;\n      this.transformCanvas.tx = 0;\n      this.transformCanvas.ty = 0;\n    }\n    this.transformCanvas.props = [this.transformCanvas.sx, 0, 0, 0, 0, this.transformCanvas.sy, 0, 0, 0, 0, 1, 0, this.transformCanvas.tx, this.transformCanvas.ty, 0, 1];\n    /* var i, len = this.elements.length;\n      for(i=0;i<len;i+=1){\n          if(this.elements[i] && this.elements[i].data.ty === 0){\n              this.elements[i].resize(this.globalData.transformCanvas);\n          }\n      } */\n    this.ctxTransform(this.transformCanvas.props);\n    this.canvasContext.beginPath();\n    this.canvasContext.rect(0, 0, this.transformCanvas.w, this.transformCanvas.h);\n    this.canvasContext.closePath();\n    this.canvasContext.clip();\n    this.renderFrame(this.renderedFrame, true);\n  };\n  CanvasRendererBase.prototype.destroy = function () {\n    if (this.renderConfig.clearCanvas && this.animationItem.wrapper) {\n      this.animationItem.wrapper.innerText = '';\n    }\n    var i;\n    var len = this.layers ? this.layers.length : 0;\n    for (i = len - 1; i >= 0; i -= 1) {\n      if (this.elements[i] && this.elements[i].destroy) {\n        this.elements[i].destroy();\n      }\n    }\n    this.elements.length = 0;\n    this.globalData.canvasContext = null;\n    this.animationItem.container = null;\n    this.destroyed = true;\n  };\n  CanvasRendererBase.prototype.renderFrame = function (num, forceRender) {\n    if (this.renderedFrame === num && this.renderConfig.clearCanvas === true && !forceRender || this.destroyed || num === -1) {\n      return;\n    }\n    this.renderedFrame = num;\n    this.globalData.frameNum = num - this.animationItem._isFirstFrame;\n    this.globalData.frameId += 1;\n    this.globalData._mdf = !this.renderConfig.clearCanvas || forceRender;\n    this.globalData.projectInterface.currentFrame = num;\n\n    // console.log('--------');\n    // console.log('NEW: ',num);\n    var i;\n    var len = this.layers.length;\n    if (!this.completeLayers) {\n      this.checkLayers(num);\n    }\n    for (i = len - 1; i >= 0; i -= 1) {\n      if (this.completeLayers || this.elements[i]) {\n        this.elements[i].prepareFrame(num - this.layers[i].st);\n      }\n    }\n    if (this.globalData._mdf) {\n      if (this.renderConfig.clearCanvas === true) {\n        this.canvasContext.clearRect(0, 0, this.transformCanvas.w, this.transformCanvas.h);\n      } else {\n        this.save();\n      }\n      for (i = len - 1; i >= 0; i -= 1) {\n        if (this.completeLayers || this.elements[i]) {\n          this.elements[i].renderFrame();\n        }\n      }\n      if (this.renderConfig.clearCanvas !== true) {\n        this.restore();\n      }\n    }\n  };\n  CanvasRendererBase.prototype.buildItem = function (pos) {\n    var elements = this.elements;\n    if (elements[pos] || this.layers[pos].ty === 99) {\n      return;\n    }\n    var element = this.createItem(this.layers[pos], this, this.globalData);\n    elements[pos] = element;\n    element.initExpressions();\n    /* if(this.layers[pos].ty === 0){\n          element.resize(this.globalData.transformCanvas);\n      } */\n  };\n  CanvasRendererBase.prototype.checkPendingElements = function () {\n    while (this.pendingElements.length) {\n      var element = this.pendingElements.pop();\n      element.checkParenting();\n    }\n  };\n  CanvasRendererBase.prototype.hide = function () {\n    this.animationItem.container.style.display = 'none';\n  };\n  CanvasRendererBase.prototype.show = function () {\n    this.animationItem.container.style.display = 'block';\n  };\n\n  function CanvasContext() {\n    this.opacity = -1;\n    this.transform = createTypedArray('float32', 16);\n    this.fillStyle = '';\n    this.strokeStyle = '';\n    this.lineWidth = '';\n    this.lineCap = '';\n    this.lineJoin = '';\n    this.miterLimit = '';\n    this.id = Math.random();\n  }\n  function CVContextData() {\n    this.stack = [];\n    this.cArrPos = 0;\n    this.cTr = new Matrix();\n    var i;\n    var len = 15;\n    for (i = 0; i < len; i += 1) {\n      var canvasContext = new CanvasContext();\n      this.stack[i] = canvasContext;\n    }\n    this._length = len;\n    this.nativeContext = null;\n    this.transformMat = new Matrix();\n    this.currentOpacity = 1;\n    //\n    this.currentFillStyle = '';\n    this.appliedFillStyle = '';\n    //\n    this.currentStrokeStyle = '';\n    this.appliedStrokeStyle = '';\n    //\n    this.currentLineWidth = '';\n    this.appliedLineWidth = '';\n    //\n    this.currentLineCap = '';\n    this.appliedLineCap = '';\n    //\n    this.currentLineJoin = '';\n    this.appliedLineJoin = '';\n    //\n    this.appliedMiterLimit = '';\n    this.currentMiterLimit = '';\n  }\n  CVContextData.prototype.duplicate = function () {\n    var newLength = this._length * 2;\n    var i = 0;\n    for (i = this._length; i < newLength; i += 1) {\n      this.stack[i] = new CanvasContext();\n    }\n    this._length = newLength;\n  };\n  CVContextData.prototype.reset = function () {\n    this.cArrPos = 0;\n    this.cTr.reset();\n    this.stack[this.cArrPos].opacity = 1;\n  };\n  CVContextData.prototype.restore = function (forceRestore) {\n    this.cArrPos -= 1;\n    var currentContext = this.stack[this.cArrPos];\n    var transform = currentContext.transform;\n    var i;\n    var arr = this.cTr.props;\n    for (i = 0; i < 16; i += 1) {\n      arr[i] = transform[i];\n    }\n    if (forceRestore) {\n      this.nativeContext.restore();\n      var prevStack = this.stack[this.cArrPos + 1];\n      this.appliedFillStyle = prevStack.fillStyle;\n      this.appliedStrokeStyle = prevStack.strokeStyle;\n      this.appliedLineWidth = prevStack.lineWidth;\n      this.appliedLineCap = prevStack.lineCap;\n      this.appliedLineJoin = prevStack.lineJoin;\n      this.appliedMiterLimit = prevStack.miterLimit;\n    }\n    this.nativeContext.setTransform(transform[0], transform[1], transform[4], transform[5], transform[12], transform[13]);\n    if (forceRestore || currentContext.opacity !== -1 && this.currentOpacity !== currentContext.opacity) {\n      this.nativeContext.globalAlpha = currentContext.opacity;\n      this.currentOpacity = currentContext.opacity;\n    }\n    this.currentFillStyle = currentContext.fillStyle;\n    this.currentStrokeStyle = currentContext.strokeStyle;\n    this.currentLineWidth = currentContext.lineWidth;\n    this.currentLineCap = currentContext.lineCap;\n    this.currentLineJoin = currentContext.lineJoin;\n    this.currentMiterLimit = currentContext.miterLimit;\n  };\n  CVContextData.prototype.save = function (saveOnNativeFlag) {\n    if (saveOnNativeFlag) {\n      this.nativeContext.save();\n    }\n    var props = this.cTr.props;\n    if (this._length <= this.cArrPos) {\n      this.duplicate();\n    }\n    var currentStack = this.stack[this.cArrPos];\n    var i;\n    for (i = 0; i < 16; i += 1) {\n      currentStack.transform[i] = props[i];\n    }\n    this.cArrPos += 1;\n    var newStack = this.stack[this.cArrPos];\n    newStack.opacity = currentStack.opacity;\n    newStack.fillStyle = currentStack.fillStyle;\n    newStack.strokeStyle = currentStack.strokeStyle;\n    newStack.lineWidth = currentStack.lineWidth;\n    newStack.lineCap = currentStack.lineCap;\n    newStack.lineJoin = currentStack.lineJoin;\n    newStack.miterLimit = currentStack.miterLimit;\n  };\n  CVContextData.prototype.setOpacity = function (value) {\n    this.stack[this.cArrPos].opacity = value;\n  };\n  CVContextData.prototype.setContext = function (value) {\n    this.nativeContext = value;\n  };\n  CVContextData.prototype.fillStyle = function (value) {\n    if (this.stack[this.cArrPos].fillStyle !== value) {\n      this.currentFillStyle = value;\n      this.stack[this.cArrPos].fillStyle = value;\n    }\n  };\n  CVContextData.prototype.strokeStyle = function (value) {\n    if (this.stack[this.cArrPos].strokeStyle !== value) {\n      this.currentStrokeStyle = value;\n      this.stack[this.cArrPos].strokeStyle = value;\n    }\n  };\n  CVContextData.prototype.lineWidth = function (value) {\n    if (this.stack[this.cArrPos].lineWidth !== value) {\n      this.currentLineWidth = value;\n      this.stack[this.cArrPos].lineWidth = value;\n    }\n  };\n  CVContextData.prototype.lineCap = function (value) {\n    if (this.stack[this.cArrPos].lineCap !== value) {\n      this.currentLineCap = value;\n      this.stack[this.cArrPos].lineCap = value;\n    }\n  };\n  CVContextData.prototype.lineJoin = function (value) {\n    if (this.stack[this.cArrPos].lineJoin !== value) {\n      this.currentLineJoin = value;\n      this.stack[this.cArrPos].lineJoin = value;\n    }\n  };\n  CVContextData.prototype.miterLimit = function (value) {\n    if (this.stack[this.cArrPos].miterLimit !== value) {\n      this.currentMiterLimit = value;\n      this.stack[this.cArrPos].miterLimit = value;\n    }\n  };\n  CVContextData.prototype.transform = function (props) {\n    this.transformMat.cloneFromProps(props);\n    // Taking the last transform value from the stored stack of transforms\n    var currentTransform = this.cTr;\n    // Applying the last transform value after the new transform to respect the order of transformations\n    this.transformMat.multiply(currentTransform);\n    // Storing the new transformed value in the stored transform\n    currentTransform.cloneFromProps(this.transformMat.props);\n    var trProps = currentTransform.props;\n    // Applying the new transform to the canvas\n    this.nativeContext.setTransform(trProps[0], trProps[1], trProps[4], trProps[5], trProps[12], trProps[13]);\n  };\n  CVContextData.prototype.opacity = function (op) {\n    var currentOpacity = this.stack[this.cArrPos].opacity;\n    currentOpacity *= op < 0 ? 0 : op;\n    if (this.stack[this.cArrPos].opacity !== currentOpacity) {\n      if (this.currentOpacity !== op) {\n        this.nativeContext.globalAlpha = op;\n        this.currentOpacity = op;\n      }\n      this.stack[this.cArrPos].opacity = currentOpacity;\n    }\n  };\n  CVContextData.prototype.fill = function (rule) {\n    if (this.appliedFillStyle !== this.currentFillStyle) {\n      this.appliedFillStyle = this.currentFillStyle;\n      this.nativeContext.fillStyle = this.appliedFillStyle;\n    }\n    this.nativeContext.fill(rule);\n  };\n  CVContextData.prototype.fillRect = function (x, y, w, h) {\n    if (this.appliedFillStyle !== this.currentFillStyle) {\n      this.appliedFillStyle = this.currentFillStyle;\n      this.nativeContext.fillStyle = this.appliedFillStyle;\n    }\n    this.nativeContext.fillRect(x, y, w, h);\n  };\n  CVContextData.prototype.stroke = function () {\n    if (this.appliedStrokeStyle !== this.currentStrokeStyle) {\n      this.appliedStrokeStyle = this.currentStrokeStyle;\n      this.nativeContext.strokeStyle = this.appliedStrokeStyle;\n    }\n    if (this.appliedLineWidth !== this.currentLineWidth) {\n      this.appliedLineWidth = this.currentLineWidth;\n      this.nativeContext.lineWidth = this.appliedLineWidth;\n    }\n    if (this.appliedLineCap !== this.currentLineCap) {\n      this.appliedLineCap = this.currentLineCap;\n      this.nativeContext.lineCap = this.appliedLineCap;\n    }\n    if (this.appliedLineJoin !== this.currentLineJoin) {\n      this.appliedLineJoin = this.currentLineJoin;\n      this.nativeContext.lineJoin = this.appliedLineJoin;\n    }\n    if (this.appliedMiterLimit !== this.currentMiterLimit) {\n      this.appliedMiterLimit = this.currentMiterLimit;\n      this.nativeContext.miterLimit = this.appliedMiterLimit;\n    }\n    this.nativeContext.stroke();\n  };\n\n  function CVCompElement(data, globalData, comp) {\n    this.completeLayers = false;\n    this.layers = data.layers;\n    this.pendingElements = [];\n    this.elements = createSizedArray(this.layers.length);\n    this.initElement(data, globalData, comp);\n    this.tm = data.tm ? PropertyFactory.getProp(this, data.tm, 0, globalData.frameRate, this) : {\n      _placeholder: true\n    };\n  }\n  extendPrototype([CanvasRendererBase, ICompElement, CVBaseElement], CVCompElement);\n  CVCompElement.prototype.renderInnerContent = function () {\n    var ctx = this.canvasContext;\n    ctx.beginPath();\n    ctx.moveTo(0, 0);\n    ctx.lineTo(this.data.w, 0);\n    ctx.lineTo(this.data.w, this.data.h);\n    ctx.lineTo(0, this.data.h);\n    ctx.lineTo(0, 0);\n    ctx.clip();\n    var i;\n    var len = this.layers.length;\n    for (i = len - 1; i >= 0; i -= 1) {\n      if (this.completeLayers || this.elements[i]) {\n        this.elements[i].renderFrame();\n      }\n    }\n  };\n  CVCompElement.prototype.destroy = function () {\n    var i;\n    var len = this.layers.length;\n    for (i = len - 1; i >= 0; i -= 1) {\n      if (this.elements[i]) {\n        this.elements[i].destroy();\n      }\n    }\n    this.layers = null;\n    this.elements = null;\n  };\n  CVCompElement.prototype.createComp = function (data) {\n    return new CVCompElement(data, this.globalData, this);\n  };\n\n  function CanvasRenderer(animationItem, config) {\n    this.animationItem = animationItem;\n    this.renderConfig = {\n      clearCanvas: config && config.clearCanvas !== undefined ? config.clearCanvas : true,\n      context: config && config.context || null,\n      progressiveLoad: config && config.progressiveLoad || false,\n      preserveAspectRatio: config && config.preserveAspectRatio || 'xMidYMid meet',\n      imagePreserveAspectRatio: config && config.imagePreserveAspectRatio || 'xMidYMid slice',\n      contentVisibility: config && config.contentVisibility || 'visible',\n      className: config && config.className || '',\n      id: config && config.id || '',\n      runExpressions: !config || config.runExpressions === undefined || config.runExpressions\n    };\n    this.renderConfig.dpr = config && config.dpr || 1;\n    if (this.animationItem.wrapper) {\n      this.renderConfig.dpr = config && config.dpr || window.devicePixelRatio || 1;\n    }\n    this.renderedFrame = -1;\n    this.globalData = {\n      frameNum: -1,\n      _mdf: false,\n      renderConfig: this.renderConfig,\n      currentGlobalAlpha: -1\n    };\n    this.contextData = new CVContextData();\n    this.elements = [];\n    this.pendingElements = [];\n    this.transformMat = new Matrix();\n    this.completeLayers = false;\n    this.rendererType = 'canvas';\n    if (this.renderConfig.clearCanvas) {\n      this.ctxTransform = this.contextData.transform.bind(this.contextData);\n      this.ctxOpacity = this.contextData.opacity.bind(this.contextData);\n      this.ctxFillStyle = this.contextData.fillStyle.bind(this.contextData);\n      this.ctxStrokeStyle = this.contextData.strokeStyle.bind(this.contextData);\n      this.ctxLineWidth = this.contextData.lineWidth.bind(this.contextData);\n      this.ctxLineCap = this.contextData.lineCap.bind(this.contextData);\n      this.ctxLineJoin = this.contextData.lineJoin.bind(this.contextData);\n      this.ctxMiterLimit = this.contextData.miterLimit.bind(this.contextData);\n      this.ctxFill = this.contextData.fill.bind(this.contextData);\n      this.ctxFillRect = this.contextData.fillRect.bind(this.contextData);\n      this.ctxStroke = this.contextData.stroke.bind(this.contextData);\n      this.save = this.contextData.save.bind(this.contextData);\n    }\n  }\n  extendPrototype([CanvasRendererBase], CanvasRenderer);\n  CanvasRenderer.prototype.createComp = function (data) {\n    return new CVCompElement(data, this.globalData, this);\n  };\n\n  function HBaseElement() {}\n  HBaseElement.prototype = {\n    checkBlendMode: function checkBlendMode() {},\n    initRendererElement: function initRendererElement() {\n      this.baseElement = createTag(this.data.tg || 'div');\n      if (this.data.hasMask) {\n        this.svgElement = createNS('svg');\n        this.layerElement = createNS('g');\n        this.maskedElement = this.layerElement;\n        this.svgElement.appendChild(this.layerElement);\n        this.baseElement.appendChild(this.svgElement);\n      } else {\n        this.layerElement = this.baseElement;\n      }\n      styleDiv(this.baseElement);\n    },\n    createContainerElements: function createContainerElements() {\n      this.renderableEffectsManager = new CVEffects(this);\n      this.transformedElement = this.baseElement;\n      this.maskedElement = this.layerElement;\n      if (this.data.ln) {\n        this.layerElement.setAttribute('id', this.data.ln);\n      }\n      if (this.data.cl) {\n        this.layerElement.setAttribute('class', this.data.cl);\n      }\n      if (this.data.bm !== 0) {\n        this.setBlendMode();\n      }\n    },\n    renderElement: function renderElement() {\n      var transformedElementStyle = this.transformedElement ? this.transformedElement.style : {};\n      if (this.finalTransform._matMdf) {\n        var matrixValue = this.finalTransform.mat.toCSS();\n        transformedElementStyle.transform = matrixValue;\n        transformedElementStyle.webkitTransform = matrixValue;\n      }\n      if (this.finalTransform._opMdf) {\n        transformedElementStyle.opacity = this.finalTransform.mProp.o.v;\n      }\n    },\n    renderFrame: function renderFrame() {\n      // If it is exported as hidden (data.hd === true) no need to render\n      // If it is not visible no need to render\n      if (this.data.hd || this.hidden) {\n        return;\n      }\n      this.renderTransform();\n      this.renderRenderable();\n      this.renderElement();\n      this.renderInnerContent();\n      if (this._isFirstFrame) {\n        this._isFirstFrame = false;\n      }\n    },\n    destroy: function destroy() {\n      this.layerElement = null;\n      this.transformedElement = null;\n      if (this.matteElement) {\n        this.matteElement = null;\n      }\n      if (this.maskManager) {\n        this.maskManager.destroy();\n        this.maskManager = null;\n      }\n    },\n    createRenderableComponents: function createRenderableComponents() {\n      this.maskManager = new MaskElement(this.data, this, this.globalData);\n    },\n    addEffects: function addEffects() {},\n    setMatte: function setMatte() {}\n  };\n  HBaseElement.prototype.getBaseElement = SVGBaseElement.prototype.getBaseElement;\n  HBaseElement.prototype.destroyBaseElement = HBaseElement.prototype.destroy;\n  HBaseElement.prototype.buildElementParenting = BaseRenderer.prototype.buildElementParenting;\n\n  function HSolidElement(data, globalData, comp) {\n    this.initElement(data, globalData, comp);\n  }\n  extendPrototype([BaseElement, TransformElement, HBaseElement, HierarchyElement, FrameElement, RenderableDOMElement], HSolidElement);\n  HSolidElement.prototype.createContent = function () {\n    var rect;\n    if (this.data.hasMask) {\n      rect = createNS('rect');\n      rect.setAttribute('width', this.data.sw);\n      rect.setAttribute('height', this.data.sh);\n      rect.setAttribute('fill', this.data.sc);\n      this.svgElement.setAttribute('width', this.data.sw);\n      this.svgElement.setAttribute('height', this.data.sh);\n    } else {\n      rect = createTag('div');\n      rect.style.width = this.data.sw + 'px';\n      rect.style.height = this.data.sh + 'px';\n      rect.style.backgroundColor = this.data.sc;\n    }\n    this.layerElement.appendChild(rect);\n  };\n\n  function HShapeElement(data, globalData, comp) {\n    // List of drawable elements\n    this.shapes = [];\n    // Full shape data\n    this.shapesData = data.shapes;\n    // List of styles that will be applied to shapes\n    this.stylesList = [];\n    // List of modifiers that will be applied to shapes\n    this.shapeModifiers = [];\n    // List of items in shape tree\n    this.itemsData = [];\n    // List of items in previous shape tree\n    this.processedElements = [];\n    // List of animated components\n    this.animatedContents = [];\n    this.shapesContainer = createNS('g');\n    this.initElement(data, globalData, comp);\n    // Moving any property that doesn't get too much access after initialization because of v8 way of handling more than 10 properties.\n    // List of elements that have been created\n    this.prevViewData = [];\n    this.currentBBox = {\n      x: 999999,\n      y: -999999,\n      h: 0,\n      w: 0\n    };\n  }\n  extendPrototype([BaseElement, TransformElement, HSolidElement, SVGShapeElement, HBaseElement, HierarchyElement, FrameElement, RenderableElement], HShapeElement);\n  HShapeElement.prototype._renderShapeFrame = HShapeElement.prototype.renderInnerContent;\n  HShapeElement.prototype.createContent = function () {\n    var cont;\n    this.baseElement.style.fontSize = 0;\n    if (this.data.hasMask) {\n      this.layerElement.appendChild(this.shapesContainer);\n      cont = this.svgElement;\n    } else {\n      cont = createNS('svg');\n      var size = this.comp.data ? this.comp.data : this.globalData.compSize;\n      cont.setAttribute('width', size.w);\n      cont.setAttribute('height', size.h);\n      cont.appendChild(this.shapesContainer);\n      this.layerElement.appendChild(cont);\n    }\n    this.searchShapes(this.shapesData, this.itemsData, this.prevViewData, this.shapesContainer, 0, [], true);\n    this.filterUniqueShapes();\n    this.shapeCont = cont;\n  };\n  HShapeElement.prototype.getTransformedPoint = function (transformers, point) {\n    var i;\n    var len = transformers.length;\n    for (i = 0; i < len; i += 1) {\n      point = transformers[i].mProps.v.applyToPointArray(point[0], point[1], 0);\n    }\n    return point;\n  };\n  HShapeElement.prototype.calculateShapeBoundingBox = function (item, boundingBox) {\n    var shape = item.sh.v;\n    var transformers = item.transformers;\n    var i;\n    var len = shape._length;\n    var vPoint;\n    var oPoint;\n    var nextIPoint;\n    var nextVPoint;\n    if (len <= 1) {\n      return;\n    }\n    for (i = 0; i < len - 1; i += 1) {\n      vPoint = this.getTransformedPoint(transformers, shape.v[i]);\n      oPoint = this.getTransformedPoint(transformers, shape.o[i]);\n      nextIPoint = this.getTransformedPoint(transformers, shape.i[i + 1]);\n      nextVPoint = this.getTransformedPoint(transformers, shape.v[i + 1]);\n      this.checkBounds(vPoint, oPoint, nextIPoint, nextVPoint, boundingBox);\n    }\n    if (shape.c) {\n      vPoint = this.getTransformedPoint(transformers, shape.v[i]);\n      oPoint = this.getTransformedPoint(transformers, shape.o[i]);\n      nextIPoint = this.getTransformedPoint(transformers, shape.i[0]);\n      nextVPoint = this.getTransformedPoint(transformers, shape.v[0]);\n      this.checkBounds(vPoint, oPoint, nextIPoint, nextVPoint, boundingBox);\n    }\n  };\n  HShapeElement.prototype.checkBounds = function (vPoint, oPoint, nextIPoint, nextVPoint, boundingBox) {\n    this.getBoundsOfCurve(vPoint, oPoint, nextIPoint, nextVPoint);\n    var bounds = this.shapeBoundingBox;\n    boundingBox.x = bmMin(bounds.left, boundingBox.x);\n    boundingBox.xMax = bmMax(bounds.right, boundingBox.xMax);\n    boundingBox.y = bmMin(bounds.top, boundingBox.y);\n    boundingBox.yMax = bmMax(bounds.bottom, boundingBox.yMax);\n  };\n  HShapeElement.prototype.shapeBoundingBox = {\n    left: 0,\n    right: 0,\n    top: 0,\n    bottom: 0\n  };\n  HShapeElement.prototype.tempBoundingBox = {\n    x: 0,\n    xMax: 0,\n    y: 0,\n    yMax: 0,\n    width: 0,\n    height: 0\n  };\n  HShapeElement.prototype.getBoundsOfCurve = function (p0, p1, p2, p3) {\n    var bounds = [[p0[0], p3[0]], [p0[1], p3[1]]];\n    for (var a, b, c, t, b2ac, t1, t2, i = 0; i < 2; ++i) {\n      // eslint-disable-line no-plusplus\n      b = 6 * p0[i] - 12 * p1[i] + 6 * p2[i];\n      a = -3 * p0[i] + 9 * p1[i] - 9 * p2[i] + 3 * p3[i];\n      c = 3 * p1[i] - 3 * p0[i];\n      b |= 0; // eslint-disable-line no-bitwise\n      a |= 0; // eslint-disable-line no-bitwise\n      c |= 0; // eslint-disable-line no-bitwise\n\n      if (a === 0 && b === 0) {\n        //\n      } else if (a === 0) {\n        t = -c / b;\n        if (t > 0 && t < 1) {\n          bounds[i].push(this.calculateF(t, p0, p1, p2, p3, i));\n        }\n      } else {\n        b2ac = b * b - 4 * c * a;\n        if (b2ac >= 0) {\n          t1 = (-b + bmSqrt(b2ac)) / (2 * a);\n          if (t1 > 0 && t1 < 1) bounds[i].push(this.calculateF(t1, p0, p1, p2, p3, i));\n          t2 = (-b - bmSqrt(b2ac)) / (2 * a);\n          if (t2 > 0 && t2 < 1) bounds[i].push(this.calculateF(t2, p0, p1, p2, p3, i));\n        }\n      }\n    }\n    this.shapeBoundingBox.left = bmMin.apply(null, bounds[0]);\n    this.shapeBoundingBox.top = bmMin.apply(null, bounds[1]);\n    this.shapeBoundingBox.right = bmMax.apply(null, bounds[0]);\n    this.shapeBoundingBox.bottom = bmMax.apply(null, bounds[1]);\n  };\n  HShapeElement.prototype.calculateF = function (t, p0, p1, p2, p3, i) {\n    return bmPow(1 - t, 3) * p0[i] + 3 * bmPow(1 - t, 2) * t * p1[i] + 3 * (1 - t) * bmPow(t, 2) * p2[i] + bmPow(t, 3) * p3[i];\n  };\n  HShapeElement.prototype.calculateBoundingBox = function (itemsData, boundingBox) {\n    var i;\n    var len = itemsData.length;\n    for (i = 0; i < len; i += 1) {\n      if (itemsData[i] && itemsData[i].sh) {\n        this.calculateShapeBoundingBox(itemsData[i], boundingBox);\n      } else if (itemsData[i] && itemsData[i].it) {\n        this.calculateBoundingBox(itemsData[i].it, boundingBox);\n      } else if (itemsData[i] && itemsData[i].style && itemsData[i].w) {\n        this.expandStrokeBoundingBox(itemsData[i].w, boundingBox);\n      }\n    }\n  };\n  HShapeElement.prototype.expandStrokeBoundingBox = function (widthProperty, boundingBox) {\n    var width = 0;\n    if (widthProperty.keyframes) {\n      for (var i = 0; i < widthProperty.keyframes.length; i += 1) {\n        var kfw = widthProperty.keyframes[i].s;\n        if (kfw > width) {\n          width = kfw;\n        }\n      }\n      width *= widthProperty.mult;\n    } else {\n      width = widthProperty.v * widthProperty.mult;\n    }\n    boundingBox.x -= width;\n    boundingBox.xMax += width;\n    boundingBox.y -= width;\n    boundingBox.yMax += width;\n  };\n  HShapeElement.prototype.currentBoxContains = function (box) {\n    return this.currentBBox.x <= box.x && this.currentBBox.y <= box.y && this.currentBBox.width + this.currentBBox.x >= box.x + box.width && this.currentBBox.height + this.currentBBox.y >= box.y + box.height;\n  };\n  HShapeElement.prototype.renderInnerContent = function () {\n    this._renderShapeFrame();\n    if (!this.hidden && (this._isFirstFrame || this._mdf)) {\n      var tempBoundingBox = this.tempBoundingBox;\n      var max = 999999;\n      tempBoundingBox.x = max;\n      tempBoundingBox.xMax = -max;\n      tempBoundingBox.y = max;\n      tempBoundingBox.yMax = -max;\n      this.calculateBoundingBox(this.itemsData, tempBoundingBox);\n      tempBoundingBox.width = tempBoundingBox.xMax < tempBoundingBox.x ? 0 : tempBoundingBox.xMax - tempBoundingBox.x;\n      tempBoundingBox.height = tempBoundingBox.yMax < tempBoundingBox.y ? 0 : tempBoundingBox.yMax - tempBoundingBox.y;\n      // var tempBoundingBox = this.shapeCont.getBBox();\n      if (this.currentBoxContains(tempBoundingBox)) {\n        return;\n      }\n      var changed = false;\n      if (this.currentBBox.w !== tempBoundingBox.width) {\n        this.currentBBox.w = tempBoundingBox.width;\n        this.shapeCont.setAttribute('width', tempBoundingBox.width);\n        changed = true;\n      }\n      if (this.currentBBox.h !== tempBoundingBox.height) {\n        this.currentBBox.h = tempBoundingBox.height;\n        this.shapeCont.setAttribute('height', tempBoundingBox.height);\n        changed = true;\n      }\n      if (changed || this.currentBBox.x !== tempBoundingBox.x || this.currentBBox.y !== tempBoundingBox.y) {\n        this.currentBBox.w = tempBoundingBox.width;\n        this.currentBBox.h = tempBoundingBox.height;\n        this.currentBBox.x = tempBoundingBox.x;\n        this.currentBBox.y = tempBoundingBox.y;\n        this.shapeCont.setAttribute('viewBox', this.currentBBox.x + ' ' + this.currentBBox.y + ' ' + this.currentBBox.w + ' ' + this.currentBBox.h);\n        var shapeStyle = this.shapeCont.style;\n        var shapeTransform = 'translate(' + this.currentBBox.x + 'px,' + this.currentBBox.y + 'px)';\n        shapeStyle.transform = shapeTransform;\n        shapeStyle.webkitTransform = shapeTransform;\n      }\n    }\n  };\n\n  function HTextElement(data, globalData, comp) {\n    this.textSpans = [];\n    this.textPaths = [];\n    this.currentBBox = {\n      x: 999999,\n      y: -999999,\n      h: 0,\n      w: 0\n    };\n    this.renderType = 'svg';\n    this.isMasked = false;\n    this.initElement(data, globalData, comp);\n  }\n  extendPrototype([BaseElement, TransformElement, HBaseElement, HierarchyElement, FrameElement, RenderableDOMElement, ITextElement], HTextElement);\n  HTextElement.prototype.createContent = function () {\n    this.isMasked = this.checkMasks();\n    if (this.isMasked) {\n      this.renderType = 'svg';\n      this.compW = this.comp.data.w;\n      this.compH = this.comp.data.h;\n      this.svgElement.setAttribute('width', this.compW);\n      this.svgElement.setAttribute('height', this.compH);\n      var g = createNS('g');\n      this.maskedElement.appendChild(g);\n      this.innerElem = g;\n    } else {\n      this.renderType = 'html';\n      this.innerElem = this.layerElement;\n    }\n    this.checkParenting();\n  };\n  HTextElement.prototype.buildNewText = function () {\n    var documentData = this.textProperty.currentData;\n    this.renderedLetters = createSizedArray(documentData.l ? documentData.l.length : 0);\n    var innerElemStyle = this.innerElem.style;\n    var textColor = documentData.fc ? this.buildColor(documentData.fc) : 'rgba(0,0,0,0)';\n    innerElemStyle.fill = textColor;\n    innerElemStyle.color = textColor;\n    if (documentData.sc) {\n      innerElemStyle.stroke = this.buildColor(documentData.sc);\n      innerElemStyle.strokeWidth = documentData.sw + 'px';\n    }\n    var fontData = this.globalData.fontManager.getFontByName(documentData.f);\n    if (!this.globalData.fontManager.chars) {\n      innerElemStyle.fontSize = documentData.finalSize + 'px';\n      innerElemStyle.lineHeight = documentData.finalSize + 'px';\n      if (fontData.fClass) {\n        this.innerElem.className = fontData.fClass;\n      } else {\n        innerElemStyle.fontFamily = fontData.fFamily;\n        var fWeight = documentData.fWeight;\n        var fStyle = documentData.fStyle;\n        innerElemStyle.fontStyle = fStyle;\n        innerElemStyle.fontWeight = fWeight;\n      }\n    }\n    var i;\n    var len;\n    var letters = documentData.l;\n    len = letters.length;\n    var tSpan;\n    var tParent;\n    var tCont;\n    var matrixHelper = this.mHelper;\n    var shapes;\n    var shapeStr = '';\n    var cnt = 0;\n    for (i = 0; i < len; i += 1) {\n      if (this.globalData.fontManager.chars) {\n        if (!this.textPaths[cnt]) {\n          tSpan = createNS('path');\n          tSpan.setAttribute('stroke-linecap', lineCapEnum[1]);\n          tSpan.setAttribute('stroke-linejoin', lineJoinEnum[2]);\n          tSpan.setAttribute('stroke-miterlimit', '4');\n        } else {\n          tSpan = this.textPaths[cnt];\n        }\n        if (!this.isMasked) {\n          if (this.textSpans[cnt]) {\n            tParent = this.textSpans[cnt];\n            tCont = tParent.children[0];\n          } else {\n            tParent = createTag('div');\n            tParent.style.lineHeight = 0;\n            tCont = createNS('svg');\n            tCont.appendChild(tSpan);\n            styleDiv(tParent);\n          }\n        }\n      } else if (!this.isMasked) {\n        if (this.textSpans[cnt]) {\n          tParent = this.textSpans[cnt];\n          tSpan = this.textPaths[cnt];\n        } else {\n          tParent = createTag('span');\n          styleDiv(tParent);\n          tSpan = createTag('span');\n          styleDiv(tSpan);\n          tParent.appendChild(tSpan);\n        }\n      } else {\n        tSpan = this.textPaths[cnt] ? this.textPaths[cnt] : createNS('text');\n      }\n      // tSpan.setAttribute('visibility', 'hidden');\n      if (this.globalData.fontManager.chars) {\n        var charData = this.globalData.fontManager.getCharData(documentData.finalText[i], fontData.fStyle, this.globalData.fontManager.getFontByName(documentData.f).fFamily);\n        var shapeData;\n        if (charData) {\n          shapeData = charData.data;\n        } else {\n          shapeData = null;\n        }\n        matrixHelper.reset();\n        if (shapeData && shapeData.shapes && shapeData.shapes.length) {\n          shapes = shapeData.shapes[0].it;\n          matrixHelper.scale(documentData.finalSize / 100, documentData.finalSize / 100);\n          shapeStr = this.createPathShape(matrixHelper, shapes);\n          tSpan.setAttribute('d', shapeStr);\n        }\n        if (!this.isMasked) {\n          this.innerElem.appendChild(tParent);\n          if (shapeData && shapeData.shapes) {\n            // document.body.appendChild is needed to get exact measure of shape\n            document.body.appendChild(tCont);\n            var boundingBox = tCont.getBBox();\n            tCont.setAttribute('width', boundingBox.width + 2);\n            tCont.setAttribute('height', boundingBox.height + 2);\n            tCont.setAttribute('viewBox', boundingBox.x - 1 + ' ' + (boundingBox.y - 1) + ' ' + (boundingBox.width + 2) + ' ' + (boundingBox.height + 2));\n            var tContStyle = tCont.style;\n            var tContTranslation = 'translate(' + (boundingBox.x - 1) + 'px,' + (boundingBox.y - 1) + 'px)';\n            tContStyle.transform = tContTranslation;\n            tContStyle.webkitTransform = tContTranslation;\n            letters[i].yOffset = boundingBox.y - 1;\n          } else {\n            tCont.setAttribute('width', 1);\n            tCont.setAttribute('height', 1);\n          }\n          tParent.appendChild(tCont);\n        } else {\n          this.innerElem.appendChild(tSpan);\n        }\n      } else {\n        tSpan.textContent = letters[i].val;\n        tSpan.setAttributeNS('http://www.w3.org/XML/1998/namespace', 'xml:space', 'preserve');\n        if (!this.isMasked) {\n          this.innerElem.appendChild(tParent);\n          //\n          var tStyle = tSpan.style;\n          var tSpanTranslation = 'translate3d(0,' + -documentData.finalSize / 1.2 + 'px,0)';\n          tStyle.transform = tSpanTranslation;\n          tStyle.webkitTransform = tSpanTranslation;\n        } else {\n          this.innerElem.appendChild(tSpan);\n        }\n      }\n      //\n      if (!this.isMasked) {\n        this.textSpans[cnt] = tParent;\n      } else {\n        this.textSpans[cnt] = tSpan;\n      }\n      this.textSpans[cnt].style.display = 'block';\n      this.textPaths[cnt] = tSpan;\n      cnt += 1;\n    }\n    while (cnt < this.textSpans.length) {\n      this.textSpans[cnt].style.display = 'none';\n      cnt += 1;\n    }\n  };\n  HTextElement.prototype.renderInnerContent = function () {\n    this.validateText();\n    var svgStyle;\n    if (this.data.singleShape) {\n      if (!this._isFirstFrame && !this.lettersChangedFlag) {\n        return;\n      }\n      if (this.isMasked && this.finalTransform._matMdf) {\n        // Todo Benchmark if using this is better than getBBox\n        this.svgElement.setAttribute('viewBox', -this.finalTransform.mProp.p.v[0] + ' ' + -this.finalTransform.mProp.p.v[1] + ' ' + this.compW + ' ' + this.compH);\n        svgStyle = this.svgElement.style;\n        var translation = 'translate(' + -this.finalTransform.mProp.p.v[0] + 'px,' + -this.finalTransform.mProp.p.v[1] + 'px)';\n        svgStyle.transform = translation;\n        svgStyle.webkitTransform = translation;\n      }\n    }\n    this.textAnimator.getMeasures(this.textProperty.currentData, this.lettersChangedFlag);\n    if (!this.lettersChangedFlag && !this.textAnimator.lettersChangedFlag) {\n      return;\n    }\n    var i;\n    var len;\n    var count = 0;\n    var renderedLetters = this.textAnimator.renderedLetters;\n    var letters = this.textProperty.currentData.l;\n    len = letters.length;\n    var renderedLetter;\n    var textSpan;\n    var textPath;\n    for (i = 0; i < len; i += 1) {\n      if (letters[i].n) {\n        count += 1;\n      } else {\n        textSpan = this.textSpans[i];\n        textPath = this.textPaths[i];\n        renderedLetter = renderedLetters[count];\n        count += 1;\n        if (renderedLetter._mdf.m) {\n          if (!this.isMasked) {\n            textSpan.style.webkitTransform = renderedLetter.m;\n            textSpan.style.transform = renderedLetter.m;\n          } else {\n            textSpan.setAttribute('transform', renderedLetter.m);\n          }\n        }\n        /// /textSpan.setAttribute('opacity',renderedLetter.o);\n        textSpan.style.opacity = renderedLetter.o;\n        if (renderedLetter.sw && renderedLetter._mdf.sw) {\n          textPath.setAttribute('stroke-width', renderedLetter.sw);\n        }\n        if (renderedLetter.sc && renderedLetter._mdf.sc) {\n          textPath.setAttribute('stroke', renderedLetter.sc);\n        }\n        if (renderedLetter.fc && renderedLetter._mdf.fc) {\n          textPath.setAttribute('fill', renderedLetter.fc);\n          textPath.style.color = renderedLetter.fc;\n        }\n      }\n    }\n    if (this.innerElem.getBBox && !this.hidden && (this._isFirstFrame || this._mdf)) {\n      var boundingBox = this.innerElem.getBBox();\n      if (this.currentBBox.w !== boundingBox.width) {\n        this.currentBBox.w = boundingBox.width;\n        this.svgElement.setAttribute('width', boundingBox.width);\n      }\n      if (this.currentBBox.h !== boundingBox.height) {\n        this.currentBBox.h = boundingBox.height;\n        this.svgElement.setAttribute('height', boundingBox.height);\n      }\n      var margin = 1;\n      if (this.currentBBox.w !== boundingBox.width + margin * 2 || this.currentBBox.h !== boundingBox.height + margin * 2 || this.currentBBox.x !== boundingBox.x - margin || this.currentBBox.y !== boundingBox.y - margin) {\n        this.currentBBox.w = boundingBox.width + margin * 2;\n        this.currentBBox.h = boundingBox.height + margin * 2;\n        this.currentBBox.x = boundingBox.x - margin;\n        this.currentBBox.y = boundingBox.y - margin;\n        this.svgElement.setAttribute('viewBox', this.currentBBox.x + ' ' + this.currentBBox.y + ' ' + this.currentBBox.w + ' ' + this.currentBBox.h);\n        svgStyle = this.svgElement.style;\n        var svgTransform = 'translate(' + this.currentBBox.x + 'px,' + this.currentBBox.y + 'px)';\n        svgStyle.transform = svgTransform;\n        svgStyle.webkitTransform = svgTransform;\n      }\n    }\n  };\n\n  function HCameraElement(data, globalData, comp) {\n    this.initFrame();\n    this.initBaseData(data, globalData, comp);\n    this.initHierarchy();\n    var getProp = PropertyFactory.getProp;\n    this.pe = getProp(this, data.pe, 0, 0, this);\n    if (data.ks.p.s) {\n      this.px = getProp(this, data.ks.p.x, 1, 0, this);\n      this.py = getProp(this, data.ks.p.y, 1, 0, this);\n      this.pz = getProp(this, data.ks.p.z, 1, 0, this);\n    } else {\n      this.p = getProp(this, data.ks.p, 1, 0, this);\n    }\n    if (data.ks.a) {\n      this.a = getProp(this, data.ks.a, 1, 0, this);\n    }\n    if (data.ks.or.k.length && data.ks.or.k[0].to) {\n      var i;\n      var len = data.ks.or.k.length;\n      for (i = 0; i < len; i += 1) {\n        data.ks.or.k[i].to = null;\n        data.ks.or.k[i].ti = null;\n      }\n    }\n    this.or = getProp(this, data.ks.or, 1, degToRads, this);\n    this.or.sh = true;\n    this.rx = getProp(this, data.ks.rx, 0, degToRads, this);\n    this.ry = getProp(this, data.ks.ry, 0, degToRads, this);\n    this.rz = getProp(this, data.ks.rz, 0, degToRads, this);\n    this.mat = new Matrix();\n    this._prevMat = new Matrix();\n    this._isFirstFrame = true;\n\n    // TODO: find a better way to make the HCamera element to be compatible with the LayerInterface and TransformInterface.\n    this.finalTransform = {\n      mProp: this\n    };\n  }\n  extendPrototype([BaseElement, FrameElement, HierarchyElement], HCameraElement);\n  HCameraElement.prototype.setup = function () {\n    var i;\n    var len = this.comp.threeDElements.length;\n    var comp;\n    var perspectiveStyle;\n    var containerStyle;\n    for (i = 0; i < len; i += 1) {\n      // [perspectiveElem,container]\n      comp = this.comp.threeDElements[i];\n      if (comp.type === '3d') {\n        perspectiveStyle = comp.perspectiveElem.style;\n        containerStyle = comp.container.style;\n        var perspective = this.pe.v + 'px';\n        var origin = '0px 0px 0px';\n        var matrix = 'matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1)';\n        perspectiveStyle.perspective = perspective;\n        perspectiveStyle.webkitPerspective = perspective;\n        containerStyle.transformOrigin = origin;\n        containerStyle.mozTransformOrigin = origin;\n        containerStyle.webkitTransformOrigin = origin;\n        perspectiveStyle.transform = matrix;\n        perspectiveStyle.webkitTransform = matrix;\n      }\n    }\n  };\n  HCameraElement.prototype.createElements = function () {};\n  HCameraElement.prototype.hide = function () {};\n  HCameraElement.prototype.renderFrame = function () {\n    var _mdf = this._isFirstFrame;\n    var i;\n    var len;\n    if (this.hierarchy) {\n      len = this.hierarchy.length;\n      for (i = 0; i < len; i += 1) {\n        _mdf = this.hierarchy[i].finalTransform.mProp._mdf || _mdf;\n      }\n    }\n    if (_mdf || this.pe._mdf || this.p && this.p._mdf || this.px && (this.px._mdf || this.py._mdf || this.pz._mdf) || this.rx._mdf || this.ry._mdf || this.rz._mdf || this.or._mdf || this.a && this.a._mdf) {\n      this.mat.reset();\n      if (this.hierarchy) {\n        len = this.hierarchy.length - 1;\n        for (i = len; i >= 0; i -= 1) {\n          var mTransf = this.hierarchy[i].finalTransform.mProp;\n          this.mat.translate(-mTransf.p.v[0], -mTransf.p.v[1], mTransf.p.v[2]);\n          this.mat.rotateX(-mTransf.or.v[0]).rotateY(-mTransf.or.v[1]).rotateZ(mTransf.or.v[2]);\n          this.mat.rotateX(-mTransf.rx.v).rotateY(-mTransf.ry.v).rotateZ(mTransf.rz.v);\n          this.mat.scale(1 / mTransf.s.v[0], 1 / mTransf.s.v[1], 1 / mTransf.s.v[2]);\n          this.mat.translate(mTransf.a.v[0], mTransf.a.v[1], mTransf.a.v[2]);\n        }\n      }\n      if (this.p) {\n        this.mat.translate(-this.p.v[0], -this.p.v[1], this.p.v[2]);\n      } else {\n        this.mat.translate(-this.px.v, -this.py.v, this.pz.v);\n      }\n      if (this.a) {\n        var diffVector;\n        if (this.p) {\n          diffVector = [this.p.v[0] - this.a.v[0], this.p.v[1] - this.a.v[1], this.p.v[2] - this.a.v[2]];\n        } else {\n          diffVector = [this.px.v - this.a.v[0], this.py.v - this.a.v[1], this.pz.v - this.a.v[2]];\n        }\n        var mag = Math.sqrt(Math.pow(diffVector[0], 2) + Math.pow(diffVector[1], 2) + Math.pow(diffVector[2], 2));\n        // var lookDir = getNormalizedPoint(getDiffVector(this.a.v,this.p.v));\n        var lookDir = [diffVector[0] / mag, diffVector[1] / mag, diffVector[2] / mag];\n        var lookLengthOnXZ = Math.sqrt(lookDir[2] * lookDir[2] + lookDir[0] * lookDir[0]);\n        var mRotationX = Math.atan2(lookDir[1], lookLengthOnXZ);\n        var mRotationY = Math.atan2(lookDir[0], -lookDir[2]);\n        this.mat.rotateY(mRotationY).rotateX(-mRotationX);\n      }\n      this.mat.rotateX(-this.rx.v).rotateY(-this.ry.v).rotateZ(this.rz.v);\n      this.mat.rotateX(-this.or.v[0]).rotateY(-this.or.v[1]).rotateZ(this.or.v[2]);\n      this.mat.translate(this.globalData.compSize.w / 2, this.globalData.compSize.h / 2, 0);\n      this.mat.translate(0, 0, this.pe.v);\n      var hasMatrixChanged = !this._prevMat.equals(this.mat);\n      if ((hasMatrixChanged || this.pe._mdf) && this.comp.threeDElements) {\n        len = this.comp.threeDElements.length;\n        var comp;\n        var perspectiveStyle;\n        var containerStyle;\n        for (i = 0; i < len; i += 1) {\n          comp = this.comp.threeDElements[i];\n          if (comp.type === '3d') {\n            if (hasMatrixChanged) {\n              var matValue = this.mat.toCSS();\n              containerStyle = comp.container.style;\n              containerStyle.transform = matValue;\n              containerStyle.webkitTransform = matValue;\n            }\n            if (this.pe._mdf) {\n              perspectiveStyle = comp.perspectiveElem.style;\n              perspectiveStyle.perspective = this.pe.v + 'px';\n              perspectiveStyle.webkitPerspective = this.pe.v + 'px';\n            }\n          }\n        }\n        this.mat.clone(this._prevMat);\n      }\n    }\n    this._isFirstFrame = false;\n  };\n  HCameraElement.prototype.prepareFrame = function (num) {\n    this.prepareProperties(num, true);\n  };\n  HCameraElement.prototype.destroy = function () {};\n  HCameraElement.prototype.getBaseElement = function () {\n    return null;\n  };\n\n  function HImageElement(data, globalData, comp) {\n    this.assetData = globalData.getAssetData(data.refId);\n    this.initElement(data, globalData, comp);\n  }\n  extendPrototype([BaseElement, TransformElement, HBaseElement, HSolidElement, HierarchyElement, FrameElement, RenderableElement], HImageElement);\n  HImageElement.prototype.createContent = function () {\n    var assetPath = this.globalData.getAssetsPath(this.assetData);\n    var img = new Image();\n    if (this.data.hasMask) {\n      this.imageElem = createNS('image');\n      this.imageElem.setAttribute('width', this.assetData.w + 'px');\n      this.imageElem.setAttribute('height', this.assetData.h + 'px');\n      this.imageElem.setAttributeNS('http://www.w3.org/1999/xlink', 'href', assetPath);\n      this.layerElement.appendChild(this.imageElem);\n      this.baseElement.setAttribute('width', this.assetData.w);\n      this.baseElement.setAttribute('height', this.assetData.h);\n    } else {\n      this.layerElement.appendChild(img);\n    }\n    img.crossOrigin = 'anonymous';\n    img.src = assetPath;\n    if (this.data.ln) {\n      this.baseElement.setAttribute('id', this.data.ln);\n    }\n  };\n\n  function HybridRendererBase(animationItem, config) {\n    this.animationItem = animationItem;\n    this.layers = null;\n    this.renderedFrame = -1;\n    this.renderConfig = {\n      className: config && config.className || '',\n      imagePreserveAspectRatio: config && config.imagePreserveAspectRatio || 'xMidYMid slice',\n      hideOnTransparent: !(config && config.hideOnTransparent === false),\n      filterSize: {\n        width: config && config.filterSize && config.filterSize.width || '400%',\n        height: config && config.filterSize && config.filterSize.height || '400%',\n        x: config && config.filterSize && config.filterSize.x || '-100%',\n        y: config && config.filterSize && config.filterSize.y || '-100%'\n      }\n    };\n    this.globalData = {\n      _mdf: false,\n      frameNum: -1,\n      renderConfig: this.renderConfig\n    };\n    this.pendingElements = [];\n    this.elements = [];\n    this.threeDElements = [];\n    this.destroyed = false;\n    this.camera = null;\n    this.supports3d = true;\n    this.rendererType = 'html';\n  }\n  extendPrototype([BaseRenderer], HybridRendererBase);\n  HybridRendererBase.prototype.buildItem = SVGRenderer.prototype.buildItem;\n  HybridRendererBase.prototype.checkPendingElements = function () {\n    while (this.pendingElements.length) {\n      var element = this.pendingElements.pop();\n      element.checkParenting();\n    }\n  };\n  HybridRendererBase.prototype.appendElementInPos = function (element, pos) {\n    var newDOMElement = element.getBaseElement();\n    if (!newDOMElement) {\n      return;\n    }\n    var layer = this.layers[pos];\n    if (!layer.ddd || !this.supports3d) {\n      if (this.threeDElements) {\n        this.addTo3dContainer(newDOMElement, pos);\n      } else {\n        var i = 0;\n        var nextDOMElement;\n        var nextLayer;\n        var tmpDOMElement;\n        while (i < pos) {\n          if (this.elements[i] && this.elements[i] !== true && this.elements[i].getBaseElement) {\n            nextLayer = this.elements[i];\n            tmpDOMElement = this.layers[i].ddd ? this.getThreeDContainerByPos(i) : nextLayer.getBaseElement();\n            nextDOMElement = tmpDOMElement || nextDOMElement;\n          }\n          i += 1;\n        }\n        if (nextDOMElement) {\n          if (!layer.ddd || !this.supports3d) {\n            this.layerElement.insertBefore(newDOMElement, nextDOMElement);\n          }\n        } else if (!layer.ddd || !this.supports3d) {\n          this.layerElement.appendChild(newDOMElement);\n        }\n      }\n    } else {\n      this.addTo3dContainer(newDOMElement, pos);\n    }\n  };\n  HybridRendererBase.prototype.createShape = function (data) {\n    if (!this.supports3d) {\n      return new SVGShapeElement(data, this.globalData, this);\n    }\n    return new HShapeElement(data, this.globalData, this);\n  };\n  HybridRendererBase.prototype.createText = function (data) {\n    if (!this.supports3d) {\n      return new SVGTextLottieElement(data, this.globalData, this);\n    }\n    return new HTextElement(data, this.globalData, this);\n  };\n  HybridRendererBase.prototype.createCamera = function (data) {\n    this.camera = new HCameraElement(data, this.globalData, this);\n    return this.camera;\n  };\n  HybridRendererBase.prototype.createImage = function (data) {\n    if (!this.supports3d) {\n      return new IImageElement(data, this.globalData, this);\n    }\n    return new HImageElement(data, this.globalData, this);\n  };\n  HybridRendererBase.prototype.createSolid = function (data) {\n    if (!this.supports3d) {\n      return new ISolidElement(data, this.globalData, this);\n    }\n    return new HSolidElement(data, this.globalData, this);\n  };\n  HybridRendererBase.prototype.createNull = SVGRenderer.prototype.createNull;\n  HybridRendererBase.prototype.getThreeDContainerByPos = function (pos) {\n    var i = 0;\n    var len = this.threeDElements.length;\n    while (i < len) {\n      if (this.threeDElements[i].startPos <= pos && this.threeDElements[i].endPos >= pos) {\n        return this.threeDElements[i].perspectiveElem;\n      }\n      i += 1;\n    }\n    return null;\n  };\n  HybridRendererBase.prototype.createThreeDContainer = function (pos, type) {\n    var perspectiveElem = createTag('div');\n    var style;\n    var containerStyle;\n    styleDiv(perspectiveElem);\n    var container = createTag('div');\n    styleDiv(container);\n    if (type === '3d') {\n      style = perspectiveElem.style;\n      style.width = this.globalData.compSize.w + 'px';\n      style.height = this.globalData.compSize.h + 'px';\n      var center = '50% 50%';\n      style.webkitTransformOrigin = center;\n      style.mozTransformOrigin = center;\n      style.transformOrigin = center;\n      containerStyle = container.style;\n      var matrix = 'matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1)';\n      containerStyle.transform = matrix;\n      containerStyle.webkitTransform = matrix;\n    }\n    perspectiveElem.appendChild(container);\n    // this.resizerElem.appendChild(perspectiveElem);\n    var threeDContainerData = {\n      container: container,\n      perspectiveElem: perspectiveElem,\n      startPos: pos,\n      endPos: pos,\n      type: type\n    };\n    this.threeDElements.push(threeDContainerData);\n    return threeDContainerData;\n  };\n  HybridRendererBase.prototype.build3dContainers = function () {\n    var i;\n    var len = this.layers.length;\n    var lastThreeDContainerData;\n    var currentContainer = '';\n    for (i = 0; i < len; i += 1) {\n      if (this.layers[i].ddd && this.layers[i].ty !== 3) {\n        if (currentContainer !== '3d') {\n          currentContainer = '3d';\n          lastThreeDContainerData = this.createThreeDContainer(i, '3d');\n        }\n        lastThreeDContainerData.endPos = Math.max(lastThreeDContainerData.endPos, i);\n      } else {\n        if (currentContainer !== '2d') {\n          currentContainer = '2d';\n          lastThreeDContainerData = this.createThreeDContainer(i, '2d');\n        }\n        lastThreeDContainerData.endPos = Math.max(lastThreeDContainerData.endPos, i);\n      }\n    }\n    len = this.threeDElements.length;\n    for (i = len - 1; i >= 0; i -= 1) {\n      this.resizerElem.appendChild(this.threeDElements[i].perspectiveElem);\n    }\n  };\n  HybridRendererBase.prototype.addTo3dContainer = function (elem, pos) {\n    var i = 0;\n    var len = this.threeDElements.length;\n    while (i < len) {\n      if (pos <= this.threeDElements[i].endPos) {\n        var j = this.threeDElements[i].startPos;\n        var nextElement;\n        while (j < pos) {\n          if (this.elements[j] && this.elements[j].getBaseElement) {\n            nextElement = this.elements[j].getBaseElement();\n          }\n          j += 1;\n        }\n        if (nextElement) {\n          this.threeDElements[i].container.insertBefore(elem, nextElement);\n        } else {\n          this.threeDElements[i].container.appendChild(elem);\n        }\n        break;\n      }\n      i += 1;\n    }\n  };\n  HybridRendererBase.prototype.configAnimation = function (animData) {\n    var resizerElem = createTag('div');\n    var wrapper = this.animationItem.wrapper;\n    var style = resizerElem.style;\n    style.width = animData.w + 'px';\n    style.height = animData.h + 'px';\n    this.resizerElem = resizerElem;\n    styleDiv(resizerElem);\n    style.transformStyle = 'flat';\n    style.mozTransformStyle = 'flat';\n    style.webkitTransformStyle = 'flat';\n    if (this.renderConfig.className) {\n      resizerElem.setAttribute('class', this.renderConfig.className);\n    }\n    wrapper.appendChild(resizerElem);\n    style.overflow = 'hidden';\n    var svg = createNS('svg');\n    svg.setAttribute('width', '1');\n    svg.setAttribute('height', '1');\n    styleDiv(svg);\n    this.resizerElem.appendChild(svg);\n    var defs = createNS('defs');\n    svg.appendChild(defs);\n    this.data = animData;\n    // Mask animation\n    this.setupGlobalData(animData, svg);\n    this.globalData.defs = defs;\n    this.layers = animData.layers;\n    this.layerElement = this.resizerElem;\n    this.build3dContainers();\n    this.updateContainerSize();\n  };\n  HybridRendererBase.prototype.destroy = function () {\n    if (this.animationItem.wrapper) {\n      this.animationItem.wrapper.innerText = '';\n    }\n    this.animationItem.container = null;\n    this.globalData.defs = null;\n    var i;\n    var len = this.layers ? this.layers.length : 0;\n    for (i = 0; i < len; i += 1) {\n      if (this.elements[i] && this.elements[i].destroy) {\n        this.elements[i].destroy();\n      }\n    }\n    this.elements.length = 0;\n    this.destroyed = true;\n    this.animationItem = null;\n  };\n  HybridRendererBase.prototype.updateContainerSize = function () {\n    var elementWidth = this.animationItem.wrapper.offsetWidth;\n    var elementHeight = this.animationItem.wrapper.offsetHeight;\n    var elementRel = elementWidth / elementHeight;\n    var animationRel = this.globalData.compSize.w / this.globalData.compSize.h;\n    var sx;\n    var sy;\n    var tx;\n    var ty;\n    if (animationRel > elementRel) {\n      sx = elementWidth / this.globalData.compSize.w;\n      sy = elementWidth / this.globalData.compSize.w;\n      tx = 0;\n      ty = (elementHeight - this.globalData.compSize.h * (elementWidth / this.globalData.compSize.w)) / 2;\n    } else {\n      sx = elementHeight / this.globalData.compSize.h;\n      sy = elementHeight / this.globalData.compSize.h;\n      tx = (elementWidth - this.globalData.compSize.w * (elementHeight / this.globalData.compSize.h)) / 2;\n      ty = 0;\n    }\n    var style = this.resizerElem.style;\n    style.webkitTransform = 'matrix3d(' + sx + ',0,0,0,0,' + sy + ',0,0,0,0,1,0,' + tx + ',' + ty + ',0,1)';\n    style.transform = style.webkitTransform;\n  };\n  HybridRendererBase.prototype.renderFrame = SVGRenderer.prototype.renderFrame;\n  HybridRendererBase.prototype.hide = function () {\n    this.resizerElem.style.display = 'none';\n  };\n  HybridRendererBase.prototype.show = function () {\n    this.resizerElem.style.display = 'block';\n  };\n  HybridRendererBase.prototype.initItems = function () {\n    this.buildAllItems();\n    if (this.camera) {\n      this.camera.setup();\n    } else {\n      var cWidth = this.globalData.compSize.w;\n      var cHeight = this.globalData.compSize.h;\n      var i;\n      var len = this.threeDElements.length;\n      for (i = 0; i < len; i += 1) {\n        var style = this.threeDElements[i].perspectiveElem.style;\n        style.webkitPerspective = Math.sqrt(Math.pow(cWidth, 2) + Math.pow(cHeight, 2)) + 'px';\n        style.perspective = style.webkitPerspective;\n      }\n    }\n  };\n  HybridRendererBase.prototype.searchExtraCompositions = function (assets) {\n    var i;\n    var len = assets.length;\n    var floatingContainer = createTag('div');\n    for (i = 0; i < len; i += 1) {\n      if (assets[i].xt) {\n        var comp = this.createComp(assets[i], floatingContainer, this.globalData.comp, null);\n        comp.initExpressions();\n        this.globalData.projectInterface.registerComposition(comp);\n      }\n    }\n  };\n\n  function HCompElement(data, globalData, comp) {\n    this.layers = data.layers;\n    this.supports3d = !data.hasMask;\n    this.completeLayers = false;\n    this.pendingElements = [];\n    this.elements = this.layers ? createSizedArray(this.layers.length) : [];\n    this.initElement(data, globalData, comp);\n    this.tm = data.tm ? PropertyFactory.getProp(this, data.tm, 0, globalData.frameRate, this) : {\n      _placeholder: true\n    };\n  }\n  extendPrototype([HybridRendererBase, ICompElement, HBaseElement], HCompElement);\n  HCompElement.prototype._createBaseContainerElements = HCompElement.prototype.createContainerElements;\n  HCompElement.prototype.createContainerElements = function () {\n    this._createBaseContainerElements();\n    // divElement.style.clip = 'rect(0px, '+this.data.w+'px, '+this.data.h+'px, 0px)';\n    if (this.data.hasMask) {\n      this.svgElement.setAttribute('width', this.data.w);\n      this.svgElement.setAttribute('height', this.data.h);\n      this.transformedElement = this.baseElement;\n    } else {\n      this.transformedElement = this.layerElement;\n    }\n  };\n  HCompElement.prototype.addTo3dContainer = function (elem, pos) {\n    var j = 0;\n    var nextElement;\n    while (j < pos) {\n      if (this.elements[j] && this.elements[j].getBaseElement) {\n        nextElement = this.elements[j].getBaseElement();\n      }\n      j += 1;\n    }\n    if (nextElement) {\n      this.layerElement.insertBefore(elem, nextElement);\n    } else {\n      this.layerElement.appendChild(elem);\n    }\n  };\n  HCompElement.prototype.createComp = function (data) {\n    if (!this.supports3d) {\n      return new SVGCompElement(data, this.globalData, this);\n    }\n    return new HCompElement(data, this.globalData, this);\n  };\n\n  function HybridRenderer(animationItem, config) {\n    this.animationItem = animationItem;\n    this.layers = null;\n    this.renderedFrame = -1;\n    this.renderConfig = {\n      className: config && config.className || '',\n      imagePreserveAspectRatio: config && config.imagePreserveAspectRatio || 'xMidYMid slice',\n      hideOnTransparent: !(config && config.hideOnTransparent === false),\n      filterSize: {\n        width: config && config.filterSize && config.filterSize.width || '400%',\n        height: config && config.filterSize && config.filterSize.height || '400%',\n        x: config && config.filterSize && config.filterSize.x || '-100%',\n        y: config && config.filterSize && config.filterSize.y || '-100%'\n      },\n      runExpressions: !config || config.runExpressions === undefined || config.runExpressions\n    };\n    this.globalData = {\n      _mdf: false,\n      frameNum: -1,\n      renderConfig: this.renderConfig\n    };\n    this.pendingElements = [];\n    this.elements = [];\n    this.threeDElements = [];\n    this.destroyed = false;\n    this.camera = null;\n    this.supports3d = true;\n    this.rendererType = 'html';\n  }\n  extendPrototype([HybridRendererBase], HybridRenderer);\n  HybridRenderer.prototype.createComp = function (data) {\n    if (!this.supports3d) {\n      return new SVGCompElement(data, this.globalData, this);\n    }\n    return new HCompElement(data, this.globalData, this);\n  };\n\n  var CompExpressionInterface = function () {\n    return function (comp) {\n      function _thisLayerFunction(name) {\n        var i = 0;\n        var len = comp.layers.length;\n        while (i < len) {\n          if (comp.layers[i].nm === name || comp.layers[i].ind === name) {\n            return comp.elements[i].layerInterface;\n          }\n          i += 1;\n        }\n        return null;\n        // return {active:false};\n      }\n      Object.defineProperty(_thisLayerFunction, '_name', {\n        value: comp.data.nm\n      });\n      _thisLayerFunction.layer = _thisLayerFunction;\n      _thisLayerFunction.pixelAspect = 1;\n      _thisLayerFunction.height = comp.data.h || comp.globalData.compSize.h;\n      _thisLayerFunction.width = comp.data.w || comp.globalData.compSize.w;\n      _thisLayerFunction.pixelAspect = 1;\n      _thisLayerFunction.frameDuration = 1 / comp.globalData.frameRate;\n      _thisLayerFunction.displayStartTime = 0;\n      _thisLayerFunction.numLayers = comp.layers.length;\n      return _thisLayerFunction;\n    };\n  }();\n\n  function _typeof$2(o) { \"@babel/helpers - typeof\"; return _typeof$2 = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof$2(o); }\n  /* eslint-disable */\n  /*\n   Copyright 2014 David Bau.\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 NONINFRINGEMENT.\n   IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\n   CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\n   TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\n   SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n   */\n\n  function seedRandom(pool, math) {\n    //\n    // The following constants are related to IEEE 754 limits.\n    //\n    var global = this,\n      width = 256,\n      // each RC4 output is 0 <= x < 256\n      chunks = 6,\n      // at least six RC4 outputs for each double\n      digits = 52,\n      // there are 52 significant digits in a double\n      rngname = 'random',\n      // rngname: name for Math.random and Math.seedrandom\n      startdenom = math.pow(width, chunks),\n      significance = math.pow(2, digits),\n      overflow = significance * 2,\n      mask = width - 1,\n      nodecrypto; // node.js crypto module, initialized at the bottom.\n\n    //\n    // seedrandom()\n    // This is the seedrandom function described above.\n    //\n    function seedrandom(seed, options, callback) {\n      var key = [];\n      options = options === true ? {\n        entropy: true\n      } : options || {};\n\n      // Flatten the seed string or build one from local entropy if needed.\n      var shortseed = mixkey(flatten(options.entropy ? [seed, tostring(pool)] : seed === null ? autoseed() : seed, 3), key);\n\n      // Use the seed to initialize an ARC4 generator.\n      var arc4 = new ARC4(key);\n\n      // This function returns a random double in [0, 1) that contains\n      // randomness in every bit of the mantissa of the IEEE 754 value.\n      var prng = function prng() {\n        var n = arc4.g(chunks),\n          // Start with a numerator n < 2 ^ 48\n          d = startdenom,\n          //   and denominator d = 2 ^ 48.\n          x = 0; //   and no 'extra last byte'.\n        while (n < significance) {\n          // Fill up all significant digits by\n          n = (n + x) * width; //   shifting numerator and\n          d *= width; //   denominator and generating a\n          x = arc4.g(1); //   new least-significant-byte.\n        }\n        while (n >= overflow) {\n          // To avoid rounding up, before adding\n          n /= 2; //   last byte, shift everything\n          d /= 2; //   right using integer math until\n          x >>>= 1; //   we have exactly the desired bits.\n        }\n        return (n + x) / d; // Form the number within [0, 1).\n      };\n      prng.int32 = function () {\n        return arc4.g(4) | 0;\n      };\n      prng.quick = function () {\n        return arc4.g(4) / 0x100000000;\n      };\n      prng[\"double\"] = prng;\n\n      // Mix the randomness into accumulated entropy.\n      mixkey(tostring(arc4.S), pool);\n\n      // Calling convention: what to return as a function of prng, seed, is_math.\n      return (options.pass || callback || function (prng, seed, is_math_call, state) {\n        if (state) {\n          // Load the arc4 state from the given state if it has an S array.\n          if (state.S) {\n            copy(state, arc4);\n          }\n          // Only provide the .state method if requested via options.state.\n          prng.state = function () {\n            return copy(arc4, {});\n          };\n        }\n\n        // If called as a method of Math (Math.seedrandom()), mutate\n        // Math.random because that is how seedrandom.js has worked since v1.0.\n        if (is_math_call) {\n          math[rngname] = prng;\n          return seed;\n        }\n\n        // Otherwise, it is a newer calling convention, so return the\n        // prng directly.\n        else return prng;\n      })(prng, shortseed, 'global' in options ? options.global : this == math, options.state);\n    }\n    math['seed' + rngname] = seedrandom;\n\n    //\n    // ARC4\n    //\n    // An ARC4 implementation.  The constructor takes a key in the form of\n    // an array of at most (width) integers that should be 0 <= x < (width).\n    //\n    // The g(count) method returns a pseudorandom integer that concatenates\n    // the next (count) outputs from ARC4.  Its return value is a number x\n    // that is in the range 0 <= x < (width ^ count).\n    //\n    function ARC4(key) {\n      var t,\n        keylen = key.length,\n        me = this,\n        i = 0,\n        j = me.i = me.j = 0,\n        s = me.S = [];\n\n      // The empty key [] is treated as [0].\n      if (!keylen) {\n        key = [keylen++];\n      }\n\n      // Set up S using the standard key scheduling algorithm.\n      while (i < width) {\n        s[i] = i++;\n      }\n      for (i = 0; i < width; i++) {\n        s[i] = s[j = mask & j + key[i % keylen] + (t = s[i])];\n        s[j] = t;\n      }\n\n      // The \"g\" method returns the next (count) outputs as one number.\n      me.g = function (count) {\n        // Using instance members instead of closure state nearly doubles speed.\n        var t,\n          r = 0,\n          i = me.i,\n          j = me.j,\n          s = me.S;\n        while (count--) {\n          t = s[i = mask & i + 1];\n          r = r * width + s[mask & (s[i] = s[j = mask & j + t]) + (s[j] = t)];\n        }\n        me.i = i;\n        me.j = j;\n        return r;\n        // For robust unpredictability, the function call below automatically\n        // discards an initial batch of values.  This is called RC4-drop[256].\n        // See http://google.com/search?q=rsa+fluhrer+response&btnI\n      };\n    }\n\n    //\n    // copy()\n    // Copies internal state of ARC4 to or from a plain object.\n    //\n    function copy(f, t) {\n      t.i = f.i;\n      t.j = f.j;\n      t.S = f.S.slice();\n      return t;\n    }\n\n    //\n    // flatten()\n    // Converts an object tree to nested arrays of strings.\n    //\n    function flatten(obj, depth) {\n      var result = [],\n        typ = _typeof$2(obj),\n        prop;\n      if (depth && typ == 'object') {\n        for (prop in obj) {\n          try {\n            result.push(flatten(obj[prop], depth - 1));\n          } catch (e) {}\n        }\n      }\n      return result.length ? result : typ == 'string' ? obj : obj + '\\0';\n    }\n\n    //\n    // mixkey()\n    // Mixes a string seed into a key that is an array of integers, and\n    // returns a shortened string seed that is equivalent to the result key.\n    //\n    function mixkey(seed, key) {\n      var stringseed = seed + '',\n        smear,\n        j = 0;\n      while (j < stringseed.length) {\n        key[mask & j] = mask & (smear ^= key[mask & j] * 19) + stringseed.charCodeAt(j++);\n      }\n      return tostring(key);\n    }\n\n    //\n    // autoseed()\n    // Returns an object for autoseeding, using window.crypto and Node crypto\n    // module if available.\n    //\n    function autoseed() {\n      try {\n        if (nodecrypto) {\n          return tostring(nodecrypto.randomBytes(width));\n        }\n        var out = new Uint8Array(width);\n        (global.crypto || global.msCrypto).getRandomValues(out);\n        return tostring(out);\n      } catch (e) {\n        var browser = global.navigator,\n          plugins = browser && browser.plugins;\n        return [+new Date(), global, plugins, global.screen, tostring(pool)];\n      }\n    }\n\n    //\n    // tostring()\n    // Converts an array of charcodes to a string\n    //\n    function tostring(a) {\n      return String.fromCharCode.apply(0, a);\n    }\n\n    //\n    // When seedrandom.js is loaded, we immediately mix a few bits\n    // from the built-in RNG into the entropy pool.  Because we do\n    // not want to interfere with deterministic PRNG state later,\n    // seedrandom will not call math.random on its own again after\n    // initialization.\n    //\n    mixkey(math.random(), pool);\n\n    //\n    // Nodejs and AMD support: export the implementation as a module using\n    // either convention.\n    //\n\n    // End anonymous scope, and pass initial values.\n  }\n  ;\n  function initialize$2(BMMath) {\n    seedRandom([], BMMath);\n  }\n\n  var propTypes = {\n    SHAPE: 'shape'\n  };\n\n  function _typeof$1(o) { \"@babel/helpers - typeof\"; return _typeof$1 = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof$1(o); }\n  var ExpressionManager = function () {\n    'use strict';\n\n    var ob = {};\n    var Math = BMMath;\n    var window = null;\n    var document = null;\n    var XMLHttpRequest = null;\n    var fetch = null;\n    var frames = null;\n    var _lottieGlobal = {};\n    initialize$2(BMMath);\n    function resetFrame() {\n      _lottieGlobal = {};\n    }\n    function $bm_isInstanceOfArray(arr) {\n      return arr.constructor === Array || arr.constructor === Float32Array;\n    }\n    function isNumerable(tOfV, v) {\n      return tOfV === 'number' || v instanceof Number || tOfV === 'boolean' || tOfV === 'string';\n    }\n    function $bm_neg(a) {\n      var tOfA = _typeof$1(a);\n      if (tOfA === 'number' || a instanceof Number || tOfA === 'boolean') {\n        return -a;\n      }\n      if ($bm_isInstanceOfArray(a)) {\n        var i;\n        var lenA = a.length;\n        var retArr = [];\n        for (i = 0; i < lenA; i += 1) {\n          retArr[i] = -a[i];\n        }\n        return retArr;\n      }\n      if (a.propType) {\n        return a.v;\n      }\n      return -a;\n    }\n    var easeInBez = BezierFactory.getBezierEasing(0.333, 0, 0.833, 0.833, 'easeIn').get;\n    var easeOutBez = BezierFactory.getBezierEasing(0.167, 0.167, 0.667, 1, 'easeOut').get;\n    var easeInOutBez = BezierFactory.getBezierEasing(0.33, 0, 0.667, 1, 'easeInOut').get;\n    function sum(a, b) {\n      var tOfA = _typeof$1(a);\n      var tOfB = _typeof$1(b);\n      if (isNumerable(tOfA, a) && isNumerable(tOfB, b) || tOfA === 'string' || tOfB === 'string') {\n        return a + b;\n      }\n      if ($bm_isInstanceOfArray(a) && isNumerable(tOfB, b)) {\n        a = a.slice(0);\n        a[0] += b;\n        return a;\n      }\n      if (isNumerable(tOfA, a) && $bm_isInstanceOfArray(b)) {\n        b = b.slice(0);\n        b[0] = a + b[0];\n        return b;\n      }\n      if ($bm_isInstanceOfArray(a) && $bm_isInstanceOfArray(b)) {\n        var i = 0;\n        var lenA = a.length;\n        var lenB = b.length;\n        var retArr = [];\n        while (i < lenA || i < lenB) {\n          if ((typeof a[i] === 'number' || a[i] instanceof Number) && (typeof b[i] === 'number' || b[i] instanceof Number)) {\n            retArr[i] = a[i] + b[i];\n          } else {\n            retArr[i] = b[i] === undefined ? a[i] : a[i] || b[i];\n          }\n          i += 1;\n        }\n        return retArr;\n      }\n      return 0;\n    }\n    var add = sum;\n    function sub(a, b) {\n      var tOfA = _typeof$1(a);\n      var tOfB = _typeof$1(b);\n      if (isNumerable(tOfA, a) && isNumerable(tOfB, b)) {\n        if (tOfA === 'string') {\n          a = parseInt(a, 10);\n        }\n        if (tOfB === 'string') {\n          b = parseInt(b, 10);\n        }\n        return a - b;\n      }\n      if ($bm_isInstanceOfArray(a) && isNumerable(tOfB, b)) {\n        a = a.slice(0);\n        a[0] -= b;\n        return a;\n      }\n      if (isNumerable(tOfA, a) && $bm_isInstanceOfArray(b)) {\n        b = b.slice(0);\n        b[0] = a - b[0];\n        return b;\n      }\n      if ($bm_isInstanceOfArray(a) && $bm_isInstanceOfArray(b)) {\n        var i = 0;\n        var lenA = a.length;\n        var lenB = b.length;\n        var retArr = [];\n        while (i < lenA || i < lenB) {\n          if ((typeof a[i] === 'number' || a[i] instanceof Number) && (typeof b[i] === 'number' || b[i] instanceof Number)) {\n            retArr[i] = a[i] - b[i];\n          } else {\n            retArr[i] = b[i] === undefined ? a[i] : a[i] || b[i];\n          }\n          i += 1;\n        }\n        return retArr;\n      }\n      return 0;\n    }\n    function mul(a, b) {\n      var tOfA = _typeof$1(a);\n      var tOfB = _typeof$1(b);\n      var arr;\n      if (isNumerable(tOfA, a) && isNumerable(tOfB, b)) {\n        return a * b;\n      }\n      var i;\n      var len;\n      if ($bm_isInstanceOfArray(a) && isNumerable(tOfB, b)) {\n        len = a.length;\n        arr = createTypedArray('float32', len);\n        for (i = 0; i < len; i += 1) {\n          arr[i] = a[i] * b;\n        }\n        return arr;\n      }\n      if (isNumerable(tOfA, a) && $bm_isInstanceOfArray(b)) {\n        len = b.length;\n        arr = createTypedArray('float32', len);\n        for (i = 0; i < len; i += 1) {\n          arr[i] = a * b[i];\n        }\n        return arr;\n      }\n      return 0;\n    }\n    function div(a, b) {\n      var tOfA = _typeof$1(a);\n      var tOfB = _typeof$1(b);\n      var arr;\n      if (isNumerable(tOfA, a) && isNumerable(tOfB, b)) {\n        return a / b;\n      }\n      var i;\n      var len;\n      if ($bm_isInstanceOfArray(a) && isNumerable(tOfB, b)) {\n        len = a.length;\n        arr = createTypedArray('float32', len);\n        for (i = 0; i < len; i += 1) {\n          arr[i] = a[i] / b;\n        }\n        return arr;\n      }\n      if (isNumerable(tOfA, a) && $bm_isInstanceOfArray(b)) {\n        len = b.length;\n        arr = createTypedArray('float32', len);\n        for (i = 0; i < len; i += 1) {\n          arr[i] = a / b[i];\n        }\n        return arr;\n      }\n      return 0;\n    }\n    function mod(a, b) {\n      if (typeof a === 'string') {\n        a = parseInt(a, 10);\n      }\n      if (typeof b === 'string') {\n        b = parseInt(b, 10);\n      }\n      return a % b;\n    }\n    var $bm_sum = sum;\n    var $bm_sub = sub;\n    var $bm_mul = mul;\n    var $bm_div = div;\n    var $bm_mod = mod;\n    function clamp(num, min, max) {\n      if (min > max) {\n        var mm = max;\n        max = min;\n        min = mm;\n      }\n      return Math.min(Math.max(num, min), max);\n    }\n    function radiansToDegrees(val) {\n      return val / degToRads;\n    }\n    var radians_to_degrees = radiansToDegrees;\n    function degreesToRadians(val) {\n      return val * degToRads;\n    }\n    var degrees_to_radians = radiansToDegrees;\n    var helperLengthArray = [0, 0, 0, 0, 0, 0];\n    function length(arr1, arr2) {\n      if (typeof arr1 === 'number' || arr1 instanceof Number) {\n        arr2 = arr2 || 0;\n        return Math.abs(arr1 - arr2);\n      }\n      if (!arr2) {\n        arr2 = helperLengthArray;\n      }\n      var i;\n      var len = Math.min(arr1.length, arr2.length);\n      var addedLength = 0;\n      for (i = 0; i < len; i += 1) {\n        addedLength += Math.pow(arr2[i] - arr1[i], 2);\n      }\n      return Math.sqrt(addedLength);\n    }\n    function normalize(vec) {\n      return div(vec, length(vec));\n    }\n    function rgbToHsl(val) {\n      var r = val[0];\n      var g = val[1];\n      var b = val[2];\n      var max = Math.max(r, g, b);\n      var min = Math.min(r, g, b);\n      var h;\n      var s;\n      var l = (max + min) / 2;\n      if (max === min) {\n        h = 0; // achromatic\n        s = 0; // achromatic\n      } else {\n        var d = max - min;\n        s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\n        switch (max) {\n          case r:\n            h = (g - b) / d + (g < b ? 6 : 0);\n            break;\n          case g:\n            h = (b - r) / d + 2;\n            break;\n          case b:\n            h = (r - g) / d + 4;\n            break;\n          default:\n            break;\n        }\n        h /= 6;\n      }\n      return [h, s, l, val[3]];\n    }\n    function hue2rgb(p, q, t) {\n      if (t < 0) t += 1;\n      if (t > 1) t -= 1;\n      if (t < 1 / 6) return p + (q - p) * 6 * t;\n      if (t < 1 / 2) return q;\n      if (t < 2 / 3) return p + (q - p) * (2 / 3 - t) * 6;\n      return p;\n    }\n    function hslToRgb(val) {\n      var h = val[0];\n      var s = val[1];\n      var l = val[2];\n      var r;\n      var g;\n      var b;\n      if (s === 0) {\n        r = l; // achromatic\n        b = l; // achromatic\n        g = l; // achromatic\n      } else {\n        var q = l < 0.5 ? l * (1 + s) : l + s - l * s;\n        var p = 2 * l - q;\n        r = hue2rgb(p, q, h + 1 / 3);\n        g = hue2rgb(p, q, h);\n        b = hue2rgb(p, q, h - 1 / 3);\n      }\n      return [r, g, b, val[3]];\n    }\n    function linear(t, tMin, tMax, value1, value2) {\n      if (value1 === undefined || value2 === undefined) {\n        value1 = tMin;\n        value2 = tMax;\n        tMin = 0;\n        tMax = 1;\n      }\n      if (tMax < tMin) {\n        var _tMin = tMax;\n        tMax = tMin;\n        tMin = _tMin;\n      }\n      if (t <= tMin) {\n        return value1;\n      }\n      if (t >= tMax) {\n        return value2;\n      }\n      var perc = tMax === tMin ? 0 : (t - tMin) / (tMax - tMin);\n      if (!value1.length) {\n        return value1 + (value2 - value1) * perc;\n      }\n      var i;\n      var len = value1.length;\n      var arr = createTypedArray('float32', len);\n      for (i = 0; i < len; i += 1) {\n        arr[i] = value1[i] + (value2[i] - value1[i]) * perc;\n      }\n      return arr;\n    }\n    function random(min, max) {\n      if (max === undefined) {\n        if (min === undefined) {\n          min = 0;\n          max = 1;\n        } else {\n          max = min;\n          min = undefined;\n        }\n      }\n      if (max.length) {\n        var i;\n        var len = max.length;\n        if (!min) {\n          min = createTypedArray('float32', len);\n        }\n        var arr = createTypedArray('float32', len);\n        var rnd = BMMath.random();\n        for (i = 0; i < len; i += 1) {\n          arr[i] = min[i] + rnd * (max[i] - min[i]);\n        }\n        return arr;\n      }\n      if (min === undefined) {\n        min = 0;\n      }\n      var rndm = BMMath.random();\n      return min + rndm * (max - min);\n    }\n    function createPath(points, inTangents, outTangents, closed) {\n      var i;\n      var len = points.length;\n      var path = shapePool.newElement();\n      path.setPathData(!!closed, len);\n      var arrPlaceholder = [0, 0];\n      var inVertexPoint;\n      var outVertexPoint;\n      for (i = 0; i < len; i += 1) {\n        inVertexPoint = inTangents && inTangents[i] ? inTangents[i] : arrPlaceholder;\n        outVertexPoint = outTangents && outTangents[i] ? outTangents[i] : arrPlaceholder;\n        path.setTripleAt(points[i][0], points[i][1], outVertexPoint[0] + points[i][0], outVertexPoint[1] + points[i][1], inVertexPoint[0] + points[i][0], inVertexPoint[1] + points[i][1], i, true);\n      }\n      return path;\n    }\n    function initiateExpression(elem, data, property) {\n      // Bail out if we don't want expressions\n      function noOp(_value) {\n        return _value;\n      }\n      if (!elem.globalData.renderConfig.runExpressions) {\n        return noOp;\n      }\n      var val = data.x;\n      var needsVelocity = /velocity(?![\\w\\d])/.test(val);\n      var _needsRandom = val.indexOf('random') !== -1;\n      var elemType = elem.data.ty;\n      var transform;\n      var $bm_transform;\n      var content;\n      var effect;\n      var thisProperty = property;\n      thisProperty._name = elem.data.nm;\n      thisProperty.valueAtTime = thisProperty.getValueAtTime;\n      Object.defineProperty(thisProperty, 'value', {\n        get: function get() {\n          return thisProperty.v;\n        }\n      });\n      elem.comp.frameDuration = 1 / elem.comp.globalData.frameRate;\n      elem.comp.displayStartTime = 0;\n      var inPoint = elem.data.ip / elem.comp.globalData.frameRate;\n      var outPoint = elem.data.op / elem.comp.globalData.frameRate;\n      var width = elem.data.sw ? elem.data.sw : 0;\n      var height = elem.data.sh ? elem.data.sh : 0;\n      var name = elem.data.nm;\n      var loopIn;\n      var loop_in;\n      var loopOut;\n      var loop_out;\n      var smooth;\n      var toWorld;\n      var fromWorld;\n      var fromComp;\n      var toComp;\n      var fromCompToSurface;\n      var position;\n      var rotation;\n      var anchorPoint;\n      var scale;\n      var thisLayer;\n      var thisComp;\n      var mask;\n      var valueAtTime;\n      var velocityAtTime;\n      var scoped_bm_rt;\n      // val = val.replace(/(\\\\?\"|')((http)(s)?(:\\/))?\\/.*?(\\\\?\"|')/g, \"\\\"\\\"\"); // deter potential network calls\n      var expression_function = eval('[function _expression_function(){' + val + ';scoped_bm_rt=$bm_rt}]')[0]; // eslint-disable-line no-eval\n      var numKeys = property.kf ? data.k.length : 0;\n      var active = !this.data || this.data.hd !== true;\n      var wiggle = function wiggle(freq, amp) {\n        var iWiggle;\n        var j;\n        var lenWiggle = this.pv.length ? this.pv.length : 1;\n        var addedAmps = createTypedArray('float32', lenWiggle);\n        freq = 5;\n        var iterations = Math.floor(time * freq);\n        iWiggle = 0;\n        j = 0;\n        while (iWiggle < iterations) {\n          // var rnd = BMMath.random();\n          for (j = 0; j < lenWiggle; j += 1) {\n            addedAmps[j] += -amp + amp * 2 * BMMath.random();\n            // addedAmps[j] += -amp + amp*2*rnd;\n          }\n          iWiggle += 1;\n        }\n        // var rnd2 = BMMath.random();\n        var periods = time * freq;\n        var perc = periods - Math.floor(periods);\n        var arr = createTypedArray('float32', lenWiggle);\n        if (lenWiggle > 1) {\n          for (j = 0; j < lenWiggle; j += 1) {\n            arr[j] = this.pv[j] + addedAmps[j] + (-amp + amp * 2 * BMMath.random()) * perc;\n            // arr[j] = this.pv[j] + addedAmps[j] + (-amp + amp*2*rnd)*perc;\n            // arr[i] = this.pv[i] + addedAmp + amp1*perc + amp2*(1-perc);\n          }\n          return arr;\n        }\n        return this.pv + addedAmps[0] + (-amp + amp * 2 * BMMath.random()) * perc;\n      }.bind(this);\n      if (thisProperty.loopIn) {\n        loopIn = thisProperty.loopIn.bind(thisProperty);\n        loop_in = loopIn;\n      }\n      if (thisProperty.loopOut) {\n        loopOut = thisProperty.loopOut.bind(thisProperty);\n        loop_out = loopOut;\n      }\n      if (thisProperty.smooth) {\n        smooth = thisProperty.smooth.bind(thisProperty);\n      }\n      function loopInDuration(type, duration) {\n        return loopIn(type, duration, true);\n      }\n      function loopOutDuration(type, duration) {\n        return loopOut(type, duration, true);\n      }\n      if (this.getValueAtTime) {\n        valueAtTime = this.getValueAtTime.bind(this);\n      }\n      if (this.getVelocityAtTime) {\n        velocityAtTime = this.getVelocityAtTime.bind(this);\n      }\n      var comp = elem.comp.globalData.projectInterface.bind(elem.comp.globalData.projectInterface);\n      function lookAt(elem1, elem2) {\n        var fVec = [elem2[0] - elem1[0], elem2[1] - elem1[1], elem2[2] - elem1[2]];\n        var pitch = Math.atan2(fVec[0], Math.sqrt(fVec[1] * fVec[1] + fVec[2] * fVec[2])) / degToRads;\n        var yaw = -Math.atan2(fVec[1], fVec[2]) / degToRads;\n        return [yaw, pitch, 0];\n      }\n      function easeOut(t, tMin, tMax, val1, val2) {\n        return applyEase(easeOutBez, t, tMin, tMax, val1, val2);\n      }\n      function easeIn(t, tMin, tMax, val1, val2) {\n        return applyEase(easeInBez, t, tMin, tMax, val1, val2);\n      }\n      function ease(t, tMin, tMax, val1, val2) {\n        return applyEase(easeInOutBez, t, tMin, tMax, val1, val2);\n      }\n      function applyEase(fn, t, tMin, tMax, val1, val2) {\n        if (val1 === undefined) {\n          val1 = tMin;\n          val2 = tMax;\n        } else {\n          t = (t - tMin) / (tMax - tMin);\n        }\n        if (t > 1) {\n          t = 1;\n        } else if (t < 0) {\n          t = 0;\n        }\n        var mult = fn(t);\n        if ($bm_isInstanceOfArray(val1)) {\n          var iKey;\n          var lenKey = val1.length;\n          var arr = createTypedArray('float32', lenKey);\n          for (iKey = 0; iKey < lenKey; iKey += 1) {\n            arr[iKey] = (val2[iKey] - val1[iKey]) * mult + val1[iKey];\n          }\n          return arr;\n        }\n        return (val2 - val1) * mult + val1;\n      }\n      function nearestKey(time) {\n        var iKey;\n        var lenKey = data.k.length;\n        var index;\n        var keyTime;\n        if (!data.k.length || typeof data.k[0] === 'number') {\n          index = 0;\n          keyTime = 0;\n        } else {\n          index = -1;\n          time *= elem.comp.globalData.frameRate;\n          if (time < data.k[0].t) {\n            index = 1;\n            keyTime = data.k[0].t;\n          } else {\n            for (iKey = 0; iKey < lenKey - 1; iKey += 1) {\n              if (time === data.k[iKey].t) {\n                index = iKey + 1;\n                keyTime = data.k[iKey].t;\n                break;\n              } else if (time > data.k[iKey].t && time < data.k[iKey + 1].t) {\n                if (time - data.k[iKey].t > data.k[iKey + 1].t - time) {\n                  index = iKey + 2;\n                  keyTime = data.k[iKey + 1].t;\n                } else {\n                  index = iKey + 1;\n                  keyTime = data.k[iKey].t;\n                }\n                break;\n              }\n            }\n            if (index === -1) {\n              index = iKey + 1;\n              keyTime = data.k[iKey].t;\n            }\n          }\n        }\n        var obKey = {};\n        obKey.index = index;\n        obKey.time = keyTime / elem.comp.globalData.frameRate;\n        return obKey;\n      }\n      function key(ind) {\n        var obKey;\n        var iKey;\n        var lenKey;\n        if (!data.k.length || typeof data.k[0] === 'number') {\n          throw new Error('The property has no keyframe at index ' + ind);\n        }\n        ind -= 1;\n        obKey = {\n          time: data.k[ind].t / elem.comp.globalData.frameRate,\n          value: []\n        };\n        var arr = Object.prototype.hasOwnProperty.call(data.k[ind], 's') ? data.k[ind].s : data.k[ind - 1].e;\n        lenKey = arr.length;\n        for (iKey = 0; iKey < lenKey; iKey += 1) {\n          obKey[iKey] = arr[iKey];\n          obKey.value[iKey] = arr[iKey];\n        }\n        return obKey;\n      }\n      function framesToTime(fr, fps) {\n        if (!fps) {\n          fps = elem.comp.globalData.frameRate;\n        }\n        return fr / fps;\n      }\n      function timeToFrames(t, fps) {\n        if (!t && t !== 0) {\n          t = time;\n        }\n        if (!fps) {\n          fps = elem.comp.globalData.frameRate;\n        }\n        return t * fps;\n      }\n      function seedRandom(seed) {\n        BMMath.seedrandom(randSeed + seed);\n      }\n      function sourceRectAtTime() {\n        return elem.sourceRectAtTime();\n      }\n      function substring(init, end) {\n        if (typeof value === 'string') {\n          if (end === undefined) {\n            return value.substring(init);\n          }\n          return value.substring(init, end);\n        }\n        return '';\n      }\n      function substr(init, end) {\n        if (typeof value === 'string') {\n          if (end === undefined) {\n            return value.substr(init);\n          }\n          return value.substr(init, end);\n        }\n        return '';\n      }\n      function posterizeTime(framesPerSecond) {\n        time = framesPerSecond === 0 ? 0 : Math.floor(time * framesPerSecond) / framesPerSecond;\n        value = valueAtTime(time);\n      }\n      var time;\n      var velocity;\n      var value;\n      var text;\n      var textIndex;\n      var textTotal;\n      var selectorValue;\n      var index = elem.data.ind;\n      var hasParent = !!(elem.hierarchy && elem.hierarchy.length);\n      var parent;\n      var randSeed = Math.floor(Math.random() * 1000000);\n      var globalData = elem.globalData;\n      function executeExpression(_value) {\n        // globalData.pushExpression();\n        value = _value;\n        if (this.frameExpressionId === elem.globalData.frameId && this.propType !== 'textSelector') {\n          return value;\n        }\n        if (this.propType === 'textSelector') {\n          textIndex = this.textIndex;\n          textTotal = this.textTotal;\n          selectorValue = this.selectorValue;\n        }\n        if (!thisLayer) {\n          text = elem.layerInterface.text;\n          thisLayer = elem.layerInterface;\n          thisComp = elem.comp.compInterface;\n          toWorld = thisLayer.toWorld.bind(thisLayer);\n          fromWorld = thisLayer.fromWorld.bind(thisLayer);\n          fromComp = thisLayer.fromComp.bind(thisLayer);\n          toComp = thisLayer.toComp.bind(thisLayer);\n          mask = thisLayer.mask ? thisLayer.mask.bind(thisLayer) : null;\n          fromCompToSurface = fromComp;\n        }\n        if (!transform) {\n          transform = elem.layerInterface('ADBE Transform Group');\n          $bm_transform = transform;\n          if (transform) {\n            anchorPoint = transform.anchorPoint;\n            /* position = transform.position;\n                      rotation = transform.rotation;\n                      scale = transform.scale; */\n          }\n        }\n        if (elemType === 4 && !content) {\n          content = thisLayer('ADBE Root Vectors Group');\n        }\n        if (!effect) {\n          effect = thisLayer(4);\n        }\n        hasParent = !!(elem.hierarchy && elem.hierarchy.length);\n        if (hasParent && !parent) {\n          parent = elem.hierarchy[0].layerInterface;\n        }\n        time = this.comp.renderedFrame / this.comp.globalData.frameRate;\n        if (_needsRandom) {\n          seedRandom(randSeed + time);\n        }\n        if (needsVelocity) {\n          velocity = velocityAtTime(time);\n        }\n        expression_function();\n        this.frameExpressionId = elem.globalData.frameId;\n\n        // TODO: Check if it's possible to return on ShapeInterface the .v value\n        // Changed this to a ternary operation because Rollup failed compiling it correctly\n        scoped_bm_rt = scoped_bm_rt.propType === propTypes.SHAPE ? scoped_bm_rt.v : scoped_bm_rt;\n        return scoped_bm_rt;\n      }\n      // Bundlers will see these as dead code and unless we reference them\n      executeExpression.__preventDeadCodeRemoval = [$bm_transform, anchorPoint, time, velocity, inPoint, outPoint, width, height, name, loop_in, loop_out, smooth, toComp, fromCompToSurface, toWorld, fromWorld, mask, position, rotation, scale, thisComp, numKeys, active, wiggle, loopInDuration, loopOutDuration, comp, lookAt, easeOut, easeIn, ease, nearestKey, key, text, textIndex, textTotal, selectorValue, framesToTime, timeToFrames, sourceRectAtTime, substring, substr, posterizeTime, index, globalData];\n      return executeExpression;\n    }\n    ob.initiateExpression = initiateExpression;\n    ob.__preventDeadCodeRemoval = [window, document, XMLHttpRequest, fetch, frames, $bm_neg, add, $bm_sum, $bm_sub, $bm_mul, $bm_div, $bm_mod, clamp, radians_to_degrees, degreesToRadians, degrees_to_radians, normalize, rgbToHsl, hslToRgb, linear, random, createPath, _lottieGlobal];\n    ob.resetFrame = resetFrame;\n    return ob;\n  }();\n\n  var Expressions = function () {\n    var ob = {};\n    ob.initExpressions = initExpressions;\n    ob.resetFrame = ExpressionManager.resetFrame;\n    function initExpressions(animation) {\n      var stackCount = 0;\n      var registers = [];\n      function pushExpression() {\n        stackCount += 1;\n      }\n      function popExpression() {\n        stackCount -= 1;\n        if (stackCount === 0) {\n          releaseInstances();\n        }\n      }\n      function registerExpressionProperty(expression) {\n        if (registers.indexOf(expression) === -1) {\n          registers.push(expression);\n        }\n      }\n      function releaseInstances() {\n        var i;\n        var len = registers.length;\n        for (i = 0; i < len; i += 1) {\n          registers[i].release();\n        }\n        registers.length = 0;\n      }\n      animation.renderer.compInterface = CompExpressionInterface(animation.renderer);\n      animation.renderer.globalData.projectInterface.registerComposition(animation.renderer);\n      animation.renderer.globalData.pushExpression = pushExpression;\n      animation.renderer.globalData.popExpression = popExpression;\n      animation.renderer.globalData.registerExpressionProperty = registerExpressionProperty;\n    }\n    return ob;\n  }();\n\n  var MaskManagerInterface = function () {\n    function MaskInterface(mask, data) {\n      this._mask = mask;\n      this._data = data;\n    }\n    Object.defineProperty(MaskInterface.prototype, 'maskPath', {\n      get: function get() {\n        if (this._mask.prop.k) {\n          this._mask.prop.getValue();\n        }\n        return this._mask.prop;\n      }\n    });\n    Object.defineProperty(MaskInterface.prototype, 'maskOpacity', {\n      get: function get() {\n        if (this._mask.op.k) {\n          this._mask.op.getValue();\n        }\n        return this._mask.op.v * 100;\n      }\n    });\n    var MaskManager = function MaskManager(maskManager) {\n      var _masksInterfaces = createSizedArray(maskManager.viewData.length);\n      var i;\n      var len = maskManager.viewData.length;\n      for (i = 0; i < len; i += 1) {\n        _masksInterfaces[i] = new MaskInterface(maskManager.viewData[i], maskManager.masksProperties[i]);\n      }\n      var maskFunction = function maskFunction(name) {\n        i = 0;\n        while (i < len) {\n          if (maskManager.masksProperties[i].nm === name) {\n            return _masksInterfaces[i];\n          }\n          i += 1;\n        }\n        return null;\n      };\n      return maskFunction;\n    };\n    return MaskManager;\n  }();\n\n  var ExpressionPropertyInterface = function () {\n    var defaultUnidimensionalValue = {\n      pv: 0,\n      v: 0,\n      mult: 1\n    };\n    var defaultMultidimensionalValue = {\n      pv: [0, 0, 0],\n      v: [0, 0, 0],\n      mult: 1\n    };\n    function completeProperty(expressionValue, property, type) {\n      Object.defineProperty(expressionValue, 'velocity', {\n        get: function get() {\n          return property.getVelocityAtTime(property.comp.currentFrame);\n        }\n      });\n      expressionValue.numKeys = property.keyframes ? property.keyframes.length : 0;\n      expressionValue.key = function (pos) {\n        if (!expressionValue.numKeys) {\n          return 0;\n        }\n        var value = '';\n        if ('s' in property.keyframes[pos - 1]) {\n          value = property.keyframes[pos - 1].s;\n        } else if ('e' in property.keyframes[pos - 2]) {\n          value = property.keyframes[pos - 2].e;\n        } else {\n          value = property.keyframes[pos - 2].s;\n        }\n        var valueProp = type === 'unidimensional' ? new Number(value) : Object.assign({}, value); // eslint-disable-line no-new-wrappers\n        valueProp.time = property.keyframes[pos - 1].t / property.elem.comp.globalData.frameRate;\n        valueProp.value = type === 'unidimensional' ? value[0] : value;\n        return valueProp;\n      };\n      expressionValue.valueAtTime = property.getValueAtTime;\n      expressionValue.speedAtTime = property.getSpeedAtTime;\n      expressionValue.velocityAtTime = property.getVelocityAtTime;\n      expressionValue.propertyGroup = property.propertyGroup;\n    }\n    function UnidimensionalPropertyInterface(property) {\n      if (!property || !('pv' in property)) {\n        property = defaultUnidimensionalValue;\n      }\n      var mult = 1 / property.mult;\n      var val = property.pv * mult;\n      var expressionValue = new Number(val); // eslint-disable-line no-new-wrappers\n      expressionValue.value = val;\n      completeProperty(expressionValue, property, 'unidimensional');\n      return function () {\n        if (property.k) {\n          property.getValue();\n        }\n        val = property.v * mult;\n        if (expressionValue.value !== val) {\n          expressionValue = new Number(val); // eslint-disable-line no-new-wrappers\n          expressionValue.value = val;\n          expressionValue[0] = val;\n          completeProperty(expressionValue, property, 'unidimensional');\n        }\n        return expressionValue;\n      };\n    }\n    function MultidimensionalPropertyInterface(property) {\n      if (!property || !('pv' in property)) {\n        property = defaultMultidimensionalValue;\n      }\n      var mult = 1 / property.mult;\n      var len = property.data && property.data.l || property.pv.length;\n      var expressionValue = createTypedArray('float32', len);\n      var arrValue = createTypedArray('float32', len);\n      expressionValue.value = arrValue;\n      completeProperty(expressionValue, property, 'multidimensional');\n      return function () {\n        if (property.k) {\n          property.getValue();\n        }\n        for (var i = 0; i < len; i += 1) {\n          arrValue[i] = property.v[i] * mult;\n          expressionValue[i] = arrValue[i];\n        }\n        return expressionValue;\n      };\n    }\n\n    // TODO: try to avoid using this getter\n    function defaultGetter() {\n      return defaultUnidimensionalValue;\n    }\n    return function (property) {\n      if (!property) {\n        return defaultGetter;\n      }\n      if (property.propType === 'unidimensional') {\n        return UnidimensionalPropertyInterface(property);\n      }\n      return MultidimensionalPropertyInterface(property);\n    };\n  }();\n\n  var TransformExpressionInterface = function () {\n    return function (transform) {\n      function _thisFunction(name) {\n        switch (name) {\n          case 'scale':\n          case 'Scale':\n          case 'ADBE Scale':\n          case 6:\n            return _thisFunction.scale;\n          case 'rotation':\n          case 'Rotation':\n          case 'ADBE Rotation':\n          case 'ADBE Rotate Z':\n          case 10:\n            return _thisFunction.rotation;\n          case 'ADBE Rotate X':\n            return _thisFunction.xRotation;\n          case 'ADBE Rotate Y':\n            return _thisFunction.yRotation;\n          case 'position':\n          case 'Position':\n          case 'ADBE Position':\n          case 2:\n            return _thisFunction.position;\n          case 'ADBE Position_0':\n            return _thisFunction.xPosition;\n          case 'ADBE Position_1':\n            return _thisFunction.yPosition;\n          case 'ADBE Position_2':\n            return _thisFunction.zPosition;\n          case 'anchorPoint':\n          case 'AnchorPoint':\n          case 'Anchor Point':\n          case 'ADBE AnchorPoint':\n          case 1:\n            return _thisFunction.anchorPoint;\n          case 'opacity':\n          case 'Opacity':\n          case 11:\n            return _thisFunction.opacity;\n          default:\n            return null;\n        }\n      }\n      Object.defineProperty(_thisFunction, 'rotation', {\n        get: ExpressionPropertyInterface(transform.r || transform.rz)\n      });\n      Object.defineProperty(_thisFunction, 'zRotation', {\n        get: ExpressionPropertyInterface(transform.rz || transform.r)\n      });\n      Object.defineProperty(_thisFunction, 'xRotation', {\n        get: ExpressionPropertyInterface(transform.rx)\n      });\n      Object.defineProperty(_thisFunction, 'yRotation', {\n        get: ExpressionPropertyInterface(transform.ry)\n      });\n      Object.defineProperty(_thisFunction, 'scale', {\n        get: ExpressionPropertyInterface(transform.s)\n      });\n      var _px;\n      var _py;\n      var _pz;\n      var _transformFactory;\n      if (transform.p) {\n        _transformFactory = ExpressionPropertyInterface(transform.p);\n      } else {\n        _px = ExpressionPropertyInterface(transform.px);\n        _py = ExpressionPropertyInterface(transform.py);\n        if (transform.pz) {\n          _pz = ExpressionPropertyInterface(transform.pz);\n        }\n      }\n      Object.defineProperty(_thisFunction, 'position', {\n        get: function get() {\n          if (transform.p) {\n            return _transformFactory();\n          }\n          return [_px(), _py(), _pz ? _pz() : 0];\n        }\n      });\n      Object.defineProperty(_thisFunction, 'xPosition', {\n        get: ExpressionPropertyInterface(transform.px)\n      });\n      Object.defineProperty(_thisFunction, 'yPosition', {\n        get: ExpressionPropertyInterface(transform.py)\n      });\n      Object.defineProperty(_thisFunction, 'zPosition', {\n        get: ExpressionPropertyInterface(transform.pz)\n      });\n      Object.defineProperty(_thisFunction, 'anchorPoint', {\n        get: ExpressionPropertyInterface(transform.a)\n      });\n      Object.defineProperty(_thisFunction, 'opacity', {\n        get: ExpressionPropertyInterface(transform.o)\n      });\n      Object.defineProperty(_thisFunction, 'skew', {\n        get: ExpressionPropertyInterface(transform.sk)\n      });\n      Object.defineProperty(_thisFunction, 'skewAxis', {\n        get: ExpressionPropertyInterface(transform.sa)\n      });\n      Object.defineProperty(_thisFunction, 'orientation', {\n        get: ExpressionPropertyInterface(transform.or)\n      });\n      return _thisFunction;\n    };\n  }();\n\n  var LayerExpressionInterface = function () {\n    function getMatrix(time) {\n      var toWorldMat = new Matrix();\n      if (time !== undefined) {\n        var propMatrix = this._elem.finalTransform.mProp.getValueAtTime(time);\n        propMatrix.clone(toWorldMat);\n      } else {\n        var transformMat = this._elem.finalTransform.mProp;\n        transformMat.applyToMatrix(toWorldMat);\n      }\n      return toWorldMat;\n    }\n    function toWorldVec(arr, time) {\n      var toWorldMat = this.getMatrix(time);\n      toWorldMat.props[12] = 0;\n      toWorldMat.props[13] = 0;\n      toWorldMat.props[14] = 0;\n      return this.applyPoint(toWorldMat, arr);\n    }\n    function toWorld(arr, time) {\n      var toWorldMat = this.getMatrix(time);\n      return this.applyPoint(toWorldMat, arr);\n    }\n    function fromWorldVec(arr, time) {\n      var toWorldMat = this.getMatrix(time);\n      toWorldMat.props[12] = 0;\n      toWorldMat.props[13] = 0;\n      toWorldMat.props[14] = 0;\n      return this.invertPoint(toWorldMat, arr);\n    }\n    function fromWorld(arr, time) {\n      var toWorldMat = this.getMatrix(time);\n      return this.invertPoint(toWorldMat, arr);\n    }\n    function applyPoint(matrix, arr) {\n      if (this._elem.hierarchy && this._elem.hierarchy.length) {\n        var i;\n        var len = this._elem.hierarchy.length;\n        for (i = 0; i < len; i += 1) {\n          this._elem.hierarchy[i].finalTransform.mProp.applyToMatrix(matrix);\n        }\n      }\n      return matrix.applyToPointArray(arr[0], arr[1], arr[2] || 0);\n    }\n    function invertPoint(matrix, arr) {\n      if (this._elem.hierarchy && this._elem.hierarchy.length) {\n        var i;\n        var len = this._elem.hierarchy.length;\n        for (i = 0; i < len; i += 1) {\n          this._elem.hierarchy[i].finalTransform.mProp.applyToMatrix(matrix);\n        }\n      }\n      return matrix.inversePoint(arr);\n    }\n    function fromComp(arr) {\n      var toWorldMat = new Matrix();\n      toWorldMat.reset();\n      this._elem.finalTransform.mProp.applyToMatrix(toWorldMat);\n      if (this._elem.hierarchy && this._elem.hierarchy.length) {\n        var i;\n        var len = this._elem.hierarchy.length;\n        for (i = 0; i < len; i += 1) {\n          this._elem.hierarchy[i].finalTransform.mProp.applyToMatrix(toWorldMat);\n        }\n        return toWorldMat.inversePoint(arr);\n      }\n      return toWorldMat.inversePoint(arr);\n    }\n    function sampleImage() {\n      return [1, 1, 1, 1];\n    }\n    return function (elem) {\n      var transformInterface;\n      function _registerMaskInterface(maskManager) {\n        _thisLayerFunction.mask = new MaskManagerInterface(maskManager, elem);\n      }\n      function _registerEffectsInterface(effects) {\n        _thisLayerFunction.effect = effects;\n      }\n      function _thisLayerFunction(name) {\n        switch (name) {\n          case 'ADBE Root Vectors Group':\n          case 'Contents':\n          case 2:\n            return _thisLayerFunction.shapeInterface;\n          case 1:\n          case 6:\n          case 'Transform':\n          case 'transform':\n          case 'ADBE Transform Group':\n            return transformInterface;\n          case 4:\n          case 'ADBE Effect Parade':\n          case 'effects':\n          case 'Effects':\n            return _thisLayerFunction.effect;\n          case 'ADBE Text Properties':\n            return _thisLayerFunction.textInterface;\n          default:\n            return null;\n        }\n      }\n      _thisLayerFunction.getMatrix = getMatrix;\n      _thisLayerFunction.invertPoint = invertPoint;\n      _thisLayerFunction.applyPoint = applyPoint;\n      _thisLayerFunction.toWorld = toWorld;\n      _thisLayerFunction.toWorldVec = toWorldVec;\n      _thisLayerFunction.fromWorld = fromWorld;\n      _thisLayerFunction.fromWorldVec = fromWorldVec;\n      _thisLayerFunction.toComp = toWorld;\n      _thisLayerFunction.fromComp = fromComp;\n      _thisLayerFunction.sampleImage = sampleImage;\n      _thisLayerFunction.sourceRectAtTime = elem.sourceRectAtTime.bind(elem);\n      _thisLayerFunction._elem = elem;\n      transformInterface = TransformExpressionInterface(elem.finalTransform.mProp);\n      var anchorPointDescriptor = getDescriptor(transformInterface, 'anchorPoint');\n      Object.defineProperties(_thisLayerFunction, {\n        hasParent: {\n          get: function get() {\n            return elem.hierarchy.length;\n          }\n        },\n        parent: {\n          get: function get() {\n            return elem.hierarchy[0].layerInterface;\n          }\n        },\n        rotation: getDescriptor(transformInterface, 'rotation'),\n        scale: getDescriptor(transformInterface, 'scale'),\n        position: getDescriptor(transformInterface, 'position'),\n        opacity: getDescriptor(transformInterface, 'opacity'),\n        anchorPoint: anchorPointDescriptor,\n        anchor_point: anchorPointDescriptor,\n        transform: {\n          get: function get() {\n            return transformInterface;\n          }\n        },\n        active: {\n          get: function get() {\n            return elem.isInRange;\n          }\n        }\n      });\n      _thisLayerFunction.startTime = elem.data.st;\n      _thisLayerFunction.index = elem.data.ind;\n      _thisLayerFunction.source = elem.data.refId;\n      _thisLayerFunction.height = elem.data.ty === 0 ? elem.data.h : 100;\n      _thisLayerFunction.width = elem.data.ty === 0 ? elem.data.w : 100;\n      _thisLayerFunction.inPoint = elem.data.ip / elem.comp.globalData.frameRate;\n      _thisLayerFunction.outPoint = elem.data.op / elem.comp.globalData.frameRate;\n      _thisLayerFunction._name = elem.data.nm;\n      _thisLayerFunction.registerMaskInterface = _registerMaskInterface;\n      _thisLayerFunction.registerEffectsInterface = _registerEffectsInterface;\n      return _thisLayerFunction;\n    };\n  }();\n\n  var propertyGroupFactory = function () {\n    return function (interfaceFunction, parentPropertyGroup) {\n      return function (val) {\n        val = val === undefined ? 1 : val;\n        if (val <= 0) {\n          return interfaceFunction;\n        }\n        return parentPropertyGroup(val - 1);\n      };\n    };\n  }();\n\n  var PropertyInterface = function () {\n    return function (propertyName, propertyGroup) {\n      var interfaceFunction = {\n        _name: propertyName\n      };\n      function _propertyGroup(val) {\n        val = val === undefined ? 1 : val;\n        if (val <= 0) {\n          return interfaceFunction;\n        }\n        return propertyGroup(val - 1);\n      }\n      return _propertyGroup;\n    };\n  }();\n\n  var EffectsExpressionInterface = function () {\n    var ob = {\n      createEffectsInterface: createEffectsInterface\n    };\n    function createEffectsInterface(elem, propertyGroup) {\n      if (elem.effectsManager) {\n        var effectElements = [];\n        var effectsData = elem.data.ef;\n        var i;\n        var len = elem.effectsManager.effectElements.length;\n        for (i = 0; i < len; i += 1) {\n          effectElements.push(createGroupInterface(effectsData[i], elem.effectsManager.effectElements[i], propertyGroup, elem));\n        }\n        var effects = elem.data.ef || [];\n        var groupInterface = function groupInterface(name) {\n          i = 0;\n          len = effects.length;\n          while (i < len) {\n            if (name === effects[i].nm || name === effects[i].mn || name === effects[i].ix) {\n              return effectElements[i];\n            }\n            i += 1;\n          }\n          return null;\n        };\n        Object.defineProperty(groupInterface, 'numProperties', {\n          get: function get() {\n            return effects.length;\n          }\n        });\n        return groupInterface;\n      }\n      return null;\n    }\n    function createGroupInterface(data, elements, propertyGroup, elem) {\n      function groupInterface(name) {\n        var effects = data.ef;\n        var i = 0;\n        var len = effects.length;\n        while (i < len) {\n          if (name === effects[i].nm || name === effects[i].mn || name === effects[i].ix) {\n            if (effects[i].ty === 5) {\n              return effectElements[i];\n            }\n            return effectElements[i]();\n          }\n          i += 1;\n        }\n        throw new Error();\n      }\n      var _propertyGroup = propertyGroupFactory(groupInterface, propertyGroup);\n      var effectElements = [];\n      var i;\n      var len = data.ef.length;\n      for (i = 0; i < len; i += 1) {\n        if (data.ef[i].ty === 5) {\n          effectElements.push(createGroupInterface(data.ef[i], elements.effectElements[i], elements.effectElements[i].propertyGroup, elem));\n        } else {\n          effectElements.push(createValueInterface(elements.effectElements[i], data.ef[i].ty, elem, _propertyGroup));\n        }\n      }\n      if (data.mn === 'ADBE Color Control') {\n        Object.defineProperty(groupInterface, 'color', {\n          get: function get() {\n            return effectElements[0]();\n          }\n        });\n      }\n      Object.defineProperties(groupInterface, {\n        numProperties: {\n          get: function get() {\n            return data.np;\n          }\n        },\n        _name: {\n          value: data.nm\n        },\n        propertyGroup: {\n          value: _propertyGroup\n        }\n      });\n      groupInterface.enabled = data.en !== 0;\n      groupInterface.active = groupInterface.enabled;\n      return groupInterface;\n    }\n    function createValueInterface(element, type, elem, propertyGroup) {\n      var expressionProperty = ExpressionPropertyInterface(element.p);\n      function interfaceFunction() {\n        if (type === 10) {\n          return elem.comp.compInterface(element.p.v);\n        }\n        return expressionProperty();\n      }\n      if (element.p.setGroupProperty) {\n        element.p.setGroupProperty(PropertyInterface('', propertyGroup));\n      }\n      return interfaceFunction;\n    }\n    return ob;\n  }();\n\n  var ShapePathInterface = function () {\n    return function pathInterfaceFactory(shape, view, propertyGroup) {\n      var prop = view.sh;\n      function interfaceFunction(val) {\n        if (val === 'Shape' || val === 'shape' || val === 'Path' || val === 'path' || val === 'ADBE Vector Shape' || val === 2) {\n          return interfaceFunction.path;\n        }\n        return null;\n      }\n      var _propertyGroup = propertyGroupFactory(interfaceFunction, propertyGroup);\n      prop.setGroupProperty(PropertyInterface('Path', _propertyGroup));\n      Object.defineProperties(interfaceFunction, {\n        path: {\n          get: function get() {\n            if (prop.k) {\n              prop.getValue();\n            }\n            return prop;\n          }\n        },\n        shape: {\n          get: function get() {\n            if (prop.k) {\n              prop.getValue();\n            }\n            return prop;\n          }\n        },\n        _name: {\n          value: shape.nm\n        },\n        ix: {\n          value: shape.ix\n        },\n        propertyIndex: {\n          value: shape.ix\n        },\n        mn: {\n          value: shape.mn\n        },\n        propertyGroup: {\n          value: propertyGroup\n        }\n      });\n      return interfaceFunction;\n    };\n  }();\n\n  var ShapeExpressionInterface = function () {\n    function iterateElements(shapes, view, propertyGroup) {\n      var arr = [];\n      var i;\n      var len = shapes ? shapes.length : 0;\n      for (i = 0; i < len; i += 1) {\n        if (shapes[i].ty === 'gr') {\n          arr.push(groupInterfaceFactory(shapes[i], view[i], propertyGroup));\n        } else if (shapes[i].ty === 'fl') {\n          arr.push(fillInterfaceFactory(shapes[i], view[i], propertyGroup));\n        } else if (shapes[i].ty === 'st') {\n          arr.push(strokeInterfaceFactory(shapes[i], view[i], propertyGroup));\n        } else if (shapes[i].ty === 'tm') {\n          arr.push(trimInterfaceFactory(shapes[i], view[i], propertyGroup));\n        } else if (shapes[i].ty === 'tr') {\n          // arr.push(transformInterfaceFactory(shapes[i],view[i],propertyGroup));\n        } else if (shapes[i].ty === 'el') {\n          arr.push(ellipseInterfaceFactory(shapes[i], view[i], propertyGroup));\n        } else if (shapes[i].ty === 'sr') {\n          arr.push(starInterfaceFactory(shapes[i], view[i], propertyGroup));\n        } else if (shapes[i].ty === 'sh') {\n          arr.push(ShapePathInterface(shapes[i], view[i], propertyGroup));\n        } else if (shapes[i].ty === 'rc') {\n          arr.push(rectInterfaceFactory(shapes[i], view[i], propertyGroup));\n        } else if (shapes[i].ty === 'rd') {\n          arr.push(roundedInterfaceFactory(shapes[i], view[i], propertyGroup));\n        } else if (shapes[i].ty === 'rp') {\n          arr.push(repeaterInterfaceFactory(shapes[i], view[i], propertyGroup));\n        } else if (shapes[i].ty === 'gf') {\n          arr.push(gradientFillInterfaceFactory(shapes[i], view[i], propertyGroup));\n        } else {\n          arr.push(defaultInterfaceFactory(shapes[i], view[i], propertyGroup));\n        }\n      }\n      return arr;\n    }\n    function contentsInterfaceFactory(shape, view, propertyGroup) {\n      var interfaces;\n      var interfaceFunction = function _interfaceFunction(value) {\n        var i = 0;\n        var len = interfaces.length;\n        while (i < len) {\n          if (interfaces[i]._name === value || interfaces[i].mn === value || interfaces[i].propertyIndex === value || interfaces[i].ix === value || interfaces[i].ind === value) {\n            return interfaces[i];\n          }\n          i += 1;\n        }\n        if (typeof value === 'number') {\n          return interfaces[value - 1];\n        }\n        return null;\n      };\n      interfaceFunction.propertyGroup = propertyGroupFactory(interfaceFunction, propertyGroup);\n      interfaces = iterateElements(shape.it, view.it, interfaceFunction.propertyGroup);\n      interfaceFunction.numProperties = interfaces.length;\n      var transformInterface = transformInterfaceFactory(shape.it[shape.it.length - 1], view.it[view.it.length - 1], interfaceFunction.propertyGroup);\n      interfaceFunction.transform = transformInterface;\n      interfaceFunction.propertyIndex = shape.cix;\n      interfaceFunction._name = shape.nm;\n      return interfaceFunction;\n    }\n    function groupInterfaceFactory(shape, view, propertyGroup) {\n      var interfaceFunction = function _interfaceFunction(value) {\n        switch (value) {\n          case 'ADBE Vectors Group':\n          case 'Contents':\n          case 2:\n            return interfaceFunction.content;\n          // Not necessary for now. Keeping them here in case a new case appears\n          // case 'ADBE Vector Transform Group':\n          // case 3:\n          default:\n            return interfaceFunction.transform;\n        }\n      };\n      interfaceFunction.propertyGroup = propertyGroupFactory(interfaceFunction, propertyGroup);\n      var content = contentsInterfaceFactory(shape, view, interfaceFunction.propertyGroup);\n      var transformInterface = transformInterfaceFactory(shape.it[shape.it.length - 1], view.it[view.it.length - 1], interfaceFunction.propertyGroup);\n      interfaceFunction.content = content;\n      interfaceFunction.transform = transformInterface;\n      Object.defineProperty(interfaceFunction, '_name', {\n        get: function get() {\n          return shape.nm;\n        }\n      });\n      // interfaceFunction.content = interfaceFunction;\n      interfaceFunction.numProperties = shape.np;\n      interfaceFunction.propertyIndex = shape.ix;\n      interfaceFunction.nm = shape.nm;\n      interfaceFunction.mn = shape.mn;\n      return interfaceFunction;\n    }\n    function fillInterfaceFactory(shape, view, propertyGroup) {\n      function interfaceFunction(val) {\n        if (val === 'Color' || val === 'color') {\n          return interfaceFunction.color;\n        }\n        if (val === 'Opacity' || val === 'opacity') {\n          return interfaceFunction.opacity;\n        }\n        return null;\n      }\n      Object.defineProperties(interfaceFunction, {\n        color: {\n          get: ExpressionPropertyInterface(view.c)\n        },\n        opacity: {\n          get: ExpressionPropertyInterface(view.o)\n        },\n        _name: {\n          value: shape.nm\n        },\n        mn: {\n          value: shape.mn\n        }\n      });\n      view.c.setGroupProperty(PropertyInterface('Color', propertyGroup));\n      view.o.setGroupProperty(PropertyInterface('Opacity', propertyGroup));\n      return interfaceFunction;\n    }\n    function gradientFillInterfaceFactory(shape, view, propertyGroup) {\n      function interfaceFunction(val) {\n        if (val === 'Start Point' || val === 'start point') {\n          return interfaceFunction.startPoint;\n        }\n        if (val === 'End Point' || val === 'end point') {\n          return interfaceFunction.endPoint;\n        }\n        if (val === 'Opacity' || val === 'opacity') {\n          return interfaceFunction.opacity;\n        }\n        return null;\n      }\n      Object.defineProperties(interfaceFunction, {\n        startPoint: {\n          get: ExpressionPropertyInterface(view.s)\n        },\n        endPoint: {\n          get: ExpressionPropertyInterface(view.e)\n        },\n        opacity: {\n          get: ExpressionPropertyInterface(view.o)\n        },\n        type: {\n          get: function get() {\n            return 'a';\n          }\n        },\n        _name: {\n          value: shape.nm\n        },\n        mn: {\n          value: shape.mn\n        }\n      });\n      view.s.setGroupProperty(PropertyInterface('Start Point', propertyGroup));\n      view.e.setGroupProperty(PropertyInterface('End Point', propertyGroup));\n      view.o.setGroupProperty(PropertyInterface('Opacity', propertyGroup));\n      return interfaceFunction;\n    }\n    function defaultInterfaceFactory() {\n      function interfaceFunction() {\n        return null;\n      }\n      return interfaceFunction;\n    }\n    function strokeInterfaceFactory(shape, view, propertyGroup) {\n      var _propertyGroup = propertyGroupFactory(interfaceFunction, propertyGroup);\n      var _dashPropertyGroup = propertyGroupFactory(dashOb, _propertyGroup);\n      function addPropertyToDashOb(i) {\n        Object.defineProperty(dashOb, shape.d[i].nm, {\n          get: ExpressionPropertyInterface(view.d.dataProps[i].p)\n        });\n      }\n      var i;\n      var len = shape.d ? shape.d.length : 0;\n      var dashOb = {};\n      for (i = 0; i < len; i += 1) {\n        addPropertyToDashOb(i);\n        view.d.dataProps[i].p.setGroupProperty(_dashPropertyGroup);\n      }\n      function interfaceFunction(val) {\n        if (val === 'Color' || val === 'color') {\n          return interfaceFunction.color;\n        }\n        if (val === 'Opacity' || val === 'opacity') {\n          return interfaceFunction.opacity;\n        }\n        if (val === 'Stroke Width' || val === 'stroke width') {\n          return interfaceFunction.strokeWidth;\n        }\n        return null;\n      }\n      Object.defineProperties(interfaceFunction, {\n        color: {\n          get: ExpressionPropertyInterface(view.c)\n        },\n        opacity: {\n          get: ExpressionPropertyInterface(view.o)\n        },\n        strokeWidth: {\n          get: ExpressionPropertyInterface(view.w)\n        },\n        dash: {\n          get: function get() {\n            return dashOb;\n          }\n        },\n        _name: {\n          value: shape.nm\n        },\n        mn: {\n          value: shape.mn\n        }\n      });\n      view.c.setGroupProperty(PropertyInterface('Color', _propertyGroup));\n      view.o.setGroupProperty(PropertyInterface('Opacity', _propertyGroup));\n      view.w.setGroupProperty(PropertyInterface('Stroke Width', _propertyGroup));\n      return interfaceFunction;\n    }\n    function trimInterfaceFactory(shape, view, propertyGroup) {\n      function interfaceFunction(val) {\n        if (val === shape.e.ix || val === 'End' || val === 'end') {\n          return interfaceFunction.end;\n        }\n        if (val === shape.s.ix) {\n          return interfaceFunction.start;\n        }\n        if (val === shape.o.ix) {\n          return interfaceFunction.offset;\n        }\n        return null;\n      }\n      var _propertyGroup = propertyGroupFactory(interfaceFunction, propertyGroup);\n      interfaceFunction.propertyIndex = shape.ix;\n      view.s.setGroupProperty(PropertyInterface('Start', _propertyGroup));\n      view.e.setGroupProperty(PropertyInterface('End', _propertyGroup));\n      view.o.setGroupProperty(PropertyInterface('Offset', _propertyGroup));\n      interfaceFunction.propertyIndex = shape.ix;\n      interfaceFunction.propertyGroup = propertyGroup;\n      Object.defineProperties(interfaceFunction, {\n        start: {\n          get: ExpressionPropertyInterface(view.s)\n        },\n        end: {\n          get: ExpressionPropertyInterface(view.e)\n        },\n        offset: {\n          get: ExpressionPropertyInterface(view.o)\n        },\n        _name: {\n          value: shape.nm\n        }\n      });\n      interfaceFunction.mn = shape.mn;\n      return interfaceFunction;\n    }\n    function transformInterfaceFactory(shape, view, propertyGroup) {\n      function interfaceFunction(value) {\n        if (shape.a.ix === value || value === 'Anchor Point') {\n          return interfaceFunction.anchorPoint;\n        }\n        if (shape.o.ix === value || value === 'Opacity') {\n          return interfaceFunction.opacity;\n        }\n        if (shape.p.ix === value || value === 'Position') {\n          return interfaceFunction.position;\n        }\n        if (shape.r.ix === value || value === 'Rotation' || value === 'ADBE Vector Rotation') {\n          return interfaceFunction.rotation;\n        }\n        if (shape.s.ix === value || value === 'Scale') {\n          return interfaceFunction.scale;\n        }\n        if (shape.sk && shape.sk.ix === value || value === 'Skew') {\n          return interfaceFunction.skew;\n        }\n        if (shape.sa && shape.sa.ix === value || value === 'Skew Axis') {\n          return interfaceFunction.skewAxis;\n        }\n        return null;\n      }\n      var _propertyGroup = propertyGroupFactory(interfaceFunction, propertyGroup);\n      view.transform.mProps.o.setGroupProperty(PropertyInterface('Opacity', _propertyGroup));\n      view.transform.mProps.p.setGroupProperty(PropertyInterface('Position', _propertyGroup));\n      view.transform.mProps.a.setGroupProperty(PropertyInterface('Anchor Point', _propertyGroup));\n      view.transform.mProps.s.setGroupProperty(PropertyInterface('Scale', _propertyGroup));\n      view.transform.mProps.r.setGroupProperty(PropertyInterface('Rotation', _propertyGroup));\n      if (view.transform.mProps.sk) {\n        view.transform.mProps.sk.setGroupProperty(PropertyInterface('Skew', _propertyGroup));\n        view.transform.mProps.sa.setGroupProperty(PropertyInterface('Skew Angle', _propertyGroup));\n      }\n      view.transform.op.setGroupProperty(PropertyInterface('Opacity', _propertyGroup));\n      Object.defineProperties(interfaceFunction, {\n        opacity: {\n          get: ExpressionPropertyInterface(view.transform.mProps.o)\n        },\n        position: {\n          get: ExpressionPropertyInterface(view.transform.mProps.p)\n        },\n        anchorPoint: {\n          get: ExpressionPropertyInterface(view.transform.mProps.a)\n        },\n        scale: {\n          get: ExpressionPropertyInterface(view.transform.mProps.s)\n        },\n        rotation: {\n          get: ExpressionPropertyInterface(view.transform.mProps.r)\n        },\n        skew: {\n          get: ExpressionPropertyInterface(view.transform.mProps.sk)\n        },\n        skewAxis: {\n          get: ExpressionPropertyInterface(view.transform.mProps.sa)\n        },\n        _name: {\n          value: shape.nm\n        }\n      });\n      interfaceFunction.ty = 'tr';\n      interfaceFunction.mn = shape.mn;\n      interfaceFunction.propertyGroup = propertyGroup;\n      return interfaceFunction;\n    }\n    function ellipseInterfaceFactory(shape, view, propertyGroup) {\n      function interfaceFunction(value) {\n        if (shape.p.ix === value) {\n          return interfaceFunction.position;\n        }\n        if (shape.s.ix === value) {\n          return interfaceFunction.size;\n        }\n        return null;\n      }\n      var _propertyGroup = propertyGroupFactory(interfaceFunction, propertyGroup);\n      interfaceFunction.propertyIndex = shape.ix;\n      var prop = view.sh.ty === 'tm' ? view.sh.prop : view.sh;\n      prop.s.setGroupProperty(PropertyInterface('Size', _propertyGroup));\n      prop.p.setGroupProperty(PropertyInterface('Position', _propertyGroup));\n      Object.defineProperties(interfaceFunction, {\n        size: {\n          get: ExpressionPropertyInterface(prop.s)\n        },\n        position: {\n          get: ExpressionPropertyInterface(prop.p)\n        },\n        _name: {\n          value: shape.nm\n        }\n      });\n      interfaceFunction.mn = shape.mn;\n      return interfaceFunction;\n    }\n    function starInterfaceFactory(shape, view, propertyGroup) {\n      function interfaceFunction(value) {\n        if (shape.p.ix === value) {\n          return interfaceFunction.position;\n        }\n        if (shape.r.ix === value) {\n          return interfaceFunction.rotation;\n        }\n        if (shape.pt.ix === value) {\n          return interfaceFunction.points;\n        }\n        if (shape.or.ix === value || value === 'ADBE Vector Star Outer Radius') {\n          return interfaceFunction.outerRadius;\n        }\n        if (shape.os.ix === value) {\n          return interfaceFunction.outerRoundness;\n        }\n        if (shape.ir && (shape.ir.ix === value || value === 'ADBE Vector Star Inner Radius')) {\n          return interfaceFunction.innerRadius;\n        }\n        if (shape.is && shape.is.ix === value) {\n          return interfaceFunction.innerRoundness;\n        }\n        return null;\n      }\n      var _propertyGroup = propertyGroupFactory(interfaceFunction, propertyGroup);\n      var prop = view.sh.ty === 'tm' ? view.sh.prop : view.sh;\n      interfaceFunction.propertyIndex = shape.ix;\n      prop.or.setGroupProperty(PropertyInterface('Outer Radius', _propertyGroup));\n      prop.os.setGroupProperty(PropertyInterface('Outer Roundness', _propertyGroup));\n      prop.pt.setGroupProperty(PropertyInterface('Points', _propertyGroup));\n      prop.p.setGroupProperty(PropertyInterface('Position', _propertyGroup));\n      prop.r.setGroupProperty(PropertyInterface('Rotation', _propertyGroup));\n      if (shape.ir) {\n        prop.ir.setGroupProperty(PropertyInterface('Inner Radius', _propertyGroup));\n        prop.is.setGroupProperty(PropertyInterface('Inner Roundness', _propertyGroup));\n      }\n      Object.defineProperties(interfaceFunction, {\n        position: {\n          get: ExpressionPropertyInterface(prop.p)\n        },\n        rotation: {\n          get: ExpressionPropertyInterface(prop.r)\n        },\n        points: {\n          get: ExpressionPropertyInterface(prop.pt)\n        },\n        outerRadius: {\n          get: ExpressionPropertyInterface(prop.or)\n        },\n        outerRoundness: {\n          get: ExpressionPropertyInterface(prop.os)\n        },\n        innerRadius: {\n          get: ExpressionPropertyInterface(prop.ir)\n        },\n        innerRoundness: {\n          get: ExpressionPropertyInterface(prop.is)\n        },\n        _name: {\n          value: shape.nm\n        }\n      });\n      interfaceFunction.mn = shape.mn;\n      return interfaceFunction;\n    }\n    function rectInterfaceFactory(shape, view, propertyGroup) {\n      function interfaceFunction(value) {\n        if (shape.p.ix === value) {\n          return interfaceFunction.position;\n        }\n        if (shape.r.ix === value) {\n          return interfaceFunction.roundness;\n        }\n        if (shape.s.ix === value || value === 'Size' || value === 'ADBE Vector Rect Size') {\n          return interfaceFunction.size;\n        }\n        return null;\n      }\n      var _propertyGroup = propertyGroupFactory(interfaceFunction, propertyGroup);\n      var prop = view.sh.ty === 'tm' ? view.sh.prop : view.sh;\n      interfaceFunction.propertyIndex = shape.ix;\n      prop.p.setGroupProperty(PropertyInterface('Position', _propertyGroup));\n      prop.s.setGroupProperty(PropertyInterface('Size', _propertyGroup));\n      prop.r.setGroupProperty(PropertyInterface('Rotation', _propertyGroup));\n      Object.defineProperties(interfaceFunction, {\n        position: {\n          get: ExpressionPropertyInterface(prop.p)\n        },\n        roundness: {\n          get: ExpressionPropertyInterface(prop.r)\n        },\n        size: {\n          get: ExpressionPropertyInterface(prop.s)\n        },\n        _name: {\n          value: shape.nm\n        }\n      });\n      interfaceFunction.mn = shape.mn;\n      return interfaceFunction;\n    }\n    function roundedInterfaceFactory(shape, view, propertyGroup) {\n      function interfaceFunction(value) {\n        if (shape.r.ix === value || value === 'Round Corners 1') {\n          return interfaceFunction.radius;\n        }\n        return null;\n      }\n      var _propertyGroup = propertyGroupFactory(interfaceFunction, propertyGroup);\n      var prop = view;\n      interfaceFunction.propertyIndex = shape.ix;\n      prop.rd.setGroupProperty(PropertyInterface('Radius', _propertyGroup));\n      Object.defineProperties(interfaceFunction, {\n        radius: {\n          get: ExpressionPropertyInterface(prop.rd)\n        },\n        _name: {\n          value: shape.nm\n        }\n      });\n      interfaceFunction.mn = shape.mn;\n      return interfaceFunction;\n    }\n    function repeaterInterfaceFactory(shape, view, propertyGroup) {\n      function interfaceFunction(value) {\n        if (shape.c.ix === value || value === 'Copies') {\n          return interfaceFunction.copies;\n        }\n        if (shape.o.ix === value || value === 'Offset') {\n          return interfaceFunction.offset;\n        }\n        return null;\n      }\n      var _propertyGroup = propertyGroupFactory(interfaceFunction, propertyGroup);\n      var prop = view;\n      interfaceFunction.propertyIndex = shape.ix;\n      prop.c.setGroupProperty(PropertyInterface('Copies', _propertyGroup));\n      prop.o.setGroupProperty(PropertyInterface('Offset', _propertyGroup));\n      Object.defineProperties(interfaceFunction, {\n        copies: {\n          get: ExpressionPropertyInterface(prop.c)\n        },\n        offset: {\n          get: ExpressionPropertyInterface(prop.o)\n        },\n        _name: {\n          value: shape.nm\n        }\n      });\n      interfaceFunction.mn = shape.mn;\n      return interfaceFunction;\n    }\n    return function (shapes, view, propertyGroup) {\n      var interfaces;\n      function _interfaceFunction(value) {\n        if (typeof value === 'number') {\n          value = value === undefined ? 1 : value;\n          if (value === 0) {\n            return propertyGroup;\n          }\n          return interfaces[value - 1];\n        }\n        var i = 0;\n        var len = interfaces.length;\n        while (i < len) {\n          if (interfaces[i]._name === value) {\n            return interfaces[i];\n          }\n          i += 1;\n        }\n        return null;\n      }\n      function parentGroupWrapper() {\n        return propertyGroup;\n      }\n      _interfaceFunction.propertyGroup = propertyGroupFactory(_interfaceFunction, parentGroupWrapper);\n      interfaces = iterateElements(shapes, view, _interfaceFunction.propertyGroup);\n      _interfaceFunction.numProperties = interfaces.length;\n      _interfaceFunction._name = 'Contents';\n      return _interfaceFunction;\n    };\n  }();\n\n  var TextExpressionInterface = function () {\n    return function (elem) {\n      var _sourceText;\n      function _thisLayerFunction(name) {\n        switch (name) {\n          case 'ADBE Text Document':\n            return _thisLayerFunction.sourceText;\n          default:\n            return null;\n        }\n      }\n      Object.defineProperty(_thisLayerFunction, 'sourceText', {\n        get: function get() {\n          elem.textProperty.getValue();\n          var stringValue = elem.textProperty.currentData.t;\n          if (!_sourceText || stringValue !== _sourceText.value) {\n            _sourceText = new String(stringValue); // eslint-disable-line no-new-wrappers\n            // If stringValue is an empty string, eval returns undefined, so it has to be returned as a String primitive\n            _sourceText.value = stringValue || new String(stringValue); // eslint-disable-line no-new-wrappers\n            Object.defineProperty(_sourceText, 'style', {\n              get: function get() {\n                return {\n                  fillColor: elem.textProperty.currentData.fc\n                };\n              }\n            });\n          }\n          return _sourceText;\n        }\n      });\n      return _thisLayerFunction;\n    };\n  }();\n\n  function _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\n  var FootageInterface = function () {\n    var outlineInterfaceFactory = function outlineInterfaceFactory(elem) {\n      var currentPropertyName = '';\n      var currentProperty = elem.getFootageData();\n      function init() {\n        currentPropertyName = '';\n        currentProperty = elem.getFootageData();\n        return searchProperty;\n      }\n      function searchProperty(value) {\n        if (currentProperty[value]) {\n          currentPropertyName = value;\n          currentProperty = currentProperty[value];\n          if (_typeof(currentProperty) === 'object') {\n            return searchProperty;\n          }\n          return currentProperty;\n        }\n        var propertyNameIndex = value.indexOf(currentPropertyName);\n        if (propertyNameIndex !== -1) {\n          var index = parseInt(value.substr(propertyNameIndex + currentPropertyName.length), 10);\n          currentProperty = currentProperty[index];\n          if (_typeof(currentProperty) === 'object') {\n            return searchProperty;\n          }\n          return currentProperty;\n        }\n        return '';\n      }\n      return init;\n    };\n    var dataInterfaceFactory = function dataInterfaceFactory(elem) {\n      function interfaceFunction(value) {\n        if (value === 'Outline') {\n          return interfaceFunction.outlineInterface();\n        }\n        return null;\n      }\n      interfaceFunction._name = 'Outline';\n      interfaceFunction.outlineInterface = outlineInterfaceFactory(elem);\n      return interfaceFunction;\n    };\n    return function (elem) {\n      function _interfaceFunction(value) {\n        if (value === 'Data') {\n          return _interfaceFunction.dataInterface;\n        }\n        return null;\n      }\n      _interfaceFunction._name = 'Data';\n      _interfaceFunction.dataInterface = dataInterfaceFactory(elem);\n      return _interfaceFunction;\n    };\n  }();\n\n  var interfaces = {\n    layer: LayerExpressionInterface,\n    effects: EffectsExpressionInterface,\n    comp: CompExpressionInterface,\n    shape: ShapeExpressionInterface,\n    text: TextExpressionInterface,\n    footage: FootageInterface\n  };\n  function getInterface(type) {\n    return interfaces[type] || null;\n  }\n\n  var expressionHelpers = function () {\n    function searchExpressions(elem, data, prop) {\n      if (data.x) {\n        prop.k = true;\n        prop.x = true;\n        prop.initiateExpression = ExpressionManager.initiateExpression;\n        prop.effectsSequence.push(prop.initiateExpression(elem, data, prop).bind(prop));\n      }\n    }\n    function getValueAtTime(frameNum) {\n      frameNum *= this.elem.globalData.frameRate;\n      frameNum -= this.offsetTime;\n      if (frameNum !== this._cachingAtTime.lastFrame) {\n        this._cachingAtTime.lastIndex = this._cachingAtTime.lastFrame < frameNum ? this._cachingAtTime.lastIndex : 0;\n        this._cachingAtTime.value = this.interpolateValue(frameNum, this._cachingAtTime);\n        this._cachingAtTime.lastFrame = frameNum;\n      }\n      return this._cachingAtTime.value;\n    }\n    function getSpeedAtTime(frameNum) {\n      var delta = -0.01;\n      var v1 = this.getValueAtTime(frameNum);\n      var v2 = this.getValueAtTime(frameNum + delta);\n      var speed = 0;\n      if (v1.length) {\n        var i;\n        for (i = 0; i < v1.length; i += 1) {\n          speed += Math.pow(v2[i] - v1[i], 2);\n        }\n        speed = Math.sqrt(speed) * 100;\n      } else {\n        speed = 0;\n      }\n      return speed;\n    }\n    function getVelocityAtTime(frameNum) {\n      if (this.vel !== undefined) {\n        return this.vel;\n      }\n      var delta = -0.001;\n      // frameNum += this.elem.data.st;\n      var v1 = this.getValueAtTime(frameNum);\n      var v2 = this.getValueAtTime(frameNum + delta);\n      var velocity;\n      if (v1.length) {\n        velocity = createTypedArray('float32', v1.length);\n        var i;\n        for (i = 0; i < v1.length; i += 1) {\n          // removing frameRate\n          // if needed, don't add it here\n          // velocity[i] = this.elem.globalData.frameRate*((v2[i] - v1[i])/delta);\n          velocity[i] = (v2[i] - v1[i]) / delta;\n        }\n      } else {\n        velocity = (v2 - v1) / delta;\n      }\n      return velocity;\n    }\n    function getStaticValueAtTime() {\n      return this.pv;\n    }\n    function setGroupProperty(propertyGroup) {\n      this.propertyGroup = propertyGroup;\n    }\n    return {\n      searchExpressions: searchExpressions,\n      getSpeedAtTime: getSpeedAtTime,\n      getVelocityAtTime: getVelocityAtTime,\n      getValueAtTime: getValueAtTime,\n      getStaticValueAtTime: getStaticValueAtTime,\n      setGroupProperty: setGroupProperty\n    };\n  }();\n\n  function addPropertyDecorator() {\n    function loopOut(type, duration, durationFlag) {\n      if (!this.k || !this.keyframes) {\n        return this.pv;\n      }\n      type = type ? type.toLowerCase() : '';\n      var currentFrame = this.comp.renderedFrame;\n      var keyframes = this.keyframes;\n      var lastKeyFrame = keyframes[keyframes.length - 1].t;\n      if (currentFrame <= lastKeyFrame) {\n        return this.pv;\n      }\n      var cycleDuration;\n      var firstKeyFrame;\n      if (!durationFlag) {\n        if (!duration || duration > keyframes.length - 1) {\n          duration = keyframes.length - 1;\n        }\n        firstKeyFrame = keyframes[keyframes.length - 1 - duration].t;\n        cycleDuration = lastKeyFrame - firstKeyFrame;\n      } else {\n        if (!duration) {\n          cycleDuration = Math.max(0, lastKeyFrame - this.elem.data.ip);\n        } else {\n          cycleDuration = Math.abs(lastKeyFrame - this.elem.comp.globalData.frameRate * duration);\n        }\n        firstKeyFrame = lastKeyFrame - cycleDuration;\n      }\n      var i;\n      var len;\n      var ret;\n      if (type === 'pingpong') {\n        var iterations = Math.floor((currentFrame - firstKeyFrame) / cycleDuration);\n        if (iterations % 2 !== 0) {\n          return this.getValueAtTime((cycleDuration - (currentFrame - firstKeyFrame) % cycleDuration + firstKeyFrame) / this.comp.globalData.frameRate, 0); // eslint-disable-line\n        }\n      } else if (type === 'offset') {\n        var initV = this.getValueAtTime(firstKeyFrame / this.comp.globalData.frameRate, 0);\n        var endV = this.getValueAtTime(lastKeyFrame / this.comp.globalData.frameRate, 0);\n        var current = this.getValueAtTime(((currentFrame - firstKeyFrame) % cycleDuration + firstKeyFrame) / this.comp.globalData.frameRate, 0); // eslint-disable-line\n        var repeats = Math.floor((currentFrame - firstKeyFrame) / cycleDuration);\n        if (this.pv.length) {\n          ret = new Array(initV.length);\n          len = ret.length;\n          for (i = 0; i < len; i += 1) {\n            ret[i] = (endV[i] - initV[i]) * repeats + current[i];\n          }\n          return ret;\n        }\n        return (endV - initV) * repeats + current;\n      } else if (type === 'continue') {\n        var lastValue = this.getValueAtTime(lastKeyFrame / this.comp.globalData.frameRate, 0);\n        var nextLastValue = this.getValueAtTime((lastKeyFrame - 0.001) / this.comp.globalData.frameRate, 0);\n        if (this.pv.length) {\n          ret = new Array(lastValue.length);\n          len = ret.length;\n          for (i = 0; i < len; i += 1) {\n            ret[i] = lastValue[i] + (lastValue[i] - nextLastValue[i]) * ((currentFrame - lastKeyFrame) / this.comp.globalData.frameRate) / 0.0005; // eslint-disable-line\n          }\n          return ret;\n        }\n        return lastValue + (lastValue - nextLastValue) * ((currentFrame - lastKeyFrame) / 0.001);\n      }\n      return this.getValueAtTime(((currentFrame - firstKeyFrame) % cycleDuration + firstKeyFrame) / this.comp.globalData.frameRate, 0); // eslint-disable-line\n    }\n    function loopIn(type, duration, durationFlag) {\n      if (!this.k) {\n        return this.pv;\n      }\n      type = type ? type.toLowerCase() : '';\n      var currentFrame = this.comp.renderedFrame;\n      var keyframes = this.keyframes;\n      var firstKeyFrame = keyframes[0].t;\n      if (currentFrame >= firstKeyFrame) {\n        return this.pv;\n      }\n      var cycleDuration;\n      var lastKeyFrame;\n      if (!durationFlag) {\n        if (!duration || duration > keyframes.length - 1) {\n          duration = keyframes.length - 1;\n        }\n        lastKeyFrame = keyframes[duration].t;\n        cycleDuration = lastKeyFrame - firstKeyFrame;\n      } else {\n        if (!duration) {\n          cycleDuration = Math.max(0, this.elem.data.op - firstKeyFrame);\n        } else {\n          cycleDuration = Math.abs(this.elem.comp.globalData.frameRate * duration);\n        }\n        lastKeyFrame = firstKeyFrame + cycleDuration;\n      }\n      var i;\n      var len;\n      var ret;\n      if (type === 'pingpong') {\n        var iterations = Math.floor((firstKeyFrame - currentFrame) / cycleDuration);\n        if (iterations % 2 === 0) {\n          return this.getValueAtTime(((firstKeyFrame - currentFrame) % cycleDuration + firstKeyFrame) / this.comp.globalData.frameRate, 0); // eslint-disable-line\n        }\n      } else if (type === 'offset') {\n        var initV = this.getValueAtTime(firstKeyFrame / this.comp.globalData.frameRate, 0);\n        var endV = this.getValueAtTime(lastKeyFrame / this.comp.globalData.frameRate, 0);\n        var current = this.getValueAtTime((cycleDuration - (firstKeyFrame - currentFrame) % cycleDuration + firstKeyFrame) / this.comp.globalData.frameRate, 0);\n        var repeats = Math.floor((firstKeyFrame - currentFrame) / cycleDuration) + 1;\n        if (this.pv.length) {\n          ret = new Array(initV.length);\n          len = ret.length;\n          for (i = 0; i < len; i += 1) {\n            ret[i] = current[i] - (endV[i] - initV[i]) * repeats;\n          }\n          return ret;\n        }\n        return current - (endV - initV) * repeats;\n      } else if (type === 'continue') {\n        var firstValue = this.getValueAtTime(firstKeyFrame / this.comp.globalData.frameRate, 0);\n        var nextFirstValue = this.getValueAtTime((firstKeyFrame + 0.001) / this.comp.globalData.frameRate, 0);\n        if (this.pv.length) {\n          ret = new Array(firstValue.length);\n          len = ret.length;\n          for (i = 0; i < len; i += 1) {\n            ret[i] = firstValue[i] + (firstValue[i] - nextFirstValue[i]) * (firstKeyFrame - currentFrame) / 0.001;\n          }\n          return ret;\n        }\n        return firstValue + (firstValue - nextFirstValue) * (firstKeyFrame - currentFrame) / 0.001;\n      }\n      return this.getValueAtTime((cycleDuration - ((firstKeyFrame - currentFrame) % cycleDuration + firstKeyFrame)) / this.comp.globalData.frameRate, 0); // eslint-disable-line\n    }\n    function smooth(width, samples) {\n      if (!this.k) {\n        return this.pv;\n      }\n      width = (width || 0.4) * 0.5;\n      samples = Math.floor(samples || 5);\n      if (samples <= 1) {\n        return this.pv;\n      }\n      var currentTime = this.comp.renderedFrame / this.comp.globalData.frameRate;\n      var initFrame = currentTime - width;\n      var endFrame = currentTime + width;\n      var sampleFrequency = samples > 1 ? (endFrame - initFrame) / (samples - 1) : 1;\n      var i = 0;\n      var j = 0;\n      var value;\n      if (this.pv.length) {\n        value = createTypedArray('float32', this.pv.length);\n      } else {\n        value = 0;\n      }\n      var sampleValue;\n      while (i < samples) {\n        sampleValue = this.getValueAtTime(initFrame + i * sampleFrequency);\n        if (this.pv.length) {\n          for (j = 0; j < this.pv.length; j += 1) {\n            value[j] += sampleValue[j];\n          }\n        } else {\n          value += sampleValue;\n        }\n        i += 1;\n      }\n      if (this.pv.length) {\n        for (j = 0; j < this.pv.length; j += 1) {\n          value[j] /= samples;\n        }\n      } else {\n        value /= samples;\n      }\n      return value;\n    }\n    function getTransformValueAtTime(time) {\n      if (!this._transformCachingAtTime) {\n        this._transformCachingAtTime = {\n          v: new Matrix()\n        };\n      }\n      /// /\n      var matrix = this._transformCachingAtTime.v;\n      matrix.cloneFromProps(this.pre.props);\n      if (this.appliedTransformations < 1) {\n        var anchor = this.a.getValueAtTime(time);\n        matrix.translate(-anchor[0] * this.a.mult, -anchor[1] * this.a.mult, anchor[2] * this.a.mult);\n      }\n      if (this.appliedTransformations < 2) {\n        var scale = this.s.getValueAtTime(time);\n        matrix.scale(scale[0] * this.s.mult, scale[1] * this.s.mult, scale[2] * this.s.mult);\n      }\n      if (this.sk && this.appliedTransformations < 3) {\n        var skew = this.sk.getValueAtTime(time);\n        var skewAxis = this.sa.getValueAtTime(time);\n        matrix.skewFromAxis(-skew * this.sk.mult, skewAxis * this.sa.mult);\n      }\n      if (this.r && this.appliedTransformations < 4) {\n        var rotation = this.r.getValueAtTime(time);\n        matrix.rotate(-rotation * this.r.mult);\n      } else if (!this.r && this.appliedTransformations < 4) {\n        var rotationZ = this.rz.getValueAtTime(time);\n        var rotationY = this.ry.getValueAtTime(time);\n        var rotationX = this.rx.getValueAtTime(time);\n        var orientation = this.or.getValueAtTime(time);\n        matrix.rotateZ(-rotationZ * this.rz.mult).rotateY(rotationY * this.ry.mult).rotateX(rotationX * this.rx.mult).rotateZ(-orientation[2] * this.or.mult).rotateY(orientation[1] * this.or.mult).rotateX(orientation[0] * this.or.mult);\n      }\n      if (this.data.p && this.data.p.s) {\n        var positionX = this.px.getValueAtTime(time);\n        var positionY = this.py.getValueAtTime(time);\n        if (this.data.p.z) {\n          var positionZ = this.pz.getValueAtTime(time);\n          matrix.translate(positionX * this.px.mult, positionY * this.py.mult, -positionZ * this.pz.mult);\n        } else {\n          matrix.translate(positionX * this.px.mult, positionY * this.py.mult, 0);\n        }\n      } else {\n        var position = this.p.getValueAtTime(time);\n        matrix.translate(position[0] * this.p.mult, position[1] * this.p.mult, -position[2] * this.p.mult);\n      }\n      return matrix;\n      /// /\n    }\n    function getTransformStaticValueAtTime() {\n      return this.v.clone(new Matrix());\n    }\n    var getTransformProperty = TransformPropertyFactory.getTransformProperty;\n    TransformPropertyFactory.getTransformProperty = function (elem, data, container) {\n      var prop = getTransformProperty(elem, data, container);\n      if (prop.dynamicProperties.length) {\n        prop.getValueAtTime = getTransformValueAtTime.bind(prop);\n      } else {\n        prop.getValueAtTime = getTransformStaticValueAtTime.bind(prop);\n      }\n      prop.setGroupProperty = expressionHelpers.setGroupProperty;\n      return prop;\n    };\n    var propertyGetProp = PropertyFactory.getProp;\n    PropertyFactory.getProp = function (elem, data, type, mult, container) {\n      var prop = propertyGetProp(elem, data, type, mult, container);\n      // prop.getVelocityAtTime = getVelocityAtTime;\n      // prop.loopOut = loopOut;\n      // prop.loopIn = loopIn;\n      if (prop.kf) {\n        prop.getValueAtTime = expressionHelpers.getValueAtTime.bind(prop);\n      } else {\n        prop.getValueAtTime = expressionHelpers.getStaticValueAtTime.bind(prop);\n      }\n      prop.setGroupProperty = expressionHelpers.setGroupProperty;\n      prop.loopOut = loopOut;\n      prop.loopIn = loopIn;\n      prop.smooth = smooth;\n      prop.getVelocityAtTime = expressionHelpers.getVelocityAtTime.bind(prop);\n      prop.getSpeedAtTime = expressionHelpers.getSpeedAtTime.bind(prop);\n      prop.numKeys = data.a === 1 ? data.k.length : 0;\n      prop.propertyIndex = data.ix;\n      var value = 0;\n      if (type !== 0) {\n        value = createTypedArray('float32', data.a === 1 ? data.k[0].s.length : data.k.length);\n      }\n      prop._cachingAtTime = {\n        lastFrame: initialDefaultFrame,\n        lastIndex: 0,\n        value: value\n      };\n      expressionHelpers.searchExpressions(elem, data, prop);\n      if (prop.k) {\n        container.addDynamicProperty(prop);\n      }\n      return prop;\n    };\n    function getShapeValueAtTime(frameNum) {\n      // For now this caching object is created only when needed instead of creating it when the shape is initialized.\n      if (!this._cachingAtTime) {\n        this._cachingAtTime = {\n          shapeValue: shapePool.clone(this.pv),\n          lastIndex: 0,\n          lastTime: initialDefaultFrame\n        };\n      }\n      frameNum *= this.elem.globalData.frameRate;\n      frameNum -= this.offsetTime;\n      if (frameNum !== this._cachingAtTime.lastTime) {\n        this._cachingAtTime.lastIndex = this._cachingAtTime.lastTime < frameNum ? this._caching.lastIndex : 0;\n        this._cachingAtTime.lastTime = frameNum;\n        this.interpolateShape(frameNum, this._cachingAtTime.shapeValue, this._cachingAtTime);\n      }\n      return this._cachingAtTime.shapeValue;\n    }\n    var ShapePropertyConstructorFunction = ShapePropertyFactory.getConstructorFunction();\n    var KeyframedShapePropertyConstructorFunction = ShapePropertyFactory.getKeyframedConstructorFunction();\n    function ShapeExpressions() {}\n    ShapeExpressions.prototype = {\n      vertices: function vertices(prop, time) {\n        if (this.k) {\n          this.getValue();\n        }\n        var shapePath = this.v;\n        if (time !== undefined) {\n          shapePath = this.getValueAtTime(time, 0);\n        }\n        var i;\n        var len = shapePath._length;\n        var vertices = shapePath[prop];\n        var points = shapePath.v;\n        var arr = createSizedArray(len);\n        for (i = 0; i < len; i += 1) {\n          if (prop === 'i' || prop === 'o') {\n            arr[i] = [vertices[i][0] - points[i][0], vertices[i][1] - points[i][1]];\n          } else {\n            arr[i] = [vertices[i][0], vertices[i][1]];\n          }\n        }\n        return arr;\n      },\n      points: function points(time) {\n        return this.vertices('v', time);\n      },\n      inTangents: function inTangents(time) {\n        return this.vertices('i', time);\n      },\n      outTangents: function outTangents(time) {\n        return this.vertices('o', time);\n      },\n      isClosed: function isClosed() {\n        return this.v.c;\n      },\n      pointOnPath: function pointOnPath(perc, time) {\n        var shapePath = this.v;\n        if (time !== undefined) {\n          shapePath = this.getValueAtTime(time, 0);\n        }\n        if (!this._segmentsLength) {\n          this._segmentsLength = bez.getSegmentsLength(shapePath);\n        }\n        var segmentsLength = this._segmentsLength;\n        var lengths = segmentsLength.lengths;\n        var lengthPos = segmentsLength.totalLength * perc;\n        var i = 0;\n        var len = lengths.length;\n        var accumulatedLength = 0;\n        var pt;\n        while (i < len) {\n          if (accumulatedLength + lengths[i].addedLength > lengthPos) {\n            var initIndex = i;\n            var endIndex = shapePath.c && i === len - 1 ? 0 : i + 1;\n            var segmentPerc = (lengthPos - accumulatedLength) / lengths[i].addedLength;\n            pt = bez.getPointInSegment(shapePath.v[initIndex], shapePath.v[endIndex], shapePath.o[initIndex], shapePath.i[endIndex], segmentPerc, lengths[i]);\n            break;\n          } else {\n            accumulatedLength += lengths[i].addedLength;\n          }\n          i += 1;\n        }\n        if (!pt) {\n          pt = shapePath.c ? [shapePath.v[0][0], shapePath.v[0][1]] : [shapePath.v[shapePath._length - 1][0], shapePath.v[shapePath._length - 1][1]];\n        }\n        return pt;\n      },\n      vectorOnPath: function vectorOnPath(perc, time, vectorType) {\n        // perc doesn't use triple equality because it can be a Number object as well as a primitive.\n        if (perc == 1) {\n          // eslint-disable-line eqeqeq\n          perc = this.v.c;\n        } else if (perc == 0) {\n          // eslint-disable-line eqeqeq\n          perc = 0.999;\n        }\n        var pt1 = this.pointOnPath(perc, time);\n        var pt2 = this.pointOnPath(perc + 0.001, time);\n        var xLength = pt2[0] - pt1[0];\n        var yLength = pt2[1] - pt1[1];\n        var magnitude = Math.sqrt(Math.pow(xLength, 2) + Math.pow(yLength, 2));\n        if (magnitude === 0) {\n          return [0, 0];\n        }\n        var unitVector = vectorType === 'tangent' ? [xLength / magnitude, yLength / magnitude] : [-yLength / magnitude, xLength / magnitude];\n        return unitVector;\n      },\n      tangentOnPath: function tangentOnPath(perc, time) {\n        return this.vectorOnPath(perc, time, 'tangent');\n      },\n      normalOnPath: function normalOnPath(perc, time) {\n        return this.vectorOnPath(perc, time, 'normal');\n      },\n      setGroupProperty: expressionHelpers.setGroupProperty,\n      getValueAtTime: expressionHelpers.getStaticValueAtTime\n    };\n    extendPrototype([ShapeExpressions], ShapePropertyConstructorFunction);\n    extendPrototype([ShapeExpressions], KeyframedShapePropertyConstructorFunction);\n    KeyframedShapePropertyConstructorFunction.prototype.getValueAtTime = getShapeValueAtTime;\n    KeyframedShapePropertyConstructorFunction.prototype.initiateExpression = ExpressionManager.initiateExpression;\n    var propertyGetShapeProp = ShapePropertyFactory.getShapeProp;\n    ShapePropertyFactory.getShapeProp = function (elem, data, type, arr, trims) {\n      var prop = propertyGetShapeProp(elem, data, type, arr, trims);\n      prop.propertyIndex = data.ix;\n      prop.lock = false;\n      if (type === 3) {\n        expressionHelpers.searchExpressions(elem, data.pt, prop);\n      } else if (type === 4) {\n        expressionHelpers.searchExpressions(elem, data.ks, prop);\n      }\n      if (prop.k) {\n        elem.addDynamicProperty(prop);\n      }\n      return prop;\n    };\n  }\n  function initialize$1() {\n    addPropertyDecorator();\n  }\n\n  function addDecorator() {\n    function searchExpressions() {\n      if (this.data.d.x) {\n        this.calculateExpression = ExpressionManager.initiateExpression.bind(this)(this.elem, this.data.d, this);\n        this.addEffect(this.getExpressionValue.bind(this));\n        return true;\n      }\n      return null;\n    }\n    TextProperty.prototype.getExpressionValue = function (currentValue, text) {\n      var newValue = this.calculateExpression(text);\n      if (currentValue.t !== newValue) {\n        var newData = {};\n        this.copyData(newData, currentValue);\n        newData.t = newValue.toString();\n        newData.__complete = false;\n        return newData;\n      }\n      return currentValue;\n    };\n    TextProperty.prototype.searchProperty = function () {\n      var isKeyframed = this.searchKeyframes();\n      var hasExpressions = this.searchExpressions();\n      this.kf = isKeyframed || hasExpressions;\n      return this.kf;\n    };\n    TextProperty.prototype.searchExpressions = searchExpressions;\n  }\n  function initialize() {\n    addDecorator();\n  }\n\n  function SVGComposableEffect() {}\n  SVGComposableEffect.prototype = {\n    createMergeNode: function createMergeNode(resultId, ins) {\n      var feMerge = createNS('feMerge');\n      feMerge.setAttribute('result', resultId);\n      var feMergeNode;\n      var i;\n      for (i = 0; i < ins.length; i += 1) {\n        feMergeNode = createNS('feMergeNode');\n        feMergeNode.setAttribute('in', ins[i]);\n        feMerge.appendChild(feMergeNode);\n        feMerge.appendChild(feMergeNode);\n      }\n      return feMerge;\n    }\n  };\n\n  var linearFilterValue = '0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0';\n  function SVGTintFilter(filter, filterManager, elem, id, source) {\n    this.filterManager = filterManager;\n    var feColorMatrix = createNS('feColorMatrix');\n    feColorMatrix.setAttribute('type', 'matrix');\n    feColorMatrix.setAttribute('color-interpolation-filters', 'linearRGB');\n    feColorMatrix.setAttribute('values', linearFilterValue + ' 1 0');\n    this.linearFilter = feColorMatrix;\n    feColorMatrix.setAttribute('result', id + '_tint_1');\n    filter.appendChild(feColorMatrix);\n    feColorMatrix = createNS('feColorMatrix');\n    feColorMatrix.setAttribute('type', 'matrix');\n    feColorMatrix.setAttribute('color-interpolation-filters', 'sRGB');\n    feColorMatrix.setAttribute('values', '1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0');\n    feColorMatrix.setAttribute('result', id + '_tint_2');\n    filter.appendChild(feColorMatrix);\n    this.matrixFilter = feColorMatrix;\n    var feMerge = this.createMergeNode(id, [source, id + '_tint_1', id + '_tint_2']);\n    filter.appendChild(feMerge);\n  }\n  extendPrototype([SVGComposableEffect], SVGTintFilter);\n  SVGTintFilter.prototype.renderFrame = function (forceRender) {\n    if (forceRender || this.filterManager._mdf) {\n      var colorBlack = this.filterManager.effectElements[0].p.v;\n      var colorWhite = this.filterManager.effectElements[1].p.v;\n      var opacity = this.filterManager.effectElements[2].p.v / 100;\n      this.linearFilter.setAttribute('values', linearFilterValue + ' ' + opacity + ' 0');\n      this.matrixFilter.setAttribute('values', colorWhite[0] - colorBlack[0] + ' 0 0 0 ' + colorBlack[0] + ' ' + (colorWhite[1] - colorBlack[1]) + ' 0 0 0 ' + colorBlack[1] + ' ' + (colorWhite[2] - colorBlack[2]) + ' 0 0 0 ' + colorBlack[2] + ' 0 0 0 1 0');\n    }\n  };\n\n  function SVGFillFilter(filter, filterManager, elem, id) {\n    this.filterManager = filterManager;\n    var feColorMatrix = createNS('feColorMatrix');\n    feColorMatrix.setAttribute('type', 'matrix');\n    feColorMatrix.setAttribute('color-interpolation-filters', 'sRGB');\n    feColorMatrix.setAttribute('values', '1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0');\n    feColorMatrix.setAttribute('result', id);\n    filter.appendChild(feColorMatrix);\n    this.matrixFilter = feColorMatrix;\n  }\n  SVGFillFilter.prototype.renderFrame = function (forceRender) {\n    if (forceRender || this.filterManager._mdf) {\n      var color = this.filterManager.effectElements[2].p.v;\n      var opacity = this.filterManager.effectElements[6].p.v;\n      this.matrixFilter.setAttribute('values', '0 0 0 0 ' + color[0] + ' 0 0 0 0 ' + color[1] + ' 0 0 0 0 ' + color[2] + ' 0 0 0 ' + opacity + ' 0');\n    }\n  };\n\n  function SVGStrokeEffect(fil, filterManager, elem) {\n    this.initialized = false;\n    this.filterManager = filterManager;\n    this.elem = elem;\n    this.paths = [];\n  }\n  SVGStrokeEffect.prototype.initialize = function () {\n    var elemChildren = this.elem.layerElement.children || this.elem.layerElement.childNodes;\n    var path;\n    var groupPath;\n    var i;\n    var len;\n    if (this.filterManager.effectElements[1].p.v === 1) {\n      len = this.elem.maskManager.masksProperties.length;\n      i = 0;\n    } else {\n      i = this.filterManager.effectElements[0].p.v - 1;\n      len = i + 1;\n    }\n    groupPath = createNS('g');\n    groupPath.setAttribute('fill', 'none');\n    groupPath.setAttribute('stroke-linecap', 'round');\n    groupPath.setAttribute('stroke-dashoffset', 1);\n    for (i; i < len; i += 1) {\n      path = createNS('path');\n      groupPath.appendChild(path);\n      this.paths.push({\n        p: path,\n        m: i\n      });\n    }\n    if (this.filterManager.effectElements[10].p.v === 3) {\n      var mask = createNS('mask');\n      var id = createElementID();\n      mask.setAttribute('id', id);\n      mask.setAttribute('mask-type', 'alpha');\n      mask.appendChild(groupPath);\n      this.elem.globalData.defs.appendChild(mask);\n      var g = createNS('g');\n      g.setAttribute('mask', 'url(' + getLocationHref() + '#' + id + ')');\n      while (elemChildren[0]) {\n        g.appendChild(elemChildren[0]);\n      }\n      this.elem.layerElement.appendChild(g);\n      this.masker = mask;\n      groupPath.setAttribute('stroke', '#fff');\n    } else if (this.filterManager.effectElements[10].p.v === 1 || this.filterManager.effectElements[10].p.v === 2) {\n      if (this.filterManager.effectElements[10].p.v === 2) {\n        elemChildren = this.elem.layerElement.children || this.elem.layerElement.childNodes;\n        while (elemChildren.length) {\n          this.elem.layerElement.removeChild(elemChildren[0]);\n        }\n      }\n      this.elem.layerElement.appendChild(groupPath);\n      this.elem.layerElement.removeAttribute('mask');\n      groupPath.setAttribute('stroke', '#fff');\n    }\n    this.initialized = true;\n    this.pathMasker = groupPath;\n  };\n  SVGStrokeEffect.prototype.renderFrame = function (forceRender) {\n    if (!this.initialized) {\n      this.initialize();\n    }\n    var i;\n    var len = this.paths.length;\n    var mask;\n    var path;\n    for (i = 0; i < len; i += 1) {\n      if (this.paths[i].m !== -1) {\n        mask = this.elem.maskManager.viewData[this.paths[i].m];\n        path = this.paths[i].p;\n        if (forceRender || this.filterManager._mdf || mask.prop._mdf) {\n          path.setAttribute('d', mask.lastPath);\n        }\n        if (forceRender || this.filterManager.effectElements[9].p._mdf || this.filterManager.effectElements[4].p._mdf || this.filterManager.effectElements[7].p._mdf || this.filterManager.effectElements[8].p._mdf || mask.prop._mdf) {\n          var dasharrayValue;\n          if (this.filterManager.effectElements[7].p.v !== 0 || this.filterManager.effectElements[8].p.v !== 100) {\n            var s = Math.min(this.filterManager.effectElements[7].p.v, this.filterManager.effectElements[8].p.v) * 0.01;\n            var e = Math.max(this.filterManager.effectElements[7].p.v, this.filterManager.effectElements[8].p.v) * 0.01;\n            var l = path.getTotalLength();\n            dasharrayValue = '0 0 0 ' + l * s + ' ';\n            var lineLength = l * (e - s);\n            var segment = 1 + this.filterManager.effectElements[4].p.v * 2 * this.filterManager.effectElements[9].p.v * 0.01;\n            var units = Math.floor(lineLength / segment);\n            var j;\n            for (j = 0; j < units; j += 1) {\n              dasharrayValue += '1 ' + this.filterManager.effectElements[4].p.v * 2 * this.filterManager.effectElements[9].p.v * 0.01 + ' ';\n            }\n            dasharrayValue += '0 ' + l * 10 + ' 0 0';\n          } else {\n            dasharrayValue = '1 ' + this.filterManager.effectElements[4].p.v * 2 * this.filterManager.effectElements[9].p.v * 0.01;\n          }\n          path.setAttribute('stroke-dasharray', dasharrayValue);\n        }\n      }\n    }\n    if (forceRender || this.filterManager.effectElements[4].p._mdf) {\n      this.pathMasker.setAttribute('stroke-width', this.filterManager.effectElements[4].p.v * 2);\n    }\n    if (forceRender || this.filterManager.effectElements[6].p._mdf) {\n      this.pathMasker.setAttribute('opacity', this.filterManager.effectElements[6].p.v);\n    }\n    if (this.filterManager.effectElements[10].p.v === 1 || this.filterManager.effectElements[10].p.v === 2) {\n      if (forceRender || this.filterManager.effectElements[3].p._mdf) {\n        var color = this.filterManager.effectElements[3].p.v;\n        this.pathMasker.setAttribute('stroke', 'rgb(' + bmFloor(color[0] * 255) + ',' + bmFloor(color[1] * 255) + ',' + bmFloor(color[2] * 255) + ')');\n      }\n    }\n  };\n\n  function SVGTritoneFilter(filter, filterManager, elem, id) {\n    this.filterManager = filterManager;\n    var feColorMatrix = createNS('feColorMatrix');\n    feColorMatrix.setAttribute('type', 'matrix');\n    feColorMatrix.setAttribute('color-interpolation-filters', 'linearRGB');\n    feColorMatrix.setAttribute('values', '0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0');\n    filter.appendChild(feColorMatrix);\n    var feComponentTransfer = createNS('feComponentTransfer');\n    feComponentTransfer.setAttribute('color-interpolation-filters', 'sRGB');\n    feComponentTransfer.setAttribute('result', id);\n    this.matrixFilter = feComponentTransfer;\n    var feFuncR = createNS('feFuncR');\n    feFuncR.setAttribute('type', 'table');\n    feComponentTransfer.appendChild(feFuncR);\n    this.feFuncR = feFuncR;\n    var feFuncG = createNS('feFuncG');\n    feFuncG.setAttribute('type', 'table');\n    feComponentTransfer.appendChild(feFuncG);\n    this.feFuncG = feFuncG;\n    var feFuncB = createNS('feFuncB');\n    feFuncB.setAttribute('type', 'table');\n    feComponentTransfer.appendChild(feFuncB);\n    this.feFuncB = feFuncB;\n    filter.appendChild(feComponentTransfer);\n  }\n  SVGTritoneFilter.prototype.renderFrame = function (forceRender) {\n    if (forceRender || this.filterManager._mdf) {\n      var color1 = this.filterManager.effectElements[0].p.v;\n      var color2 = this.filterManager.effectElements[1].p.v;\n      var color3 = this.filterManager.effectElements[2].p.v;\n      var tableR = color3[0] + ' ' + color2[0] + ' ' + color1[0];\n      var tableG = color3[1] + ' ' + color2[1] + ' ' + color1[1];\n      var tableB = color3[2] + ' ' + color2[2] + ' ' + color1[2];\n      this.feFuncR.setAttribute('tableValues', tableR);\n      this.feFuncG.setAttribute('tableValues', tableG);\n      this.feFuncB.setAttribute('tableValues', tableB);\n    }\n  };\n\n  function SVGProLevelsFilter(filter, filterManager, elem, id) {\n    this.filterManager = filterManager;\n    var effectElements = this.filterManager.effectElements;\n    var feComponentTransfer = createNS('feComponentTransfer');\n\n    // Red\n    if (effectElements[10].p.k || effectElements[10].p.v !== 0 || effectElements[11].p.k || effectElements[11].p.v !== 1 || effectElements[12].p.k || effectElements[12].p.v !== 1 || effectElements[13].p.k || effectElements[13].p.v !== 0 || effectElements[14].p.k || effectElements[14].p.v !== 1) {\n      this.feFuncR = this.createFeFunc('feFuncR', feComponentTransfer);\n    }\n    // Green\n    if (effectElements[17].p.k || effectElements[17].p.v !== 0 || effectElements[18].p.k || effectElements[18].p.v !== 1 || effectElements[19].p.k || effectElements[19].p.v !== 1 || effectElements[20].p.k || effectElements[20].p.v !== 0 || effectElements[21].p.k || effectElements[21].p.v !== 1) {\n      this.feFuncG = this.createFeFunc('feFuncG', feComponentTransfer);\n    }\n    // Blue\n    if (effectElements[24].p.k || effectElements[24].p.v !== 0 || effectElements[25].p.k || effectElements[25].p.v !== 1 || effectElements[26].p.k || effectElements[26].p.v !== 1 || effectElements[27].p.k || effectElements[27].p.v !== 0 || effectElements[28].p.k || effectElements[28].p.v !== 1) {\n      this.feFuncB = this.createFeFunc('feFuncB', feComponentTransfer);\n    }\n    // Alpha\n    if (effectElements[31].p.k || effectElements[31].p.v !== 0 || effectElements[32].p.k || effectElements[32].p.v !== 1 || effectElements[33].p.k || effectElements[33].p.v !== 1 || effectElements[34].p.k || effectElements[34].p.v !== 0 || effectElements[35].p.k || effectElements[35].p.v !== 1) {\n      this.feFuncA = this.createFeFunc('feFuncA', feComponentTransfer);\n    }\n    // RGB\n    if (this.feFuncR || this.feFuncG || this.feFuncB || this.feFuncA) {\n      feComponentTransfer.setAttribute('color-interpolation-filters', 'sRGB');\n      filter.appendChild(feComponentTransfer);\n    }\n    if (effectElements[3].p.k || effectElements[3].p.v !== 0 || effectElements[4].p.k || effectElements[4].p.v !== 1 || effectElements[5].p.k || effectElements[5].p.v !== 1 || effectElements[6].p.k || effectElements[6].p.v !== 0 || effectElements[7].p.k || effectElements[7].p.v !== 1) {\n      feComponentTransfer = createNS('feComponentTransfer');\n      feComponentTransfer.setAttribute('color-interpolation-filters', 'sRGB');\n      feComponentTransfer.setAttribute('result', id);\n      filter.appendChild(feComponentTransfer);\n      this.feFuncRComposed = this.createFeFunc('feFuncR', feComponentTransfer);\n      this.feFuncGComposed = this.createFeFunc('feFuncG', feComponentTransfer);\n      this.feFuncBComposed = this.createFeFunc('feFuncB', feComponentTransfer);\n    }\n  }\n  SVGProLevelsFilter.prototype.createFeFunc = function (type, feComponentTransfer) {\n    var feFunc = createNS(type);\n    feFunc.setAttribute('type', 'table');\n    feComponentTransfer.appendChild(feFunc);\n    return feFunc;\n  };\n  SVGProLevelsFilter.prototype.getTableValue = function (inputBlack, inputWhite, gamma, outputBlack, outputWhite) {\n    var cnt = 0;\n    var segments = 256;\n    var perc;\n    var min = Math.min(inputBlack, inputWhite);\n    var max = Math.max(inputBlack, inputWhite);\n    var table = Array.call(null, {\n      length: segments\n    });\n    var colorValue;\n    var pos = 0;\n    var outputDelta = outputWhite - outputBlack;\n    var inputDelta = inputWhite - inputBlack;\n    while (cnt <= 256) {\n      perc = cnt / 256;\n      if (perc <= min) {\n        colorValue = inputDelta < 0 ? outputWhite : outputBlack;\n      } else if (perc >= max) {\n        colorValue = inputDelta < 0 ? outputBlack : outputWhite;\n      } else {\n        colorValue = outputBlack + outputDelta * Math.pow((perc - inputBlack) / inputDelta, 1 / gamma);\n      }\n      table[pos] = colorValue;\n      pos += 1;\n      cnt += 256 / (segments - 1);\n    }\n    return table.join(' ');\n  };\n  SVGProLevelsFilter.prototype.renderFrame = function (forceRender) {\n    if (forceRender || this.filterManager._mdf) {\n      var val;\n      var effectElements = this.filterManager.effectElements;\n      if (this.feFuncRComposed && (forceRender || effectElements[3].p._mdf || effectElements[4].p._mdf || effectElements[5].p._mdf || effectElements[6].p._mdf || effectElements[7].p._mdf)) {\n        val = this.getTableValue(effectElements[3].p.v, effectElements[4].p.v, effectElements[5].p.v, effectElements[6].p.v, effectElements[7].p.v);\n        this.feFuncRComposed.setAttribute('tableValues', val);\n        this.feFuncGComposed.setAttribute('tableValues', val);\n        this.feFuncBComposed.setAttribute('tableValues', val);\n      }\n      if (this.feFuncR && (forceRender || effectElements[10].p._mdf || effectElements[11].p._mdf || effectElements[12].p._mdf || effectElements[13].p._mdf || effectElements[14].p._mdf)) {\n        val = this.getTableValue(effectElements[10].p.v, effectElements[11].p.v, effectElements[12].p.v, effectElements[13].p.v, effectElements[14].p.v);\n        this.feFuncR.setAttribute('tableValues', val);\n      }\n      if (this.feFuncG && (forceRender || effectElements[17].p._mdf || effectElements[18].p._mdf || effectElements[19].p._mdf || effectElements[20].p._mdf || effectElements[21].p._mdf)) {\n        val = this.getTableValue(effectElements[17].p.v, effectElements[18].p.v, effectElements[19].p.v, effectElements[20].p.v, effectElements[21].p.v);\n        this.feFuncG.setAttribute('tableValues', val);\n      }\n      if (this.feFuncB && (forceRender || effectElements[24].p._mdf || effectElements[25].p._mdf || effectElements[26].p._mdf || effectElements[27].p._mdf || effectElements[28].p._mdf)) {\n        val = this.getTableValue(effectElements[24].p.v, effectElements[25].p.v, effectElements[26].p.v, effectElements[27].p.v, effectElements[28].p.v);\n        this.feFuncB.setAttribute('tableValues', val);\n      }\n      if (this.feFuncA && (forceRender || effectElements[31].p._mdf || effectElements[32].p._mdf || effectElements[33].p._mdf || effectElements[34].p._mdf || effectElements[35].p._mdf)) {\n        val = this.getTableValue(effectElements[31].p.v, effectElements[32].p.v, effectElements[33].p.v, effectElements[34].p.v, effectElements[35].p.v);\n        this.feFuncA.setAttribute('tableValues', val);\n      }\n    }\n  };\n\n  function SVGDropShadowEffect(filter, filterManager, elem, id, source) {\n    var globalFilterSize = filterManager.container.globalData.renderConfig.filterSize;\n    var filterSize = filterManager.data.fs || globalFilterSize;\n    filter.setAttribute('x', filterSize.x || globalFilterSize.x);\n    filter.setAttribute('y', filterSize.y || globalFilterSize.y);\n    filter.setAttribute('width', filterSize.width || globalFilterSize.width);\n    filter.setAttribute('height', filterSize.height || globalFilterSize.height);\n    this.filterManager = filterManager;\n    var feGaussianBlur = createNS('feGaussianBlur');\n    feGaussianBlur.setAttribute('in', 'SourceAlpha');\n    feGaussianBlur.setAttribute('result', id + '_drop_shadow_1');\n    feGaussianBlur.setAttribute('stdDeviation', '0');\n    this.feGaussianBlur = feGaussianBlur;\n    filter.appendChild(feGaussianBlur);\n    var feOffset = createNS('feOffset');\n    feOffset.setAttribute('dx', '25');\n    feOffset.setAttribute('dy', '0');\n    feOffset.setAttribute('in', id + '_drop_shadow_1');\n    feOffset.setAttribute('result', id + '_drop_shadow_2');\n    this.feOffset = feOffset;\n    filter.appendChild(feOffset);\n    var feFlood = createNS('feFlood');\n    feFlood.setAttribute('flood-color', '#00ff00');\n    feFlood.setAttribute('flood-opacity', '1');\n    feFlood.setAttribute('result', id + '_drop_shadow_3');\n    this.feFlood = feFlood;\n    filter.appendChild(feFlood);\n    var feComposite = createNS('feComposite');\n    feComposite.setAttribute('in', id + '_drop_shadow_3');\n    feComposite.setAttribute('in2', id + '_drop_shadow_2');\n    feComposite.setAttribute('operator', 'in');\n    feComposite.setAttribute('result', id + '_drop_shadow_4');\n    filter.appendChild(feComposite);\n    var feMerge = this.createMergeNode(id, [id + '_drop_shadow_4', source]);\n    filter.appendChild(feMerge);\n    //\n  }\n  extendPrototype([SVGComposableEffect], SVGDropShadowEffect);\n  SVGDropShadowEffect.prototype.renderFrame = function (forceRender) {\n    if (forceRender || this.filterManager._mdf) {\n      if (forceRender || this.filterManager.effectElements[4].p._mdf) {\n        this.feGaussianBlur.setAttribute('stdDeviation', this.filterManager.effectElements[4].p.v / 4);\n      }\n      if (forceRender || this.filterManager.effectElements[0].p._mdf) {\n        var col = this.filterManager.effectElements[0].p.v;\n        this.feFlood.setAttribute('flood-color', rgbToHex(Math.round(col[0] * 255), Math.round(col[1] * 255), Math.round(col[2] * 255)));\n      }\n      if (forceRender || this.filterManager.effectElements[1].p._mdf) {\n        this.feFlood.setAttribute('flood-opacity', this.filterManager.effectElements[1].p.v / 255);\n      }\n      if (forceRender || this.filterManager.effectElements[2].p._mdf || this.filterManager.effectElements[3].p._mdf) {\n        var distance = this.filterManager.effectElements[3].p.v;\n        var angle = (this.filterManager.effectElements[2].p.v - 90) * degToRads;\n        var x = distance * Math.cos(angle);\n        var y = distance * Math.sin(angle);\n        this.feOffset.setAttribute('dx', x);\n        this.feOffset.setAttribute('dy', y);\n      }\n    }\n  };\n\n  var _svgMatteSymbols = [];\n  function SVGMatte3Effect(filterElem, filterManager, elem) {\n    this.initialized = false;\n    this.filterManager = filterManager;\n    this.filterElem = filterElem;\n    this.elem = elem;\n    elem.matteElement = createNS('g');\n    elem.matteElement.appendChild(elem.layerElement);\n    elem.matteElement.appendChild(elem.transformedElement);\n    elem.baseElement = elem.matteElement;\n  }\n  SVGMatte3Effect.prototype.findSymbol = function (mask) {\n    var i = 0;\n    var len = _svgMatteSymbols.length;\n    while (i < len) {\n      if (_svgMatteSymbols[i] === mask) {\n        return _svgMatteSymbols[i];\n      }\n      i += 1;\n    }\n    return null;\n  };\n  SVGMatte3Effect.prototype.replaceInParent = function (mask, symbolId) {\n    var parentNode = mask.layerElement.parentNode;\n    if (!parentNode) {\n      return;\n    }\n    var children = parentNode.children;\n    var i = 0;\n    var len = children.length;\n    while (i < len) {\n      if (children[i] === mask.layerElement) {\n        break;\n      }\n      i += 1;\n    }\n    var nextChild;\n    if (i <= len - 2) {\n      nextChild = children[i + 1];\n    }\n    var useElem = createNS('use');\n    useElem.setAttribute('href', '#' + symbolId);\n    if (nextChild) {\n      parentNode.insertBefore(useElem, nextChild);\n    } else {\n      parentNode.appendChild(useElem);\n    }\n  };\n  SVGMatte3Effect.prototype.setElementAsMask = function (elem, mask) {\n    if (!this.findSymbol(mask)) {\n      var symbolId = createElementID();\n      var masker = createNS('mask');\n      masker.setAttribute('id', mask.layerId);\n      masker.setAttribute('mask-type', 'alpha');\n      _svgMatteSymbols.push(mask);\n      var defs = elem.globalData.defs;\n      defs.appendChild(masker);\n      var symbol = createNS('symbol');\n      symbol.setAttribute('id', symbolId);\n      this.replaceInParent(mask, symbolId);\n      symbol.appendChild(mask.layerElement);\n      defs.appendChild(symbol);\n      var useElem = createNS('use');\n      useElem.setAttribute('href', '#' + symbolId);\n      masker.appendChild(useElem);\n      mask.data.hd = false;\n      mask.show();\n    }\n    elem.setMatte(mask.layerId);\n  };\n  SVGMatte3Effect.prototype.initialize = function () {\n    var ind = this.filterManager.effectElements[0].p.v;\n    var elements = this.elem.comp.elements;\n    var i = 0;\n    var len = elements.length;\n    while (i < len) {\n      if (elements[i] && elements[i].data.ind === ind) {\n        this.setElementAsMask(this.elem, elements[i]);\n      }\n      i += 1;\n    }\n    this.initialized = true;\n  };\n  SVGMatte3Effect.prototype.renderFrame = function () {\n    if (!this.initialized) {\n      this.initialize();\n    }\n  };\n\n  function SVGGaussianBlurEffect(filter, filterManager, elem, id) {\n    // Outset the filter region by 100% on all sides to accommodate blur expansion.\n    filter.setAttribute('x', '-100%');\n    filter.setAttribute('y', '-100%');\n    filter.setAttribute('width', '300%');\n    filter.setAttribute('height', '300%');\n    this.filterManager = filterManager;\n    var feGaussianBlur = createNS('feGaussianBlur');\n    feGaussianBlur.setAttribute('result', id);\n    filter.appendChild(feGaussianBlur);\n    this.feGaussianBlur = feGaussianBlur;\n  }\n  SVGGaussianBlurEffect.prototype.renderFrame = function (forceRender) {\n    if (forceRender || this.filterManager._mdf) {\n      // Empirical value, matching AE's blur appearance.\n      var kBlurrinessToSigma = 0.3;\n      var sigma = this.filterManager.effectElements[0].p.v * kBlurrinessToSigma;\n\n      // Dimensions mapping:\n      //\n      //   1 -> horizontal & vertical\n      //   2 -> horizontal only\n      //   3 -> vertical only\n      //\n      var dimensions = this.filterManager.effectElements[1].p.v;\n      var sigmaX = dimensions == 3 ? 0 : sigma; // eslint-disable-line eqeqeq\n      var sigmaY = dimensions == 2 ? 0 : sigma; // eslint-disable-line eqeqeq\n\n      this.feGaussianBlur.setAttribute('stdDeviation', sigmaX + ' ' + sigmaY);\n\n      // Repeat edges mapping:\n      //\n      //   0 -> off -> duplicate\n      //   1 -> on  -> wrap\n      var edgeMode = this.filterManager.effectElements[2].p.v == 1 ? 'wrap' : 'duplicate'; // eslint-disable-line eqeqeq\n      this.feGaussianBlur.setAttribute('edgeMode', edgeMode);\n    }\n  };\n\n  function TransformEffect() {}\n  TransformEffect.prototype.init = function (effectsManager) {\n    this.effectsManager = effectsManager;\n    this.type = effectTypes.TRANSFORM_EFFECT;\n    this.matrix = new Matrix();\n    this.opacity = -1;\n    this._mdf = false;\n    this._opMdf = false;\n  };\n  TransformEffect.prototype.renderFrame = function (forceFrame) {\n    this._opMdf = false;\n    this._mdf = false;\n    if (forceFrame || this.effectsManager._mdf) {\n      var effectElements = this.effectsManager.effectElements;\n      var anchor = effectElements[0].p.v;\n      var position = effectElements[1].p.v;\n      var isUniformScale = effectElements[2].p.v === 1;\n      var scaleHeight = effectElements[3].p.v;\n      var scaleWidth = isUniformScale ? scaleHeight : effectElements[4].p.v;\n      var skew = effectElements[5].p.v;\n      var skewAxis = effectElements[6].p.v;\n      var rotation = effectElements[7].p.v;\n      this.matrix.reset();\n      this.matrix.translate(-anchor[0], -anchor[1], anchor[2]);\n      this.matrix.scale(scaleWidth * 0.01, scaleHeight * 0.01, 1);\n      this.matrix.rotate(-rotation * degToRads);\n      this.matrix.skewFromAxis(-skew * degToRads, (skewAxis + 90) * degToRads);\n      this.matrix.translate(position[0], position[1], 0);\n      this._mdf = true;\n      if (this.opacity !== effectElements[8].p.v) {\n        this.opacity = effectElements[8].p.v;\n        this._opMdf = true;\n      }\n    }\n  };\n\n  function SVGTransformEffect(_, filterManager) {\n    this.init(filterManager);\n  }\n  extendPrototype([TransformEffect], SVGTransformEffect);\n\n  function CVTransformEffect(effectsManager) {\n    this.init(effectsManager);\n  }\n  extendPrototype([TransformEffect], CVTransformEffect);\n\n  // Registering renderers\n  registerRenderer('canvas', CanvasRenderer);\n  registerRenderer('html', HybridRenderer);\n  registerRenderer('svg', SVGRenderer);\n\n  // Registering shape modifiers\n  ShapeModifiers.registerModifier('tm', TrimModifier);\n  ShapeModifiers.registerModifier('pb', PuckerAndBloatModifier);\n  ShapeModifiers.registerModifier('rp', RepeaterModifier);\n  ShapeModifiers.registerModifier('rd', RoundCornersModifier);\n  ShapeModifiers.registerModifier('zz', ZigZagModifier);\n  ShapeModifiers.registerModifier('op', OffsetPathModifier);\n\n  // Registering expression plugin\n  setExpressionsPlugin(Expressions);\n  setExpressionInterfaces(getInterface);\n  initialize$1();\n  initialize();\n\n  // Registering svg effects\n  registerEffect$1(20, SVGTintFilter, true);\n  registerEffect$1(21, SVGFillFilter, true);\n  registerEffect$1(22, SVGStrokeEffect, false);\n  registerEffect$1(23, SVGTritoneFilter, true);\n  registerEffect$1(24, SVGProLevelsFilter, true);\n  registerEffect$1(25, SVGDropShadowEffect, true);\n  registerEffect$1(28, SVGMatte3Effect, false);\n  registerEffect$1(29, SVGGaussianBlurEffect, true);\n  registerEffect$1(35, SVGTransformEffect, false);\n  registerEffect(35, CVTransformEffect);\n\n  return lottie;\n\n}));\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/lottie-web/build/player/lottie.js?\n}");

/***/ },

/***/ "./node_modules/masonry-layout/masonry.js"
/*!************************************************!*\
  !*** ./node_modules/masonry-layout/masonry.js ***!
  \************************************************/
(module, exports, __webpack_require__) {

eval("{var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!\n * Masonry v4.2.2\n * Cascading grid layout library\n * https://masonry.desandro.com\n * MIT License\n * by David DeSandro\n */\n\n( function( window, factory ) {\n  // universal module definition\n  /* jshint strict: false */ /*globals define, module, require */\n  if ( true ) {\n    // AMD\n    !(__WEBPACK_AMD_DEFINE_ARRAY__ = [\n        __webpack_require__(/*! outlayer/outlayer */ \"./node_modules/outlayer/outlayer.js\"),\n        __webpack_require__(/*! get-size/get-size */ \"./node_modules/get-size/get-size.js\")\n      ], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?\n\t\t(__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n  } else // removed by dead control flow\n{}\n\n}( window, function factory( Outlayer, getSize ) {\n\n'use strict';\n\n// -------------------------- masonryDefinition -------------------------- //\n\n  // create an Outlayer layout class\n  var Masonry = Outlayer.create('masonry');\n  // isFitWidth -> fitWidth\n  Masonry.compatOptions.fitWidth = 'isFitWidth';\n\n  var proto = Masonry.prototype;\n\n  proto._resetLayout = function() {\n    this.getSize();\n    this._getMeasurement( 'columnWidth', 'outerWidth' );\n    this._getMeasurement( 'gutter', 'outerWidth' );\n    this.measureColumns();\n\n    // reset column Y\n    this.colYs = [];\n    for ( var i=0; i < this.cols; i++ ) {\n      this.colYs.push( 0 );\n    }\n\n    this.maxY = 0;\n    this.horizontalColIndex = 0;\n  };\n\n  proto.measureColumns = function() {\n    this.getContainerWidth();\n    // if columnWidth is 0, default to outerWidth of first item\n    if ( !this.columnWidth ) {\n      var firstItem = this.items[0];\n      var firstItemElem = firstItem && firstItem.element;\n      // columnWidth fall back to item of first element\n      this.columnWidth = firstItemElem && getSize( firstItemElem ).outerWidth ||\n        // if first elem has no width, default to size of container\n        this.containerWidth;\n    }\n\n    var columnWidth = this.columnWidth += this.gutter;\n\n    // calculate columns\n    var containerWidth = this.containerWidth + this.gutter;\n    var cols = containerWidth / columnWidth;\n    // fix rounding errors, typically with gutters\n    var excess = columnWidth - containerWidth % columnWidth;\n    // if overshoot is less than a pixel, round up, otherwise floor it\n    var mathMethod = excess && excess < 1 ? 'round' : 'floor';\n    cols = Math[ mathMethod ]( cols );\n    this.cols = Math.max( cols, 1 );\n  };\n\n  proto.getContainerWidth = function() {\n    // container is parent if fit width\n    var isFitWidth = this._getOption('fitWidth');\n    var container = isFitWidth ? this.element.parentNode : this.element;\n    // check that this.size and size are there\n    // IE8 triggers resize on body size change, so they might not be\n    var size = getSize( container );\n    this.containerWidth = size && size.innerWidth;\n  };\n\n  proto._getItemLayoutPosition = function( item ) {\n    item.getSize();\n    // how many columns does this brick span\n    var remainder = item.size.outerWidth % this.columnWidth;\n    var mathMethod = remainder && remainder < 1 ? 'round' : 'ceil';\n    // round if off by 1 pixel, otherwise use ceil\n    var colSpan = Math[ mathMethod ]( item.size.outerWidth / this.columnWidth );\n    colSpan = Math.min( colSpan, this.cols );\n    // use horizontal or top column position\n    var colPosMethod = this.options.horizontalOrder ?\n      '_getHorizontalColPosition' : '_getTopColPosition';\n    var colPosition = this[ colPosMethod ]( colSpan, item );\n    // position the brick\n    var position = {\n      x: this.columnWidth * colPosition.col,\n      y: colPosition.y\n    };\n    // apply setHeight to necessary columns\n    var setHeight = colPosition.y + item.size.outerHeight;\n    var setMax = colSpan + colPosition.col;\n    for ( var i = colPosition.col; i < setMax; i++ ) {\n      this.colYs[i] = setHeight;\n    }\n\n    return position;\n  };\n\n  proto._getTopColPosition = function( colSpan ) {\n    var colGroup = this._getTopColGroup( colSpan );\n    // get the minimum Y value from the columns\n    var minimumY = Math.min.apply( Math, colGroup );\n\n    return {\n      col: colGroup.indexOf( minimumY ),\n      y: minimumY,\n    };\n  };\n\n  /**\n   * @param {Number} colSpan - number of columns the element spans\n   * @returns {Array} colGroup\n   */\n  proto._getTopColGroup = function( colSpan ) {\n    if ( colSpan < 2 ) {\n      // if brick spans only one column, use all the column Ys\n      return this.colYs;\n    }\n\n    var colGroup = [];\n    // how many different places could this brick fit horizontally\n    var groupCount = this.cols + 1 - colSpan;\n    // for each group potential horizontal position\n    for ( var i = 0; i < groupCount; i++ ) {\n      colGroup[i] = this._getColGroupY( i, colSpan );\n    }\n    return colGroup;\n  };\n\n  proto._getColGroupY = function( col, colSpan ) {\n    if ( colSpan < 2 ) {\n      return this.colYs[ col ];\n    }\n    // make an array of colY values for that one group\n    var groupColYs = this.colYs.slice( col, col + colSpan );\n    // and get the max value of the array\n    return Math.max.apply( Math, groupColYs );\n  };\n\n  // get column position based on horizontal index. #873\n  proto._getHorizontalColPosition = function( colSpan, item ) {\n    var col = this.horizontalColIndex % this.cols;\n    var isOver = colSpan > 1 && col + colSpan > this.cols;\n    // shift to next row if item can't fit on current row\n    col = isOver ? 0 : col;\n    // don't let zero-size items take up space\n    var hasSize = item.size.outerWidth && item.size.outerHeight;\n    this.horizontalColIndex = hasSize ? col + colSpan : this.horizontalColIndex;\n\n    return {\n      col: col,\n      y: this._getColGroupY( col, colSpan ),\n    };\n  };\n\n  proto._manageStamp = function( stamp ) {\n    var stampSize = getSize( stamp );\n    var offset = this._getElementOffset( stamp );\n    // get the columns that this stamp affects\n    var isOriginLeft = this._getOption('originLeft');\n    var firstX = isOriginLeft ? offset.left : offset.right;\n    var lastX = firstX + stampSize.outerWidth;\n    var firstCol = Math.floor( firstX / this.columnWidth );\n    firstCol = Math.max( 0, firstCol );\n    var lastCol = Math.floor( lastX / this.columnWidth );\n    // lastCol should not go over if multiple of columnWidth #425\n    lastCol -= lastX % this.columnWidth ? 0 : 1;\n    lastCol = Math.min( this.cols - 1, lastCol );\n    // set colYs to bottom of the stamp\n\n    var isOriginTop = this._getOption('originTop');\n    var stampMaxY = ( isOriginTop ? offset.top : offset.bottom ) +\n      stampSize.outerHeight;\n    for ( var i = firstCol; i <= lastCol; i++ ) {\n      this.colYs[i] = Math.max( stampMaxY, this.colYs[i] );\n    }\n  };\n\n  proto._getContainerSize = function() {\n    this.maxY = Math.max.apply( Math, this.colYs );\n    var size = {\n      height: this.maxY\n    };\n\n    if ( this._getOption('fitWidth') ) {\n      size.width = this._getContainerFitWidth();\n    }\n\n    return size;\n  };\n\n  proto._getContainerFitWidth = function() {\n    var unusedCols = 0;\n    // count unused columns\n    var i = this.cols;\n    while ( --i ) {\n      if ( this.colYs[i] !== 0 ) {\n        break;\n      }\n      unusedCols++;\n    }\n    // fit container to columns that have been used\n    return ( this.cols - unusedCols ) * this.columnWidth - this.gutter;\n  };\n\n  proto.needsResizeLayout = function() {\n    var previousWidth = this.containerWidth;\n    this.getContainerWidth();\n    return previousWidth != this.containerWidth;\n  };\n\n  return Masonry;\n\n}));\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/masonry-layout/masonry.js?\n}");

/***/ },

/***/ "./node_modules/object-assign/index.js"
/*!*********************************************!*\
  !*** ./node_modules/object-assign/index.js ***!
  \*********************************************/
(module) {

"use strict";
eval("{/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\n\n\n/* eslint-disable no-unused-vars */\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\nfunction toObject(val) {\n\tif (val === null || val === undefined) {\n\t\tthrow new TypeError('Object.assign cannot be called with null or undefined');\n\t}\n\n\treturn Object(val);\n}\n\nfunction shouldUseNative() {\n\ttry {\n\t\tif (!Object.assign) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Detect buggy property enumeration order in older V8 versions.\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=4118\n\t\tvar test1 = new String('abc');  // eslint-disable-line no-new-wrappers\n\t\ttest1[5] = 'de';\n\t\tif (Object.getOwnPropertyNames(test1)[0] === '5') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test2 = {};\n\t\tfor (var i = 0; i < 10; i++) {\n\t\t\ttest2['_' + String.fromCharCode(i)] = i;\n\t\t}\n\t\tvar order2 = Object.getOwnPropertyNames(test2).map(function (n) {\n\t\t\treturn test2[n];\n\t\t});\n\t\tif (order2.join('') !== '0123456789') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test3 = {};\n\t\t'abcdefghijklmnopqrst'.split('').forEach(function (letter) {\n\t\t\ttest3[letter] = letter;\n\t\t});\n\t\tif (Object.keys(Object.assign({}, test3)).join('') !==\n\t\t\t\t'abcdefghijklmnopqrst') {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t} catch (err) {\n\t\t// We don't expect any of the above to throw, but better to be safe.\n\t\treturn false;\n\t}\n}\n\nmodule.exports = shouldUseNative() ? Object.assign : function (target, source) {\n\tvar from;\n\tvar to = toObject(target);\n\tvar symbols;\n\n\tfor (var s = 1; s < arguments.length; s++) {\n\t\tfrom = Object(arguments[s]);\n\n\t\tfor (var key in from) {\n\t\t\tif (hasOwnProperty.call(from, key)) {\n\t\t\t\tto[key] = from[key];\n\t\t\t}\n\t\t}\n\n\t\tif (getOwnPropertySymbols) {\n\t\t\tsymbols = getOwnPropertySymbols(from);\n\t\t\tfor (var i = 0; i < symbols.length; i++) {\n\t\t\t\tif (propIsEnumerable.call(from, symbols[i])) {\n\t\t\t\t\tto[symbols[i]] = from[symbols[i]];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn to;\n};\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/object-assign/index.js?\n}");

/***/ },

/***/ "./node_modules/outlayer/item.js"
/*!***************************************!*\
  !*** ./node_modules/outlayer/item.js ***!
  \***************************************/
(module, exports, __webpack_require__) {

eval("{var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/**\n * Outlayer Item\n */\n\n( function( window, factory ) {\n  // universal module definition\n  /* jshint strict: false */ /* globals define, module, require */\n  if ( true ) {\n    // AMD - RequireJS\n    !(__WEBPACK_AMD_DEFINE_ARRAY__ = [\n        __webpack_require__(/*! ev-emitter/ev-emitter */ \"./node_modules/outlayer/node_modules/ev-emitter/ev-emitter.js\"),\n        __webpack_require__(/*! get-size/get-size */ \"./node_modules/get-size/get-size.js\")\n      ], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?\n\t\t(__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n  } else // removed by dead control flow\n{}\n\n}( window, function factory( EvEmitter, getSize ) {\n'use strict';\n\n// ----- helpers ----- //\n\nfunction isEmptyObj( obj ) {\n  for ( var prop in obj ) {\n    return false;\n  }\n  prop = null;\n  return true;\n}\n\n// -------------------------- CSS3 support -------------------------- //\n\n\nvar docElemStyle = document.documentElement.style;\n\nvar transitionProperty = typeof docElemStyle.transition == 'string' ?\n  'transition' : 'WebkitTransition';\nvar transformProperty = typeof docElemStyle.transform == 'string' ?\n  'transform' : 'WebkitTransform';\n\nvar transitionEndEvent = {\n  WebkitTransition: 'webkitTransitionEnd',\n  transition: 'transitionend'\n}[ transitionProperty ];\n\n// cache all vendor properties that could have vendor prefix\nvar vendorProperties = {\n  transform: transformProperty,\n  transition: transitionProperty,\n  transitionDuration: transitionProperty + 'Duration',\n  transitionProperty: transitionProperty + 'Property',\n  transitionDelay: transitionProperty + 'Delay'\n};\n\n// -------------------------- Item -------------------------- //\n\nfunction Item( element, layout ) {\n  if ( !element ) {\n    return;\n  }\n\n  this.element = element;\n  // parent layout class, i.e. Masonry, Isotope, or Packery\n  this.layout = layout;\n  this.position = {\n    x: 0,\n    y: 0\n  };\n\n  this._create();\n}\n\n// inherit EvEmitter\nvar proto = Item.prototype = Object.create( EvEmitter.prototype );\nproto.constructor = Item;\n\nproto._create = function() {\n  // transition objects\n  this._transn = {\n    ingProperties: {},\n    clean: {},\n    onEnd: {}\n  };\n\n  this.css({\n    position: 'absolute'\n  });\n};\n\n// trigger specified handler for event type\nproto.handleEvent = function( event ) {\n  var method = 'on' + event.type;\n  if ( this[ method ] ) {\n    this[ method ]( event );\n  }\n};\n\nproto.getSize = function() {\n  this.size = getSize( this.element );\n};\n\n/**\n * apply CSS styles to element\n * @param {Object} style\n */\nproto.css = function( style ) {\n  var elemStyle = this.element.style;\n\n  for ( var prop in style ) {\n    // use vendor property if available\n    var supportedProp = vendorProperties[ prop ] || prop;\n    elemStyle[ supportedProp ] = style[ prop ];\n  }\n};\n\n // measure position, and sets it\nproto.getPosition = function() {\n  var style = getComputedStyle( this.element );\n  var isOriginLeft = this.layout._getOption('originLeft');\n  var isOriginTop = this.layout._getOption('originTop');\n  var xValue = style[ isOriginLeft ? 'left' : 'right' ];\n  var yValue = style[ isOriginTop ? 'top' : 'bottom' ];\n  var x = parseFloat( xValue );\n  var y = parseFloat( yValue );\n  // convert percent to pixels\n  var layoutSize = this.layout.size;\n  if ( xValue.indexOf('%') != -1 ) {\n    x = ( x / 100 ) * layoutSize.width;\n  }\n  if ( yValue.indexOf('%') != -1 ) {\n    y = ( y / 100 ) * layoutSize.height;\n  }\n  // clean up 'auto' or other non-integer values\n  x = isNaN( x ) ? 0 : x;\n  y = isNaN( y ) ? 0 : y;\n  // remove padding from measurement\n  x -= isOriginLeft ? layoutSize.paddingLeft : layoutSize.paddingRight;\n  y -= isOriginTop ? layoutSize.paddingTop : layoutSize.paddingBottom;\n\n  this.position.x = x;\n  this.position.y = y;\n};\n\n// set settled position, apply padding\nproto.layoutPosition = function() {\n  var layoutSize = this.layout.size;\n  var style = {};\n  var isOriginLeft = this.layout._getOption('originLeft');\n  var isOriginTop = this.layout._getOption('originTop');\n\n  // x\n  var xPadding = isOriginLeft ? 'paddingLeft' : 'paddingRight';\n  var xProperty = isOriginLeft ? 'left' : 'right';\n  var xResetProperty = isOriginLeft ? 'right' : 'left';\n\n  var x = this.position.x + layoutSize[ xPadding ];\n  // set in percentage or pixels\n  style[ xProperty ] = this.getXValue( x );\n  // reset other property\n  style[ xResetProperty ] = '';\n\n  // y\n  var yPadding = isOriginTop ? 'paddingTop' : 'paddingBottom';\n  var yProperty = isOriginTop ? 'top' : 'bottom';\n  var yResetProperty = isOriginTop ? 'bottom' : 'top';\n\n  var y = this.position.y + layoutSize[ yPadding ];\n  // set in percentage or pixels\n  style[ yProperty ] = this.getYValue( y );\n  // reset other property\n  style[ yResetProperty ] = '';\n\n  this.css( style );\n  this.emitEvent( 'layout', [ this ] );\n};\n\nproto.getXValue = function( x ) {\n  var isHorizontal = this.layout._getOption('horizontal');\n  return this.layout.options.percentPosition && !isHorizontal ?\n    ( ( x / this.layout.size.width ) * 100 ) + '%' : x + 'px';\n};\n\nproto.getYValue = function( y ) {\n  var isHorizontal = this.layout._getOption('horizontal');\n  return this.layout.options.percentPosition && isHorizontal ?\n    ( ( y / this.layout.size.height ) * 100 ) + '%' : y + 'px';\n};\n\nproto._transitionTo = function( x, y ) {\n  this.getPosition();\n  // get current x & y from top/left\n  var curX = this.position.x;\n  var curY = this.position.y;\n\n  var didNotMove = x == this.position.x && y == this.position.y;\n\n  // save end position\n  this.setPosition( x, y );\n\n  // if did not move and not transitioning, just go to layout\n  if ( didNotMove && !this.isTransitioning ) {\n    this.layoutPosition();\n    return;\n  }\n\n  var transX = x - curX;\n  var transY = y - curY;\n  var transitionStyle = {};\n  transitionStyle.transform = this.getTranslate( transX, transY );\n\n  this.transition({\n    to: transitionStyle,\n    onTransitionEnd: {\n      transform: this.layoutPosition\n    },\n    isCleaning: true\n  });\n};\n\nproto.getTranslate = function( x, y ) {\n  // flip cooridinates if origin on right or bottom\n  var isOriginLeft = this.layout._getOption('originLeft');\n  var isOriginTop = this.layout._getOption('originTop');\n  x = isOriginLeft ? x : -x;\n  y = isOriginTop ? y : -y;\n  return 'translate3d(' + x + 'px, ' + y + 'px, 0)';\n};\n\n// non transition + transform support\nproto.goTo = function( x, y ) {\n  this.setPosition( x, y );\n  this.layoutPosition();\n};\n\nproto.moveTo = proto._transitionTo;\n\nproto.setPosition = function( x, y ) {\n  this.position.x = parseFloat( x );\n  this.position.y = parseFloat( y );\n};\n\n// ----- transition ----- //\n\n/**\n * @param {Object} style - CSS\n * @param {Function} onTransitionEnd\n */\n\n// non transition, just trigger callback\nproto._nonTransition = function( args ) {\n  this.css( args.to );\n  if ( args.isCleaning ) {\n    this._removeStyles( args.to );\n  }\n  for ( var prop in args.onTransitionEnd ) {\n    args.onTransitionEnd[ prop ].call( this );\n  }\n};\n\n/**\n * proper transition\n * @param {Object} args - arguments\n *   @param {Object} to - style to transition to\n *   @param {Object} from - style to start transition from\n *   @param {Boolean} isCleaning - removes transition styles after transition\n *   @param {Function} onTransitionEnd - callback\n */\nproto.transition = function( args ) {\n  // redirect to nonTransition if no transition duration\n  if ( !parseFloat( this.layout.options.transitionDuration ) ) {\n    this._nonTransition( args );\n    return;\n  }\n\n  var _transition = this._transn;\n  // keep track of onTransitionEnd callback by css property\n  for ( var prop in args.onTransitionEnd ) {\n    _transition.onEnd[ prop ] = args.onTransitionEnd[ prop ];\n  }\n  // keep track of properties that are transitioning\n  for ( prop in args.to ) {\n    _transition.ingProperties[ prop ] = true;\n    // keep track of properties to clean up when transition is done\n    if ( args.isCleaning ) {\n      _transition.clean[ prop ] = true;\n    }\n  }\n\n  // set from styles\n  if ( args.from ) {\n    this.css( args.from );\n    // force redraw. http://blog.alexmaccaw.com/css-transitions\n    var h = this.element.offsetHeight;\n    // hack for JSHint to hush about unused var\n    h = null;\n  }\n  // enable transition\n  this.enableTransition( args.to );\n  // set styles that are transitioning\n  this.css( args.to );\n\n  this.isTransitioning = true;\n\n};\n\n// dash before all cap letters, including first for\n// WebkitTransform => -webkit-transform\nfunction toDashedAll( str ) {\n  return str.replace( /([A-Z])/g, function( $1 ) {\n    return '-' + $1.toLowerCase();\n  });\n}\n\nvar transitionProps = 'opacity,' + toDashedAll( transformProperty );\n\nproto.enableTransition = function(/* style */) {\n  // HACK changing transitionProperty during a transition\n  // will cause transition to jump\n  if ( this.isTransitioning ) {\n    return;\n  }\n\n  // make `transition: foo, bar, baz` from style object\n  // HACK un-comment this when enableTransition can work\n  // while a transition is happening\n  // var transitionValues = [];\n  // for ( var prop in style ) {\n  //   // dash-ify camelCased properties like WebkitTransition\n  //   prop = vendorProperties[ prop ] || prop;\n  //   transitionValues.push( toDashedAll( prop ) );\n  // }\n  // munge number to millisecond, to match stagger\n  var duration = this.layout.options.transitionDuration;\n  duration = typeof duration == 'number' ? duration + 'ms' : duration;\n  // enable transition styles\n  this.css({\n    transitionProperty: transitionProps,\n    transitionDuration: duration,\n    transitionDelay: this.staggerDelay || 0\n  });\n  // listen for transition end event\n  this.element.addEventListener( transitionEndEvent, this, false );\n};\n\n// ----- events ----- //\n\nproto.onwebkitTransitionEnd = function( event ) {\n  this.ontransitionend( event );\n};\n\nproto.onotransitionend = function( event ) {\n  this.ontransitionend( event );\n};\n\n// properties that I munge to make my life easier\nvar dashedVendorProperties = {\n  '-webkit-transform': 'transform'\n};\n\nproto.ontransitionend = function( event ) {\n  // disregard bubbled events from children\n  if ( event.target !== this.element ) {\n    return;\n  }\n  var _transition = this._transn;\n  // get property name of transitioned property, convert to prefix-free\n  var propertyName = dashedVendorProperties[ event.propertyName ] || event.propertyName;\n\n  // remove property that has completed transitioning\n  delete _transition.ingProperties[ propertyName ];\n  // check if any properties are still transitioning\n  if ( isEmptyObj( _transition.ingProperties ) ) {\n    // all properties have completed transitioning\n    this.disableTransition();\n  }\n  // clean style\n  if ( propertyName in _transition.clean ) {\n    // clean up style\n    this.element.style[ event.propertyName ] = '';\n    delete _transition.clean[ propertyName ];\n  }\n  // trigger onTransitionEnd callback\n  if ( propertyName in _transition.onEnd ) {\n    var onTransitionEnd = _transition.onEnd[ propertyName ];\n    onTransitionEnd.call( this );\n    delete _transition.onEnd[ propertyName ];\n  }\n\n  this.emitEvent( 'transitionEnd', [ this ] );\n};\n\nproto.disableTransition = function() {\n  this.removeTransitionStyles();\n  this.element.removeEventListener( transitionEndEvent, this, false );\n  this.isTransitioning = false;\n};\n\n/**\n * removes style property from element\n * @param {Object} style\n**/\nproto._removeStyles = function( style ) {\n  // clean up transition styles\n  var cleanStyle = {};\n  for ( var prop in style ) {\n    cleanStyle[ prop ] = '';\n  }\n  this.css( cleanStyle );\n};\n\nvar cleanTransitionStyle = {\n  transitionProperty: '',\n  transitionDuration: '',\n  transitionDelay: ''\n};\n\nproto.removeTransitionStyles = function() {\n  // remove transition\n  this.css( cleanTransitionStyle );\n};\n\n// ----- stagger ----- //\n\nproto.stagger = function( delay ) {\n  delay = isNaN( delay ) ? 0 : delay;\n  this.staggerDelay = delay + 'ms';\n};\n\n// ----- show/hide/remove ----- //\n\n// remove element from DOM\nproto.removeElem = function() {\n  this.element.parentNode.removeChild( this.element );\n  // remove display: none\n  this.css({ display: '' });\n  this.emitEvent( 'remove', [ this ] );\n};\n\nproto.remove = function() {\n  // just remove element if no transition support or no transition\n  if ( !transitionProperty || !parseFloat( this.layout.options.transitionDuration ) ) {\n    this.removeElem();\n    return;\n  }\n\n  // start transition\n  this.once( 'transitionEnd', function() {\n    this.removeElem();\n  });\n  this.hide();\n};\n\nproto.reveal = function() {\n  delete this.isHidden;\n  // remove display: none\n  this.css({ display: '' });\n\n  var options = this.layout.options;\n\n  var onTransitionEnd = {};\n  var transitionEndProperty = this.getHideRevealTransitionEndProperty('visibleStyle');\n  onTransitionEnd[ transitionEndProperty ] = this.onRevealTransitionEnd;\n\n  this.transition({\n    from: options.hiddenStyle,\n    to: options.visibleStyle,\n    isCleaning: true,\n    onTransitionEnd: onTransitionEnd\n  });\n};\n\nproto.onRevealTransitionEnd = function() {\n  // check if still visible\n  // during transition, item may have been hidden\n  if ( !this.isHidden ) {\n    this.emitEvent('reveal');\n  }\n};\n\n/**\n * get style property use for hide/reveal transition end\n * @param {String} styleProperty - hiddenStyle/visibleStyle\n * @returns {String}\n */\nproto.getHideRevealTransitionEndProperty = function( styleProperty ) {\n  var optionStyle = this.layout.options[ styleProperty ];\n  // use opacity\n  if ( optionStyle.opacity ) {\n    return 'opacity';\n  }\n  // get first property\n  for ( var prop in optionStyle ) {\n    return prop;\n  }\n};\n\nproto.hide = function() {\n  // set flag\n  this.isHidden = true;\n  // remove display: none\n  this.css({ display: '' });\n\n  var options = this.layout.options;\n\n  var onTransitionEnd = {};\n  var transitionEndProperty = this.getHideRevealTransitionEndProperty('hiddenStyle');\n  onTransitionEnd[ transitionEndProperty ] = this.onHideTransitionEnd;\n\n  this.transition({\n    from: options.visibleStyle,\n    to: options.hiddenStyle,\n    // keep hidden stuff hidden\n    isCleaning: true,\n    onTransitionEnd: onTransitionEnd\n  });\n};\n\nproto.onHideTransitionEnd = function() {\n  // check if still hidden\n  // during transition, item may have been un-hidden\n  if ( this.isHidden ) {\n    this.css({ display: 'none' });\n    this.emitEvent('hide');\n  }\n};\n\nproto.destroy = function() {\n  this.css({\n    position: '',\n    left: '',\n    right: '',\n    top: '',\n    bottom: '',\n    transition: '',\n    transform: ''\n  });\n};\n\nreturn Item;\n\n}));\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/outlayer/item.js?\n}");

/***/ },

/***/ "./node_modules/outlayer/node_modules/ev-emitter/ev-emitter.js"
/*!*********************************************************************!*\
  !*** ./node_modules/outlayer/node_modules/ev-emitter/ev-emitter.js ***!
  \*********************************************************************/
(module, exports, __webpack_require__) {

eval("{var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;/**\n * EvEmitter v1.1.0\n * Lil' event emitter\n * MIT License\n */\n\n/* jshint unused: true, undef: true, strict: true */\n\n( function( global, factory ) {\n  // universal module definition\n  /* jshint strict: false */ /* globals define, module, window */\n  if ( true ) {\n    // AMD - RequireJS\n    !(__WEBPACK_AMD_DEFINE_FACTORY__ = (factory),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?\n\t\t(__WEBPACK_AMD_DEFINE_FACTORY__.call(exports, __webpack_require__, exports, module)) :\n\t\t__WEBPACK_AMD_DEFINE_FACTORY__),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n  } else // removed by dead control flow\n{}\n\n}( typeof window != 'undefined' ? window : this, function() {\n\n\"use strict\";\n\nfunction EvEmitter() {}\n\nvar proto = EvEmitter.prototype;\n\nproto.on = function( eventName, listener ) {\n  if ( !eventName || !listener ) {\n    return;\n  }\n  // set events hash\n  var events = this._events = this._events || {};\n  // set listeners array\n  var listeners = events[ eventName ] = events[ eventName ] || [];\n  // only add once\n  if ( listeners.indexOf( listener ) == -1 ) {\n    listeners.push( listener );\n  }\n\n  return this;\n};\n\nproto.once = function( eventName, listener ) {\n  if ( !eventName || !listener ) {\n    return;\n  }\n  // add event\n  this.on( eventName, listener );\n  // set once flag\n  // set onceEvents hash\n  var onceEvents = this._onceEvents = this._onceEvents || {};\n  // set onceListeners object\n  var onceListeners = onceEvents[ eventName ] = onceEvents[ eventName ] || {};\n  // set flag\n  onceListeners[ listener ] = true;\n\n  return this;\n};\n\nproto.off = function( eventName, listener ) {\n  var listeners = this._events && this._events[ eventName ];\n  if ( !listeners || !listeners.length ) {\n    return;\n  }\n  var index = listeners.indexOf( listener );\n  if ( index != -1 ) {\n    listeners.splice( index, 1 );\n  }\n\n  return this;\n};\n\nproto.emitEvent = function( eventName, args ) {\n  var listeners = this._events && this._events[ eventName ];\n  if ( !listeners || !listeners.length ) {\n    return;\n  }\n  // copy over to avoid interference if .off() in listener\n  listeners = listeners.slice(0);\n  args = args || [];\n  // once stuff\n  var onceListeners = this._onceEvents && this._onceEvents[ eventName ];\n\n  for ( var i=0; i < listeners.length; i++ ) {\n    var listener = listeners[i]\n    var isOnce = onceListeners && onceListeners[ listener ];\n    if ( isOnce ) {\n      // remove listener\n      // remove before trigger to prevent recursion\n      this.off( eventName, listener );\n      // unset once flag\n      delete onceListeners[ listener ];\n    }\n    // trigger listener\n    listener.apply( this, args );\n  }\n\n  return this;\n};\n\nproto.allOff = function() {\n  delete this._events;\n  delete this._onceEvents;\n};\n\nreturn EvEmitter;\n\n}));\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/outlayer/node_modules/ev-emitter/ev-emitter.js?\n}");

/***/ },

/***/ "./node_modules/outlayer/outlayer.js"
/*!*******************************************!*\
  !*** ./node_modules/outlayer/outlayer.js ***!
  \*******************************************/
(module, exports, __webpack_require__) {

eval("{var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!\n * Outlayer v2.1.1\n * the brains and guts of a layout library\n * MIT license\n */\n\n( function( window, factory ) {\n  'use strict';\n  // universal module definition\n  /* jshint strict: false */ /* globals define, module, require */\n  if ( true ) {\n    // AMD - RequireJS\n    !(__WEBPACK_AMD_DEFINE_ARRAY__ = [\n        __webpack_require__(/*! ev-emitter/ev-emitter */ \"./node_modules/outlayer/node_modules/ev-emitter/ev-emitter.js\"),\n        __webpack_require__(/*! get-size/get-size */ \"./node_modules/get-size/get-size.js\"),\n        __webpack_require__(/*! fizzy-ui-utils/utils */ \"./node_modules/fizzy-ui-utils/utils.js\"),\n        __webpack_require__(/*! ./item */ \"./node_modules/outlayer/item.js\")\n      ], __WEBPACK_AMD_DEFINE_RESULT__ = (function( EvEmitter, getSize, utils, Item ) {\n        return factory( window, EvEmitter, getSize, utils, Item);\n      }).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n  } else // removed by dead control flow\n{}\n\n}( window, function factory( window, EvEmitter, getSize, utils, Item ) {\n'use strict';\n\n// ----- vars ----- //\n\nvar console = window.console;\nvar jQuery = window.jQuery;\nvar noop = function() {};\n\n// -------------------------- Outlayer -------------------------- //\n\n// globally unique identifiers\nvar GUID = 0;\n// internal store of all Outlayer intances\nvar instances = {};\n\n\n/**\n * @param {Element, String} element\n * @param {Object} options\n * @constructor\n */\nfunction Outlayer( element, options ) {\n  var queryElement = utils.getQueryElement( element );\n  if ( !queryElement ) {\n    if ( console ) {\n      console.error( 'Bad element for ' + this.constructor.namespace +\n        ': ' + ( queryElement || element ) );\n    }\n    return;\n  }\n  this.element = queryElement;\n  // add jQuery\n  if ( jQuery ) {\n    this.$element = jQuery( this.element );\n  }\n\n  // options\n  this.options = utils.extend( {}, this.constructor.defaults );\n  this.option( options );\n\n  // add id for Outlayer.getFromElement\n  var id = ++GUID;\n  this.element.outlayerGUID = id; // expando\n  instances[ id ] = this; // associate via id\n\n  // kick it off\n  this._create();\n\n  var isInitLayout = this._getOption('initLayout');\n  if ( isInitLayout ) {\n    this.layout();\n  }\n}\n\n// settings are for internal use only\nOutlayer.namespace = 'outlayer';\nOutlayer.Item = Item;\n\n// default options\nOutlayer.defaults = {\n  containerStyle: {\n    position: 'relative'\n  },\n  initLayout: true,\n  originLeft: true,\n  originTop: true,\n  resize: true,\n  resizeContainer: true,\n  // item options\n  transitionDuration: '0.4s',\n  hiddenStyle: {\n    opacity: 0,\n    transform: 'scale(0.001)'\n  },\n  visibleStyle: {\n    opacity: 1,\n    transform: 'scale(1)'\n  }\n};\n\nvar proto = Outlayer.prototype;\n// inherit EvEmitter\nutils.extend( proto, EvEmitter.prototype );\n\n/**\n * set options\n * @param {Object} opts\n */\nproto.option = function( opts ) {\n  utils.extend( this.options, opts );\n};\n\n/**\n * get backwards compatible option value, check old name\n */\nproto._getOption = function( option ) {\n  var oldOption = this.constructor.compatOptions[ option ];\n  return oldOption && this.options[ oldOption ] !== undefined ?\n    this.options[ oldOption ] : this.options[ option ];\n};\n\nOutlayer.compatOptions = {\n  // currentName: oldName\n  initLayout: 'isInitLayout',\n  horizontal: 'isHorizontal',\n  layoutInstant: 'isLayoutInstant',\n  originLeft: 'isOriginLeft',\n  originTop: 'isOriginTop',\n  resize: 'isResizeBound',\n  resizeContainer: 'isResizingContainer'\n};\n\nproto._create = function() {\n  // get items from children\n  this.reloadItems();\n  // elements that affect layout, but are not laid out\n  this.stamps = [];\n  this.stamp( this.options.stamp );\n  // set container style\n  utils.extend( this.element.style, this.options.containerStyle );\n\n  // bind resize method\n  var canBindResize = this._getOption('resize');\n  if ( canBindResize ) {\n    this.bindResize();\n  }\n};\n\n// goes through all children again and gets bricks in proper order\nproto.reloadItems = function() {\n  // collection of item elements\n  this.items = this._itemize( this.element.children );\n};\n\n\n/**\n * turn elements into Outlayer.Items to be used in layout\n * @param {Array or NodeList or HTMLElement} elems\n * @returns {Array} items - collection of new Outlayer Items\n */\nproto._itemize = function( elems ) {\n\n  var itemElems = this._filterFindItemElements( elems );\n  var Item = this.constructor.Item;\n\n  // create new Outlayer Items for collection\n  var items = [];\n  for ( var i=0; i < itemElems.length; i++ ) {\n    var elem = itemElems[i];\n    var item = new Item( elem, this );\n    items.push( item );\n  }\n\n  return items;\n};\n\n/**\n * get item elements to be used in layout\n * @param {Array or NodeList or HTMLElement} elems\n * @returns {Array} items - item elements\n */\nproto._filterFindItemElements = function( elems ) {\n  return utils.filterFindElements( elems, this.options.itemSelector );\n};\n\n/**\n * getter method for getting item elements\n * @returns {Array} elems - collection of item elements\n */\nproto.getItemElements = function() {\n  return this.items.map( function( item ) {\n    return item.element;\n  });\n};\n\n// ----- init & layout ----- //\n\n/**\n * lays out all items\n */\nproto.layout = function() {\n  this._resetLayout();\n  this._manageStamps();\n\n  // don't animate first layout\n  var layoutInstant = this._getOption('layoutInstant');\n  var isInstant = layoutInstant !== undefined ?\n    layoutInstant : !this._isLayoutInited;\n  this.layoutItems( this.items, isInstant );\n\n  // flag for initalized\n  this._isLayoutInited = true;\n};\n\n// _init is alias for layout\nproto._init = proto.layout;\n\n/**\n * logic before any new layout\n */\nproto._resetLayout = function() {\n  this.getSize();\n};\n\n\nproto.getSize = function() {\n  this.size = getSize( this.element );\n};\n\n/**\n * get measurement from option, for columnWidth, rowHeight, gutter\n * if option is String -> get element from selector string, & get size of element\n * if option is Element -> get size of element\n * else use option as a number\n *\n * @param {String} measurement\n * @param {String} size - width or height\n * @private\n */\nproto._getMeasurement = function( measurement, size ) {\n  var option = this.options[ measurement ];\n  var elem;\n  if ( !option ) {\n    // default to 0\n    this[ measurement ] = 0;\n  } else {\n    // use option as an element\n    if ( typeof option == 'string' ) {\n      elem = this.element.querySelector( option );\n    } else if ( option instanceof HTMLElement ) {\n      elem = option;\n    }\n    // use size of element, if element\n    this[ measurement ] = elem ? getSize( elem )[ size ] : option;\n  }\n};\n\n/**\n * layout a collection of item elements\n * @api public\n */\nproto.layoutItems = function( items, isInstant ) {\n  items = this._getItemsForLayout( items );\n\n  this._layoutItems( items, isInstant );\n\n  this._postLayout();\n};\n\n/**\n * get the items to be laid out\n * you may want to skip over some items\n * @param {Array} items\n * @returns {Array} items\n */\nproto._getItemsForLayout = function( items ) {\n  return items.filter( function( item ) {\n    return !item.isIgnored;\n  });\n};\n\n/**\n * layout items\n * @param {Array} items\n * @param {Boolean} isInstant\n */\nproto._layoutItems = function( items, isInstant ) {\n  this._emitCompleteOnItems( 'layout', items );\n\n  if ( !items || !items.length ) {\n    // no items, emit event with empty array\n    return;\n  }\n\n  var queue = [];\n\n  items.forEach( function( item ) {\n    // get x/y object from method\n    var position = this._getItemLayoutPosition( item );\n    // enqueue\n    position.item = item;\n    position.isInstant = isInstant || item.isLayoutInstant;\n    queue.push( position );\n  }, this );\n\n  this._processLayoutQueue( queue );\n};\n\n/**\n * get item layout position\n * @param {Outlayer.Item} item\n * @returns {Object} x and y position\n */\nproto._getItemLayoutPosition = function( /* item */ ) {\n  return {\n    x: 0,\n    y: 0\n  };\n};\n\n/**\n * iterate over array and position each item\n * Reason being - separating this logic prevents 'layout invalidation'\n * thx @paul_irish\n * @param {Array} queue\n */\nproto._processLayoutQueue = function( queue ) {\n  this.updateStagger();\n  queue.forEach( function( obj, i ) {\n    this._positionItem( obj.item, obj.x, obj.y, obj.isInstant, i );\n  }, this );\n};\n\n// set stagger from option in milliseconds number\nproto.updateStagger = function() {\n  var stagger = this.options.stagger;\n  if ( stagger === null || stagger === undefined ) {\n    this.stagger = 0;\n    return;\n  }\n  this.stagger = getMilliseconds( stagger );\n  return this.stagger;\n};\n\n/**\n * Sets position of item in DOM\n * @param {Outlayer.Item} item\n * @param {Number} x - horizontal position\n * @param {Number} y - vertical position\n * @param {Boolean} isInstant - disables transitions\n */\nproto._positionItem = function( item, x, y, isInstant, i ) {\n  if ( isInstant ) {\n    // if not transition, just set CSS\n    item.goTo( x, y );\n  } else {\n    item.stagger( i * this.stagger );\n    item.moveTo( x, y );\n  }\n};\n\n/**\n * Any logic you want to do after each layout,\n * i.e. size the container\n */\nproto._postLayout = function() {\n  this.resizeContainer();\n};\n\nproto.resizeContainer = function() {\n  var isResizingContainer = this._getOption('resizeContainer');\n  if ( !isResizingContainer ) {\n    return;\n  }\n  var size = this._getContainerSize();\n  if ( size ) {\n    this._setContainerMeasure( size.width, true );\n    this._setContainerMeasure( size.height, false );\n  }\n};\n\n/**\n * Sets width or height of container if returned\n * @returns {Object} size\n *   @param {Number} width\n *   @param {Number} height\n */\nproto._getContainerSize = noop;\n\n/**\n * @param {Number} measure - size of width or height\n * @param {Boolean} isWidth\n */\nproto._setContainerMeasure = function( measure, isWidth ) {\n  if ( measure === undefined ) {\n    return;\n  }\n\n  var elemSize = this.size;\n  // add padding and border width if border box\n  if ( elemSize.isBorderBox ) {\n    measure += isWidth ? elemSize.paddingLeft + elemSize.paddingRight +\n      elemSize.borderLeftWidth + elemSize.borderRightWidth :\n      elemSize.paddingBottom + elemSize.paddingTop +\n      elemSize.borderTopWidth + elemSize.borderBottomWidth;\n  }\n\n  measure = Math.max( measure, 0 );\n  this.element.style[ isWidth ? 'width' : 'height' ] = measure + 'px';\n};\n\n/**\n * emit eventComplete on a collection of items events\n * @param {String} eventName\n * @param {Array} items - Outlayer.Items\n */\nproto._emitCompleteOnItems = function( eventName, items ) {\n  var _this = this;\n  function onComplete() {\n    _this.dispatchEvent( eventName + 'Complete', null, [ items ] );\n  }\n\n  var count = items.length;\n  if ( !items || !count ) {\n    onComplete();\n    return;\n  }\n\n  var doneCount = 0;\n  function tick() {\n    doneCount++;\n    if ( doneCount == count ) {\n      onComplete();\n    }\n  }\n\n  // bind callback\n  items.forEach( function( item ) {\n    item.once( eventName, tick );\n  });\n};\n\n/**\n * emits events via EvEmitter and jQuery events\n * @param {String} type - name of event\n * @param {Event} event - original event\n * @param {Array} args - extra arguments\n */\nproto.dispatchEvent = function( type, event, args ) {\n  // add original event to arguments\n  var emitArgs = event ? [ event ].concat( args ) : args;\n  this.emitEvent( type, emitArgs );\n\n  if ( jQuery ) {\n    // set this.$element\n    this.$element = this.$element || jQuery( this.element );\n    if ( event ) {\n      // create jQuery event\n      var $event = jQuery.Event( event );\n      $event.type = type;\n      this.$element.trigger( $event, args );\n    } else {\n      // just trigger with type if no event available\n      this.$element.trigger( type, args );\n    }\n  }\n};\n\n// -------------------------- ignore & stamps -------------------------- //\n\n\n/**\n * keep item in collection, but do not lay it out\n * ignored items do not get skipped in layout\n * @param {Element} elem\n */\nproto.ignore = function( elem ) {\n  var item = this.getItem( elem );\n  if ( item ) {\n    item.isIgnored = true;\n  }\n};\n\n/**\n * return item to layout collection\n * @param {Element} elem\n */\nproto.unignore = function( elem ) {\n  var item = this.getItem( elem );\n  if ( item ) {\n    delete item.isIgnored;\n  }\n};\n\n/**\n * adds elements to stamps\n * @param {NodeList, Array, Element, or String} elems\n */\nproto.stamp = function( elems ) {\n  elems = this._find( elems );\n  if ( !elems ) {\n    return;\n  }\n\n  this.stamps = this.stamps.concat( elems );\n  // ignore\n  elems.forEach( this.ignore, this );\n};\n\n/**\n * removes elements to stamps\n * @param {NodeList, Array, or Element} elems\n */\nproto.unstamp = function( elems ) {\n  elems = this._find( elems );\n  if ( !elems ){\n    return;\n  }\n\n  elems.forEach( function( elem ) {\n    // filter out removed stamp elements\n    utils.removeFrom( this.stamps, elem );\n    this.unignore( elem );\n  }, this );\n};\n\n/**\n * finds child elements\n * @param {NodeList, Array, Element, or String} elems\n * @returns {Array} elems\n */\nproto._find = function( elems ) {\n  if ( !elems ) {\n    return;\n  }\n  // if string, use argument as selector string\n  if ( typeof elems == 'string' ) {\n    elems = this.element.querySelectorAll( elems );\n  }\n  elems = utils.makeArray( elems );\n  return elems;\n};\n\nproto._manageStamps = function() {\n  if ( !this.stamps || !this.stamps.length ) {\n    return;\n  }\n\n  this._getBoundingRect();\n\n  this.stamps.forEach( this._manageStamp, this );\n};\n\n// update boundingLeft / Top\nproto._getBoundingRect = function() {\n  // get bounding rect for container element\n  var boundingRect = this.element.getBoundingClientRect();\n  var size = this.size;\n  this._boundingRect = {\n    left: boundingRect.left + size.paddingLeft + size.borderLeftWidth,\n    top: boundingRect.top + size.paddingTop + size.borderTopWidth,\n    right: boundingRect.right - ( size.paddingRight + size.borderRightWidth ),\n    bottom: boundingRect.bottom - ( size.paddingBottom + size.borderBottomWidth )\n  };\n};\n\n/**\n * @param {Element} stamp\n**/\nproto._manageStamp = noop;\n\n/**\n * get x/y position of element relative to container element\n * @param {Element} elem\n * @returns {Object} offset - has left, top, right, bottom\n */\nproto._getElementOffset = function( elem ) {\n  var boundingRect = elem.getBoundingClientRect();\n  var thisRect = this._boundingRect;\n  var size = getSize( elem );\n  var offset = {\n    left: boundingRect.left - thisRect.left - size.marginLeft,\n    top: boundingRect.top - thisRect.top - size.marginTop,\n    right: thisRect.right - boundingRect.right - size.marginRight,\n    bottom: thisRect.bottom - boundingRect.bottom - size.marginBottom\n  };\n  return offset;\n};\n\n// -------------------------- resize -------------------------- //\n\n// enable event handlers for listeners\n// i.e. resize -> onresize\nproto.handleEvent = utils.handleEvent;\n\n/**\n * Bind layout to window resizing\n */\nproto.bindResize = function() {\n  window.addEventListener( 'resize', this );\n  this.isResizeBound = true;\n};\n\n/**\n * Unbind layout to window resizing\n */\nproto.unbindResize = function() {\n  window.removeEventListener( 'resize', this );\n  this.isResizeBound = false;\n};\n\nproto.onresize = function() {\n  this.resize();\n};\n\nutils.debounceMethod( Outlayer, 'onresize', 100 );\n\nproto.resize = function() {\n  // don't trigger if size did not change\n  // or if resize was unbound. See #9\n  if ( !this.isResizeBound || !this.needsResizeLayout() ) {\n    return;\n  }\n\n  this.layout();\n};\n\n/**\n * check if layout is needed post layout\n * @returns Boolean\n */\nproto.needsResizeLayout = function() {\n  var size = getSize( this.element );\n  // check that this.size and size are there\n  // IE8 triggers resize on body size change, so they might not be\n  var hasSizes = this.size && size;\n  return hasSizes && size.innerWidth !== this.size.innerWidth;\n};\n\n// -------------------------- methods -------------------------- //\n\n/**\n * add items to Outlayer instance\n * @param {Array or NodeList or Element} elems\n * @returns {Array} items - Outlayer.Items\n**/\nproto.addItems = function( elems ) {\n  var items = this._itemize( elems );\n  // add items to collection\n  if ( items.length ) {\n    this.items = this.items.concat( items );\n  }\n  return items;\n};\n\n/**\n * Layout newly-appended item elements\n * @param {Array or NodeList or Element} elems\n */\nproto.appended = function( elems ) {\n  var items = this.addItems( elems );\n  if ( !items.length ) {\n    return;\n  }\n  // layout and reveal just the new items\n  this.layoutItems( items, true );\n  this.reveal( items );\n};\n\n/**\n * Layout prepended elements\n * @param {Array or NodeList or Element} elems\n */\nproto.prepended = function( elems ) {\n  var items = this._itemize( elems );\n  if ( !items.length ) {\n    return;\n  }\n  // add items to beginning of collection\n  var previousItems = this.items.slice(0);\n  this.items = items.concat( previousItems );\n  // start new layout\n  this._resetLayout();\n  this._manageStamps();\n  // layout new stuff without transition\n  this.layoutItems( items, true );\n  this.reveal( items );\n  // layout previous items\n  this.layoutItems( previousItems );\n};\n\n/**\n * reveal a collection of items\n * @param {Array of Outlayer.Items} items\n */\nproto.reveal = function( items ) {\n  this._emitCompleteOnItems( 'reveal', items );\n  if ( !items || !items.length ) {\n    return;\n  }\n  var stagger = this.updateStagger();\n  items.forEach( function( item, i ) {\n    item.stagger( i * stagger );\n    item.reveal();\n  });\n};\n\n/**\n * hide a collection of items\n * @param {Array of Outlayer.Items} items\n */\nproto.hide = function( items ) {\n  this._emitCompleteOnItems( 'hide', items );\n  if ( !items || !items.length ) {\n    return;\n  }\n  var stagger = this.updateStagger();\n  items.forEach( function( item, i ) {\n    item.stagger( i * stagger );\n    item.hide();\n  });\n};\n\n/**\n * reveal item elements\n * @param {Array}, {Element}, {NodeList} items\n */\nproto.revealItemElements = function( elems ) {\n  var items = this.getItems( elems );\n  this.reveal( items );\n};\n\n/**\n * hide item elements\n * @param {Array}, {Element}, {NodeList} items\n */\nproto.hideItemElements = function( elems ) {\n  var items = this.getItems( elems );\n  this.hide( items );\n};\n\n/**\n * get Outlayer.Item, given an Element\n * @param {Element} elem\n * @param {Function} callback\n * @returns {Outlayer.Item} item\n */\nproto.getItem = function( elem ) {\n  // loop through items to get the one that matches\n  for ( var i=0; i < this.items.length; i++ ) {\n    var item = this.items[i];\n    if ( item.element == elem ) {\n      // return item\n      return item;\n    }\n  }\n};\n\n/**\n * get collection of Outlayer.Items, given Elements\n * @param {Array} elems\n * @returns {Array} items - Outlayer.Items\n */\nproto.getItems = function( elems ) {\n  elems = utils.makeArray( elems );\n  var items = [];\n  elems.forEach( function( elem ) {\n    var item = this.getItem( elem );\n    if ( item ) {\n      items.push( item );\n    }\n  }, this );\n\n  return items;\n};\n\n/**\n * remove element(s) from instance and DOM\n * @param {Array or NodeList or Element} elems\n */\nproto.remove = function( elems ) {\n  var removeItems = this.getItems( elems );\n\n  this._emitCompleteOnItems( 'remove', removeItems );\n\n  // bail if no items to remove\n  if ( !removeItems || !removeItems.length ) {\n    return;\n  }\n\n  removeItems.forEach( function( item ) {\n    item.remove();\n    // remove item from collection\n    utils.removeFrom( this.items, item );\n  }, this );\n};\n\n// ----- destroy ----- //\n\n// remove and disable Outlayer instance\nproto.destroy = function() {\n  // clean up dynamic styles\n  var style = this.element.style;\n  style.height = '';\n  style.position = '';\n  style.width = '';\n  // destroy items\n  this.items.forEach( function( item ) {\n    item.destroy();\n  });\n\n  this.unbindResize();\n\n  var id = this.element.outlayerGUID;\n  delete instances[ id ]; // remove reference to instance by id\n  delete this.element.outlayerGUID;\n  // remove data for jQuery\n  if ( jQuery ) {\n    jQuery.removeData( this.element, this.constructor.namespace );\n  }\n\n};\n\n// -------------------------- data -------------------------- //\n\n/**\n * get Outlayer instance from element\n * @param {Element} elem\n * @returns {Outlayer}\n */\nOutlayer.data = function( elem ) {\n  elem = utils.getQueryElement( elem );\n  var id = elem && elem.outlayerGUID;\n  return id && instances[ id ];\n};\n\n\n// -------------------------- create Outlayer class -------------------------- //\n\n/**\n * create a layout class\n * @param {String} namespace\n */\nOutlayer.create = function( namespace, options ) {\n  // sub-class Outlayer\n  var Layout = subclass( Outlayer );\n  // apply new options and compatOptions\n  Layout.defaults = utils.extend( {}, Outlayer.defaults );\n  utils.extend( Layout.defaults, options );\n  Layout.compatOptions = utils.extend( {}, Outlayer.compatOptions  );\n\n  Layout.namespace = namespace;\n\n  Layout.data = Outlayer.data;\n\n  // sub-class Item\n  Layout.Item = subclass( Item );\n\n  // -------------------------- declarative -------------------------- //\n\n  utils.htmlInit( Layout, namespace );\n\n  // -------------------------- jQuery bridge -------------------------- //\n\n  // make into jQuery plugin\n  if ( jQuery && jQuery.bridget ) {\n    jQuery.bridget( namespace, Layout );\n  }\n\n  return Layout;\n};\n\nfunction subclass( Parent ) {\n  function SubClass() {\n    Parent.apply( this, arguments );\n  }\n\n  SubClass.prototype = Object.create( Parent.prototype );\n  SubClass.prototype.constructor = SubClass;\n\n  return SubClass;\n}\n\n// ----- helpers ----- //\n\n// how many milliseconds are in each unit\nvar msUnits = {\n  ms: 1,\n  s: 1000\n};\n\n// munge time-like parameter into millisecond number\n// '0.4s' -> 40\nfunction getMilliseconds( time ) {\n  if ( typeof time == 'number' ) {\n    return time;\n  }\n  var matches = time.match( /(^\\d*\\.?\\d*)(\\w*)/ );\n  var num = matches && matches[1];\n  var unit = matches && matches[2];\n  if ( !num.length ) {\n    return 0;\n  }\n  num = parseFloat( num );\n  var mult = msUnits[ unit ] || 1;\n  return num * mult;\n}\n\n// ----- fin ----- //\n\n// back in global\nOutlayer.Item = Item;\n\nreturn Outlayer;\n\n}));\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/outlayer/outlayer.js?\n}");

/***/ },

/***/ "./node_modules/prop-types/checkPropTypes.js"
/*!***************************************************!*\
  !*** ./node_modules/prop-types/checkPropTypes.js ***!
  \***************************************************/
(module, __unused_webpack_exports, __webpack_require__) {

"use strict";
eval("{/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\n\nvar printWarning = function() {};\n\nif (true) {\n  var ReactPropTypesSecret = __webpack_require__(/*! ./lib/ReactPropTypesSecret */ \"./node_modules/prop-types/lib/ReactPropTypesSecret.js\");\n  var loggedTypeFailures = {};\n  var has = __webpack_require__(/*! ./lib/has */ \"./node_modules/prop-types/lib/has.js\");\n\n  printWarning = function(text) {\n    var message = 'Warning: ' + text;\n    if (typeof console !== 'undefined') {\n      console.error(message);\n    }\n    try {\n      // --- Welcome to debugging React ---\n      // This error was thrown as a convenience so that you can use this stack\n      // to find the callsite that caused this warning to fire.\n      throw new Error(message);\n    } catch (x) { /**/ }\n  };\n}\n\n/**\n * Assert that the values match with the type specs.\n * Error messages are memorized and will only be shown once.\n *\n * @param {object} typeSpecs Map of name to a ReactPropType\n * @param {object} values Runtime values that need to be type-checked\n * @param {string} location e.g. \"prop\", \"context\", \"child context\"\n * @param {string} componentName Name of the component for error messages.\n * @param {?Function} getStack Returns the component stack.\n * @private\n */\nfunction checkPropTypes(typeSpecs, values, location, componentName, getStack) {\n  if (true) {\n    for (var typeSpecName in typeSpecs) {\n      if (has(typeSpecs, typeSpecName)) {\n        var error;\n        // Prop type validation may throw. In case they do, we don't want to\n        // fail the render phase where it didn't fail before. So we log it.\n        // After these have been cleaned up, we'll let them throw.\n        try {\n          // This is intentionally an invariant that gets caught. It's the same\n          // behavior as without this statement except with a better message.\n          if (typeof typeSpecs[typeSpecName] !== 'function') {\n            var err = Error(\n              (componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' +\n              'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.' +\n              'This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.'\n            );\n            err.name = 'Invariant Violation';\n            throw err;\n          }\n          error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);\n        } catch (ex) {\n          error = ex;\n        }\n        if (error && !(error instanceof Error)) {\n          printWarning(\n            (componentName || 'React class') + ': type specification of ' +\n            location + ' `' + typeSpecName + '` is invalid; the type checker ' +\n            'function must return `null` or an `Error` but returned a ' + typeof error + '. ' +\n            'You may have forgotten to pass an argument to the type checker ' +\n            'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' +\n            'shape all require an argument).'\n          );\n        }\n        if (error instanceof Error && !(error.message in loggedTypeFailures)) {\n          // Only monitor this failure once because there tends to be a lot of the\n          // same error.\n          loggedTypeFailures[error.message] = true;\n\n          var stack = getStack ? getStack() : '';\n\n          printWarning(\n            'Failed ' + location + ' type: ' + error.message + (stack != null ? stack : '')\n          );\n        }\n      }\n    }\n  }\n}\n\n/**\n * Resets warning cache when testing.\n *\n * @private\n */\ncheckPropTypes.resetWarningCache = function() {\n  if (true) {\n    loggedTypeFailures = {};\n  }\n}\n\nmodule.exports = checkPropTypes;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/prop-types/checkPropTypes.js?\n}");

/***/ },

/***/ "./node_modules/prop-types/factoryWithTypeCheckers.js"
/*!************************************************************!*\
  !*** ./node_modules/prop-types/factoryWithTypeCheckers.js ***!
  \************************************************************/
(module, __unused_webpack_exports, __webpack_require__) {

"use strict";
eval("{/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\n\nvar ReactIs = __webpack_require__(/*! react-is */ \"./node_modules/prop-types/node_modules/react-is/index.js\");\nvar assign = __webpack_require__(/*! object-assign */ \"./node_modules/object-assign/index.js\");\n\nvar ReactPropTypesSecret = __webpack_require__(/*! ./lib/ReactPropTypesSecret */ \"./node_modules/prop-types/lib/ReactPropTypesSecret.js\");\nvar has = __webpack_require__(/*! ./lib/has */ \"./node_modules/prop-types/lib/has.js\");\nvar checkPropTypes = __webpack_require__(/*! ./checkPropTypes */ \"./node_modules/prop-types/checkPropTypes.js\");\n\nvar printWarning = function() {};\n\nif (true) {\n  printWarning = function(text) {\n    var message = 'Warning: ' + text;\n    if (typeof console !== 'undefined') {\n      console.error(message);\n    }\n    try {\n      // --- Welcome to debugging React ---\n      // This error was thrown as a convenience so that you can use this stack\n      // to find the callsite that caused this warning to fire.\n      throw new Error(message);\n    } catch (x) {}\n  };\n}\n\nfunction emptyFunctionThatReturnsNull() {\n  return null;\n}\n\nmodule.exports = function(isValidElement, throwOnDirectAccess) {\n  /* global Symbol */\n  var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;\n  var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.\n\n  /**\n   * Returns the iterator method function contained on the iterable object.\n   *\n   * Be sure to invoke the function with the iterable as context:\n   *\n   *     var iteratorFn = getIteratorFn(myIterable);\n   *     if (iteratorFn) {\n   *       var iterator = iteratorFn.call(myIterable);\n   *       ...\n   *     }\n   *\n   * @param {?object} maybeIterable\n   * @return {?function}\n   */\n  function getIteratorFn(maybeIterable) {\n    var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);\n    if (typeof iteratorFn === 'function') {\n      return iteratorFn;\n    }\n  }\n\n  /**\n   * Collection of methods that allow declaration and validation of props that are\n   * supplied to React components. Example usage:\n   *\n   *   var Props = require('ReactPropTypes');\n   *   var MyArticle = React.createClass({\n   *     propTypes: {\n   *       // An optional string prop named \"description\".\n   *       description: Props.string,\n   *\n   *       // A required enum prop named \"category\".\n   *       category: Props.oneOf(['News','Photos']).isRequired,\n   *\n   *       // A prop named \"dialog\" that requires an instance of Dialog.\n   *       dialog: Props.instanceOf(Dialog).isRequired\n   *     },\n   *     render: function() { ... }\n   *   });\n   *\n   * A more formal specification of how these methods are used:\n   *\n   *   type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)\n   *   decl := ReactPropTypes.{type}(.isRequired)?\n   *\n   * Each and every declaration produces a function with the same signature. This\n   * allows the creation of custom validation functions. For example:\n   *\n   *  var MyLink = React.createClass({\n   *    propTypes: {\n   *      // An optional string or URI prop named \"href\".\n   *      href: function(props, propName, componentName) {\n   *        var propValue = props[propName];\n   *        if (propValue != null && typeof propValue !== 'string' &&\n   *            !(propValue instanceof URI)) {\n   *          return new Error(\n   *            'Expected a string or an URI for ' + propName + ' in ' +\n   *            componentName\n   *          );\n   *        }\n   *      }\n   *    },\n   *    render: function() {...}\n   *  });\n   *\n   * @internal\n   */\n\n  var ANONYMOUS = '<<anonymous>>';\n\n  // Important!\n  // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.\n  var ReactPropTypes = {\n    array: createPrimitiveTypeChecker('array'),\n    bigint: createPrimitiveTypeChecker('bigint'),\n    bool: createPrimitiveTypeChecker('boolean'),\n    func: createPrimitiveTypeChecker('function'),\n    number: createPrimitiveTypeChecker('number'),\n    object: createPrimitiveTypeChecker('object'),\n    string: createPrimitiveTypeChecker('string'),\n    symbol: createPrimitiveTypeChecker('symbol'),\n\n    any: createAnyTypeChecker(),\n    arrayOf: createArrayOfTypeChecker,\n    element: createElementTypeChecker(),\n    elementType: createElementTypeTypeChecker(),\n    instanceOf: createInstanceTypeChecker,\n    node: createNodeChecker(),\n    objectOf: createObjectOfTypeChecker,\n    oneOf: createEnumTypeChecker,\n    oneOfType: createUnionTypeChecker,\n    shape: createShapeTypeChecker,\n    exact: createStrictShapeTypeChecker,\n  };\n\n  /**\n   * inlined Object.is polyfill to avoid requiring consumers ship their own\n   * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is\n   */\n  /*eslint-disable no-self-compare*/\n  function is(x, y) {\n    // SameValue algorithm\n    if (x === y) {\n      // Steps 1-5, 7-10\n      // Steps 6.b-6.e: +0 != -0\n      return x !== 0 || 1 / x === 1 / y;\n    } else {\n      // Step 6.a: NaN == NaN\n      return x !== x && y !== y;\n    }\n  }\n  /*eslint-enable no-self-compare*/\n\n  /**\n   * We use an Error-like object for backward compatibility as people may call\n   * PropTypes directly and inspect their output. However, we don't use real\n   * Errors anymore. We don't inspect their stack anyway, and creating them\n   * is prohibitively expensive if they are created too often, such as what\n   * happens in oneOfType() for any type before the one that matched.\n   */\n  function PropTypeError(message, data) {\n    this.message = message;\n    this.data = data && typeof data === 'object' ? data: {};\n    this.stack = '';\n  }\n  // Make `instanceof Error` still work for returned errors.\n  PropTypeError.prototype = Error.prototype;\n\n  function createChainableTypeChecker(validate) {\n    if (true) {\n      var manualPropTypeCallCache = {};\n      var manualPropTypeWarningCount = 0;\n    }\n    function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {\n      componentName = componentName || ANONYMOUS;\n      propFullName = propFullName || propName;\n\n      if (secret !== ReactPropTypesSecret) {\n        if (throwOnDirectAccess) {\n          // New behavior only for users of `prop-types` package\n          var err = new Error(\n            'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n            'Use `PropTypes.checkPropTypes()` to call them. ' +\n            'Read more at http://fb.me/use-check-prop-types'\n          );\n          err.name = 'Invariant Violation';\n          throw err;\n        } else if ( true && typeof console !== 'undefined') {\n          // Old behavior for people using React.PropTypes\n          var cacheKey = componentName + ':' + propName;\n          if (\n            !manualPropTypeCallCache[cacheKey] &&\n            // Avoid spamming the console because they are often not actionable except for lib authors\n            manualPropTypeWarningCount < 3\n          ) {\n            printWarning(\n              'You are manually calling a React.PropTypes validation ' +\n              'function for the `' + propFullName + '` prop on `' + componentName + '`. This is deprecated ' +\n              'and will throw in the standalone `prop-types` package. ' +\n              'You may be seeing this warning due to a third-party PropTypes ' +\n              'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.'\n            );\n            manualPropTypeCallCache[cacheKey] = true;\n            manualPropTypeWarningCount++;\n          }\n        }\n      }\n      if (props[propName] == null) {\n        if (isRequired) {\n          if (props[propName] === null) {\n            return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));\n          }\n          return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));\n        }\n        return null;\n      } else {\n        return validate(props, propName, componentName, location, propFullName);\n      }\n    }\n\n    var chainedCheckType = checkType.bind(null, false);\n    chainedCheckType.isRequired = checkType.bind(null, true);\n\n    return chainedCheckType;\n  }\n\n  function createPrimitiveTypeChecker(expectedType) {\n    function validate(props, propName, componentName, location, propFullName, secret) {\n      var propValue = props[propName];\n      var propType = getPropType(propValue);\n      if (propType !== expectedType) {\n        // `propValue` being instance of, say, date/regexp, pass the 'object'\n        // check, but we can offer a more precise error message here rather than\n        // 'of type `object`'.\n        var preciseType = getPreciseType(propValue);\n\n        return new PropTypeError(\n          'Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'),\n          {expectedType: expectedType}\n        );\n      }\n      return null;\n    }\n    return createChainableTypeChecker(validate);\n  }\n\n  function createAnyTypeChecker() {\n    return createChainableTypeChecker(emptyFunctionThatReturnsNull);\n  }\n\n  function createArrayOfTypeChecker(typeChecker) {\n    function validate(props, propName, componentName, location, propFullName) {\n      if (typeof typeChecker !== 'function') {\n        return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');\n      }\n      var propValue = props[propName];\n      if (!Array.isArray(propValue)) {\n        var propType = getPropType(propValue);\n        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));\n      }\n      for (var i = 0; i < propValue.length; i++) {\n        var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);\n        if (error instanceof Error) {\n          return error;\n        }\n      }\n      return null;\n    }\n    return createChainableTypeChecker(validate);\n  }\n\n  function createElementTypeChecker() {\n    function validate(props, propName, componentName, location, propFullName) {\n      var propValue = props[propName];\n      if (!isValidElement(propValue)) {\n        var propType = getPropType(propValue);\n        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));\n      }\n      return null;\n    }\n    return createChainableTypeChecker(validate);\n  }\n\n  function createElementTypeTypeChecker() {\n    function validate(props, propName, componentName, location, propFullName) {\n      var propValue = props[propName];\n      if (!ReactIs.isValidElementType(propValue)) {\n        var propType = getPropType(propValue);\n        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement type.'));\n      }\n      return null;\n    }\n    return createChainableTypeChecker(validate);\n  }\n\n  function createInstanceTypeChecker(expectedClass) {\n    function validate(props, propName, componentName, location, propFullName) {\n      if (!(props[propName] instanceof expectedClass)) {\n        var expectedClassName = expectedClass.name || ANONYMOUS;\n        var actualClassName = getClassName(props[propName]);\n        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));\n      }\n      return null;\n    }\n    return createChainableTypeChecker(validate);\n  }\n\n  function createEnumTypeChecker(expectedValues) {\n    if (!Array.isArray(expectedValues)) {\n      if (true) {\n        if (arguments.length > 1) {\n          printWarning(\n            'Invalid arguments supplied to oneOf, expected an array, got ' + arguments.length + ' arguments. ' +\n            'A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).'\n          );\n        } else {\n          printWarning('Invalid argument supplied to oneOf, expected an array.');\n        }\n      }\n      return emptyFunctionThatReturnsNull;\n    }\n\n    function validate(props, propName, componentName, location, propFullName) {\n      var propValue = props[propName];\n      for (var i = 0; i < expectedValues.length; i++) {\n        if (is(propValue, expectedValues[i])) {\n          return null;\n        }\n      }\n\n      var valuesString = JSON.stringify(expectedValues, function replacer(key, value) {\n        var type = getPreciseType(value);\n        if (type === 'symbol') {\n          return String(value);\n        }\n        return value;\n      });\n      return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + String(propValue) + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));\n    }\n    return createChainableTypeChecker(validate);\n  }\n\n  function createObjectOfTypeChecker(typeChecker) {\n    function validate(props, propName, componentName, location, propFullName) {\n      if (typeof typeChecker !== 'function') {\n        return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');\n      }\n      var propValue = props[propName];\n      var propType = getPropType(propValue);\n      if (propType !== 'object') {\n        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));\n      }\n      for (var key in propValue) {\n        if (has(propValue, key)) {\n          var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n          if (error instanceof Error) {\n            return error;\n          }\n        }\n      }\n      return null;\n    }\n    return createChainableTypeChecker(validate);\n  }\n\n  function createUnionTypeChecker(arrayOfTypeCheckers) {\n    if (!Array.isArray(arrayOfTypeCheckers)) {\n       true ? printWarning('Invalid argument supplied to oneOfType, expected an instance of array.') : 0;\n      return emptyFunctionThatReturnsNull;\n    }\n\n    for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n      var checker = arrayOfTypeCheckers[i];\n      if (typeof checker !== 'function') {\n        printWarning(\n          'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +\n          'received ' + getPostfixForTypeWarning(checker) + ' at index ' + i + '.'\n        );\n        return emptyFunctionThatReturnsNull;\n      }\n    }\n\n    function validate(props, propName, componentName, location, propFullName) {\n      var expectedTypes = [];\n      for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n        var checker = arrayOfTypeCheckers[i];\n        var checkerResult = checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret);\n        if (checkerResult == null) {\n          return null;\n        }\n        if (checkerResult.data && has(checkerResult.data, 'expectedType')) {\n          expectedTypes.push(checkerResult.data.expectedType);\n        }\n      }\n      var expectedTypesMessage = (expectedTypes.length > 0) ? ', expected one of type [' + expectedTypes.join(', ') + ']': '';\n      return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`' + expectedTypesMessage + '.'));\n    }\n    return createChainableTypeChecker(validate);\n  }\n\n  function createNodeChecker() {\n    function validate(props, propName, componentName, location, propFullName) {\n      if (!isNode(props[propName])) {\n        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));\n      }\n      return null;\n    }\n    return createChainableTypeChecker(validate);\n  }\n\n  function invalidValidatorError(componentName, location, propFullName, key, type) {\n    return new PropTypeError(\n      (componentName || 'React class') + ': ' + location + ' type `' + propFullName + '.' + key + '` is invalid; ' +\n      'it must be a function, usually from the `prop-types` package, but received `' + type + '`.'\n    );\n  }\n\n  function createShapeTypeChecker(shapeTypes) {\n    function validate(props, propName, componentName, location, propFullName) {\n      var propValue = props[propName];\n      var propType = getPropType(propValue);\n      if (propType !== 'object') {\n        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n      }\n      for (var key in shapeTypes) {\n        var checker = shapeTypes[key];\n        if (typeof checker !== 'function') {\n          return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));\n        }\n        var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n        if (error) {\n          return error;\n        }\n      }\n      return null;\n    }\n    return createChainableTypeChecker(validate);\n  }\n\n  function createStrictShapeTypeChecker(shapeTypes) {\n    function validate(props, propName, componentName, location, propFullName) {\n      var propValue = props[propName];\n      var propType = getPropType(propValue);\n      if (propType !== 'object') {\n        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n      }\n      // We need to check all keys in case some are required but missing from props.\n      var allKeys = assign({}, props[propName], shapeTypes);\n      for (var key in allKeys) {\n        var checker = shapeTypes[key];\n        if (has(shapeTypes, key) && typeof checker !== 'function') {\n          return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));\n        }\n        if (!checker) {\n          return new PropTypeError(\n            'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +\n            '\\nBad object: ' + JSON.stringify(props[propName], null, '  ') +\n            '\\nValid keys: ' + JSON.stringify(Object.keys(shapeTypes), null, '  ')\n          );\n        }\n        var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n        if (error) {\n          return error;\n        }\n      }\n      return null;\n    }\n\n    return createChainableTypeChecker(validate);\n  }\n\n  function isNode(propValue) {\n    switch (typeof propValue) {\n      case 'number':\n      case 'string':\n      case 'undefined':\n        return true;\n      case 'boolean':\n        return !propValue;\n      case 'object':\n        if (Array.isArray(propValue)) {\n          return propValue.every(isNode);\n        }\n        if (propValue === null || isValidElement(propValue)) {\n          return true;\n        }\n\n        var iteratorFn = getIteratorFn(propValue);\n        if (iteratorFn) {\n          var iterator = iteratorFn.call(propValue);\n          var step;\n          if (iteratorFn !== propValue.entries) {\n            while (!(step = iterator.next()).done) {\n              if (!isNode(step.value)) {\n                return false;\n              }\n            }\n          } else {\n            // Iterator will provide entry [k,v] tuples rather than values.\n            while (!(step = iterator.next()).done) {\n              var entry = step.value;\n              if (entry) {\n                if (!isNode(entry[1])) {\n                  return false;\n                }\n              }\n            }\n          }\n        } else {\n          return false;\n        }\n\n        return true;\n      default:\n        return false;\n    }\n  }\n\n  function isSymbol(propType, propValue) {\n    // Native Symbol.\n    if (propType === 'symbol') {\n      return true;\n    }\n\n    // falsy value can't be a Symbol\n    if (!propValue) {\n      return false;\n    }\n\n    // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'\n    if (propValue['@@toStringTag'] === 'Symbol') {\n      return true;\n    }\n\n    // Fallback for non-spec compliant Symbols which are polyfilled.\n    if (typeof Symbol === 'function' && propValue instanceof Symbol) {\n      return true;\n    }\n\n    return false;\n  }\n\n  // Equivalent of `typeof` but with special handling for array and regexp.\n  function getPropType(propValue) {\n    var propType = typeof propValue;\n    if (Array.isArray(propValue)) {\n      return 'array';\n    }\n    if (propValue instanceof RegExp) {\n      // Old webkits (at least until Android 4.0) return 'function' rather than\n      // 'object' for typeof a RegExp. We'll normalize this here so that /bla/\n      // passes PropTypes.object.\n      return 'object';\n    }\n    if (isSymbol(propType, propValue)) {\n      return 'symbol';\n    }\n    return propType;\n  }\n\n  // This handles more types than `getPropType`. Only used for error messages.\n  // See `createPrimitiveTypeChecker`.\n  function getPreciseType(propValue) {\n    if (typeof propValue === 'undefined' || propValue === null) {\n      return '' + propValue;\n    }\n    var propType = getPropType(propValue);\n    if (propType === 'object') {\n      if (propValue instanceof Date) {\n        return 'date';\n      } else if (propValue instanceof RegExp) {\n        return 'regexp';\n      }\n    }\n    return propType;\n  }\n\n  // Returns a string that is postfixed to a warning about an invalid type.\n  // For example, \"undefined\" or \"of type array\"\n  function getPostfixForTypeWarning(value) {\n    var type = getPreciseType(value);\n    switch (type) {\n      case 'array':\n      case 'object':\n        return 'an ' + type;\n      case 'boolean':\n      case 'date':\n      case 'regexp':\n        return 'a ' + type;\n      default:\n        return type;\n    }\n  }\n\n  // Returns class name of the object, if any.\n  function getClassName(propValue) {\n    if (!propValue.constructor || !propValue.constructor.name) {\n      return ANONYMOUS;\n    }\n    return propValue.constructor.name;\n  }\n\n  ReactPropTypes.checkPropTypes = checkPropTypes;\n  ReactPropTypes.resetWarningCache = checkPropTypes.resetWarningCache;\n  ReactPropTypes.PropTypes = ReactPropTypes;\n\n  return ReactPropTypes;\n};\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/prop-types/factoryWithTypeCheckers.js?\n}");

/***/ },

/***/ "./node_modules/prop-types/index.js"
/*!******************************************!*\
  !*** ./node_modules/prop-types/index.js ***!
  \******************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (true) {\n  var ReactIs = __webpack_require__(/*! react-is */ \"./node_modules/prop-types/node_modules/react-is/index.js\");\n\n  // By explicitly using `prop-types` you are opting into new development behavior.\n  // http://fb.me/prop-types-in-prod\n  var throwOnDirectAccess = true;\n  module.exports = __webpack_require__(/*! ./factoryWithTypeCheckers */ \"./node_modules/prop-types/factoryWithTypeCheckers.js\")(ReactIs.isElement, throwOnDirectAccess);\n} else // removed by dead control flow\n{}\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/prop-types/index.js?\n}");

/***/ },

/***/ "./node_modules/prop-types/lib/ReactPropTypesSecret.js"
/*!*************************************************************!*\
  !*** ./node_modules/prop-types/lib/ReactPropTypesSecret.js ***!
  \*************************************************************/
(module) {

"use strict";
eval("{/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/prop-types/lib/ReactPropTypesSecret.js?\n}");

/***/ },

/***/ "./node_modules/prop-types/lib/has.js"
/*!********************************************!*\
  !*** ./node_modules/prop-types/lib/has.js ***!
  \********************************************/
(module) {

eval("{module.exports = Function.call.bind(Object.prototype.hasOwnProperty);\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/prop-types/lib/has.js?\n}");

/***/ },

/***/ "./node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js"
/*!***********************************************************************************!*\
  !*** ./node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js ***!
  \***********************************************************************************/
(__unused_webpack_module, exports) {

"use strict";
eval("{/** @license React v16.13.1\n * react-is.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\n\n\n\nif (true) {\n  (function() {\n'use strict';\n\n// The Symbol used to tag the ReactElement-like types. If there is no native Symbol\n// nor polyfill, then a plain number is used for performance.\nvar hasSymbol = typeof Symbol === 'function' && Symbol.for;\nvar REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;\nvar REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;\nvar REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;\nvar REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;\nvar REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;\nvar REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;\nvar REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary\n// (unstable) APIs that have been removed. Can we remove the symbols?\n\nvar REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;\nvar REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;\nvar REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;\nvar REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;\nvar REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;\nvar REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;\nvar REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;\nvar REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;\nvar REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;\nvar REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;\nvar REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;\n\nfunction isValidElementType(type) {\n  return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.\n  type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || typeof type === 'object' && type !== null && (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_FUNDAMENTAL_TYPE || type.$$typeof === REACT_RESPONDER_TYPE || type.$$typeof === REACT_SCOPE_TYPE || type.$$typeof === REACT_BLOCK_TYPE);\n}\n\nfunction typeOf(object) {\n  if (typeof object === 'object' && object !== null) {\n    var $$typeof = object.$$typeof;\n\n    switch ($$typeof) {\n      case REACT_ELEMENT_TYPE:\n        var type = object.type;\n\n        switch (type) {\n          case REACT_ASYNC_MODE_TYPE:\n          case REACT_CONCURRENT_MODE_TYPE:\n          case REACT_FRAGMENT_TYPE:\n          case REACT_PROFILER_TYPE:\n          case REACT_STRICT_MODE_TYPE:\n          case REACT_SUSPENSE_TYPE:\n            return type;\n\n          default:\n            var $$typeofType = type && type.$$typeof;\n\n            switch ($$typeofType) {\n              case REACT_CONTEXT_TYPE:\n              case REACT_FORWARD_REF_TYPE:\n              case REACT_LAZY_TYPE:\n              case REACT_MEMO_TYPE:\n              case REACT_PROVIDER_TYPE:\n                return $$typeofType;\n\n              default:\n                return $$typeof;\n            }\n\n        }\n\n      case REACT_PORTAL_TYPE:\n        return $$typeof;\n    }\n  }\n\n  return undefined;\n} // AsyncMode is deprecated along with isAsyncMode\n\nvar AsyncMode = REACT_ASYNC_MODE_TYPE;\nvar ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;\nvar ContextConsumer = REACT_CONTEXT_TYPE;\nvar ContextProvider = REACT_PROVIDER_TYPE;\nvar Element = REACT_ELEMENT_TYPE;\nvar ForwardRef = REACT_FORWARD_REF_TYPE;\nvar Fragment = REACT_FRAGMENT_TYPE;\nvar Lazy = REACT_LAZY_TYPE;\nvar Memo = REACT_MEMO_TYPE;\nvar Portal = REACT_PORTAL_TYPE;\nvar Profiler = REACT_PROFILER_TYPE;\nvar StrictMode = REACT_STRICT_MODE_TYPE;\nvar Suspense = REACT_SUSPENSE_TYPE;\nvar hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated\n\nfunction isAsyncMode(object) {\n  {\n    if (!hasWarnedAboutDeprecatedIsAsyncMode) {\n      hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint\n\n      console['warn']('The ReactIs.isAsyncMode() alias has been deprecated, ' + 'and will be removed in React 17+. Update your code to use ' + 'ReactIs.isConcurrentMode() instead. It has the exact same API.');\n    }\n  }\n\n  return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;\n}\nfunction isConcurrentMode(object) {\n  return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;\n}\nfunction isContextConsumer(object) {\n  return typeOf(object) === REACT_CONTEXT_TYPE;\n}\nfunction isContextProvider(object) {\n  return typeOf(object) === REACT_PROVIDER_TYPE;\n}\nfunction isElement(object) {\n  return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;\n}\nfunction isForwardRef(object) {\n  return typeOf(object) === REACT_FORWARD_REF_TYPE;\n}\nfunction isFragment(object) {\n  return typeOf(object) === REACT_FRAGMENT_TYPE;\n}\nfunction isLazy(object) {\n  return typeOf(object) === REACT_LAZY_TYPE;\n}\nfunction isMemo(object) {\n  return typeOf(object) === REACT_MEMO_TYPE;\n}\nfunction isPortal(object) {\n  return typeOf(object) === REACT_PORTAL_TYPE;\n}\nfunction isProfiler(object) {\n  return typeOf(object) === REACT_PROFILER_TYPE;\n}\nfunction isStrictMode(object) {\n  return typeOf(object) === REACT_STRICT_MODE_TYPE;\n}\nfunction isSuspense(object) {\n  return typeOf(object) === REACT_SUSPENSE_TYPE;\n}\n\nexports.AsyncMode = AsyncMode;\nexports.ConcurrentMode = ConcurrentMode;\nexports.ContextConsumer = ContextConsumer;\nexports.ContextProvider = ContextProvider;\nexports.Element = Element;\nexports.ForwardRef = ForwardRef;\nexports.Fragment = Fragment;\nexports.Lazy = Lazy;\nexports.Memo = Memo;\nexports.Portal = Portal;\nexports.Profiler = Profiler;\nexports.StrictMode = StrictMode;\nexports.Suspense = Suspense;\nexports.isAsyncMode = isAsyncMode;\nexports.isConcurrentMode = isConcurrentMode;\nexports.isContextConsumer = isContextConsumer;\nexports.isContextProvider = isContextProvider;\nexports.isElement = isElement;\nexports.isForwardRef = isForwardRef;\nexports.isFragment = isFragment;\nexports.isLazy = isLazy;\nexports.isMemo = isMemo;\nexports.isPortal = isPortal;\nexports.isProfiler = isProfiler;\nexports.isStrictMode = isStrictMode;\nexports.isSuspense = isSuspense;\nexports.isValidElementType = isValidElementType;\nexports.typeOf = typeOf;\n  })();\n}\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js?\n}");

/***/ },

/***/ "./node_modules/prop-types/node_modules/react-is/index.js"
/*!****************************************************************!*\
  !*** ./node_modules/prop-types/node_modules/react-is/index.js ***!
  \****************************************************************/
(module, __unused_webpack_exports, __webpack_require__) {

"use strict";
eval("{\n\nif (false) // removed by dead control flow\n{} else {\n  module.exports = __webpack_require__(/*! ./cjs/react-is.development.js */ \"./node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js\");\n}\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/prop-types/node_modules/react-is/index.js?\n}");

/***/ },

/***/ "./node_modules/react-typed/dist/react-typed.js"
/*!******************************************************!*\
  !*** ./node_modules/react-typed/dist/react-typed.js ***!
  \******************************************************/
(module, __unused_webpack_exports, __webpack_require__) {

eval("{!function(e,t){ true?module.exports=t(__webpack_require__(/*! react */ \"react\")):0}(this,function(e){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&\"object\"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,\"a\",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p=\"/\",n(n.s=5)}([function(e,t,n){var r=n(3);e.exports=n(8)(r.isElement,!0)},function(t,n){t.exports=e},function(e,t,n){\"use strict\";e.exports=\"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED\"},function(e,t,n){\"use strict\";e.exports=n(7)},function(e,t,n){\n/*!\n * \n *   typed.js - A JavaScript Typing Animation Library\n *   Author: Matt Boldt <me@mattboldt.com>\n *   Version: v2.0.9\n *   Url: https://github.com/mattboldt/typed.js\n *   License(s): MIT\n * \n */\nvar r;r=function(){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={exports:{},id:r,loaded:!1};return e[r].call(o.exports,o,o.exports,n),o.loaded=!0,o.exports}return n.m=e,n.c=t,n.p=\"\",n(0)}([function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,\"value\"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}();var o=n(1),s=n(3),i=function(){function e(t,n){!function(e,t){if(!(e instanceof t))throw new TypeError(\"Cannot call a class as a function\")}(this,e),o.initializer.load(this,n,t),this.begin()}return r(e,[{key:\"toggle\",value:function(){this.pause.status?this.start():this.stop()}},{key:\"stop\",value:function(){this.typingComplete||this.pause.status||(this.toggleBlinking(!0),this.pause.status=!0,this.options.onStop(this.arrayPos,this))}},{key:\"start\",value:function(){this.typingComplete||this.pause.status&&(this.pause.status=!1,this.pause.typewrite?this.typewrite(this.pause.curString,this.pause.curStrPos):this.backspace(this.pause.curString,this.pause.curStrPos),this.options.onStart(this.arrayPos,this))}},{key:\"destroy\",value:function(){this.reset(!1),this.options.onDestroy(this)}},{key:\"reset\",value:function(){var e=arguments.length<=0||void 0===arguments[0]||arguments[0];clearInterval(this.timeout),this.replaceText(\"\"),this.cursor&&this.cursor.parentNode&&(this.cursor.parentNode.removeChild(this.cursor),this.cursor=null),this.strPos=0,this.arrayPos=0,this.curLoop=0,e&&(this.insertCursor(),this.options.onReset(this),this.begin())}},{key:\"begin\",value:function(){var e=this;this.typingComplete=!1,this.shuffleStringsIfNeeded(this),this.insertCursor(),this.bindInputFocusEvents&&this.bindFocusEvents(),this.timeout=setTimeout(function(){e.currentElContent&&0!==e.currentElContent.length?e.backspace(e.currentElContent,e.currentElContent.length):e.typewrite(e.strings[e.sequence[e.arrayPos]],e.strPos)},this.startDelay)}},{key:\"typewrite\",value:function(e,t){var n=this;this.fadeOut&&this.el.classList.contains(this.fadeOutClass)&&(this.el.classList.remove(this.fadeOutClass),this.cursor&&this.cursor.classList.remove(this.fadeOutClass));var r=this.humanizer(this.typeSpeed),o=1;!0!==this.pause.status?this.timeout=setTimeout(function(){t=s.htmlParser.typeHtmlChars(e,t,n);var r=0,i=e.substr(t);if(\"^\"===i.charAt(0)&&/^\\^\\d+/.test(i)){var a=1;a+=(i=/\\d+/.exec(i)[0]).length,r=parseInt(i),n.temporaryPause=!0,n.options.onTypingPaused(n.arrayPos,n),e=e.substring(0,t)+e.substring(t+a),n.toggleBlinking(!0)}if(\"`\"===i.charAt(0)){for(;\"`\"!==e.substr(t+o).charAt(0)&&!(t+ ++o>e.length););var u=e.substring(0,t),c=e.substring(u.length+1,t+o),l=e.substring(t+o+1);e=u+c+l,o--}n.timeout=setTimeout(function(){n.toggleBlinking(!1),t>=e.length?n.doneTyping(e,t):n.keepTyping(e,t,o),n.temporaryPause&&(n.temporaryPause=!1,n.options.onTypingResumed(n.arrayPos,n))},r)},r):this.setPauseStatus(e,t,!0)}},{key:\"keepTyping\",value:function(e,t,n){0===t&&(this.toggleBlinking(!1),this.options.preStringTyped(this.arrayPos,this)),t+=n;var r=e.substr(0,t);this.replaceText(r),this.typewrite(e,t)}},{key:\"doneTyping\",value:function(e,t){var n=this;this.options.onStringTyped(this.arrayPos,this),this.toggleBlinking(!0),this.arrayPos===this.strings.length-1&&(this.complete(),!1===this.loop||this.curLoop===this.loopCount)||(this.timeout=setTimeout(function(){n.backspace(e,t)},this.backDelay))}},{key:\"backspace\",value:function(e,t){var n=this;if(!0!==this.pause.status){if(this.fadeOut)return this.initFadeOut();this.toggleBlinking(!1);var r=this.humanizer(this.backSpeed);this.timeout=setTimeout(function(){t=s.htmlParser.backSpaceHtmlChars(e,t,n);var r=e.substr(0,t);if(n.replaceText(r),n.smartBackspace){var o=n.strings[n.arrayPos+1];o&&r===o.substr(0,t)?n.stopNum=t:n.stopNum=0}t>n.stopNum?(t--,n.backspace(e,t)):t<=n.stopNum&&(n.arrayPos++,n.arrayPos===n.strings.length?(n.arrayPos=0,n.options.onLastStringBackspaced(),n.shuffleStringsIfNeeded(),n.begin()):n.typewrite(n.strings[n.sequence[n.arrayPos]],t))},r)}else this.setPauseStatus(e,t,!0)}},{key:\"complete\",value:function(){this.options.onComplete(this),this.loop?this.curLoop++:this.typingComplete=!0}},{key:\"setPauseStatus\",value:function(e,t,n){this.pause.typewrite=n,this.pause.curString=e,this.pause.curStrPos=t}},{key:\"toggleBlinking\",value:function(e){this.cursor&&(this.pause.status||this.cursorBlinking!==e&&(this.cursorBlinking=e,e?this.cursor.classList.add(\"typed-cursor--blink\"):this.cursor.classList.remove(\"typed-cursor--blink\")))}},{key:\"humanizer\",value:function(e){return Math.round(Math.random()*e/2)+e}},{key:\"shuffleStringsIfNeeded\",value:function(){this.shuffle&&(this.sequence=this.sequence.sort(function(){return Math.random()-.5}))}},{key:\"initFadeOut\",value:function(){var e=this;return this.el.className+=\" \"+this.fadeOutClass,this.cursor&&(this.cursor.className+=\" \"+this.fadeOutClass),setTimeout(function(){e.arrayPos++,e.replaceText(\"\"),e.strings.length>e.arrayPos?e.typewrite(e.strings[e.sequence[e.arrayPos]],0):(e.typewrite(e.strings[0],0),e.arrayPos=0)},this.fadeOutDelay)}},{key:\"replaceText\",value:function(e){this.attr?this.el.setAttribute(this.attr,e):this.isInput?this.el.value=e:\"html\"===this.contentType?this.el.innerHTML=e:this.el.textContent=e}},{key:\"bindFocusEvents\",value:function(){var e=this;this.isInput&&(this.el.addEventListener(\"focus\",function(t){e.stop()}),this.el.addEventListener(\"blur\",function(t){e.el.value&&0!==e.el.value.length||e.start()}))}},{key:\"insertCursor\",value:function(){this.showCursor&&(this.cursor||(this.cursor=document.createElement(\"span\"),this.cursor.className=\"typed-cursor\",this.cursor.innerHTML=this.cursorChar,this.el.parentNode&&this.el.parentNode.insertBefore(this.cursor,this.el.nextSibling)))}}]),e}();t.default=i,e.exports=t.default},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var r=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},o=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,\"value\"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}();var s,i=n(2),a=(s=i)&&s.__esModule?s:{default:s},u=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError(\"Cannot call a class as a function\")}(this,e)}return o(e,[{key:\"load\",value:function(e,t,n){if(e.el=\"string\"==typeof n?document.querySelector(n):n,e.options=r({},a.default,t),e.isInput=\"input\"===e.el.tagName.toLowerCase(),e.attr=e.options.attr,e.bindInputFocusEvents=e.options.bindInputFocusEvents,e.showCursor=!e.isInput&&e.options.showCursor,e.cursorChar=e.options.cursorChar,e.cursorBlinking=!0,e.elContent=e.attr?e.el.getAttribute(e.attr):e.el.textContent,e.contentType=e.options.contentType,e.typeSpeed=e.options.typeSpeed,e.startDelay=e.options.startDelay,e.backSpeed=e.options.backSpeed,e.smartBackspace=e.options.smartBackspace,e.backDelay=e.options.backDelay,e.fadeOut=e.options.fadeOut,e.fadeOutClass=e.options.fadeOutClass,e.fadeOutDelay=e.options.fadeOutDelay,e.isPaused=!1,e.strings=e.options.strings.map(function(e){return e.trim()}),\"string\"==typeof e.options.stringsElement?e.stringsElement=document.querySelector(e.options.stringsElement):e.stringsElement=e.options.stringsElement,e.stringsElement){e.strings=[],e.stringsElement.style.display=\"none\";var o=Array.prototype.slice.apply(e.stringsElement.children),s=o.length;if(s)for(var i=0;i<s;i+=1){var u=o[i];e.strings.push(u.innerHTML.trim())}}for(var i in e.strPos=0,e.arrayPos=0,e.stopNum=0,e.loop=e.options.loop,e.loopCount=e.options.loopCount,e.curLoop=0,e.shuffle=e.options.shuffle,e.sequence=[],e.pause={status:!1,typewrite:!0,curString:\"\",curStrPos:0},e.typingComplete=!1,e.strings)e.sequence[i]=i;e.currentElContent=this.getCurrentElContent(e),e.autoInsertCss=e.options.autoInsertCss,this.appendAnimationCss(e)}},{key:\"getCurrentElContent\",value:function(e){return e.attr?e.el.getAttribute(e.attr):e.isInput?e.el.value:\"html\"===e.contentType?e.el.innerHTML:e.el.textContent}},{key:\"appendAnimationCss\",value:function(e){if(e.autoInsertCss&&(e.showCursor||e.fadeOut)&&!document.querySelector(\"[data-typed-js-css]\")){var t=document.createElement(\"style\");t.type=\"text/css\",t.setAttribute(\"data-typed-js-css\",!0);var n=\"\";e.showCursor&&(n+=\"\\n        .typed-cursor{\\n          opacity: 1;\\n        }\\n        .typed-cursor.typed-cursor--blink{\\n          animation: typedjsBlink 0.7s infinite;\\n          -webkit-animation: typedjsBlink 0.7s infinite;\\n                  animation: typedjsBlink 0.7s infinite;\\n        }\\n        @keyframes typedjsBlink{\\n          50% { opacity: 0.0; }\\n        }\\n        @-webkit-keyframes typedjsBlink{\\n          0% { opacity: 1; }\\n          50% { opacity: 0.0; }\\n          100% { opacity: 1; }\\n        }\\n      \"),e.fadeOut&&(n+=\"\\n        .typed-fade-out{\\n          opacity: 0;\\n          transition: opacity .25s;\\n        }\\n        .typed-cursor.typed-cursor--blink.typed-fade-out{\\n          -webkit-animation: 0;\\n          animation: 0;\\n        }\\n      \"),0!==t.length&&(t.innerHTML=n,document.body.appendChild(t))}}}]),e}();t.default=u;var c=new u;t.initializer=c},function(e,t){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var n={strings:[\"These are the default values...\",\"You know what you should do?\",\"Use your own!\",\"Have a great day!\"],stringsElement:null,typeSpeed:0,startDelay:0,backSpeed:0,smartBackspace:!0,shuffle:!1,backDelay:700,fadeOut:!1,fadeOutClass:\"typed-fade-out\",fadeOutDelay:500,loop:!1,loopCount:1/0,showCursor:!0,cursorChar:\"|\",autoInsertCss:!0,attr:null,bindInputFocusEvents:!1,contentType:\"html\",onComplete:function(e){},preStringTyped:function(e,t){},onStringTyped:function(e,t){},onLastStringBackspaced:function(e){},onTypingPaused:function(e,t){},onTypingResumed:function(e,t){},onReset:function(e){},onStop:function(e,t){},onStart:function(e,t){},onDestroy:function(e){}};t.default=n,e.exports=t.default},function(e,t){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var n=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,\"value\"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}();var r=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError(\"Cannot call a class as a function\")}(this,e)}return n(e,[{key:\"typeHtmlChars\",value:function(e,t,n){if(\"html\"!==n.contentType)return t;var r=e.substr(t).charAt(0);if(\"<\"===r||\"&\"===r){var o=\"\";for(o=\"<\"===r?\">\":\";\";e.substr(t+1).charAt(0)!==o&&!(++t+1>e.length););t++}return t}},{key:\"backSpaceHtmlChars\",value:function(e,t,n){if(\"html\"!==n.contentType)return t;var r=e.substr(t).charAt(0);if(\">\"===r||\";\"===r){var o=\"\";for(o=\">\"===r?\"<\":\"&\";e.substr(t-1).charAt(0)!==o&&!(--t<0););t--}return t}}]),e}();t.default=r;var o=new r;t.htmlParser=o}])},e.exports=r()},function(e,t,n){\"use strict\";n.r(t);var r=n(1),o=n.n(r),s=n(0),i=n.n(s),a=n(4),u=n.n(a);function c(e){return(c=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e})(e)}function l(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},s=Object.keys(e);for(r=0;r<s.length;r++)n=s[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(r=0;r<s.length;r++)n=s[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function f(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,\"value\"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function p(e){return(p=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function y(e){if(void 0===e)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return e}function d(e,t){return(d=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}var h=function(e){function t(){var e,n,r,s,i,a,u;!function(e,t){if(!(e instanceof t))throw new TypeError(\"Cannot call a class as a function\")}(this,t);for(var l=arguments.length,f=new Array(l),d=0;d<l;d++)f[d]=arguments[d];return r=this,n=!(s=(e=p(t)).call.apply(e,[this].concat(f)))||\"object\"!==c(s)&&\"function\"!=typeof s?y(r):s,i=y(n),a=\"rootElement\",u=o.a.createRef(),a in i?Object.defineProperty(i,a,{value:u,enumerable:!0,configurable:!0,writable:!0}):i[a]=u,n}var n,s,i;return function(e,t){if(\"function\"!=typeof t&&null!==t)throw new TypeError(\"Super expression must either be null or a function\");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&d(e,t)}(t,r[\"Component\"]),n=t,(s=[{key:\"componentDidMount\",value:function(){var e=this.props,t=(e.style,e.typedRef,e.stopped),n=(e.className,l(e,[\"style\",\"typedRef\",\"stopped\",\"className\"]));this.constructTyped(n),t&&this.typed.stop()}},{key:\"constructTyped\",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=this.props,r=(n.style,n.typedRef,n.stopped,n.className,l(n,[\"style\",\"typedRef\",\"stopped\",\"className\"]));this.typed&&this.typed.destroy(),this.typed=new u.a(this.rootElement.current,Object.assign(r,t)),this.props.typedRef&&this.props.typedRef(this.typed),this.typed.reConstruct=function(t){e.constructTyped(t)}}},{key:\"shouldComponentUpdate\",value:function(e){var t=this;if(this.props!==e){e.style,e.typedRef,e.stopped,e.className;var n=l(e,[\"style\",\"typedRef\",\"stopped\",\"className\"]);return this.typed.options=Object.assign(this.typed.options,n),!Object.keys(e).every(function(n){return!t.props[n]&&e[n]?(t.constructTyped(e),!1):(t.typed[n]&&(t.typed[n]=e[n]),!0)})||this.props.strings.length===e.strings.length||this.constructTyped(e),!0}return!1}},{key:\"render\",value:function(){var e=this.props,t=e.style,n=e.className,r=e.children,s=o.a.createElement(\"span\",{ref:this.rootElement});return r&&(s=o.a.cloneElement(r,{ref:this.rootElement})),o.a.createElement(\"span\",{style:t,className:n},s)}}])&&f(n.prototype,s),i&&f(n,i),t}();h.propTypes={style:i.a.object,className:i.a.string,children:i.a.object,typedRef:i.a.func,stopped:i.a.bool,strings:i.a.arrayOf(i.a.string),typeSpeed:i.a.number,startDelay:i.a.number,backSpeed:i.a.number,smartBackspace:i.a.bool,shuffle:i.a.bool,backDelay:i.a.number,fadeOut:i.a.bool,fadeOutClass:i.a.string,fadeOutDelay:i.a.number,loop:i.a.bool,loopCount:i.a.number,showCursor:i.a.bool,cursorChar:i.a.string,autoInsertCss:i.a.bool,attr:i.a.string,bindInputFocusEvents:i.a.bool,contentType:i.a.oneOf([\"html\",\"\"]),onComplete:i.a.func,preStringTyped:i.a.func,onStringTyped:i.a.func,onLastStringBackspaced:i.a.func,onTypingPaused:i.a.func,onTypingResumed:i.a.func,onReset:i.a.func,onStop:i.a.func,onStart:i.a.func,onDestroy:i.a.func},t.default=h},function(e,t,n){\"use strict\";\n/** @license React v16.9.0\n * react-is.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */Object.defineProperty(t,\"__esModule\",{value:!0});var r=\"function\"==typeof Symbol&&Symbol.for,o=r?Symbol.for(\"react.element\"):60103,s=r?Symbol.for(\"react.portal\"):60106,i=r?Symbol.for(\"react.fragment\"):60107,a=r?Symbol.for(\"react.strict_mode\"):60108,u=r?Symbol.for(\"react.profiler\"):60114,c=r?Symbol.for(\"react.provider\"):60109,l=r?Symbol.for(\"react.context\"):60110,f=r?Symbol.for(\"react.async_mode\"):60111,p=r?Symbol.for(\"react.concurrent_mode\"):60111,y=r?Symbol.for(\"react.forward_ref\"):60112,d=r?Symbol.for(\"react.suspense\"):60113,h=r?Symbol.for(\"react.suspense_list\"):60120,m=r?Symbol.for(\"react.memo\"):60115,b=r?Symbol.for(\"react.lazy\"):60116,v=r?Symbol.for(\"react.fundamental\"):60117,g=r?Symbol.for(\"react.responder\"):60118;function S(e){if(\"object\"==typeof e&&null!==e){var t=e.$$typeof;switch(t){case o:switch(e=e.type){case f:case p:case i:case u:case a:case d:return e;default:switch(e=e&&e.$$typeof){case l:case y:case c:return e;default:return t}}case b:case m:case s:return t}}}function O(e){return S(e)===p}t.typeOf=S,t.AsyncMode=f,t.ConcurrentMode=p,t.ContextConsumer=l,t.ContextProvider=c,t.Element=o,t.ForwardRef=y,t.Fragment=i,t.Lazy=b,t.Memo=m,t.Portal=s,t.Profiler=u,t.StrictMode=a,t.Suspense=d,t.isValidElementType=function(e){return\"string\"==typeof e||\"function\"==typeof e||e===i||e===p||e===u||e===a||e===d||e===h||\"object\"==typeof e&&null!==e&&(e.$$typeof===b||e.$$typeof===m||e.$$typeof===c||e.$$typeof===l||e.$$typeof===y||e.$$typeof===v||e.$$typeof===g)},t.isAsyncMode=function(e){return O(e)||S(e)===f},t.isConcurrentMode=O,t.isContextConsumer=function(e){return S(e)===l},t.isContextProvider=function(e){return S(e)===c},t.isElement=function(e){return\"object\"==typeof e&&null!==e&&e.$$typeof===o},t.isForwardRef=function(e){return S(e)===y},t.isFragment=function(e){return S(e)===i},t.isLazy=function(e){return S(e)===b},t.isMemo=function(e){return S(e)===m},t.isPortal=function(e){return S(e)===s},t.isProfiler=function(e){return S(e)===u},t.isStrictMode=function(e){return S(e)===a},t.isSuspense=function(e){return S(e)===d}},function(e,t,n){\"use strict\";\n/** @license React v16.9.0\n * react-is.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */(function(){Object.defineProperty(t,\"__esModule\",{value:!0});var e=\"function\"==typeof Symbol&&Symbol.for,n=e?Symbol.for(\"react.element\"):60103,r=e?Symbol.for(\"react.portal\"):60106,o=e?Symbol.for(\"react.fragment\"):60107,s=e?Symbol.for(\"react.strict_mode\"):60108,i=e?Symbol.for(\"react.profiler\"):60114,a=e?Symbol.for(\"react.provider\"):60109,u=e?Symbol.for(\"react.context\"):60110,c=e?Symbol.for(\"react.async_mode\"):60111,l=e?Symbol.for(\"react.concurrent_mode\"):60111,f=e?Symbol.for(\"react.forward_ref\"):60112,p=e?Symbol.for(\"react.suspense\"):60113,y=e?Symbol.for(\"react.suspense_list\"):60120,d=e?Symbol.for(\"react.memo\"):60115,h=e?Symbol.for(\"react.lazy\"):60116,m=e?Symbol.for(\"react.fundamental\"):60117,b=e?Symbol.for(\"react.responder\"):60118;var v=function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];var o=0,s=\"Warning: \"+e.replace(/%s/g,function(){return n[o++]});\"undefined\"!=typeof console&&console.warn(s);try{throw new Error(s)}catch(e){}},g=function(e,t){if(void 0===t)throw new Error(\"`lowPriorityWarning(condition, format, ...args)` requires a warning message argument\");if(!e){for(var n=arguments.length,r=Array(n>2?n-2:0),o=2;o<n;o++)r[o-2]=arguments[o];v.apply(void 0,[t].concat(r))}};function S(e){if(\"object\"==typeof e&&null!==e){var t=e.$$typeof;switch(t){case n:var y=e.type;switch(y){case c:case l:case o:case i:case s:case p:return y;default:var m=y&&y.$$typeof;switch(m){case u:case f:case a:return m;default:return t}}case h:case d:case r:return t}}}var O=c,w=l,k=u,P=a,C=n,j=f,T=o,x=h,E=d,I=r,_=i,R=s,$=p,M=!1;function A(e){return S(e)===l}t.typeOf=S,t.AsyncMode=O,t.ConcurrentMode=w,t.ContextConsumer=k,t.ContextProvider=P,t.Element=C,t.ForwardRef=j,t.Fragment=T,t.Lazy=x,t.Memo=E,t.Portal=I,t.Profiler=_,t.StrictMode=R,t.Suspense=$,t.isValidElementType=function(e){return\"string\"==typeof e||\"function\"==typeof e||e===o||e===l||e===i||e===s||e===p||e===y||\"object\"==typeof e&&null!==e&&(e.$$typeof===h||e.$$typeof===d||e.$$typeof===a||e.$$typeof===u||e.$$typeof===f||e.$$typeof===m||e.$$typeof===b)},t.isAsyncMode=function(e){return M||(M=!0,g(!1,\"The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API.\")),A(e)||S(e)===c},t.isConcurrentMode=A,t.isContextConsumer=function(e){return S(e)===u},t.isContextProvider=function(e){return S(e)===a},t.isElement=function(e){return\"object\"==typeof e&&null!==e&&e.$$typeof===n},t.isForwardRef=function(e){return S(e)===f},t.isFragment=function(e){return S(e)===o},t.isLazy=function(e){return S(e)===h},t.isMemo=function(e){return S(e)===d},t.isPortal=function(e){return S(e)===r},t.isProfiler=function(e){return S(e)===i},t.isStrictMode=function(e){return S(e)===s},t.isSuspense=function(e){return S(e)===p}})()},function(e,t,n){\"use strict\";var r=n(3),o=n(9),s=n(2),i=n(10),a=Function.call.bind(Object.prototype.hasOwnProperty),u=function(){};function c(){return null}u=function(e){var t=\"Warning: \"+e;\"undefined\"!=typeof console&&console.error(t);try{throw new Error(t)}catch(e){}},e.exports=function(e,t){var n=\"function\"==typeof Symbol&&Symbol.iterator,l=\"@@iterator\";var f=\"<<anonymous>>\",p={array:m(\"array\"),bool:m(\"boolean\"),func:m(\"function\"),number:m(\"number\"),object:m(\"object\"),string:m(\"string\"),symbol:m(\"symbol\"),any:h(c),arrayOf:function(e){return h(function(t,n,r,o,i){if(\"function\"!=typeof e)return new d(\"Property `\"+i+\"` of component `\"+r+\"` has invalid PropType notation inside arrayOf.\");var a=t[n];if(!Array.isArray(a))return new d(\"Invalid \"+o+\" `\"+i+\"` of type `\"+v(a)+\"` supplied to `\"+r+\"`, expected an array.\");for(var u=0;u<a.length;u++){var c=e(a,u,r,o,i+\"[\"+u+\"]\",s);if(c instanceof Error)return c}return null})},element:h(function(t,n,r,o,s){var i=t[n];return e(i)?null:new d(\"Invalid \"+o+\" `\"+s+\"` of type `\"+v(i)+\"` supplied to `\"+r+\"`, expected a single ReactElement.\")}),elementType:h(function(e,t,n,o,s){var i=e[t];return r.isValidElementType(i)?null:new d(\"Invalid \"+o+\" `\"+s+\"` of type `\"+v(i)+\"` supplied to `\"+n+\"`, expected a single ReactElement type.\")}),instanceOf:function(e){return h(function(t,n,r,o,s){if(!(t[n]instanceof e)){var i=e.name||f;return new d(\"Invalid \"+o+\" `\"+s+\"` of type `\"+function(e){if(!e.constructor||!e.constructor.name)return f;return e.constructor.name}(t[n])+\"` supplied to `\"+r+\"`, expected instance of `\"+i+\"`.\")}return null})},node:h(function(e,t,n,r,o){return b(e[t])?null:new d(\"Invalid \"+r+\" `\"+o+\"` supplied to `\"+n+\"`, expected a ReactNode.\")}),objectOf:function(e){return h(function(t,n,r,o,i){if(\"function\"!=typeof e)return new d(\"Property `\"+i+\"` of component `\"+r+\"` has invalid PropType notation inside objectOf.\");var u=t[n],c=v(u);if(\"object\"!==c)return new d(\"Invalid \"+o+\" `\"+i+\"` of type `\"+c+\"` supplied to `\"+r+\"`, expected an object.\");for(var l in u)if(a(u,l)){var f=e(u,l,r,o,i+\".\"+l,s);if(f instanceof Error)return f}return null})},oneOf:function(e){if(!Array.isArray(e))return arguments.length>1?u(\"Invalid arguments supplied to oneOf, expected an array, got \"+arguments.length+\" arguments. A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).\"):u(\"Invalid argument supplied to oneOf, expected an array.\"),c;return h(function(t,n,r,o,s){for(var i=t[n],a=0;a<e.length;a++)if(y(i,e[a]))return null;var u=JSON.stringify(e,function(e,t){return\"symbol\"===g(t)?String(t):t});return new d(\"Invalid \"+o+\" `\"+s+\"` of value `\"+String(i)+\"` supplied to `\"+r+\"`, expected one of \"+u+\".\")})},oneOfType:function(e){if(!Array.isArray(e))return u(\"Invalid argument supplied to oneOfType, expected an instance of array.\"),c;for(var t=0;t<e.length;t++){var n=e[t];if(\"function\"!=typeof n)return u(\"Invalid argument supplied to oneOfType. Expected an array of check functions, but received \"+S(n)+\" at index \"+t+\".\"),c}return h(function(t,n,r,o,i){for(var a=0;a<e.length;a++){if(null==(0,e[a])(t,n,r,o,i,s))return null}return new d(\"Invalid \"+o+\" `\"+i+\"` supplied to `\"+r+\"`.\")})},shape:function(e){return h(function(t,n,r,o,i){var a=t[n],u=v(a);if(\"object\"!==u)return new d(\"Invalid \"+o+\" `\"+i+\"` of type `\"+u+\"` supplied to `\"+r+\"`, expected `object`.\");for(var c in e){var l=e[c];if(l){var f=l(a,c,r,o,i+\".\"+c,s);if(f)return f}}return null})},exact:function(e){return h(function(t,n,r,i,a){var u=t[n],c=v(u);if(\"object\"!==c)return new d(\"Invalid \"+i+\" `\"+a+\"` of type `\"+c+\"` supplied to `\"+r+\"`, expected `object`.\");var l=o({},t[n],e);for(var f in l){var p=e[f];if(!p)return new d(\"Invalid \"+i+\" `\"+a+\"` key `\"+f+\"` supplied to `\"+r+\"`.\\nBad object: \"+JSON.stringify(t[n],null,\"  \")+\"\\nValid keys: \"+JSON.stringify(Object.keys(e),null,\"  \"));var y=p(u,f,r,i,a+\".\"+f,s);if(y)return y}return null})}};function y(e,t){return e===t?0!==e||1/e==1/t:e!=e&&t!=t}function d(e){this.message=e,this.stack=\"\"}function h(e){var n={},r=0;function o(o,i,a,c,l,p,y){if(c=c||f,p=p||a,y!==s){if(t){var h=new Error(\"Calling PropTypes validators directly is not supported by the `prop-types` package. Use `PropTypes.checkPropTypes()` to call them. Read more at http://fb.me/use-check-prop-types\");throw h.name=\"Invariant Violation\",h}if(\"undefined\"!=typeof console){var m=c+\":\"+a;!n[m]&&r<3&&(u(\"You are manually calling a React.PropTypes validation function for the `\"+p+\"` prop on `\"+c+\"`. This is deprecated and will throw in the standalone `prop-types` package. You may be seeing this warning due to a third-party PropTypes library. See https://fb.me/react-warning-dont-call-proptypes for details.\"),n[m]=!0,r++)}}return null==i[a]?o?null===i[a]?new d(\"The \"+l+\" `\"+p+\"` is marked as required in `\"+c+\"`, but its value is `null`.\"):new d(\"The \"+l+\" `\"+p+\"` is marked as required in `\"+c+\"`, but its value is `undefined`.\"):null:e(i,a,c,l,p)}var i=o.bind(null,!1);return i.isRequired=o.bind(null,!0),i}function m(e){return h(function(t,n,r,o,s,i){var a=t[n];return v(a)!==e?new d(\"Invalid \"+o+\" `\"+s+\"` of type `\"+g(a)+\"` supplied to `\"+r+\"`, expected `\"+e+\"`.\"):null})}function b(t){switch(typeof t){case\"number\":case\"string\":case\"undefined\":return!0;case\"boolean\":return!t;case\"object\":if(Array.isArray(t))return t.every(b);if(null===t||e(t))return!0;var r=function(e){var t=e&&(n&&e[n]||e[l]);if(\"function\"==typeof t)return t}(t);if(!r)return!1;var o,s=r.call(t);if(r!==t.entries){for(;!(o=s.next()).done;)if(!b(o.value))return!1}else for(;!(o=s.next()).done;){var i=o.value;if(i&&!b(i[1]))return!1}return!0;default:return!1}}function v(e){var t=typeof e;return Array.isArray(e)?\"array\":e instanceof RegExp?\"object\":function(e,t){return\"symbol\"===e||!!t&&(\"Symbol\"===t[\"@@toStringTag\"]||\"function\"==typeof Symbol&&t instanceof Symbol)}(t,e)?\"symbol\":t}function g(e){if(null==e)return\"\"+e;var t=v(e);if(\"object\"===t){if(e instanceof Date)return\"date\";if(e instanceof RegExp)return\"regexp\"}return t}function S(e){var t=g(e);switch(t){case\"array\":case\"object\":return\"an \"+t;case\"boolean\":case\"date\":case\"regexp\":return\"a \"+t;default:return t}}return d.prototype=Error.prototype,p.checkPropTypes=i,p.resetWarningCache=i.resetWarningCache,p.PropTypes=p,p}},function(e,t,n){\"use strict\";\n/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/var r=Object.getOwnPropertySymbols,o=Object.prototype.hasOwnProperty,s=Object.prototype.propertyIsEnumerable;function i(e){if(null==e)throw new TypeError(\"Object.assign cannot be called with null or undefined\");return Object(e)}e.exports=function(){try{if(!Object.assign)return!1;var e=new String(\"abc\");if(e[5]=\"de\",\"5\"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t[\"_\"+String.fromCharCode(n)]=n;if(\"0123456789\"!==Object.getOwnPropertyNames(t).map(function(e){return t[e]}).join(\"\"))return!1;var r={};return\"abcdefghijklmnopqrst\".split(\"\").forEach(function(e){r[e]=e}),\"abcdefghijklmnopqrst\"===Object.keys(Object.assign({},r)).join(\"\")}catch(e){return!1}}()?Object.assign:function(e,t){for(var n,a,u=i(e),c=1;c<arguments.length;c++){for(var l in n=Object(arguments[c]))o.call(n,l)&&(u[l]=n[l]);if(r){a=r(n);for(var f=0;f<a.length;f++)s.call(n,a[f])&&(u[a[f]]=n[a[f]])}}return u}},function(e,t,n){\"use strict\";var r=function(){},o=n(2),s={},i=Function.call.bind(Object.prototype.hasOwnProperty);function a(e,t,n,a,u){for(var c in e)if(i(e,c)){var l;try{if(\"function\"!=typeof e[c]){var f=Error((a||\"React class\")+\": \"+n+\" type `\"+c+\"` is invalid; it must be a function, usually from the `prop-types` package, but received `\"+typeof e[c]+\"`.\");throw f.name=\"Invariant Violation\",f}l=e[c](t,c,a,n,null,o)}catch(e){l=e}if(!l||l instanceof Error||r((a||\"React class\")+\": type specification of \"+n+\" `\"+c+\"` is invalid; the type checker function must return `null` or an `Error` but returned a \"+typeof l+\". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).\"),l instanceof Error&&!(l.message in s)){s[l.message]=!0;var p=u?u():\"\";r(\"Failed \"+n+\" type: \"+l.message+(null!=p?p:\"\"))}}}r=function(e){var t=\"Warning: \"+e;\"undefined\"!=typeof console&&console.error(t);try{throw new Error(t)}catch(e){}},a.resetWarningCache=function(){s={}},e.exports=a},function(e,t,n){\"use strict\";var r=n(2);function o(){}function s(){}s.resetWarningCache=o,e.exports=function(){function e(e,t,n,o,s,i){if(i!==r){var a=new Error(\"Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types\");throw a.name=\"Invariant Violation\",a}}function t(){return e}e.isRequired=e;var n={array:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:s,resetWarningCache:o};return n.PropTypes=n,n}}])});\n\n//# sourceURL=webpack://divi-supreme/./node_modules/react-typed/dist/react-typed.js?\n}");

/***/ },

/***/ "./node_modules/react/cjs/react-jsx-runtime.development.js"
/*!*****************************************************************!*\
  !*** ./node_modules/react/cjs/react-jsx-runtime.development.js ***!
  \*****************************************************************/
(__unused_webpack_module, exports, __webpack_require__) {

"use strict";
eval("{/**\n * @license React\n * react-jsx-runtime.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\n\nif (true) {\n  (function() {\n'use strict';\n\nvar React = __webpack_require__(/*! react */ \"react\");\n\n// ATTENTION\n// When adding new symbols to this file,\n// Please consider also adding to 'react-devtools-shared/src/backend/ReactSymbols'\n// The Symbol used to tag the ReactElement-like types.\nvar REACT_ELEMENT_TYPE = Symbol.for('react.element');\nvar REACT_PORTAL_TYPE = Symbol.for('react.portal');\nvar REACT_FRAGMENT_TYPE = Symbol.for('react.fragment');\nvar REACT_STRICT_MODE_TYPE = Symbol.for('react.strict_mode');\nvar REACT_PROFILER_TYPE = Symbol.for('react.profiler');\nvar REACT_PROVIDER_TYPE = Symbol.for('react.provider');\nvar REACT_CONTEXT_TYPE = Symbol.for('react.context');\nvar REACT_FORWARD_REF_TYPE = Symbol.for('react.forward_ref');\nvar REACT_SUSPENSE_TYPE = Symbol.for('react.suspense');\nvar REACT_SUSPENSE_LIST_TYPE = Symbol.for('react.suspense_list');\nvar REACT_MEMO_TYPE = Symbol.for('react.memo');\nvar REACT_LAZY_TYPE = Symbol.for('react.lazy');\nvar REACT_OFFSCREEN_TYPE = Symbol.for('react.offscreen');\nvar MAYBE_ITERATOR_SYMBOL = Symbol.iterator;\nvar FAUX_ITERATOR_SYMBOL = '@@iterator';\nfunction getIteratorFn(maybeIterable) {\n  if (maybeIterable === null || typeof maybeIterable !== 'object') {\n    return null;\n  }\n\n  var maybeIterator = MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL];\n\n  if (typeof maybeIterator === 'function') {\n    return maybeIterator;\n  }\n\n  return null;\n}\n\nvar ReactSharedInternals = React.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;\n\nfunction error(format) {\n  {\n    {\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      printWarning('error', format, args);\n    }\n  }\n}\n\nfunction printWarning(level, format, args) {\n  // When changing this logic, you might want to also\n  // update consoleWithStackDev.www.js as well.\n  {\n    var ReactDebugCurrentFrame = ReactSharedInternals.ReactDebugCurrentFrame;\n    var stack = ReactDebugCurrentFrame.getStackAddendum();\n\n    if (stack !== '') {\n      format += '%s';\n      args = args.concat([stack]);\n    } // eslint-disable-next-line react-internal/safe-string-coercion\n\n\n    var argsWithFormat = args.map(function (item) {\n      return String(item);\n    }); // Careful: RN currently depends on this prefix\n\n    argsWithFormat.unshift('Warning: ' + format); // We intentionally don't use spread (or .apply) directly because it\n    // breaks IE9: https://github.com/facebook/react/issues/13610\n    // eslint-disable-next-line react-internal/no-production-logging\n\n    Function.prototype.apply.call(console[level], console, argsWithFormat);\n  }\n}\n\n// -----------------------------------------------------------------------------\n\nvar enableScopeAPI = false; // Experimental Create Event Handle API.\nvar enableCacheElement = false;\nvar enableTransitionTracing = false; // No known bugs, but needs performance testing\n\nvar enableLegacyHidden = false; // Enables unstable_avoidThisFallback feature in Fiber\n// stuff. Intended to enable React core members to more easily debug scheduling\n// issues in DEV builds.\n\nvar enableDebugTracing = false; // Track which Fiber(s) schedule render work.\n\nvar REACT_MODULE_REFERENCE;\n\n{\n  REACT_MODULE_REFERENCE = Symbol.for('react.module.reference');\n}\n\nfunction isValidElementType(type) {\n  if (typeof type === 'string' || typeof type === 'function') {\n    return true;\n  } // Note: typeof might be other than 'symbol' or 'number' (e.g. if it's a polyfill).\n\n\n  if (type === REACT_FRAGMENT_TYPE || type === REACT_PROFILER_TYPE || enableDebugTracing  || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || enableLegacyHidden  || type === REACT_OFFSCREEN_TYPE || enableScopeAPI  || enableCacheElement  || enableTransitionTracing ) {\n    return true;\n  }\n\n  if (typeof type === 'object' && type !== null) {\n    if (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || // This needs to include all possible module reference object\n    // types supported by any Flight configuration anywhere since\n    // we don't know which Flight build this will end up being used\n    // with.\n    type.$$typeof === REACT_MODULE_REFERENCE || type.getModuleId !== undefined) {\n      return true;\n    }\n  }\n\n  return false;\n}\n\nfunction getWrappedName(outerType, innerType, wrapperName) {\n  var displayName = outerType.displayName;\n\n  if (displayName) {\n    return displayName;\n  }\n\n  var functionName = innerType.displayName || innerType.name || '';\n  return functionName !== '' ? wrapperName + \"(\" + functionName + \")\" : wrapperName;\n} // Keep in sync with react-reconciler/getComponentNameFromFiber\n\n\nfunction getContextName(type) {\n  return type.displayName || 'Context';\n} // Note that the reconciler package should generally prefer to use getComponentNameFromFiber() instead.\n\n\nfunction getComponentNameFromType(type) {\n  if (type == null) {\n    // Host root, text node or just invalid type.\n    return null;\n  }\n\n  {\n    if (typeof type.tag === 'number') {\n      error('Received an unexpected object in getComponentNameFromType(). ' + 'This is likely a bug in React. Please file an issue.');\n    }\n  }\n\n  if (typeof type === 'function') {\n    return type.displayName || type.name || null;\n  }\n\n  if (typeof type === 'string') {\n    return type;\n  }\n\n  switch (type) {\n    case REACT_FRAGMENT_TYPE:\n      return 'Fragment';\n\n    case REACT_PORTAL_TYPE:\n      return 'Portal';\n\n    case REACT_PROFILER_TYPE:\n      return 'Profiler';\n\n    case REACT_STRICT_MODE_TYPE:\n      return 'StrictMode';\n\n    case REACT_SUSPENSE_TYPE:\n      return 'Suspense';\n\n    case REACT_SUSPENSE_LIST_TYPE:\n      return 'SuspenseList';\n\n  }\n\n  if (typeof type === 'object') {\n    switch (type.$$typeof) {\n      case REACT_CONTEXT_TYPE:\n        var context = type;\n        return getContextName(context) + '.Consumer';\n\n      case REACT_PROVIDER_TYPE:\n        var provider = type;\n        return getContextName(provider._context) + '.Provider';\n\n      case REACT_FORWARD_REF_TYPE:\n        return getWrappedName(type, type.render, 'ForwardRef');\n\n      case REACT_MEMO_TYPE:\n        var outerName = type.displayName || null;\n\n        if (outerName !== null) {\n          return outerName;\n        }\n\n        return getComponentNameFromType(type.type) || 'Memo';\n\n      case REACT_LAZY_TYPE:\n        {\n          var lazyComponent = type;\n          var payload = lazyComponent._payload;\n          var init = lazyComponent._init;\n\n          try {\n            return getComponentNameFromType(init(payload));\n          } catch (x) {\n            return null;\n          }\n        }\n\n      // eslint-disable-next-line no-fallthrough\n    }\n  }\n\n  return null;\n}\n\nvar assign = Object.assign;\n\n// Helpers to patch console.logs to avoid logging during side-effect free\n// replaying on render function. This currently only patches the object\n// lazily which won't cover if the log function was extracted eagerly.\n// We could also eagerly patch the method.\nvar disabledDepth = 0;\nvar prevLog;\nvar prevInfo;\nvar prevWarn;\nvar prevError;\nvar prevGroup;\nvar prevGroupCollapsed;\nvar prevGroupEnd;\n\nfunction disabledLog() {}\n\ndisabledLog.__reactDisabledLog = true;\nfunction disableLogs() {\n  {\n    if (disabledDepth === 0) {\n      /* eslint-disable react-internal/no-production-logging */\n      prevLog = console.log;\n      prevInfo = console.info;\n      prevWarn = console.warn;\n      prevError = console.error;\n      prevGroup = console.group;\n      prevGroupCollapsed = console.groupCollapsed;\n      prevGroupEnd = console.groupEnd; // https://github.com/facebook/react/issues/19099\n\n      var props = {\n        configurable: true,\n        enumerable: true,\n        value: disabledLog,\n        writable: true\n      }; // $FlowFixMe Flow thinks console is immutable.\n\n      Object.defineProperties(console, {\n        info: props,\n        log: props,\n        warn: props,\n        error: props,\n        group: props,\n        groupCollapsed: props,\n        groupEnd: props\n      });\n      /* eslint-enable react-internal/no-production-logging */\n    }\n\n    disabledDepth++;\n  }\n}\nfunction reenableLogs() {\n  {\n    disabledDepth--;\n\n    if (disabledDepth === 0) {\n      /* eslint-disable react-internal/no-production-logging */\n      var props = {\n        configurable: true,\n        enumerable: true,\n        writable: true\n      }; // $FlowFixMe Flow thinks console is immutable.\n\n      Object.defineProperties(console, {\n        log: assign({}, props, {\n          value: prevLog\n        }),\n        info: assign({}, props, {\n          value: prevInfo\n        }),\n        warn: assign({}, props, {\n          value: prevWarn\n        }),\n        error: assign({}, props, {\n          value: prevError\n        }),\n        group: assign({}, props, {\n          value: prevGroup\n        }),\n        groupCollapsed: assign({}, props, {\n          value: prevGroupCollapsed\n        }),\n        groupEnd: assign({}, props, {\n          value: prevGroupEnd\n        })\n      });\n      /* eslint-enable react-internal/no-production-logging */\n    }\n\n    if (disabledDepth < 0) {\n      error('disabledDepth fell below zero. ' + 'This is a bug in React. Please file an issue.');\n    }\n  }\n}\n\nvar ReactCurrentDispatcher = ReactSharedInternals.ReactCurrentDispatcher;\nvar prefix;\nfunction describeBuiltInComponentFrame(name, source, ownerFn) {\n  {\n    if (prefix === undefined) {\n      // Extract the VM specific prefix used by each line.\n      try {\n        throw Error();\n      } catch (x) {\n        var match = x.stack.trim().match(/\\n( *(at )?)/);\n        prefix = match && match[1] || '';\n      }\n    } // We use the prefix to ensure our stacks line up with native stack frames.\n\n\n    return '\\n' + prefix + name;\n  }\n}\nvar reentry = false;\nvar componentFrameCache;\n\n{\n  var PossiblyWeakMap = typeof WeakMap === 'function' ? WeakMap : Map;\n  componentFrameCache = new PossiblyWeakMap();\n}\n\nfunction describeNativeComponentFrame(fn, construct) {\n  // If something asked for a stack inside a fake render, it should get ignored.\n  if ( !fn || reentry) {\n    return '';\n  }\n\n  {\n    var frame = componentFrameCache.get(fn);\n\n    if (frame !== undefined) {\n      return frame;\n    }\n  }\n\n  var control;\n  reentry = true;\n  var previousPrepareStackTrace = Error.prepareStackTrace; // $FlowFixMe It does accept undefined.\n\n  Error.prepareStackTrace = undefined;\n  var previousDispatcher;\n\n  {\n    previousDispatcher = ReactCurrentDispatcher.current; // Set the dispatcher in DEV because this might be call in the render function\n    // for warnings.\n\n    ReactCurrentDispatcher.current = null;\n    disableLogs();\n  }\n\n  try {\n    // This should throw.\n    if (construct) {\n      // Something should be setting the props in the constructor.\n      var Fake = function () {\n        throw Error();\n      }; // $FlowFixMe\n\n\n      Object.defineProperty(Fake.prototype, 'props', {\n        set: function () {\n          // We use a throwing setter instead of frozen or non-writable props\n          // because that won't throw in a non-strict mode function.\n          throw Error();\n        }\n      });\n\n      if (typeof Reflect === 'object' && Reflect.construct) {\n        // We construct a different control for this case to include any extra\n        // frames added by the construct call.\n        try {\n          Reflect.construct(Fake, []);\n        } catch (x) {\n          control = x;\n        }\n\n        Reflect.construct(fn, [], Fake);\n      } else {\n        try {\n          Fake.call();\n        } catch (x) {\n          control = x;\n        }\n\n        fn.call(Fake.prototype);\n      }\n    } else {\n      try {\n        throw Error();\n      } catch (x) {\n        control = x;\n      }\n\n      fn();\n    }\n  } catch (sample) {\n    // This is inlined manually because closure doesn't do it for us.\n    if (sample && control && typeof sample.stack === 'string') {\n      // This extracts the first frame from the sample that isn't also in the control.\n      // Skipping one frame that we assume is the frame that calls the two.\n      var sampleLines = sample.stack.split('\\n');\n      var controlLines = control.stack.split('\\n');\n      var s = sampleLines.length - 1;\n      var c = controlLines.length - 1;\n\n      while (s >= 1 && c >= 0 && sampleLines[s] !== controlLines[c]) {\n        // We expect at least one stack frame to be shared.\n        // Typically this will be the root most one. However, stack frames may be\n        // cut off due to maximum stack limits. In this case, one maybe cut off\n        // earlier than the other. We assume that the sample is longer or the same\n        // and there for cut off earlier. So we should find the root most frame in\n        // the sample somewhere in the control.\n        c--;\n      }\n\n      for (; s >= 1 && c >= 0; s--, c--) {\n        // Next we find the first one that isn't the same which should be the\n        // frame that called our sample function and the control.\n        if (sampleLines[s] !== controlLines[c]) {\n          // In V8, the first line is describing the message but other VMs don't.\n          // If we're about to return the first line, and the control is also on the same\n          // line, that's a pretty good indicator that our sample threw at same line as\n          // the control. I.e. before we entered the sample frame. So we ignore this result.\n          // This can happen if you passed a class to function component, or non-function.\n          if (s !== 1 || c !== 1) {\n            do {\n              s--;\n              c--; // We may still have similar intermediate frames from the construct call.\n              // The next one that isn't the same should be our match though.\n\n              if (c < 0 || sampleLines[s] !== controlLines[c]) {\n                // V8 adds a \"new\" prefix for native classes. Let's remove it to make it prettier.\n                var _frame = '\\n' + sampleLines[s].replace(' at new ', ' at '); // If our component frame is labeled \"<anonymous>\"\n                // but we have a user-provided \"displayName\"\n                // splice it in to make the stack more readable.\n\n\n                if (fn.displayName && _frame.includes('<anonymous>')) {\n                  _frame = _frame.replace('<anonymous>', fn.displayName);\n                }\n\n                {\n                  if (typeof fn === 'function') {\n                    componentFrameCache.set(fn, _frame);\n                  }\n                } // Return the line we found.\n\n\n                return _frame;\n              }\n            } while (s >= 1 && c >= 0);\n          }\n\n          break;\n        }\n      }\n    }\n  } finally {\n    reentry = false;\n\n    {\n      ReactCurrentDispatcher.current = previousDispatcher;\n      reenableLogs();\n    }\n\n    Error.prepareStackTrace = previousPrepareStackTrace;\n  } // Fallback to just using the name if we couldn't make it throw.\n\n\n  var name = fn ? fn.displayName || fn.name : '';\n  var syntheticFrame = name ? describeBuiltInComponentFrame(name) : '';\n\n  {\n    if (typeof fn === 'function') {\n      componentFrameCache.set(fn, syntheticFrame);\n    }\n  }\n\n  return syntheticFrame;\n}\nfunction describeFunctionComponentFrame(fn, source, ownerFn) {\n  {\n    return describeNativeComponentFrame(fn, false);\n  }\n}\n\nfunction shouldConstruct(Component) {\n  var prototype = Component.prototype;\n  return !!(prototype && prototype.isReactComponent);\n}\n\nfunction describeUnknownElementTypeFrameInDEV(type, source, ownerFn) {\n\n  if (type == null) {\n    return '';\n  }\n\n  if (typeof type === 'function') {\n    {\n      return describeNativeComponentFrame(type, shouldConstruct(type));\n    }\n  }\n\n  if (typeof type === 'string') {\n    return describeBuiltInComponentFrame(type);\n  }\n\n  switch (type) {\n    case REACT_SUSPENSE_TYPE:\n      return describeBuiltInComponentFrame('Suspense');\n\n    case REACT_SUSPENSE_LIST_TYPE:\n      return describeBuiltInComponentFrame('SuspenseList');\n  }\n\n  if (typeof type === 'object') {\n    switch (type.$$typeof) {\n      case REACT_FORWARD_REF_TYPE:\n        return describeFunctionComponentFrame(type.render);\n\n      case REACT_MEMO_TYPE:\n        // Memo may contain any component type so we recursively resolve it.\n        return describeUnknownElementTypeFrameInDEV(type.type, source, ownerFn);\n\n      case REACT_LAZY_TYPE:\n        {\n          var lazyComponent = type;\n          var payload = lazyComponent._payload;\n          var init = lazyComponent._init;\n\n          try {\n            // Lazy may contain any component type so we recursively resolve it.\n            return describeUnknownElementTypeFrameInDEV(init(payload), source, ownerFn);\n          } catch (x) {}\n        }\n    }\n  }\n\n  return '';\n}\n\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\n\nvar loggedTypeFailures = {};\nvar ReactDebugCurrentFrame = ReactSharedInternals.ReactDebugCurrentFrame;\n\nfunction setCurrentlyValidatingElement(element) {\n  {\n    if (element) {\n      var owner = element._owner;\n      var stack = describeUnknownElementTypeFrameInDEV(element.type, element._source, owner ? owner.type : null);\n      ReactDebugCurrentFrame.setExtraStackFrame(stack);\n    } else {\n      ReactDebugCurrentFrame.setExtraStackFrame(null);\n    }\n  }\n}\n\nfunction checkPropTypes(typeSpecs, values, location, componentName, element) {\n  {\n    // $FlowFixMe This is okay but Flow doesn't know it.\n    var has = Function.call.bind(hasOwnProperty);\n\n    for (var typeSpecName in typeSpecs) {\n      if (has(typeSpecs, typeSpecName)) {\n        var error$1 = void 0; // Prop type validation may throw. In case they do, we don't want to\n        // fail the render phase where it didn't fail before. So we log it.\n        // After these have been cleaned up, we'll let them throw.\n\n        try {\n          // This is intentionally an invariant that gets caught. It's the same\n          // behavior as without this statement except with a better message.\n          if (typeof typeSpecs[typeSpecName] !== 'function') {\n            // eslint-disable-next-line react-internal/prod-error-codes\n            var err = Error((componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' + 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.' + 'This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.');\n            err.name = 'Invariant Violation';\n            throw err;\n          }\n\n          error$1 = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED');\n        } catch (ex) {\n          error$1 = ex;\n        }\n\n        if (error$1 && !(error$1 instanceof Error)) {\n          setCurrentlyValidatingElement(element);\n\n          error('%s: type specification of %s' + ' `%s` is invalid; the type checker ' + 'function must return `null` or an `Error` but returned a %s. ' + 'You may have forgotten to pass an argument to the type checker ' + 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' + 'shape all require an argument).', componentName || 'React class', location, typeSpecName, typeof error$1);\n\n          setCurrentlyValidatingElement(null);\n        }\n\n        if (error$1 instanceof Error && !(error$1.message in loggedTypeFailures)) {\n          // Only monitor this failure once because there tends to be a lot of the\n          // same error.\n          loggedTypeFailures[error$1.message] = true;\n          setCurrentlyValidatingElement(element);\n\n          error('Failed %s type: %s', location, error$1.message);\n\n          setCurrentlyValidatingElement(null);\n        }\n      }\n    }\n  }\n}\n\nvar isArrayImpl = Array.isArray; // eslint-disable-next-line no-redeclare\n\nfunction isArray(a) {\n  return isArrayImpl(a);\n}\n\n/*\n * The `'' + value` pattern (used in in perf-sensitive code) throws for Symbol\n * and Temporal.* types. See https://github.com/facebook/react/pull/22064.\n *\n * The functions in this module will throw an easier-to-understand,\n * easier-to-debug exception with a clear errors message message explaining the\n * problem. (Instead of a confusing exception thrown inside the implementation\n * of the `value` object).\n */\n// $FlowFixMe only called in DEV, so void return is not possible.\nfunction typeName(value) {\n  {\n    // toStringTag is needed for namespaced types like Temporal.Instant\n    var hasToStringTag = typeof Symbol === 'function' && Symbol.toStringTag;\n    var type = hasToStringTag && value[Symbol.toStringTag] || value.constructor.name || 'Object';\n    return type;\n  }\n} // $FlowFixMe only called in DEV, so void return is not possible.\n\n\nfunction willCoercionThrow(value) {\n  {\n    try {\n      testStringCoercion(value);\n      return false;\n    } catch (e) {\n      return true;\n    }\n  }\n}\n\nfunction testStringCoercion(value) {\n  // If you ended up here by following an exception call stack, here's what's\n  // happened: you supplied an object or symbol value to React (as a prop, key,\n  // DOM attribute, CSS property, string ref, etc.) and when React tried to\n  // coerce it to a string using `'' + value`, an exception was thrown.\n  //\n  // The most common types that will cause this exception are `Symbol` instances\n  // and Temporal objects like `Temporal.Instant`. But any object that has a\n  // `valueOf` or `[Symbol.toPrimitive]` method that throws will also cause this\n  // exception. (Library authors do this to prevent users from using built-in\n  // numeric operators like `+` or comparison operators like `>=` because custom\n  // methods are needed to perform accurate arithmetic or comparison.)\n  //\n  // To fix the problem, coerce this object or symbol value to a string before\n  // passing it to React. The most reliable way is usually `String(value)`.\n  //\n  // To find which value is throwing, check the browser or debugger console.\n  // Before this exception was thrown, there should be `console.error` output\n  // that shows the type (Symbol, Temporal.PlainDate, etc.) that caused the\n  // problem and how that type was used: key, atrribute, input value prop, etc.\n  // In most cases, this console output also shows the component and its\n  // ancestor components where the exception happened.\n  //\n  // eslint-disable-next-line react-internal/safe-string-coercion\n  return '' + value;\n}\nfunction checkKeyStringCoercion(value) {\n  {\n    if (willCoercionThrow(value)) {\n      error('The provided key is an unsupported type %s.' + ' This value must be coerced to a string before before using it here.', typeName(value));\n\n      return testStringCoercion(value); // throw (to help callers find troubleshooting comments)\n    }\n  }\n}\n\nvar ReactCurrentOwner = ReactSharedInternals.ReactCurrentOwner;\nvar RESERVED_PROPS = {\n  key: true,\n  ref: true,\n  __self: true,\n  __source: true\n};\nvar specialPropKeyWarningShown;\nvar specialPropRefWarningShown;\nvar didWarnAboutStringRefs;\n\n{\n  didWarnAboutStringRefs = {};\n}\n\nfunction hasValidRef(config) {\n  {\n    if (hasOwnProperty.call(config, 'ref')) {\n      var getter = Object.getOwnPropertyDescriptor(config, 'ref').get;\n\n      if (getter && getter.isReactWarning) {\n        return false;\n      }\n    }\n  }\n\n  return config.ref !== undefined;\n}\n\nfunction hasValidKey(config) {\n  {\n    if (hasOwnProperty.call(config, 'key')) {\n      var getter = Object.getOwnPropertyDescriptor(config, 'key').get;\n\n      if (getter && getter.isReactWarning) {\n        return false;\n      }\n    }\n  }\n\n  return config.key !== undefined;\n}\n\nfunction warnIfStringRefCannotBeAutoConverted(config, self) {\n  {\n    if (typeof config.ref === 'string' && ReactCurrentOwner.current && self && ReactCurrentOwner.current.stateNode !== self) {\n      var componentName = getComponentNameFromType(ReactCurrentOwner.current.type);\n\n      if (!didWarnAboutStringRefs[componentName]) {\n        error('Component \"%s\" contains the string ref \"%s\". ' + 'Support for string refs will be removed in a future major release. ' + 'This case cannot be automatically converted to an arrow function. ' + 'We ask you to manually fix this case by using useRef() or createRef() instead. ' + 'Learn more about using refs safely here: ' + 'https://reactjs.org/link/strict-mode-string-ref', getComponentNameFromType(ReactCurrentOwner.current.type), config.ref);\n\n        didWarnAboutStringRefs[componentName] = true;\n      }\n    }\n  }\n}\n\nfunction defineKeyPropWarningGetter(props, displayName) {\n  {\n    var warnAboutAccessingKey = function () {\n      if (!specialPropKeyWarningShown) {\n        specialPropKeyWarningShown = true;\n\n        error('%s: `key` is not a prop. Trying to access it will result ' + 'in `undefined` being returned. If you need to access the same ' + 'value within the child component, you should pass it as a different ' + 'prop. (https://reactjs.org/link/special-props)', displayName);\n      }\n    };\n\n    warnAboutAccessingKey.isReactWarning = true;\n    Object.defineProperty(props, 'key', {\n      get: warnAboutAccessingKey,\n      configurable: true\n    });\n  }\n}\n\nfunction defineRefPropWarningGetter(props, displayName) {\n  {\n    var warnAboutAccessingRef = function () {\n      if (!specialPropRefWarningShown) {\n        specialPropRefWarningShown = true;\n\n        error('%s: `ref` is not a prop. Trying to access it will result ' + 'in `undefined` being returned. If you need to access the same ' + 'value within the child component, you should pass it as a different ' + 'prop. (https://reactjs.org/link/special-props)', displayName);\n      }\n    };\n\n    warnAboutAccessingRef.isReactWarning = true;\n    Object.defineProperty(props, 'ref', {\n      get: warnAboutAccessingRef,\n      configurable: true\n    });\n  }\n}\n/**\n * Factory method to create a new React element. This no longer adheres to\n * the class pattern, so do not use new to call it. Also, instanceof check\n * will not work. Instead test $$typeof field against Symbol.for('react.element') to check\n * if something is a React Element.\n *\n * @param {*} type\n * @param {*} props\n * @param {*} key\n * @param {string|object} ref\n * @param {*} owner\n * @param {*} self A *temporary* helper to detect places where `this` is\n * different from the `owner` when React.createElement is called, so that we\n * can warn. We want to get rid of owner and replace string `ref`s with arrow\n * functions, and as long as `this` and owner are the same, there will be no\n * change in behavior.\n * @param {*} source An annotation object (added by a transpiler or otherwise)\n * indicating filename, line number, and/or other information.\n * @internal\n */\n\n\nvar ReactElement = function (type, key, ref, self, source, owner, props) {\n  var element = {\n    // This tag allows us to uniquely identify this as a React Element\n    $$typeof: REACT_ELEMENT_TYPE,\n    // Built-in properties that belong on the element\n    type: type,\n    key: key,\n    ref: ref,\n    props: props,\n    // Record the component responsible for creating this element.\n    _owner: owner\n  };\n\n  {\n    // The validation flag is currently mutative. We put it on\n    // an external backing store so that we can freeze the whole object.\n    // This can be replaced with a WeakMap once they are implemented in\n    // commonly used development environments.\n    element._store = {}; // To make comparing ReactElements easier for testing purposes, we make\n    // the validation flag non-enumerable (where possible, which should\n    // include every environment we run tests in), so the test framework\n    // ignores it.\n\n    Object.defineProperty(element._store, 'validated', {\n      configurable: false,\n      enumerable: false,\n      writable: true,\n      value: false\n    }); // self and source are DEV only properties.\n\n    Object.defineProperty(element, '_self', {\n      configurable: false,\n      enumerable: false,\n      writable: false,\n      value: self\n    }); // Two elements created in two different places should be considered\n    // equal for testing purposes and therefore we hide it from enumeration.\n\n    Object.defineProperty(element, '_source', {\n      configurable: false,\n      enumerable: false,\n      writable: false,\n      value: source\n    });\n\n    if (Object.freeze) {\n      Object.freeze(element.props);\n      Object.freeze(element);\n    }\n  }\n\n  return element;\n};\n/**\n * https://github.com/reactjs/rfcs/pull/107\n * @param {*} type\n * @param {object} props\n * @param {string} key\n */\n\nfunction jsxDEV(type, config, maybeKey, source, self) {\n  {\n    var propName; // Reserved names are extracted\n\n    var props = {};\n    var key = null;\n    var ref = null; // Currently, key can be spread in as a prop. This causes a potential\n    // issue if key is also explicitly declared (ie. <div {...props} key=\"Hi\" />\n    // or <div key=\"Hi\" {...props} /> ). We want to deprecate key spread,\n    // but as an intermediary step, we will use jsxDEV for everything except\n    // <div {...props} key=\"Hi\" />, because we aren't currently able to tell if\n    // key is explicitly declared to be undefined or not.\n\n    if (maybeKey !== undefined) {\n      {\n        checkKeyStringCoercion(maybeKey);\n      }\n\n      key = '' + maybeKey;\n    }\n\n    if (hasValidKey(config)) {\n      {\n        checkKeyStringCoercion(config.key);\n      }\n\n      key = '' + config.key;\n    }\n\n    if (hasValidRef(config)) {\n      ref = config.ref;\n      warnIfStringRefCannotBeAutoConverted(config, self);\n    } // Remaining properties are added to a new props object\n\n\n    for (propName in config) {\n      if (hasOwnProperty.call(config, propName) && !RESERVED_PROPS.hasOwnProperty(propName)) {\n        props[propName] = config[propName];\n      }\n    } // Resolve default props\n\n\n    if (type && type.defaultProps) {\n      var defaultProps = type.defaultProps;\n\n      for (propName in defaultProps) {\n        if (props[propName] === undefined) {\n          props[propName] = defaultProps[propName];\n        }\n      }\n    }\n\n    if (key || ref) {\n      var displayName = typeof type === 'function' ? type.displayName || type.name || 'Unknown' : type;\n\n      if (key) {\n        defineKeyPropWarningGetter(props, displayName);\n      }\n\n      if (ref) {\n        defineRefPropWarningGetter(props, displayName);\n      }\n    }\n\n    return ReactElement(type, key, ref, self, source, ReactCurrentOwner.current, props);\n  }\n}\n\nvar ReactCurrentOwner$1 = ReactSharedInternals.ReactCurrentOwner;\nvar ReactDebugCurrentFrame$1 = ReactSharedInternals.ReactDebugCurrentFrame;\n\nfunction setCurrentlyValidatingElement$1(element) {\n  {\n    if (element) {\n      var owner = element._owner;\n      var stack = describeUnknownElementTypeFrameInDEV(element.type, element._source, owner ? owner.type : null);\n      ReactDebugCurrentFrame$1.setExtraStackFrame(stack);\n    } else {\n      ReactDebugCurrentFrame$1.setExtraStackFrame(null);\n    }\n  }\n}\n\nvar propTypesMisspellWarningShown;\n\n{\n  propTypesMisspellWarningShown = false;\n}\n/**\n * Verifies the object is a ReactElement.\n * See https://reactjs.org/docs/react-api.html#isvalidelement\n * @param {?object} object\n * @return {boolean} True if `object` is a ReactElement.\n * @final\n */\n\n\nfunction isValidElement(object) {\n  {\n    return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;\n  }\n}\n\nfunction getDeclarationErrorAddendum() {\n  {\n    if (ReactCurrentOwner$1.current) {\n      var name = getComponentNameFromType(ReactCurrentOwner$1.current.type);\n\n      if (name) {\n        return '\\n\\nCheck the render method of `' + name + '`.';\n      }\n    }\n\n    return '';\n  }\n}\n\nfunction getSourceInfoErrorAddendum(source) {\n  {\n    if (source !== undefined) {\n      var fileName = source.fileName.replace(/^.*[\\\\\\/]/, '');\n      var lineNumber = source.lineNumber;\n      return '\\n\\nCheck your code at ' + fileName + ':' + lineNumber + '.';\n    }\n\n    return '';\n  }\n}\n/**\n * Warn if there's no key explicitly set on dynamic arrays of children or\n * object keys are not valid. This allows us to keep track of children between\n * updates.\n */\n\n\nvar ownerHasKeyUseWarning = {};\n\nfunction getCurrentComponentErrorInfo(parentType) {\n  {\n    var info = getDeclarationErrorAddendum();\n\n    if (!info) {\n      var parentName = typeof parentType === 'string' ? parentType : parentType.displayName || parentType.name;\n\n      if (parentName) {\n        info = \"\\n\\nCheck the top-level render call using <\" + parentName + \">.\";\n      }\n    }\n\n    return info;\n  }\n}\n/**\n * Warn if the element doesn't have an explicit key assigned to it.\n * This element is in an array. The array could grow and shrink or be\n * reordered. All children that haven't already been validated are required to\n * have a \"key\" property assigned to it. Error statuses are cached so a warning\n * will only be shown once.\n *\n * @internal\n * @param {ReactElement} element Element that requires a key.\n * @param {*} parentType element's parent's type.\n */\n\n\nfunction validateExplicitKey(element, parentType) {\n  {\n    if (!element._store || element._store.validated || element.key != null) {\n      return;\n    }\n\n    element._store.validated = true;\n    var currentComponentErrorInfo = getCurrentComponentErrorInfo(parentType);\n\n    if (ownerHasKeyUseWarning[currentComponentErrorInfo]) {\n      return;\n    }\n\n    ownerHasKeyUseWarning[currentComponentErrorInfo] = true; // Usually the current owner is the offender, but if it accepts children as a\n    // property, it may be the creator of the child that's responsible for\n    // assigning it a key.\n\n    var childOwner = '';\n\n    if (element && element._owner && element._owner !== ReactCurrentOwner$1.current) {\n      // Give the component that originally created this child.\n      childOwner = \" It was passed a child from \" + getComponentNameFromType(element._owner.type) + \".\";\n    }\n\n    setCurrentlyValidatingElement$1(element);\n\n    error('Each child in a list should have a unique \"key\" prop.' + '%s%s See https://reactjs.org/link/warning-keys for more information.', currentComponentErrorInfo, childOwner);\n\n    setCurrentlyValidatingElement$1(null);\n  }\n}\n/**\n * Ensure that every element either is passed in a static location, in an\n * array with an explicit keys property defined, or in an object literal\n * with valid key property.\n *\n * @internal\n * @param {ReactNode} node Statically passed child of any type.\n * @param {*} parentType node's parent's type.\n */\n\n\nfunction validateChildKeys(node, parentType) {\n  {\n    if (typeof node !== 'object') {\n      return;\n    }\n\n    if (isArray(node)) {\n      for (var i = 0; i < node.length; i++) {\n        var child = node[i];\n\n        if (isValidElement(child)) {\n          validateExplicitKey(child, parentType);\n        }\n      }\n    } else if (isValidElement(node)) {\n      // This element was passed in a valid location.\n      if (node._store) {\n        node._store.validated = true;\n      }\n    } else if (node) {\n      var iteratorFn = getIteratorFn(node);\n\n      if (typeof iteratorFn === 'function') {\n        // Entry iterators used to provide implicit keys,\n        // but now we print a separate warning for them later.\n        if (iteratorFn !== node.entries) {\n          var iterator = iteratorFn.call(node);\n          var step;\n\n          while (!(step = iterator.next()).done) {\n            if (isValidElement(step.value)) {\n              validateExplicitKey(step.value, parentType);\n            }\n          }\n        }\n      }\n    }\n  }\n}\n/**\n * Given an element, validate that its props follow the propTypes definition,\n * provided by the type.\n *\n * @param {ReactElement} element\n */\n\n\nfunction validatePropTypes(element) {\n  {\n    var type = element.type;\n\n    if (type === null || type === undefined || typeof type === 'string') {\n      return;\n    }\n\n    var propTypes;\n\n    if (typeof type === 'function') {\n      propTypes = type.propTypes;\n    } else if (typeof type === 'object' && (type.$$typeof === REACT_FORWARD_REF_TYPE || // Note: Memo only checks outer props here.\n    // Inner props are checked in the reconciler.\n    type.$$typeof === REACT_MEMO_TYPE)) {\n      propTypes = type.propTypes;\n    } else {\n      return;\n    }\n\n    if (propTypes) {\n      // Intentionally inside to avoid triggering lazy initializers:\n      var name = getComponentNameFromType(type);\n      checkPropTypes(propTypes, element.props, 'prop', name, element);\n    } else if (type.PropTypes !== undefined && !propTypesMisspellWarningShown) {\n      propTypesMisspellWarningShown = true; // Intentionally inside to avoid triggering lazy initializers:\n\n      var _name = getComponentNameFromType(type);\n\n      error('Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?', _name || 'Unknown');\n    }\n\n    if (typeof type.getDefaultProps === 'function' && !type.getDefaultProps.isReactClassApproved) {\n      error('getDefaultProps is only used on classic React.createClass ' + 'definitions. Use a static property named `defaultProps` instead.');\n    }\n  }\n}\n/**\n * Given a fragment, validate that it can only be provided with fragment props\n * @param {ReactElement} fragment\n */\n\n\nfunction validateFragmentProps(fragment) {\n  {\n    var keys = Object.keys(fragment.props);\n\n    for (var i = 0; i < keys.length; i++) {\n      var key = keys[i];\n\n      if (key !== 'children' && key !== 'key') {\n        setCurrentlyValidatingElement$1(fragment);\n\n        error('Invalid prop `%s` supplied to `React.Fragment`. ' + 'React.Fragment can only have `key` and `children` props.', key);\n\n        setCurrentlyValidatingElement$1(null);\n        break;\n      }\n    }\n\n    if (fragment.ref !== null) {\n      setCurrentlyValidatingElement$1(fragment);\n\n      error('Invalid attribute `ref` supplied to `React.Fragment`.');\n\n      setCurrentlyValidatingElement$1(null);\n    }\n  }\n}\n\nfunction jsxWithValidation(type, props, key, isStaticChildren, source, self) {\n  {\n    var validType = isValidElementType(type); // We warn in this case but don't throw. We expect the element creation to\n    // succeed and there will likely be errors in render.\n\n    if (!validType) {\n      var info = '';\n\n      if (type === undefined || typeof type === 'object' && type !== null && Object.keys(type).length === 0) {\n        info += ' You likely forgot to export your component from the file ' + \"it's defined in, or you might have mixed up default and named imports.\";\n      }\n\n      var sourceInfo = getSourceInfoErrorAddendum(source);\n\n      if (sourceInfo) {\n        info += sourceInfo;\n      } else {\n        info += getDeclarationErrorAddendum();\n      }\n\n      var typeString;\n\n      if (type === null) {\n        typeString = 'null';\n      } else if (isArray(type)) {\n        typeString = 'array';\n      } else if (type !== undefined && type.$$typeof === REACT_ELEMENT_TYPE) {\n        typeString = \"<\" + (getComponentNameFromType(type.type) || 'Unknown') + \" />\";\n        info = ' Did you accidentally export a JSX literal instead of a component?';\n      } else {\n        typeString = typeof type;\n      }\n\n      error('React.jsx: type is invalid -- expected a string (for ' + 'built-in components) or a class/function (for composite ' + 'components) but got: %s.%s', typeString, info);\n    }\n\n    var element = jsxDEV(type, props, key, source, self); // The result can be nullish if a mock or a custom function is used.\n    // TODO: Drop this when these are no longer allowed as the type argument.\n\n    if (element == null) {\n      return element;\n    } // Skip key warning if the type isn't valid since our key validation logic\n    // doesn't expect a non-string/function type and can throw confusing errors.\n    // We don't want exception behavior to differ between dev and prod.\n    // (Rendering will throw with a helpful message and as soon as the type is\n    // fixed, the key warnings will appear.)\n\n\n    if (validType) {\n      var children = props.children;\n\n      if (children !== undefined) {\n        if (isStaticChildren) {\n          if (isArray(children)) {\n            for (var i = 0; i < children.length; i++) {\n              validateChildKeys(children[i], type);\n            }\n\n            if (Object.freeze) {\n              Object.freeze(children);\n            }\n          } else {\n            error('React.jsx: Static children should always be an array. ' + 'You are likely explicitly calling React.jsxs or React.jsxDEV. ' + 'Use the Babel transform instead.');\n          }\n        } else {\n          validateChildKeys(children, type);\n        }\n      }\n    }\n\n    if (type === REACT_FRAGMENT_TYPE) {\n      validateFragmentProps(element);\n    } else {\n      validatePropTypes(element);\n    }\n\n    return element;\n  }\n} // These two functions exist to still get child warnings in dev\n// even with the prod transform. This means that jsxDEV is purely\n// opt-in behavior for better messages but that we won't stop\n// giving you warnings if you use production apis.\n\nfunction jsxWithValidationStatic(type, props, key) {\n  {\n    return jsxWithValidation(type, props, key, true);\n  }\n}\nfunction jsxWithValidationDynamic(type, props, key) {\n  {\n    return jsxWithValidation(type, props, key, false);\n  }\n}\n\nvar jsx =  jsxWithValidationDynamic ; // we may want to special case jsxs internally to take advantage of static children.\n// for now we can ship identical prod functions\n\nvar jsxs =  jsxWithValidationStatic ;\n\nexports.Fragment = REACT_FRAGMENT_TYPE;\nexports.jsx = jsx;\nexports.jsxs = jsxs;\n  })();\n}\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/react/cjs/react-jsx-runtime.development.js?\n}");

/***/ },

/***/ "./node_modules/react/jsx-runtime.js"
/*!*******************************************!*\
  !*** ./node_modules/react/jsx-runtime.js ***!
  \*******************************************/
(module, __unused_webpack_exports, __webpack_require__) {

"use strict";
eval("{\n\nif (false) // removed by dead control flow\n{} else {\n  module.exports = __webpack_require__(/*! ./cjs/react-jsx-runtime.development.js */ \"./node_modules/react/cjs/react-jsx-runtime.development.js\");\n}\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/react/jsx-runtime.js?\n}");

/***/ },

/***/ "./node_modules/splitting/dist/splitting.js"
/*!**************************************************!*\
  !*** ./node_modules/splitting/dist/splitting.js ***!
  \**************************************************/
(module) {

eval("{(function (global, factory) {\n\t true ? module.exports = factory() :\n\t0;\n}(this, (function () { 'use strict';\n\nvar root = document;\nvar createText = root.createTextNode.bind(root);\n\n/**\n * # setProperty\n * Apply a CSS var\n * @param {HTMLElement} el\n * @param {string} varName \n * @param {string|number} value \n */\nfunction setProperty(el, varName, value) {\n    el.style.setProperty(varName, value);\n} \n\n/**\n * \n * @param {!HTMLElement} el \n * @param {!HTMLElement} child \n */\nfunction appendChild(el, child) {\n  return el.appendChild(child);\n}\n\n/**\n * \n * @param {!HTMLElement} parent \n * @param {string} key \n * @param {string} text \n * @param {boolean} whitespace \n */\nfunction createElement(parent, key, text, whitespace) {\n  var el = root.createElement('span');\n  key && (el.className = key); \n  if (text) { \n      !whitespace && el.setAttribute(\"data-\" + key, text);\n      el.textContent = text; \n  }\n  return (parent && appendChild(parent, el)) || el;\n}\n\n/**\n * \n * @param {!HTMLElement} el \n * @param {string} key \n */\nfunction getData(el, key) {\n  return el.getAttribute(\"data-\" + key)\n}\n\n/**\n * \n * @param {import('../types').Target} e \n * @param {!HTMLElement} parent\n * @returns {!Array<!HTMLElement>}\n */\nfunction $(e, parent) {\n    return !e || e.length == 0\n        ? // null or empty string returns empty array\n          []\n        : e.nodeName\n            ? // a single element is wrapped in an array\n              [e]\n            : // selector and NodeList are converted to Element[]\n              [].slice.call(e[0].nodeName ? e : (parent || root).querySelectorAll(e));\n}\n\n/**\n * Creates and fills an array with the value provided\n * @param {number} len\n * @param {() => T} valueProvider\n * @return {T}\n * @template T\n */\nfunction Array2D(len) {\n    var a = [];\n    for (; len--; ) {\n        a[len] = [];\n    }\n    return a;\n}\n\n/**\n * A for loop wrapper used to reduce js minified size.\n * @param {!Array<T>} items \n * @param {function(T):void} consumer\n * @template T\n */\nfunction each(items, consumer) {\n    items && items.some(consumer);\n}\n\n/**\n * @param {T} obj \n * @return {function(string):*}\n * @template T\n */\nfunction selectFrom(obj) {\n    return function (key) {\n        return obj[key];\n    }\n}\n\n/**\n * # Splitting.index\n * Index split elements and add them to a Splitting instance.\n *\n * @param {HTMLElement} element\n * @param {string} key \n * @param {!Array<!HTMLElement> | !Array<!Array<!HTMLElement>>} items \n */\nfunction index(element, key, items) {\n    var prefix = '--' + key;\n    var cssVar = prefix + \"-index\";\n\n    each(items, function (items, i) {\n        if (Array.isArray(items)) {\n            each(items, function(item) {\n                setProperty(item, cssVar, i);\n            });\n        } else {\n            setProperty(items, cssVar, i);\n        }\n    });\n\n    setProperty(element, prefix + \"-total\", items.length);\n}\n\n/**\n * @type {Record<string, import('./types').ISplittingPlugin>}\n */\nvar plugins = {};\n\n/**\n * @param {string} by\n * @param {string} parent\n * @param {!Array<string>} deps\n * @return {!Array<string>}\n */\nfunction resolvePlugins(by, parent, deps) {\n    // skip if already visited this dependency\n    var index = deps.indexOf(by);\n    if (index == -1) {\n        // if new to dependency array, add to the beginning\n        deps.unshift(by);\n\n        // recursively call this function for all dependencies\n        var plugin = plugins[by];\n        if (!plugin) {\n            throw new Error(\"plugin not loaded: \" + by);\n        }\n        each(plugin.depends, function(p) {\n            resolvePlugins(p, by, deps);\n        });\n    } else {\n        // if this dependency was added already move to the left of\n        // the parent dependency so it gets loaded in order\n        var indexOfParent = deps.indexOf(parent);\n        deps.splice(index, 1);\n        deps.splice(indexOfParent, 0, by);\n    }\n    return deps;\n}\n\n/**\n * Internal utility for creating plugins... essentially to reduce\n * the size of the library\n * @param {string} by \n * @param {string} key \n * @param {string[]} depends \n * @param {Function} split \n * @returns {import('./types').ISplittingPlugin}\n */\nfunction createPlugin(by, depends, key, split) {\n    return {\n        by: by,\n        depends: depends,\n        key: key,\n        split: split\n    }\n}\n\n/**\n *\n * @param {string} by\n * @returns {import('./types').ISplittingPlugin[]}\n */\nfunction resolve(by) {\n    return resolvePlugins(by, 0, []).map(selectFrom(plugins));\n}\n\n/**\n * Adds a new plugin to splitting\n * @param {import('./types').ISplittingPlugin} opts\n */\nfunction add(opts) {\n    plugins[opts.by] = opts;\n}\n\n/**\n * # Splitting.split\n * Split an element's textContent into individual elements\n * @param {!HTMLElement} el  Element to split\n * @param {string} key \n * @param {string} splitOn \n * @param {boolean} includePrevious \n * @param {boolean} preserveWhitespace\n * @return {!Array<!HTMLElement>}\n */\nfunction splitText(el, key, splitOn, includePrevious, preserveWhitespace) {\n    // Combine any strange text nodes or empty whitespace.\n    el.normalize();\n\n    // Use fragment to prevent unnecessary DOM thrashing.\n    var elements = [];\n    var F = document.createDocumentFragment();\n\n    if (includePrevious) {\n        elements.push(el.previousSibling);\n    }\n\n    var allElements = [];\n    $(el.childNodes).some(function(next) {\n        if (next.tagName && !next.hasChildNodes()) {\n            // keep elements without child nodes (no text and no children)\n            allElements.push(next);\n            return;\n        }\n        // Recursively run through child nodes\n        if (next.childNodes && next.childNodes.length) {\n            allElements.push(next);\n            elements.push.apply(elements, splitText(next, key, splitOn, includePrevious, preserveWhitespace));\n            return;\n        }\n\n        // Get the text to split, trimming out the whitespace\n        /** @type {string} */\n        var wholeText = next.wholeText || '';\n        var contents = wholeText.trim();\n\n        // If there's no text left after trimming whitespace, continue the loop\n        if (contents.length) {\n            // insert leading space if there was one\n            if (wholeText[0] === ' ') {\n                allElements.push(createText(' '));\n            }\n            // Concatenate the split text children back into the full array\n            var useSegmenter = splitOn === \"\" && typeof Intl.Segmenter === \"function\";\n            each(useSegmenter ? Array.from(new Intl.Segmenter().segment(contents)).map(function(x){return x.segment}) : contents.split(splitOn), function (splitText, i) {\n                if (i && preserveWhitespace) {\n                    allElements.push(createElement(F, \"whitespace\", \" \", preserveWhitespace));\n                }\n                var splitEl = createElement(F, key, splitText);\n                elements.push(splitEl);\n                allElements.push(splitEl);\n            }); \n            // insert trailing space if there was one\n            if (wholeText[wholeText.length - 1] === ' ') {\n                allElements.push(createText(' '));\n            }\n        }\n    });\n\n    each(allElements, function(el) {\n        appendChild(F, el);\n    });\n\n    // Clear out the existing element\n    el.innerHTML = \"\";\n    appendChild(el, F);\n    return elements;\n}\n\n/** an empty value */\nvar _ = 0;\n\nfunction copy(dest, src) {\n    for (var k in src) {\n        dest[k] = src[k];\n    }\n    return dest;\n}\n\nvar WORDS = 'words';\n\nvar wordPlugin = createPlugin(\n    /* by= */ WORDS,\n    /* depends= */ _,\n    /* key= */ 'word', \n    /* split= */ function(el) {\n        return splitText(el, 'word', /\\s+/, 0, 1)\n    }\n);\n\nvar CHARS = \"chars\";\n\nvar charPlugin = createPlugin(\n    /* by= */ CHARS,\n    /* depends= */ [WORDS],\n    /* key= */ \"char\", \n    /* split= */ function(el, options, ctx) {\n        var results = [];\n\n        each(ctx[WORDS], function(word, i) {\n            results.push.apply(results, splitText(word, \"char\", \"\", options.whitespace && i));\n        });\n\n        return results;\n    }\n);\n\n/**\n * # Splitting\n * \n * @param {import('./types').ISplittingOptions} opts\n * @return {!Array<*>}\n */\nfunction Splitting (opts) {\n  opts = opts || {};\n  var key = opts.key;\n\n  return $(opts.target || '[data-splitting]').map(function(el) {\n    var ctx = el['🍌'];  \n    if (!opts.force && ctx) {\n      return ctx;\n    }\n\n    ctx = el['🍌'] = { el: el };\n    var by = opts.by || getData(el, 'splitting');\n    if (!by || by == 'true') {\n      by = CHARS;\n    }\n    var items = resolve(by);\n    var opts2 = copy({}, opts);\n    each(items, function(plugin) {\n      if (plugin.split) {\n        var pluginBy = plugin.by;\n        var key2 = (key ? '-' + key : '') + plugin.key;\n        var results = plugin.split(el, opts2, ctx);\n        key2 && index(el, key2, results);\n        ctx[pluginBy] = results;\n        el.classList.add(pluginBy);\n      } \n    });\n\n    el.classList.add('splitting');\n    return ctx;\n  })\n}\n\n/**\n * # Splitting.html\n * \n * @param {import('./types').ISplittingOptions} opts\n */\nfunction html(opts) {\n  opts = opts || {};\n  var parent = opts.target =  createElement();\n  parent.innerHTML = opts.content;\n  Splitting(opts);\n  return parent.outerHTML\n}\n\nSplitting.html = html;\nSplitting.add = add;\n\n/**\n * Detects the grid by measuring which elements align to a side of it.\n * @param {!HTMLElement} el \n * @param {import('../core/types').ISplittingOptions} options\n * @param {*} side \n */\nfunction detectGrid(el, options, side) {\n    var items = $(options.matching || el.children, el);\n    var c = {};\n\n    each(items, function(w) {\n        var val = Math.round(w[side]);\n        (c[val] || (c[val] = [])).push(w);\n    });\n\n    return Object.keys(c).map(Number).sort(byNumber).map(selectFrom(c));\n}\n\n/**\n * Sorting function for numbers.\n * @param {number} a \n * @param {number} b\n * @return {number} \n */\nfunction byNumber(a, b) {\n    return a - b;\n}\n\nvar linePlugin = createPlugin(\n    /* by= */ 'lines',\n    /* depends= */ [WORDS],\n    /* key= */ 'line',\n    /* split= */ function(el, options, ctx) {\n      return detectGrid(el, { matching: ctx[WORDS] }, 'offsetTop')\n    }\n);\n\nvar itemPlugin = createPlugin(\n    /* by= */ 'items',\n    /* depends= */ _,\n    /* key= */ 'item', \n    /* split= */ function(el, options) {\n        return $(options.matching || el.children, el)\n    }\n);\n\nvar rowPlugin = createPlugin(\n    /* by= */ 'rows',\n    /* depends= */ _,\n    /* key= */ 'row', \n    /* split= */ function(el, options) {\n        return detectGrid(el, options, \"offsetTop\");\n    }\n);\n\nvar columnPlugin = createPlugin(\n    /* by= */ 'cols',\n    /* depends= */ _,\n    /* key= */ \"col\", \n    /* split= */ function(el, options) {\n        return detectGrid(el, options, \"offsetLeft\");\n    }\n);\n\nvar gridPlugin = createPlugin(\n    /* by= */ 'grid',\n    /* depends= */ ['rows', 'cols']\n);\n\nvar LAYOUT = \"layout\";\n\nvar layoutPlugin = createPlugin(\n    /* by= */ LAYOUT,\n    /* depends= */ _,\n    /* key= */ _,\n    /* split= */ function(el, opts) {\n        // detect and set options\n        var rows =  opts.rows = +(opts.rows || getData(el, 'rows') || 1);\n        var columns = opts.columns = +(opts.columns || getData(el, 'columns') || 1);\n\n        // Seek out the first <img> if the value is true \n        opts.image = opts.image || getData(el, 'image') || el.currentSrc || el.src;\n        if (opts.image) {\n            var img = $(\"img\", el)[0];\n            opts.image = img && (img.currentSrc || img.src);\n        }\n\n        // add optional image to background\n        if (opts.image) {\n            setProperty(el, \"background-image\", \"url(\" + opts.image + \")\");\n        }\n\n        var totalCells = rows * columns;\n        var elements = [];\n\n        var container = createElement(_, \"cell-grid\");\n        while (totalCells--) {\n            // Create a span\n            var cell = createElement(container, \"cell\");\n            createElement(cell, \"cell-inner\");\n            elements.push(cell);\n        }\n\n        // Append elements back into the parent\n        appendChild(el, container);\n\n        return elements;\n    }\n);\n\nvar cellRowPlugin = createPlugin(\n    /* by= */ \"cellRows\",\n    /* depends= */ [LAYOUT],\n    /* key= */ \"row\",\n    /* split= */ function(el, opts, ctx) {\n        var rowCount = opts.rows;\n        var result = Array2D(rowCount);\n\n        each(ctx[LAYOUT], function(cell, i, src) {\n            result[Math.floor(i / (src.length / rowCount))].push(cell);\n        });\n\n        return result;\n    }\n);\n\nvar cellColumnPlugin = createPlugin(\n    /* by= */ \"cellColumns\",\n    /* depends= */ [LAYOUT],\n    /* key= */ \"col\",\n    /* split= */ function(el, opts, ctx) {\n        var columnCount = opts.columns;\n        var result = Array2D(columnCount);\n\n        each(ctx[LAYOUT], function(cell, i) {\n            result[i % columnCount].push(cell);\n        });\n\n        return result;\n    }\n);\n\nvar cellPlugin = createPlugin(\n    /* by= */ \"cells\",\n    /* depends= */ ['cellRows', 'cellColumns'],\n    /* key= */ \"cell\", \n    /* split= */ function(el, opt, ctx) { \n        // re-index the layout as the cells\n        return ctx[LAYOUT];\n    }\n);\n\n// install plugins\n// word/char plugins\nadd(wordPlugin);\nadd(charPlugin);\nadd(linePlugin);\n// grid plugins\nadd(itemPlugin);\nadd(rowPlugin);\nadd(columnPlugin);\nadd(gridPlugin);\n// cell-layout plugins\nadd(layoutPlugin);\nadd(cellRowPlugin);\nadd(cellColumnPlugin);\nadd(cellPlugin);\n\nreturn Splitting;\n\n})));\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/splitting/dist/splitting.js?\n}");

/***/ },

/***/ "./node_modules/vivus/dist/vivus.js"
/*!******************************************!*\
  !*** ./node_modules/vivus/dist/vivus.js ***!
  \******************************************/
(module, exports) {

eval("{var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/**\n * vivus - JavaScript library to make drawing animation on SVG\n * @version v0.4.6\n * @link https://github.com/maxwellito/vivus\n * @license MIT\n */\n\n(function () {\n\n  'use strict';\n\n/**\n * Pathformer\n * Beta version\n *\n * Take any SVG version 1.1 and transform\n * child elements to 'path' elements\n *\n * This code is purely forked from\n * https://github.com/Waest/SVGPathConverter\n */\n\n/**\n * Class constructor\n *\n * @param {DOM|String} element Dom element of the SVG or id of it\n */\nfunction Pathformer(element) {\n  // Test params\n  if (typeof element === 'undefined') {\n    throw new Error('Pathformer [constructor]: \"element\" parameter is required');\n  }\n\n  // Set the element\n  if (element.constructor === String) {\n    element = document.getElementById(element);\n    if (!element) {\n      throw new Error('Pathformer [constructor]: \"element\" parameter is not related to an existing ID');\n    }\n  }\n  if (element instanceof window.SVGElement || \n      element instanceof window.SVGGElement ||\n      /^svg$/i.test(element.nodeName)) {\n    this.el = element;\n  } else {\n    throw new Error('Pathformer [constructor]: \"element\" parameter must be a string or a SVGelement');\n  }\n\n  // Start\n  this.scan(element);\n}\n\n/**\n * List of tags which can be transformed\n * to path elements\n *\n * @type {Array}\n */\nPathformer.prototype.TYPES = ['line', 'ellipse', 'circle', 'polygon', 'polyline', 'rect'];\n\n/**\n * List of attribute names which contain\n * data. This array list them to check if\n * they contain bad values, like percentage.\n *\n * @type {Array}\n */\nPathformer.prototype.ATTR_WATCH = ['cx', 'cy', 'points', 'r', 'rx', 'ry', 'x', 'x1', 'x2', 'y', 'y1', 'y2'];\n\n/**\n * Finds the elements compatible for transform\n * and apply the liked method\n *\n * @param  {object} options Object from the constructor\n */\nPathformer.prototype.scan = function (svg) {\n  var fn, element, pathData, pathDom,\n      elements = svg.querySelectorAll(this.TYPES.join(','));\n\n  for (var i = 0; i < elements.length; i++) {\n    element = elements[i];\n    fn = this[element.tagName.toLowerCase() + 'ToPath'];\n    pathData = fn(this.parseAttr(element.attributes));\n    pathDom = this.pathMaker(element, pathData);\n    element.parentNode.replaceChild(pathDom, element);\n  }\n};\n\n\n/**\n * Read `line` element to extract and transform\n * data, to make it ready for a `path` object.\n *\n * @param  {DOMelement} element Line element to transform\n * @return {object}             Data for a `path` element\n */\nPathformer.prototype.lineToPath = function (element) {\n  var newElement = {},\n      x1 = element.x1 || 0,\n      y1 = element.y1 || 0,\n      x2 = element.x2 || 0,\n      y2 = element.y2 || 0;\n\n  newElement.d = 'M' + x1 + ',' + y1 + 'L' + x2 + ',' + y2;\n  return newElement;\n};\n\n/**\n * Read `rect` element to extract and transform\n * data, to make it ready for a `path` object.\n * The radius-border is not taken in charge yet.\n * (your help is more than welcomed)\n *\n * @param  {DOMelement} element Rect element to transform\n * @return {object}             Data for a `path` element\n */\nPathformer.prototype.rectToPath = function (element) {\n  var newElement = {},\n      x      = parseFloat(element.x)      || 0,\n      y      = parseFloat(element.y)      || 0,\n      width  = parseFloat(element.width)  || 0,\n      height = parseFloat(element.height) || 0;\n\n  if (element.rx || element.ry) {\n    var rx = parseInt(element.rx, 10) || -1,\n        ry = parseInt(element.ry, 10) || -1;\n    rx = Math.min(Math.max(rx < 0 ? ry : rx, 0), width/2);\n    ry = Math.min(Math.max(ry < 0 ? rx : ry, 0), height/2);\n\n    newElement.d = 'M ' + (x + rx) + ',' + y + ' ' +\n                   'L ' + (x + width - rx) + ',' + y + ' ' +\n                   'A ' + rx + ',' + ry + ',0,0,1,' + (x + width) + ',' + (y + ry) + ' ' +\n                   'L ' + (x + width) + ',' + (y + height - ry) + ' ' +\n                   'A ' + rx + ',' + ry + ',0,0,1,' + (x + width - rx) + ',' + (y + height) + ' ' +\n                   'L ' + (x + rx) + ',' + (y + height) + ' ' +\n                   'A ' + rx + ',' + ry + ',0,0,1,' + x + ',' + (y + height - ry) + ' ' +\n                   'L ' + x + ',' + (y + ry) + ' ' +\n                   'A ' + rx + ',' + ry + ',0,0,1,' + (x + rx) + ',' + y;\n  }\n  else {\n    newElement.d = 'M' + x + ' ' + y + ' ' +\n                   'L' + (x + width) + ' ' + y + ' ' +\n                   'L' + (x + width) + ' ' + (y + height) + ' ' +\n                   'L' + x + ' ' + (y + height) + ' Z';\n  }\n  return newElement;\n};\n\n/**\n * Read `polyline` element to extract and transform\n * data, to make it ready for a `path` object.\n *\n * @param  {DOMelement} element Polyline element to transform\n * @return {object}             Data for a `path` element\n */\nPathformer.prototype.polylineToPath = function (element) {\n  var newElement = {},\n      points = element.points.trim().split(' '),\n      i, path;\n\n  // Reformatting if points are defined without commas\n  if (element.points.indexOf(',') === -1) {\n    var formattedPoints = [];\n    for (i = 0; i < points.length; i+=2) {\n      formattedPoints.push(points[i] + ',' + points[i+1]);\n    }\n    points = formattedPoints;\n  }\n\n  // Generate the path.d value\n  path = 'M' + points[0];\n  for(i = 1; i < points.length; i++) {\n    if (points[i].indexOf(',') !== -1) {\n      path += 'L' + points[i];\n    }\n  }\n  newElement.d = path;\n  return newElement;\n};\n\n/**\n * Read `polygon` element to extract and transform\n * data, to make it ready for a `path` object.\n * This method rely on polylineToPath, because the\n * logic is similar. The path created is just closed,\n * so it needs an 'Z' at the end.\n *\n * @param  {DOMelement} element Polygon element to transform\n * @return {object}             Data for a `path` element\n */\nPathformer.prototype.polygonToPath = function (element) {\n  var newElement = Pathformer.prototype.polylineToPath(element);\n\n  newElement.d += 'Z';\n  return newElement;\n};\n\n/**\n * Read `ellipse` element to extract and transform\n * data, to make it ready for a `path` object.\n *\n * @param  {DOMelement} element ellipse element to transform\n * @return {object}             Data for a `path` element\n */\nPathformer.prototype.ellipseToPath = function (element) {\n  var newElement = {},\n      rx = parseFloat(element.rx) || 0,\n      ry = parseFloat(element.ry) || 0,\n      cx = parseFloat(element.cx) || 0,\n      cy = parseFloat(element.cy) || 0,\n      startX = cx - rx,\n      startY = cy,\n      endX = parseFloat(cx) + parseFloat(rx),\n      endY = cy;\n\n  newElement.d = 'M' + startX + ',' + startY +\n                 'A' + rx + ',' + ry + ' 0,1,1 ' + endX + ',' + endY +\n                 'A' + rx + ',' + ry + ' 0,1,1 ' + startX + ',' + endY;\n  return newElement;\n};\n\n/**\n * Read `circle` element to extract and transform\n * data, to make it ready for a `path` object.\n *\n * @param  {DOMelement} element Circle element to transform\n * @return {object}             Data for a `path` element\n */\nPathformer.prototype.circleToPath = function (element) {\n  var newElement = {},\n      r  = parseFloat(element.r)  || 0,\n      cx = parseFloat(element.cx) || 0,\n      cy = parseFloat(element.cy) || 0,\n      startX = cx - r,\n      startY = cy,\n      endX = parseFloat(cx) + parseFloat(r),\n      endY = cy;\n      \n  newElement.d =  'M' + startX + ',' + startY +\n                  'A' + r + ',' + r + ' 0,1,1 ' + endX + ',' + endY +\n                  'A' + r + ',' + r + ' 0,1,1 ' + startX + ',' + endY;\n  return newElement;\n};\n\n/**\n * Create `path` elements form original element\n * and prepared objects\n *\n * @param  {DOMelement} element  Original element to transform\n * @param  {object} pathData     Path data (from `toPath` methods)\n * @return {DOMelement}          Path element\n */\nPathformer.prototype.pathMaker = function (element, pathData) {\n  var i, attr, pathTag = document.createElementNS('http://www.w3.org/2000/svg','path');\n  for(i = 0; i < element.attributes.length; i++) {\n    attr = element.attributes[i];\n    if (this.ATTR_WATCH.indexOf(attr.name) === -1) {\n      pathTag.setAttribute(attr.name, attr.value);\n    }\n  }\n  for(i in pathData) {\n    pathTag.setAttribute(i, pathData[i]);\n  }\n  return pathTag;\n};\n\n/**\n * Parse attributes of a DOM element to\n * get an object of attribute => value\n *\n * @param  {NamedNodeMap} attributes Attributes object from DOM element to parse\n * @return {object}                  Object of attributes\n */\nPathformer.prototype.parseAttr = function (element) {\n  var attr, output = {};\n  for (var i = 0; i < element.length; i++) {\n    attr = element[i];\n    // Check if no data attribute contains '%', or the transformation is impossible\n    if (this.ATTR_WATCH.indexOf(attr.name) !== -1 && attr.value.indexOf('%') !== -1) {\n      throw new Error('Pathformer [parseAttr]: a SVG shape got values in percentage. This cannot be transformed into \\'path\\' tags. Please use \\'viewBox\\'.');\n    }\n    output[attr.name] = attr.value;\n  }\n  return output;\n};\n\n  'use strict';\n\nvar setupEnv, requestAnimFrame, cancelAnimFrame, parsePositiveInt;\n\n/**\n * Vivus\n * Beta version\n *\n * Take any SVG and make the animation\n * to give give the impression of live drawing\n *\n * This in more than just inspired from codrops\n * At that point, it's a pure fork.\n */\n\n/**\n * Class constructor\n * option structure\n *   type: 'delayed'|'sync'|'oneByOne'|'script' (to know if the items must be drawn synchronously or not, default: delayed)\n *   duration: <int> (in frames)\n *   start: 'inViewport'|'manual'|'autostart' (start automatically the animation, default: inViewport)\n *   delay: <int> (delay between the drawing of first and last path)\n *   dashGap <integer> whitespace extra margin between dashes\n *   pathTimingFunction <function> timing animation function for each path element of the SVG\n *   animTimingFunction <function> timing animation function for the complete SVG\n *   forceRender <boolean> force the browser to re-render all updated path items\n *   selfDestroy <boolean> removes all extra styling on the SVG, and leaves it as original\n *\n * The attribute 'type' is by default on 'delayed'.\n *  - 'delayed'\n *    all paths are draw at the same time but with a\n *    little delay between them before start\n *  - 'sync'\n *    all path are start and finish at the same time\n *  - 'oneByOne'\n *    only one path is draw at the time\n *    the end of the first one will trigger the draw\n *    of the next one\n *\n * All these values can be overwritten individually\n * for each path item in the SVG\n * The value of frames will always take the advantage of\n * the duration value.\n * If you fail somewhere, an error will be thrown.\n * Good luck.\n *\n * @constructor\n * @this {Vivus}\n * @param {DOM|String}   element  Dom element of the SVG or id of it\n * @param {Object}       options  Options about the animation\n * @param {Function}     callback Callback for the end of the animation\n */\nfunction Vivus(element, options, callback) {\n  setupEnv();\n\n  // Setup\n  this.isReady = false;\n  this.setElement(element, options);\n  this.setOptions(options);\n  this.setCallback(callback);\n\n  if (this.isReady) {\n    this.init();\n  }\n}\n\n/**\n * Timing functions\n **************************************\n *\n * Default functions to help developers.\n * It always take a number as parameter (between 0 to 1) then\n * return a number (between 0 and 1)\n */\nVivus.LINEAR = function(x) {\n  return x;\n};\nVivus.EASE = function(x) {\n  return -Math.cos(x * Math.PI) / 2 + 0.5;\n};\nVivus.EASE_OUT = function(x) {\n  return 1 - Math.pow(1 - x, 3);\n};\nVivus.EASE_IN = function(x) {\n  return Math.pow(x, 3);\n};\nVivus.EASE_OUT_BOUNCE = function(x) {\n  var base = -Math.cos(x * (0.5 * Math.PI)) + 1,\n    rate = Math.pow(base, 1.5),\n    rateR = Math.pow(1 - x, 2),\n    progress = -Math.abs(Math.cos(rate * (2.5 * Math.PI))) + 1;\n  return 1 - rateR + progress * rateR;\n};\n\n/**\n * Setters\n **************************************\n */\n\n/**\n * Check and set the element in the instance\n * The method will not return anything, but will throw an\n * error if the parameter is invalid\n *\n * @param {DOM|String}   element  SVG Dom element or id of it\n */\nVivus.prototype.setElement = function(element, options) {\n  var onLoad, self;\n\n  // Basic check\n  if (typeof element === 'undefined') {\n    throw new Error('Vivus [constructor]: \"element\" parameter is required');\n  }\n\n  // Set the element\n  if (element.constructor === String) {\n    element = document.getElementById(element);\n    if (!element) {\n      throw new Error(\n        'Vivus [constructor]: \"element\" parameter is not related to an existing ID'\n      );\n    }\n  }\n  this.parentEl = element;\n\n  // Load the SVG with XMLHttpRequest and extract the SVG\n  if (options && options.file) {\n    self = this;\n    onLoad = function() {\n      var domSandbox = document.createElement('div');\n      domSandbox.innerHTML = this.responseText;\n\n      var svgTag = domSandbox.querySelector('svg');\n      if (!svgTag) {\n        throw new Error(\n          'Vivus [load]: Cannot find the SVG in the loaded file : ' +\n            options.file\n        );\n      }\n\n      self.el = svgTag;\n      self.el.setAttribute('width', '100%');\n      self.el.setAttribute('height', '100%');\n      self.parentEl.appendChild(self.el);\n      self.isReady = true;\n      self.init();\n      self = null;\n    };\n\n    var oReq = new window.XMLHttpRequest();\n    oReq.addEventListener('load', onLoad);\n    oReq.open('GET', options.file);\n    oReq.send();\n    return;\n  }\n\n  switch (element.constructor) {\n    case window.SVGSVGElement:\n    case window.SVGElement:\n    case window.SVGGElement:\n      this.el = element;\n      this.isReady = true;\n      break;\n\n    case window.HTMLObjectElement:\n      self = this;\n      onLoad = function(e) {\n        if (self.isReady) {\n          return;\n        }\n        self.el =\n          element.contentDocument &&\n          element.contentDocument.querySelector('svg');\n        if (!self.el && e) {\n          throw new Error(\n            'Vivus [constructor]: object loaded does not contain any SVG'\n          );\n        } else if (self.el) {\n          if (element.getAttribute('built-by-vivus')) {\n            self.parentEl.insertBefore(self.el, element);\n            self.parentEl.removeChild(element);\n            self.el.setAttribute('width', '100%');\n            self.el.setAttribute('height', '100%');\n          }\n          self.isReady = true;\n          self.init();\n          self = null;\n        }\n      };\n\n      if (!onLoad()) {\n        element.addEventListener('load', onLoad);\n      }\n      break;\n\n    default:\n      throw new Error(\n        'Vivus [constructor]: \"element\" parameter is not valid (or miss the \"file\" attribute)'\n      );\n  }\n};\n\n/**\n * Set up user option to the instance\n * The method will not return anything, but will throw an\n * error if the parameter is invalid\n *\n * @param  {object} options Object from the constructor\n */\nVivus.prototype.setOptions = function(options) {\n  var allowedTypes = [\n    'delayed',\n    'sync',\n    'async',\n    'nsync',\n    'oneByOne',\n    'scenario',\n    'scenario-sync'\n  ];\n  var allowedStarts = ['inViewport', 'manual', 'autostart'];\n\n  // Basic check\n  if (options !== undefined && options.constructor !== Object) {\n    throw new Error(\n      'Vivus [constructor]: \"options\" parameter must be an object'\n    );\n  } else {\n    options = options || {};\n  }\n\n  // Set the animation type\n  if (options.type && allowedTypes.indexOf(options.type) === -1) {\n    throw new Error(\n      'Vivus [constructor]: ' +\n        options.type +\n        ' is not an existing animation `type`'\n    );\n  } else {\n    this.type = options.type || allowedTypes[0];\n  }\n\n  // Set the start type\n  if (options.start && allowedStarts.indexOf(options.start) === -1) {\n    throw new Error(\n      'Vivus [constructor]: ' +\n        options.start +\n        ' is not an existing `start` option'\n    );\n  } else {\n    this.start = options.start || allowedStarts[0];\n  }\n\n  this.isIE =\n    window.navigator.userAgent.indexOf('MSIE') !== -1 ||\n    window.navigator.userAgent.indexOf('Trident/') !== -1 ||\n    window.navigator.userAgent.indexOf('Edge/') !== -1;\n  this.duration = parsePositiveInt(options.duration, 120);\n  this.delay = parsePositiveInt(options.delay, null);\n  this.dashGap = parsePositiveInt(options.dashGap, 1);\n  this.forceRender = options.hasOwnProperty('forceRender')\n    ? !!options.forceRender\n    : this.isIE;\n  this.reverseStack = !!options.reverseStack;\n  this.selfDestroy = !!options.selfDestroy;\n  this.onReady = options.onReady;\n  this.map = [];\n  this.frameLength = this.currentFrame = this.delayUnit = this.speed = this.handle = null;\n\n  this.ignoreInvisible = options.hasOwnProperty('ignoreInvisible')\n    ? !!options.ignoreInvisible\n    : false;\n\n  this.animTimingFunction = options.animTimingFunction || Vivus.LINEAR;\n  this.pathTimingFunction = options.pathTimingFunction || Vivus.LINEAR;\n\n  if (this.delay >= this.duration) {\n    throw new Error('Vivus [constructor]: delay must be shorter than duration');\n  }\n};\n\n/**\n * Set up callback to the instance\n * The method will not return enything, but will throw an\n * error if the parameter is invalid\n *\n * @param  {Function} callback Callback for the animation end\n */\nVivus.prototype.setCallback = function(callback) {\n  // Basic check\n  if (!!callback && callback.constructor !== Function) {\n    throw new Error(\n      'Vivus [constructor]: \"callback\" parameter must be a function'\n    );\n  }\n  this.callback = callback || function() {};\n};\n\n/**\n * Core\n **************************************\n */\n\n/**\n * Map the svg, path by path.\n * The method return nothing, it just fill the\n * `map` array. Each item in this array represent\n * a path element from the SVG, with informations for\n * the animation.\n *\n * ```\n * [\n *   {\n *     el: <DOMobj> the path element\n *     length: <number> length of the path line\n *     startAt: <number> time start of the path animation (in frames)\n *     duration: <number> path animation duration (in frames)\n *   },\n *   ...\n * ]\n * ```\n *\n */\nVivus.prototype.mapping = function() {\n  var i, paths, path, pAttrs, pathObj, totalLength, lengthMeter, timePoint, scale, hasNonScale;\n  timePoint = totalLength = lengthMeter = 0;\n  paths = this.el.querySelectorAll('path');\n  hasNonScale = false;\n\n  for (i = 0; i < paths.length; i++) {\n    path = paths[i];\n    if (this.isInvisible(path)) {\n      continue;\n    }\n\n    pathObj = {\n      el: path,\n      length: 0,\n      startAt: 0,\n      duration: 0,\n      isResizeSensitive: false\n    };\n\n    // If vector effect is non-scaling-stroke, the total length won't match the rendered length\n    // so we need to calculate the scale and apply it\n    if (path.getAttribute('vector-effect') === 'non-scaling-stroke') {\n      var rect = path.getBoundingClientRect();\n      var box = path.getBBox();\n      scale = Math.max(rect.width / box.width, rect.height / box.height);\n      pathObj.isResizeSensitive = true;\n      hasNonScale = true;\n    } else {\n      scale = 1;\n    }\n    pathObj.length = Math.ceil(path.getTotalLength() * scale);\n\n    // Test if the path length is correct\n    if (isNaN(pathObj.length)) {\n      if (window.console && console.warn) {\n        console.warn(\n          'Vivus [mapping]: cannot retrieve a path element length',\n          path\n        );\n      }\n      continue;\n    }\n    this.map.push(pathObj);\n    path.style.strokeDasharray =\n      pathObj.length + ' ' + (pathObj.length + this.dashGap * 2);\n    path.style.strokeDashoffset = pathObj.length + this.dashGap;\n    pathObj.length += this.dashGap;\n    totalLength += pathObj.length;\n\n    this.renderPath(i);\n  }\n\n  // Show a warning for non-scaling elements\n  if (hasNonScale) {\n    console.warn('Vivus: this SVG contains non-scaling-strokes. You should call instance.recalc() when the SVG is resized or you will encounter unwanted behaviour. See https://github.com/maxwellito/vivus#non-scaling for more info.');\n  }\n\n  totalLength = totalLength === 0 ? 1 : totalLength;\n  this.delay = this.delay === null ? this.duration / 3 : this.delay;\n  this.delayUnit = this.delay / (paths.length > 1 ? paths.length - 1 : 1);\n\n  // Reverse stack if asked\n  if (this.reverseStack) {\n    this.map.reverse();\n  }\n\n  for (i = 0; i < this.map.length; i++) {\n    pathObj = this.map[i];\n\n    switch (this.type) {\n      case 'delayed':\n        pathObj.startAt = this.delayUnit * i;\n        pathObj.duration = this.duration - this.delay;\n        break;\n\n      case 'oneByOne':\n        pathObj.startAt = (lengthMeter / totalLength) * this.duration;\n        pathObj.duration = (pathObj.length / totalLength) * this.duration;\n        break;\n\n      case 'sync':\n      case 'async':\n      case 'nsync':\n        pathObj.startAt = 0;\n        pathObj.duration = this.duration;\n        break;\n\n      case 'scenario-sync':\n        path = pathObj.el;\n        pAttrs = this.parseAttr(path);\n        pathObj.startAt =\n          timePoint +\n          (parsePositiveInt(pAttrs['data-delay'], this.delayUnit) || 0);\n        pathObj.duration = parsePositiveInt(\n          pAttrs['data-duration'],\n          this.duration\n        );\n        timePoint =\n          pAttrs['data-async'] !== undefined\n            ? pathObj.startAt\n            : pathObj.startAt + pathObj.duration;\n        this.frameLength = Math.max(\n          this.frameLength,\n          pathObj.startAt + pathObj.duration\n        );\n        break;\n\n      case 'scenario':\n        path = pathObj.el;\n        pAttrs = this.parseAttr(path);\n        pathObj.startAt =\n          parsePositiveInt(pAttrs['data-start'], this.delayUnit) || 0;\n        pathObj.duration = parsePositiveInt(\n          pAttrs['data-duration'],\n          this.duration\n        );\n        this.frameLength = Math.max(\n          this.frameLength,\n          pathObj.startAt + pathObj.duration\n        );\n        break;\n    }\n    lengthMeter += pathObj.length;\n    this.frameLength = this.frameLength || this.duration;\n  }\n};\n\n/**\n * Public method to re-evaluate line length for non-scaling lines\n * path elements.\n */\nVivus.prototype.recalc = function () {\n  if (this.mustRecalcScale) {\n    return;\n  }\n  this.mustRecalcScale = requestAnimFrame(function () {\n    this.performLineRecalc();\n  }.bind(this));\n}\n\n/**\n * Private method to re-evaluate line length on non-scaling\n * path elements. Then call for a trace to update the SVG. \n */\nVivus.prototype.performLineRecalc = function () {\n  var pathObj, path, rect, box, scale;\n  for (var i = 0; i < this.map.length; i++) {\n    pathObj = this.map[i];\n    if (pathObj.isResizeSensitive) {\n      path = pathObj.el;\n      rect = path.getBoundingClientRect();\n      box = path.getBBox();\n      scale = Math.max(rect.width / box.width, rect.height / box.height);\n      pathObj.length = Math.ceil(path.getTotalLength() * scale);\n      path.style.strokeDasharray = pathObj.length + ' ' + (pathObj.length + this.dashGap * 2);\n    }\n  }\n  this.trace();\n  this.mustRecalcScale = null;\n}\n\n/**\n * Interval method to draw the SVG from current\n * position of the animation. It update the value of\n * `currentFrame` and re-trace the SVG.\n *\n * It use this.handle to store the requestAnimationFrame\n * and clear it one the animation is stopped. So this\n * attribute can be used to know if the animation is\n * playing.\n *\n * Once the animation at the end, this method will\n * trigger the Vivus callback.\n *\n */\nVivus.prototype.draw = function() {\n  var self = this;\n  this.currentFrame += this.speed;\n\n  if (this.currentFrame <= 0) {\n    this.stop();\n    this.reset();\n  } else if (this.currentFrame >= this.frameLength) {\n    this.stop();\n    this.currentFrame = this.frameLength;\n    this.trace();\n    if (this.selfDestroy) {\n      this.destroy();\n    }\n  } else {\n    this.trace();\n    this.handle = requestAnimFrame(function() {\n      self.draw();\n    });\n    return;\n  }\n\n  this.callback(this);\n  if (this.instanceCallback) {\n    this.instanceCallback(this);\n    this.instanceCallback = null;\n  }\n};\n\n/**\n * Draw the SVG at the current instant from the\n * `currentFrame` value. Here is where most of the magic is.\n * The trick is to use the `strokeDashoffset` style property.\n *\n * For optimisation reasons, a new property called `progress`\n * is added in each item of `map`. This one contain the current\n * progress of the path element. Only if the new value is different\n * the new value will be applied to the DOM element. This\n * method save a lot of resources to re-render the SVG. And could\n * be improved if the animation couldn't be played forward.\n *\n */\nVivus.prototype.trace = function() {\n  var i, progress, path, currentFrame;\n  currentFrame =\n    this.animTimingFunction(this.currentFrame / this.frameLength) *\n    this.frameLength;\n  for (i = 0; i < this.map.length; i++) {\n    path = this.map[i];\n    progress = (currentFrame - path.startAt) / path.duration;\n    progress = this.pathTimingFunction(Math.max(0, Math.min(1, progress)));\n    if (path.progress !== progress) {\n      path.progress = progress;\n      path.el.style.strokeDashoffset = Math.floor(path.length * (1 - progress));\n      this.renderPath(i);\n    }\n  }\n};\n\n/**\n * Method forcing the browser to re-render a path element\n * from it's index in the map. Depending on the `forceRender`\n * value.\n * The trick is to replace the path element by it's clone.\n * This practice is not recommended because it's asking more\n * ressources, too much DOM manupulation..\n * but it's the only way to let the magic happen on IE.\n * By default, this fallback is only applied on IE.\n *\n * @param  {Number} index Path index\n */\nVivus.prototype.renderPath = function(index) {\n  if (this.forceRender && this.map && this.map[index]) {\n    var pathObj = this.map[index],\n      newPath = pathObj.el.cloneNode(true);\n    pathObj.el.parentNode.replaceChild(newPath, pathObj.el);\n    pathObj.el = newPath;\n  }\n};\n\n/**\n * When the SVG object is loaded and ready,\n * this method will continue the initialisation.\n *\n * This this mainly due to the case of passing an\n * object tag in the constructor. It will wait\n * the end of the loading to initialise.\n *\n */\nVivus.prototype.init = function() {\n  // Set object variables\n  this.frameLength = 0;\n  this.currentFrame = 0;\n  this.map = [];\n\n  // Start\n  new Pathformer(this.el);\n  this.mapping();\n  this.starter();\n\n  if (this.onReady) {\n    this.onReady(this);\n  }\n};\n\n/**\n * Trigger to start of the animation.\n * Depending on the `start` value, a different script\n * will be applied.\n *\n * If the `start` value is not valid, an error will be thrown.\n * Even if technically, this is impossible.\n *\n */\nVivus.prototype.starter = function() {\n  switch (this.start) {\n    case 'manual':\n      return;\n\n    case 'autostart':\n      this.play();\n      break;\n\n    case 'inViewport':\n      var self = this,\n        listener = function() {\n          if (self.isInViewport(self.parentEl, 1)) {\n            self.play();\n            window.removeEventListener('scroll', listener);\n          }\n        };\n      window.addEventListener('scroll', listener);\n      listener();\n      break;\n  }\n};\n\n/**\n * Controls\n **************************************\n */\n\n/**\n * Get the current status of the animation between\n * three different states: 'start', 'progress', 'end'.\n * @return {string} Instance status\n */\nVivus.prototype.getStatus = function() {\n  return this.currentFrame === 0\n    ? 'start'\n    : this.currentFrame === this.frameLength\n    ? 'end'\n    : 'progress';\n};\n\n/**\n * Reset the instance to the initial state : undraw\n * Be careful, it just reset the animation, if you're\n * playing the animation, this won't stop it. But just\n * make it start from start.\n *\n */\nVivus.prototype.reset = function() {\n  return this.setFrameProgress(0);\n};\n\n/**\n * Set the instance to the final state : drawn\n * Be careful, it just set the animation, if you're\n * playing the animation on rewind, this won't stop it.\n * But just make it start from the end.\n *\n */\nVivus.prototype.finish = function() {\n  return this.setFrameProgress(1);\n};\n\n/**\n * Set the level of progress of the drawing.\n *\n * @param {number} progress Level of progress to set\n */\nVivus.prototype.setFrameProgress = function(progress) {\n  progress = Math.min(1, Math.max(0, progress));\n  this.currentFrame = Math.round(this.frameLength * progress);\n  this.trace();\n  return this;\n};\n\n/**\n * Play the animation at the desired speed.\n * Speed must be a valid number (no zero).\n * By default, the speed value is 1.\n * But a negative value is accepted to go forward.\n *\n * And works with float too.\n * But don't forget we are in JavaScript, se be nice\n * with him and give him a 1/2^x value.\n *\n * @param  {number} speed Animation speed [optional]\n */\nVivus.prototype.play = function(speed, callback) {\n  this.instanceCallback = null;\n\n  if (speed && typeof speed === 'function') {\n    this.instanceCallback = speed; // first parameter is actually the callback function\n    speed = null;\n  } else if (speed && typeof speed !== 'number') {\n    throw new Error('Vivus [play]: invalid speed');\n  }\n  // if the first parameter wasn't the callback, check if the seconds was\n  if (callback && typeof callback === 'function' && !this.instanceCallback) {\n    this.instanceCallback = callback;\n  }\n\n  this.speed = speed || 1;\n  if (!this.handle) {\n    this.draw();\n  }\n  return this;\n};\n\n/**\n * Stop the current animation, if on progress.\n * Should not trigger any error.\n *\n */\nVivus.prototype.stop = function() {\n  if (this.handle) {\n    cancelAnimFrame(this.handle);\n    this.handle = null;\n  }\n  return this;\n};\n\n/**\n * Destroy the instance.\n * Remove all bad styling attributes on all\n * path tags\n *\n */\nVivus.prototype.destroy = function() {\n  this.stop();\n  var i, path;\n  for (i = 0; i < this.map.length; i++) {\n    path = this.map[i];\n    path.el.style.strokeDashoffset = null;\n    path.el.style.strokeDasharray = null;\n    this.renderPath(i);\n  }\n};\n\n/**\n * Utils methods\n * include methods from Codrops\n **************************************\n */\n\n/**\n * Method to best guess if a path should added into\n * the animation or not.\n *\n * 1. Use the `data-vivus-ignore` attribute if set\n * 2. Check if the instance must ignore invisible paths\n * 3. Check if the path is visible\n *\n * For now the visibility checking is unstable.\n * It will be used for a beta phase.\n *\n * Other improvments are planned. Like detecting\n * is the path got a stroke or a valid opacity.\n */\nVivus.prototype.isInvisible = function(el) {\n  var rect,\n    ignoreAttr = el.getAttribute('data-ignore');\n\n  if (ignoreAttr !== null) {\n    return ignoreAttr !== 'false';\n  }\n\n  if (this.ignoreInvisible) {\n    rect = el.getBoundingClientRect();\n    return !rect.width && !rect.height;\n  } else {\n    return false;\n  }\n};\n\n/**\n * Parse attributes of a DOM element to\n * get an object of {attributeName => attributeValue}\n *\n * @param  {object} element DOM element to parse\n * @return {object}         Object of attributes\n */\nVivus.prototype.parseAttr = function(element) {\n  var attr,\n    output = {};\n  if (element && element.attributes) {\n    for (var i = 0; i < element.attributes.length; i++) {\n      attr = element.attributes[i];\n      output[attr.name] = attr.value;\n    }\n  }\n  return output;\n};\n\n/**\n * Reply if an element is in the page viewport\n *\n * @param  {object} el Element to observe\n * @param  {number} h  Percentage of height\n * @return {boolean}\n */\nVivus.prototype.isInViewport = function(el, h) {\n  var scrolled = this.scrollY(),\n    viewed = scrolled + this.getViewportH(),\n    elBCR = el.getBoundingClientRect(),\n    elHeight = elBCR.height,\n    elTop = scrolled + elBCR.top,\n    elBottom = elTop + elHeight;\n\n  // if 0, the element is considered in the viewport as soon as it enters.\n  // if 1, the element is considered in the viewport only when it's fully inside\n  // value in percentage (1 >= h >= 0)\n  h = h || 0;\n\n  return elTop + elHeight * h <= viewed && elBottom >= scrolled;\n};\n\n/**\n * Get the viewport height in pixels\n *\n * @return {integer} Viewport height\n */\nVivus.prototype.getViewportH = function() {\n  var client = this.docElem.clientHeight,\n    inner = window.innerHeight;\n\n  if (client < inner) {\n    return inner;\n  } else {\n    return client;\n  }\n};\n\n/**\n * Get the page Y offset\n *\n * @return {integer} Page Y offset\n */\nVivus.prototype.scrollY = function() {\n  return window.pageYOffset || this.docElem.scrollTop;\n};\n\nsetupEnv = function() {\n  if (Vivus.prototype.docElem) {\n    return;\n  }\n\n  /**\n   * Alias for document element\n   *\n   * @type {DOMelement}\n   */\n  Vivus.prototype.docElem = window.document.documentElement;\n\n  /**\n   * Alias for `requestAnimationFrame` or\n   * `setTimeout` function for deprecated browsers.\n   *\n   */\n  requestAnimFrame = (function() {\n    return (\n      window.requestAnimationFrame ||\n      window.webkitRequestAnimationFrame ||\n      window.mozRequestAnimationFrame ||\n      window.oRequestAnimationFrame ||\n      window.msRequestAnimationFrame ||\n      function(/* function */ callback) {\n        return window.setTimeout(callback, 1000 / 60);\n      }\n    );\n  })();\n\n  /**\n   * Alias for `cancelAnimationFrame` or\n   * `cancelTimeout` function for deprecated browsers.\n   *\n   */\n  cancelAnimFrame = (function() {\n    return (\n      window.cancelAnimationFrame ||\n      window.webkitCancelAnimationFrame ||\n      window.mozCancelAnimationFrame ||\n      window.oCancelAnimationFrame ||\n      window.msCancelAnimationFrame ||\n      function(id) {\n        return window.clearTimeout(id);\n      }\n    );\n  })();\n};\n\n/**\n * Parse string to integer.\n * If the number is not positive or null\n * the method will return the default value\n * or 0 if undefined\n *\n * @param {string} value String to parse\n * @param {*} defaultValue Value to return if the result parsed is invalid\n * @return {number}\n *\n */\nparsePositiveInt = function(value, defaultValue) {\n  var output = parseInt(value, 10);\n  return output >= 0 ? output : defaultValue;\n};\n\n\n  if (true) {\n    // AMD. Register as an anonymous module.\n    !(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_RESULT__ = (function() {\n      return Vivus;\n    }).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n  } else // removed by dead control flow\n{}\n\n}());\n\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/vivus/dist/vivus.js?\n}");

/***/ },

/***/ "react"
/*!***********************************!*\
  !*** external ["vendor","React"] ***!
  \***********************************/
(module) {

"use strict";
module.exports = vendor.React;

/***/ },

/***/ "./node_modules/classnames/index.js"
/*!******************************************!*\
  !*** ./node_modules/classnames/index.js ***!
  \******************************************/
(module, exports) {

eval("{var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue(arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(null, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif ( true && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (true) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\t!(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_RESULT__ = (function () {\n\t\t\treturn classNames;\n\t\t}).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n\t} else // removed by dead control flow\n{}\n}());\n\n\n//# sourceURL=webpack://divi-supreme/./node_modules/classnames/index.js?\n}");

/***/ }

/******/ 	});
/************************************************************************/
/******/ 	// The module cache
/******/ 	var __webpack_module_cache__ = {};
/******/ 	
/******/ 	// The require function
/******/ 	function __webpack_require__(moduleId) {
/******/ 		// Check if module is in cache
/******/ 		var cachedModule = __webpack_module_cache__[moduleId];
/******/ 		if (cachedModule !== undefined) {
/******/ 			return cachedModule.exports;
/******/ 		}
/******/ 		// Create a new module (and put it into the cache)
/******/ 		var module = __webpack_module_cache__[moduleId] = {
/******/ 			id: moduleId,
/******/ 			loaded: false,
/******/ 			exports: {}
/******/ 		};
/******/ 	
/******/ 		// Execute the module function
/******/ 		if (!(moduleId in __webpack_modules__)) {
/******/ 			delete __webpack_module_cache__[moduleId];
/******/ 			var e = new Error("Cannot find module '" + moduleId + "'");
/******/ 			e.code = 'MODULE_NOT_FOUND';
/******/ 			throw e;
/******/ 		}
/******/ 		__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/ 	
/******/ 		// Flag the module as loaded
/******/ 		module.loaded = true;
/******/ 	
/******/ 		// Return the exports of the module
/******/ 		return module.exports;
/******/ 	}
/******/ 	
/******/ 	// expose the modules object (__webpack_modules__)
/******/ 	__webpack_require__.m = __webpack_modules__;
/******/ 	
/************************************************************************/
/******/ 	/* webpack/runtime/amd options */
/******/ 	(() => {
/******/ 		__webpack_require__.amdO = {};
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/compat get default export */
/******/ 	(() => {
/******/ 		// getDefaultExport function for compatibility with non-harmony modules
/******/ 		__webpack_require__.n = (module) => {
/******/ 			var getter = module && module.__esModule ?
/******/ 				() => (module['default']) :
/******/ 				() => (module);
/******/ 			__webpack_require__.d(getter, { a: getter });
/******/ 			return getter;
/******/ 		};
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/define property getters */
/******/ 	(() => {
/******/ 		// define getter functions for harmony exports
/******/ 		__webpack_require__.d = (exports, definition) => {
/******/ 			for(var key in definition) {
/******/ 				if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
/******/ 					Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
/******/ 				}
/******/ 			}
/******/ 		};
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/ensure chunk */
/******/ 	(() => {
/******/ 		__webpack_require__.f = {};
/******/ 		// This file contains only the entry chunk.
/******/ 		// The chunk loading function for additional chunks
/******/ 		__webpack_require__.e = (chunkId) => {
/******/ 			return Promise.all(Object.keys(__webpack_require__.f).reduce((promises, key) => {
/******/ 				__webpack_require__.f[key](chunkId, promises);
/******/ 				return promises;
/******/ 			}, []));
/******/ 		};
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/get javascript chunk filename */
/******/ 	(() => {
/******/ 		// This function allow to reference async chunks
/******/ 		__webpack_require__.u = (chunkId) => {
/******/ 			// return url for filenames not based on template
/******/ 			if (chunkId === "dotlottie") return "../assets/js/dotlottie.js";
/******/ 			// return url for filenames based on template
/******/ 			return undefined;
/******/ 		};
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/get mini-css chunk filename */
/******/ 	(() => {
/******/ 		// This function allow to reference async chunks
/******/ 		__webpack_require__.miniCssF = (chunkId) => {
/******/ 			// return url for filenames based on template
/******/ 			return undefined;
/******/ 		};
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/hasOwnProperty shorthand */
/******/ 	(() => {
/******/ 		__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/load script */
/******/ 	(() => {
/******/ 		var inProgress = {};
/******/ 		var dataWebpackPrefix = "divi-supreme:";
/******/ 		// loadScript function to load a script via script tag
/******/ 		__webpack_require__.l = (url, done, key, chunkId) => {
/******/ 			if(inProgress[url]) { inProgress[url].push(done); return; }
/******/ 			var script, needAttach;
/******/ 			if(key !== undefined) {
/******/ 				var scripts = document.getElementsByTagName("script");
/******/ 				for(var i = 0; i < scripts.length; i++) {
/******/ 					var s = scripts[i];
/******/ 					if(s.getAttribute("src") == url || s.getAttribute("data-webpack") == dataWebpackPrefix + key) { script = s; break; }
/******/ 				}
/******/ 			}
/******/ 			if(!script) {
/******/ 				needAttach = true;
/******/ 				script = document.createElement('script');
/******/ 		
/******/ 				script.charset = 'utf-8';
/******/ 				if (__webpack_require__.nc) {
/******/ 					script.setAttribute("nonce", __webpack_require__.nc);
/******/ 				}
/******/ 				script.setAttribute("data-webpack", dataWebpackPrefix + key);
/******/ 		
/******/ 				script.src = url;
/******/ 			}
/******/ 			inProgress[url] = [done];
/******/ 			var onScriptComplete = (prev, event) => {
/******/ 				// avoid mem leaks in IE.
/******/ 				script.onerror = script.onload = null;
/******/ 				clearTimeout(timeout);
/******/ 				var doneFns = inProgress[url];
/******/ 				delete inProgress[url];
/******/ 				script.parentNode && script.parentNode.removeChild(script);
/******/ 				doneFns && doneFns.forEach((fn) => (fn(event)));
/******/ 				if(prev) return prev(event);
/******/ 			}
/******/ 			var timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);
/******/ 			script.onerror = onScriptComplete.bind(null, script.onerror);
/******/ 			script.onload = onScriptComplete.bind(null, script.onload);
/******/ 			needAttach && document.head.appendChild(script);
/******/ 		};
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/make namespace object */
/******/ 	(() => {
/******/ 		// define __esModule on exports
/******/ 		__webpack_require__.r = (exports) => {
/******/ 			if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ 				Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ 			}
/******/ 			Object.defineProperty(exports, '__esModule', { value: true });
/******/ 		};
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/node module decorator */
/******/ 	(() => {
/******/ 		__webpack_require__.nmd = (module) => {
/******/ 			module.paths = [];
/******/ 			if (!module.children) module.children = [];
/******/ 			return module;
/******/ 		};
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/publicPath */
/******/ 	(() => {
/******/ 		var scriptUrl;
/******/ 		if (globalThis.importScripts) scriptUrl = globalThis.location + "";
/******/ 		var document = globalThis.document;
/******/ 		if (!scriptUrl && document) {
/******/ 			if (document.currentScript && document.currentScript.tagName.toUpperCase() === 'SCRIPT')
/******/ 				scriptUrl = document.currentScript.src;
/******/ 			if (!scriptUrl) {
/******/ 				var scripts = document.getElementsByTagName("script");
/******/ 				if(scripts.length) {
/******/ 					var i = scripts.length - 1;
/******/ 					while (i > -1 && (!scriptUrl || !/^http(s?):/.test(scriptUrl))) scriptUrl = scripts[i--].src;
/******/ 				}
/******/ 			}
/******/ 		}
/******/ 		// When supporting browsers where an automatic publicPath is not supported you must specify an output.publicPath manually via configuration
/******/ 		// or pass an empty string ("") and set the __webpack_public_path__ variable from your code to use your own logic.
/******/ 		if (!scriptUrl) throw new Error("Automatic publicPath is not supported in this browser");
/******/ 		scriptUrl = scriptUrl.replace(/^blob:/, "").replace(/#.*$/, "").replace(/\?.*$/, "").replace(/\/[^\/]+$/, "/");
/******/ 		__webpack_require__.p = scriptUrl;
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/jsonp chunk loading */
/******/ 	(() => {
/******/ 		// no baseURI
/******/ 		
/******/ 		// object to store loaded and loading chunks
/******/ 		// undefined = chunk not loaded, null = chunk preloaded/prefetched
/******/ 		// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded
/******/ 		var installedChunks = {
/******/ 			"modules": 0
/******/ 		};
/******/ 		
/******/ 		__webpack_require__.f.j = (chunkId, promises) => {
/******/ 				// JSONP chunk loading for javascript
/******/ 				var installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;
/******/ 				if(installedChunkData !== 0) { // 0 means "already installed".
/******/ 		
/******/ 					// a Promise means "currently loading".
/******/ 					if(installedChunkData) {
/******/ 						promises.push(installedChunkData[2]);
/******/ 					} else {
/******/ 						if(true) { // all chunks have JS
/******/ 							// setup Promise in chunk cache
/******/ 							var promise = new Promise((resolve, reject) => (installedChunkData = installedChunks[chunkId] = [resolve, reject]));
/******/ 							promises.push(installedChunkData[2] = promise);
/******/ 		
/******/ 							// start chunk loading
/******/ 							var url = __webpack_require__.p + __webpack_require__.u(chunkId);
/******/ 							// create error before stack unwound to get useful stacktrace later
/******/ 							var error = new Error();
/******/ 							var loadingEnded = (event) => {
/******/ 								if(__webpack_require__.o(installedChunks, chunkId)) {
/******/ 									installedChunkData = installedChunks[chunkId];
/******/ 									if(installedChunkData !== 0) installedChunks[chunkId] = undefined;
/******/ 									if(installedChunkData) {
/******/ 										var errorType = event && (event.type === 'load' ? 'missing' : event.type);
/******/ 										var realSrc = event && event.target && event.target.src;
/******/ 										error.message = 'Loading chunk ' + chunkId + ' failed.\n(' + errorType + ': ' + realSrc + ')';
/******/ 										error.name = 'ChunkLoadError';
/******/ 										error.type = errorType;
/******/ 										error.request = realSrc;
/******/ 										installedChunkData[1](error);
/******/ 									}
/******/ 								}
/******/ 							};
/******/ 							__webpack_require__.l(url, loadingEnded, "chunk-" + chunkId, chunkId);
/******/ 						}
/******/ 					}
/******/ 				}
/******/ 		};
/******/ 		
/******/ 		// no prefetching
/******/ 		
/******/ 		// no preloaded
/******/ 		
/******/ 		// no HMR
/******/ 		
/******/ 		// no HMR manifest
/******/ 		
/******/ 		// no on chunks loaded
/******/ 		
/******/ 		// install a JSONP callback for chunk loading
/******/ 		var webpackJsonpCallback = (parentChunkLoadingFunction, data) => {
/******/ 			var [chunkIds, moreModules, runtime] = data;
/******/ 			// add "moreModules" to the modules object,
/******/ 			// then flag all "chunkIds" as loaded and fire callback
/******/ 			var moduleId, chunkId, i = 0;
/******/ 			if(chunkIds.some((id) => (installedChunks[id] !== 0))) {
/******/ 				for(moduleId in moreModules) {
/******/ 					if(__webpack_require__.o(moreModules, moduleId)) {
/******/ 						__webpack_require__.m[moduleId] = moreModules[moduleId];
/******/ 					}
/******/ 				}
/******/ 				if(runtime) var result = runtime(__webpack_require__);
/******/ 			}
/******/ 			if(parentChunkLoadingFunction) parentChunkLoadingFunction(data);
/******/ 			for(;i < chunkIds.length; i++) {
/******/ 				chunkId = chunkIds[i];
/******/ 				if(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {
/******/ 					installedChunks[chunkId][0]();
/******/ 				}
/******/ 				installedChunks[chunkId] = 0;
/******/ 			}
/******/ 		
/******/ 		}
/******/ 		
/******/ 		var chunkLoadingGlobal = globalThis["webpackChunkdivi_supreme"] = globalThis["webpackChunkdivi_supreme"] || [];
/******/ 		chunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));
/******/ 		chunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));
/******/ 	})();
/******/ 	
/************************************************************************/
/******/ 	
/******/ 	// startup
/******/ 	// Load entry module and return exports
/******/ 	// This entry module can't be inlined because the eval devtool is used.
/******/ 	var __webpack_exports__ = __webpack_require__("./packages/module-library/index.js");
/******/ 	
/******/ })()
;